next up previous
Next: Array creation Up: Expressions Previous: this

Class instance creation

The name following the new specifies a constructor that should be applied to the argument list to create a value.

Class instance creation[49]:
TREE SYMBOL TypeIdUse INHERITS TypeDefUseId END;

RULE: Expression ::=
  Expression '.' 'new' TypeIdUse '(' Arguments ')' AnonymousClass
COMPUTE
  ListContext(Expression[1],,Arguments);
  Indication(FinalType(TypeIdUse.Type));
END;

RULE: Expression ::= 'new' TypeName '(' Arguments ')' AnonymousClass
COMPUTE
  ListContext(Expression,,Arguments);
  Indication(FinalType(TypeName.Type));
END;
This macro is invoked in definition 45.



2008-09-11