9.3.9 EnumLiteralExpCS
该表达式代表枚举字面量表达式。
EnumLiteralExpCS ::= pathNameCS ‘::’ simpleNameCS
抽象语法映射
EnumLiteralExpCS.ast : EnumLiteralExp
合成的属性
EnumLiteralExpCS.ast.type =
env.lookupPathName (pathNameCS.ast).referredElement.oclAsType (Classifier)
EnumLiteralExpCS.ast.referredEnumLiteral =
EnumLiteralExpCS.ast.type.oclAsType (Enumeration).literal->
select (l | l.name = simpleNameCS.ast )->any(true)
继承的属性
--none
歧义消除规则
[1] 指定的名称必须真是一个枚举的引用。
not EnumLiteralExpCS.ast.type.oclIsUndefined() and
EnumLiteralExpCS.ast.type.oclIsKindOf (Enumeration)