next up previous
Next: Ambiguous names Up: Applied occurrences of names Previous: Expression names

Method names

Method names[24]:
RULE: MethodName ::= Name $pMethodName COMPUTE
  MethodName.Key=pMethodName.Key;
END;

TREE SYMBOL sMethIdUse    INHERITS MthIdUseEnv,  IdentOcc END;
TREE SYMBOL qMethIdUse    INHERITS MthQualIdUse, IdentOcc END;
TREE SYMBOL pMethodName COMPUTE
  SYNT.Sym=FullyQualifiedName(THIS.Ids);
END;

RULE: pMethodName ::= sMethIdUse COMPUTE
  pMethodName.Ids=SingleintList(sMethIdUse.Sym);
  pMethodName.Key=sMethIdUse.MthKey;
END;

RULE: pMethodName ::= pAmbiguousName qMethIdUse COMPUTE
  pMethodName.Ids=ConsintList(qMethIdUse.Sym,pAmbiguousName.Ids);
  pMethodName.Key=qMethIdUse.MthKey;
  qMethIdUse.MthScopeKey=pAmbiguousName.TypScopeKey;
END;
This macro is invoked in definition 21.



2008-09-11