예제 #1
0
 public override bool declareClassAndMetaclass()
 {
     if (IsVerbose)
     {
         Console.WriteLine("Declaring trait: #" + Name);
     }
     thisClass = null;
     if (baseEnvironment == null)
     {
         thisClass = objectSpace.newTrait(Name);
     }
     else
     {
         thisClass = baseEnvironment.defineTrait(Name, AccessPrivilegeLevel.Public, null);
     }
     thisMetaclass = thisClass.ClassTrait;
     return(true);
 }
예제 #2
0
 public override T applyToClassTrait(ESClassTrait operand)
 {
     return(operation.applyToClassTrait(operand));
 }
예제 #3
0
 public virtual T applyToClassTrait(ESClassTrait operand)
 {
     return(applyToESObject(operand));
 }