public virtual void Visit(TraitsArgument arg)
 {
     if (arg.Type != null)
         arg.Type.Accept(this);
     if (arg.AssignExpression != null)
         arg.AssignExpression.Accept(this);
 }
Пример #2
0
 AbstractType E(TraitsArgument arg, TraitsExpression te)
 {
     if(arg.Type != null)
     {
         return TypeDeclarationResolver.ResolveSingle(arg.Type, ctxt);
     }
     else if(arg.AssignExpression != null)
     {
         return DResolver.StripAliasSymbol(EvaluateType(arg.AssignExpression, ctxt));
     }
     else
     {
         EvalError(te, "Argument must be a type or an expression!");
         return null;
     }
 }