public interface EvaluationVisitor extends Visitor<java.lang.Object>, DomainEvaluator
See the Environment
class for a description of the
generic type parameters of this class.
Modifier and Type | Method and Description |
---|---|
EvaluationVisitor |
createNestedEvaluator() |
java.lang.Object |
evaluate(DomainExpression body) |
java.lang.Object |
evaluate(ExpressionInOCL expressionInOCL) |
Environment |
getEnvironment()
Obtains the environment that provides the metamodel semantics for the
expression to be evaluated.
|
EvaluationEnvironment |
getEvaluationEnvironment()
Obtains the evaluation environment that keeps track of variable values
and knows how to call operations, navigate properties, etc.
|
EvaluationVisitor |
getEvaluator() |
MetaModelManager |
getMetaModelManager() |
DomainModelManager |
getModelManager()
Obtains the mapping of model classes to their extents.
|
DomainStandardLibrary |
getStandardLibrary() |
void |
setUndecoratedVisitor(EvaluationVisitor evaluationVisitor)
Configures the specified decorated visitor to correctly handle the
invocation of recursive
visitXxx(...) calls. |
getAdapter, visitAnnotation, visitAnyType, visitAssociationClass, visitAssociationClassCallExp, visitBagType, visitBehavior, visitBooleanLiteralExp, visitCallExp, visitCallOperationAction, visitClass, visitCollectionItem, visitCollectionLiteralExp, visitCollectionLiteralPart, visitCollectionRange, visitCollectionType, visitComment, visitConnectionPointReference, visitConstraint, visitConstructorExp, visitConstructorPart, visitDataType, visitDetail, visitDynamicElement, visitDynamicProperty, visitDynamicType, visitElement, visitElementExtension, visitEnumeration, visitEnumerationLiteral, visitEnumLiteralExp, visitExpressionInOCL, visitFeature, visitFeatureCallExp, visitFinalState, visitIfExp, visitImport, visiting, visitIntegerLiteralExp, visitInvalidLiteralExp, visitInvalidType, visitIterateExp, visitIteration, visitIteratorExp, visitLambdaType, visitLetExp, visitLibrary, visitLiteralExp, visitLoopExp, visitMessageExp, visitMessageType, visitMetaclass, visitNamedElement, visitNamespace, visitNavigationCallExp, visitNullLiteralExp, visitNumericLiteralExp, visitOCLExpression, visitOpaqueExpression, visitOperation, visitOperationCallExp, visitOperationTemplateParameter, visitOrderedSetType, visitPackage, visitPackageableElement, visitParameter, visitParameterableElement, visitPrecedence, visitPrimitiveLiteralExp, visitPrimitiveType, visitProfile, visitProperty, visitPropertyCallExp, visitPseudostate, visitRealLiteralExp, visitRegion, visitRoot, visitSelfType, visitSendSignalAction, visitSequenceType, visitSetType, visitSignal, visitState, visitStateExp, visitStateMachine, visitStereotype, visitStringLiteralExp, visitTemplateableElement, visitTemplateBinding, visitTemplateParameter, visitTemplateParameterSubstitution, visitTemplateParameterType, visitTemplateSignature, visitTransition, visitTrigger, visitTupleLiteralExp, visitTupleLiteralPart, visitTupleType, visitType, visitTypedElement, visitTypedMultiplicityElement, visitTypeExp, visitTypeTemplateParameter, visitUnlimitedNaturalLiteralExp, visitUnspecifiedType, visitUnspecifiedValueExp, visitValueSpecification, visitVariable, visitVariableDeclaration, visitVariableExp, visitVertex, visitVoidType
getIdResolver, getLogger, getStaticTypeOf, getStaticTypeOf, getStaticTypeOf, isCanceled, setCanceled, setLogger
@NonNull EvaluationVisitor createNestedEvaluator()
createNestedEvaluator
in interface DomainEvaluator
@Nullable java.lang.Object evaluate(@NonNull DomainExpression body)
evaluate
in interface DomainEvaluator
@Nullable java.lang.Object evaluate(@NonNull ExpressionInOCL expressionInOCL)
Environment getEnvironment()
@NonNull EvaluationEnvironment getEvaluationEnvironment()
getEvaluationEnvironment
in interface DomainEvaluator
@NonNull EvaluationVisitor getEvaluator()
@NonNull DomainModelManager getModelManager()
getModelManager
in interface DomainEvaluator
@NonNull MetaModelManager getMetaModelManager()
@NonNull DomainStandardLibrary getStandardLibrary()
getStandardLibrary
in interface DomainEvaluator
void setUndecoratedVisitor(@NonNull EvaluationVisitor evaluationVisitor)
visitXxx(...)
calls. In particular,
the tail of a chain of decorators is informed (if it is an
AbstractEvaluationVisitor
of the head decorator of the chain,
so that recursive visitation follows the entire decorator chain at
every step.decorator
- the decorator that is not decorated/