public class QvtOperationalEvaluationVisitorImpl extends EvaluationVisitorImpl<EPackage,EClassifier,EOperation,EStructuralFeature,EEnumLiteral,EParameter,EObject,CallOperationAction,SendSignalAction,Constraint,EClass,EObject> implements QvtOperationalEvaluationVisitor, InternalEvaluator, DeferredAssignmentListener
Modifier and Type | Class and Description |
---|---|
static interface |
QvtOperationalEvaluationVisitorImpl.BreakingResult
Tag interface which represents an evaluation result which,
when encountered, breaks control flow.
|
static class |
QvtOperationalEvaluationVisitorImpl.BreakResult
Type of result which represents the situation in which a break statement is encountered.
|
static class |
QvtOperationalEvaluationVisitorImpl.ContinueResult
Type of result which represents the situation in which a continue statement is encountered.
|
static class |
QvtOperationalEvaluationVisitorImpl.OperationCallResult
The result of an operation call.
|
Constructor and Description |
---|
QvtOperationalEvaluationVisitorImpl(QvtOperationalEnv env,
QvtOperationalEvaluationEnv evalEnv) |
visitAssociationClassCallExp, visitBooleanLiteralExp, visitIntegerLiteralExp, visitInvalidLiteralExp, visitIterateExp, visitIteratorExp, visitLetExp, visitMessageExp, visitNullLiteralExp, visitPropertyCallExp, visitRealLiteralExp, visitStateExp, visitStringLiteralExp, visitTupleLiteralExp, visitTupleLiteralPart, visitTypeExp, visitUnlimitedNaturalLiteralExp, visitUnspecifiedValueExp, visitVariable
getEnvironment, getExtentMap, toString, visitConstraint
visitCollectionItem, visitCollectionRange, visitExpressionInOCL
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
getEnvironment, getExtentMap, visitConstraint
public QvtOperationalEvaluationVisitorImpl(QvtOperationalEnv env, QvtOperationalEvaluationEnv evalEnv)
public Object visitDictLiteralExp(DictLiteralExp dictLiteralExp)
visitDictLiteralExp
in interface ImperativeOCLVisitor<Object>
public Object visitVariableExp(VariableExp<EClassifier,EParameter> v)
visitVariableExp
in interface Visitor<Object,EClassifier,EOperation,EStructuralFeature,EEnumLiteral,EParameter,EObject,CallOperationAction,SendSignalAction,Constraint>
visitVariableExp
in class EvaluationVisitorImpl<EPackage,EClassifier,EOperation,EStructuralFeature,EEnumLiteral,EParameter,EObject,CallOperationAction,SendSignalAction,Constraint,EClass,EObject>
public static QvtOperationalEvaluationVisitorImpl createNonTransformationExecutionContextVisitor(Context context, ImportToNonTransformCtxHelper importProvider)
No main entry operation is available, the execution flow is undefined and it is the responsibility of the executor client.
Note:
Only helper operation can be executed on the resulting
visitor by an external clients.public static QvtOperationalEvaluationVisitorImpl createNonTransformationExecutionContextVisitor(QvtOperationalEnv env, QvtOperationalEvaluationEnv evalEnv, ImportToNonTransformCtxHelper importsProvider)
public static QvtOperationalEvaluationVisitor createVisitor(QvtOperationalEnv env, QvtOperationalEvaluationEnv evalEnv)
public EvaluationEnvironment<EClassifier,EOperation,EStructuralFeature,EClass,EObject> getEvaluationEnvironment()
getEvaluationEnvironment
in interface EvaluationVisitor<EPackage,EClassifier,EOperation,EStructuralFeature,EEnumLiteral,EParameter,EObject,CallOperationAction,SendSignalAction,Constraint,EClass,EObject>
getEvaluationEnvironment
in class AbstractEvaluationVisitor<EPackage,EClassifier,EOperation,EStructuralFeature,EEnumLiteral,EParameter,EObject,CallOperationAction,SendSignalAction,Constraint,EClass,EObject>
public void setOperationalEvaluationEnv(QvtOperationalEvaluationEnv evalEnv)
QvtOperationalEvaluationVisitor
setOperationalEvaluationEnv
in interface QvtOperationalEvaluationVisitor
public IContext getContext()
QvtOperationalEvaluationVisitor
getContext
in interface QvtOperationalEvaluationVisitor
public void notifyAfterDeferredAssign(AssignExp assignExp, Object leftValue)
DeferredAssignmentListener
notifyAfterDeferredAssign
in interface DeferredAssignmentListener
assignExp
- the target assignmentpublic Object visitIfExp(IfExp<EClassifier> ie)
visitIfExp
in interface Visitor<Object,EClassifier,EOperation,EStructuralFeature,EEnumLiteral,EParameter,EObject,CallOperationAction,SendSignalAction,Constraint>
visitIfExp
in class EvaluationVisitorImpl<EPackage,EClassifier,EOperation,EStructuralFeature,EEnumLiteral,EParameter,EObject,CallOperationAction,SendSignalAction,Constraint,EClass,EObject>
public Object visitAssignExp(AssignExp assignExp)
visitAssignExp
in interface ImperativeOCLVisitor<Object>
public Object visitExpression(OCLExpression<EClassifier> expression)
visitExpression
in interface EvaluationVisitor<EPackage,EClassifier,EOperation,EStructuralFeature,EEnumLiteral,EParameter,EObject,CallOperationAction,SendSignalAction,Constraint,EClass,EObject>
visitExpression
in class AbstractEvaluationVisitor<EPackage,EClassifier,EOperation,EStructuralFeature,EEnumLiteral,EParameter,EObject,CallOperationAction,SendSignalAction,Constraint,EClass,EObject>
public Object visitEntryOperation(EntryOperation entryOperation)
visitEntryOperation
in interface QVTOperationalVisitor<Object>
public Object visitHelper(Helper helper)
visitHelper
in interface QVTOperationalVisitor<Object>
public Object visitImperativeOperation(ImperativeOperation imperativeOperation)
visitImperativeOperation
in interface QVTOperationalVisitor<Object>
public Object visitLibrary(Library library)
visitLibrary
in interface QVTOperationalVisitor<Object>
public Object visitLocalProperty(EStructuralFeature property)
public Object visitContextualProperty(ContextualProperty contextualProperty)
visitContextualProperty
in interface QVTOperationalVisitor<Object>
public Object visitMappingBody(MappingBody mappingBody)
visitMappingBody
in interface QVTOperationalVisitor<Object>
public Object visitMappingCallExp(MappingCallExp mappingCallExp)
visitMappingCallExp
in interface QVTOperationalVisitor<Object>
public Object visitOperationCallExp(OperationCallExp<EClassifier,EOperation> operationCallExp)
visitOperationCallExp
in interface Visitor<Object,EClassifier,EOperation,EStructuralFeature,EEnumLiteral,EParameter,EObject,CallOperationAction,SendSignalAction,Constraint>
visitOperationCallExp
in class EvaluationVisitorImpl<EPackage,EClassifier,EOperation,EStructuralFeature,EEnumLiteral,EParameter,EObject,CallOperationAction,SendSignalAction,Constraint,EClass,EObject>
public Object visitEnumLiteralExp(EnumLiteralExp<EClassifier,EEnumLiteral> el)
visitEnumLiteralExp
in interface Visitor<Object,EClassifier,EOperation,EStructuralFeature,EEnumLiteral,EParameter,EObject,CallOperationAction,SendSignalAction,Constraint>
visitEnumLiteralExp
in class EvaluationVisitorImpl<EPackage,EClassifier,EOperation,EStructuralFeature,EEnumLiteral,EParameter,EObject,CallOperationAction,SendSignalAction,Constraint,EClass,EObject>
public Object visitMappingOperation(MappingOperation mappingOperation)
visitMappingOperation
in interface QVTOperationalVisitor<Object>
null
in case that no result
variable is declared and OclInvalid
in case the
precondition failed and the body was not executed.public Object execute(OperationalTransformation transformation) throws QvtRuntimeException
execute
in interface InternalEvaluator
QvtRuntimeException
public Object visitModule(Module module)
visitModule
in interface QVTOperationalVisitor<Object>
public Object executeHelperOperation(Helper method, Object self, List<Object> args)
method
- the helper operation to executeself
- the contextual instance in case of contextual operation,
otherwise the default instance of the module which defines the
called operationargs
- the actual parameter valuespublic Object visitInstantiationExp(InstantiationExp objectExp)
visitInstantiationExp
in interface ImperativeOCLVisitor<Object>
public TransformationInstance callTransformationImplicitConstructor(OperationalTransformation transformation, List<ModelInstance> transfArgs)
callTransformationImplicitConstructor
in interface InternalEvaluator
public Object visitModuleImport(ModuleImport moduleImport)
visitModuleImport
in interface QVTOperationalVisitor<Object>
public Object visitObjectExp(ObjectExp objectExp)
visitObjectExp
in interface QVTOperationalVisitor<Object>
public Object visitReturnExp(ReturnExp returnExp)
visitReturnExp
in interface ImperativeOCLVisitor<Object>
public Object visitOperationBody(OperationBody operationBody)
visitOperationBody
in interface QVTOperationalVisitor<Object>
public Object visitVarParameter(VarParameter varParameter)
visitVarParameter
in interface QVTOperationalVisitor<Object>
public Object visitVariableInitExp(VariableInitExp variableInitExp)
visitVariableInitExp
in interface ImperativeOCLVisitor<Object>
public Object visitBlockExp(BlockExp blockExp)
visitBlockExp
in interface ImperativeOCLVisitor<Object>
public Object visitComputeExp(ComputeExp computeExp)
visitComputeExp
in interface ImperativeOCLVisitor<Object>
public Object visitWhileExp(WhileExp whileExp)
visitWhileExp
in interface ImperativeOCLVisitor<Object>
public Object visitAltExp(AltExp switchAltExp)
visitAltExp
in interface ImperativeOCLVisitor<Object>
public Object visitSwitchExp(SwitchExp switchExp)
visitSwitchExp
in interface ImperativeOCLVisitor<Object>
public Object visitResolveExp(ResolveExp resolveExp)
visitResolveExp
in interface QVTOperationalVisitor<Object>
public Object visitResolveInExp(ResolveInExp resolveInExp)
visitResolveInExp
in interface QVTOperationalVisitor<Object>
public Object visitModelType(ModelType modelType)
visitModelType
in interface QVTOperationalVisitor<Object>
public Object visitLogExp(LogExp logExp)
visitLogExp
in interface ImperativeOCLVisitor<Object>
public Object visitAssertExp(AssertExp assertExp)
visitAssertExp
in interface ImperativeOCLVisitor<Object>
public Object visitImperativeLoopExp(ImperativeLoopExp imperativeLoopExp)
public Object visitForExp(ForExp forExp)
visitForExp
in interface ImperativeOCLVisitor<Object>
public Object visitImperativeIterateExp(ImperativeIterateExp imperativeIterateExp)
visitImperativeIterateExp
in interface ImperativeOCLVisitor<Object>
public Object visitConstructor(Constructor constructor)
visitConstructor
in interface QVTOperationalVisitor<Object>
public Object visitConstructorBody(ConstructorBody constructorBody)
visitConstructorBody
in interface QVTOperationalVisitor<Object>
public Object visitBreakExp(BreakExp astNode)
visitBreakExp
in interface ImperativeOCLVisitor<Object>
public Object visitCatchtExp(CatchExp astNode)
visitCatchtExp
in interface ImperativeOCLVisitor<Object>
public Object visitContinueExp(ContinueExp astNode)
visitContinueExp
in interface ImperativeOCLVisitor<Object>
public Object visitDictLiteralPart(DictLiteralPart astNode)
visitDictLiteralPart
in interface ImperativeOCLVisitor<Object>
public Object visitOrderedTupleLiteralExp(OrderedTupleLiteralExp astNode)
visitOrderedTupleLiteralExp
in interface ImperativeOCLVisitor<Object>
public Object visitOrderedTupleLiteralPart(OrderedTupleLiteralPart astNode)
visitOrderedTupleLiteralPart
in interface ImperativeOCLVisitor<Object>
public Object visitRaiseExp(RaiseExp raiseExp)
visitRaiseExp
in interface ImperativeOCLVisitor<Object>
public Object visitTryExp(TryExp tryExp)
visitTryExp
in interface ImperativeOCLVisitor<Object>
public Object visitUnlinkExp(UnlinkExp astNode)
visitUnlinkExp
in interface ImperativeOCLVisitor<Object>
public Object visitUnpackExp(UnpackExp astNode)
visitUnpackExp
in interface ImperativeOCLVisitor<Object>
public Object visitCollectionLiteralExp(CollectionLiteralExp<EClassifier> cl)
visitCollectionLiteralExp
in interface Visitor<Object,EClassifier,EOperation,EStructuralFeature,EEnumLiteral,EParameter,EObject,CallOperationAction,SendSignalAction,Constraint>
visitCollectionLiteralExp
in class EvaluationVisitorImpl<EPackage,EClassifier,EOperation,EStructuralFeature,EEnumLiteral,EParameter,EObject,CallOperationAction,SendSignalAction,Constraint,EClass,EObject>
public QvtOperationalEvaluationEnv getOperationalEvaluationEnv()
QvtOperationalEvaluationVisitor
getOperationalEvaluationEnv
in interface QvtOperationalEvaluationVisitor
public QvtOperationalEvaluationVisitorImpl.OperationCallResult runMainEntry(OperationalTransformation transformation, List<Object> args)
runMainEntry
in interface InternalEvaluator
Copyright © 2008, 2018 Borland Software Corporation and others. All Rights Reserved.