9.3.1 ExpressionInOclCS

ExpressionInOcl符号被用来设置表达式的初始环境。

ExpressionInOclCS ::= OclExpressionCS

抽象语法映射

ExpressionInOclCS.ast : OclExpression

合成的属性

ExpressionInOclCS.ast = OclExpressionCS.ast

继承的属性

OCL表达式的环境必须被定义,但是环境中需要有什么取决于OCL表达式的上下文。因此,下面的规则不是完整的。它通过把self变量以及一个包含所有从self可见的元素的命名空间加到一个空环境定义了env属性。在子章节12.2,contexturalClassifer将会被定义用于一个OCL表达式可能会出现的不同地方。在一个前置或后置条件的上下文中,结果变量以及任意命名的操作参数的变量定义都可以以这种方式被添加。

OclExpressionCS.env =
    ExpressionInOclCS.contextualClassifier.namespace.getEnvironmentWithParents()
        .addElement (‘self’, ExpressionInOclCS.contextualClassifier, true)

results matching ""

    No results matching ""