org.eclipse.ocl.examples.xtext.essentialocl.cs2as
Class EssentialOCLCSLeft2RightVisitor

java.lang.Object
  extended by org.eclipse.ocl.examples.xtext.base.basecs.util.AbstractBaseCSVisitor<R,C>
      extended by org.eclipse.ocl.examples.xtext.base.basecs.util.AbstractExtendingBaseCSVisitor<Element,CS2PivotConversion>
          extended by org.eclipse.ocl.examples.xtext.base.cs2as.BaseCSLeft2RightVisitor
              extended by org.eclipse.ocl.examples.xtext.essentialocl.essentialoclcs.util.AbstractEssentialOCLCSLeft2RightVisitor
                  extended by org.eclipse.ocl.examples.xtext.essentialocl.cs2as.EssentialOCLCSLeft2RightVisitor
All Implemented Interfaces:
BaseCSVisitor<Element>, EssentialOCLCSVisitor<Element>
Direct Known Subclasses:
AbstractCompleteOCLCSLeft2RightVisitor, AbstractOCLinEcoreCSLeft2RightVisitor, AbstractOCLstdlibCSLeft2RightVisitor

public class EssentialOCLCSLeft2RightVisitor
extends AbstractEssentialOCLCSLeft2RightVisitor


Field Summary
protected  MetaModelManager metaModelManager
           
 
Fields inherited from class org.eclipse.ocl.examples.xtext.base.basecs.util.AbstractBaseCSVisitor
context
 
Constructor Summary
EssentialOCLCSLeft2RightVisitor(CS2PivotConversion context)
           
 
Method Summary
protected  void checkForInvalidImplicitSourceType(ExpCS csInvocationExp)
           
protected  ImplicitSourceTypeIterator createImplicitSourceTypeIterator(ElementCS csElement)
           
protected  OCLExpression createImplicitSourceVariableExp(AbstractNameExpCS csNameExp, Type owningType)
           
protected  VariableExp createImplicitVariableExp(VariableDeclaration variable)
           
protected  Iteration getBestIteration(java.util.List<NamedElement> invocations)
           
protected  Operation getExampleOperation(java.util.List<NamedElement> invocations)
           
protected  VariableDeclaration getImplicitSource(ModelElementCS csExp, Type requiredType)
           
protected  java.util.List<NamedElement> getInvocations(OCLExpression sourceExp, InvocationExpCS csInvocationExp)
           
protected  java.util.List<NamedElement> getInvocations(Type asType, java.lang.String name, int iteratorCount, int expressionCount)
          Return all operations/iterations in asType and its superclasses whose name is name.
protected  java.util.List<NamedElement> getInvocationsInternal(java.util.List<NamedElement> invocations, java.lang.Iterable<? extends DomainOperation> allOperations, int iteratorCount, int expressionCount)
           
protected  boolean isInvalidType(Type type)
           
protected  OperationCallExp refreshOperationCallExp(InvocationExpCS csInvocationExp, OCLExpression sourceExp)
           
protected  OppositePropertyCallExp refreshOppositePropertyCallExp(NameExpCS csNameExp, OCLExpression sourceExp, Property property)
           
protected  PropertyCallExp refreshPropertyCallExp(NameExpCS csNameExp, OCLExpression sourceExp, Property property)
           
protected  void resolveAtPre(NameExpCS csNameExp, FeatureCallExp featureCallExp)
           
protected  OCLExpression resolveBestInvocation(OCLExpression sourceExp, InvocationExpCS csInvocationExp, java.util.List<NamedElement> invocations)
          Resolve an invocation such as name() or source.name(...) or source->name(...) to the best candidate from invocations.
protected  EnumLiteralExp resolveEnumLiteral(ExpCS csExp, EnumerationLiteral enumerationLiteral)
           
protected  OCLExpression resolveExplicitSourceNavigation(OCLExpression sourceExp, NameExpCS csNamedExp)
          Resolve an invocation such as source.name or source->name
protected  OCLExpression resolveImplicitAsSet(OCLExpression sourceExp, Type sourceType, NavigationOperatorCS csOperator)
           
protected  IteratorExp resolveImplicitCollectExp(OCLExpression sourceExp, AbstractNameExpCS csElement)
          Return a non-null implicit collect() call if a sourceExp for a csElement requires an implicit collect.
protected  OCLExpression resolveInvocation(OCLExpression sourceExp, InvocationExpCS csInvocationExp)
          Resolve an invocation such as name() or source.name(...) or source->name(...)
protected  void resolveIterationAccumulators(InvocationExpCS csInvocationExp, LoopExp expression)
           
protected  void resolveIterationBody(InvocationExpCS csInvocationExp, LoopExp expression)
           
protected  LoopExp resolveIterationCallExp(InvocationExpCS csInvocationExp, OCLExpression sourceExp, Iteration iteration)
           
protected  void resolveIterationContent(InvocationExpCS csInvocationExp, LoopExp expression)
           
protected  void resolveIterationIterators(InvocationExpCS csInvocationExp, OCLExpression source, LoopExp expression)
           
protected  void resolveOperationArguments(InvocationExpCS csInvocationExp, Operation operation, OperationCallExp expression)
          Complete the installation of each operation argument in its operation call.
protected  void resolveOperationArgumentTypes(InvocationExpCS csInvocationExp)
          Determine the type of each operation argument so that the appropriate operation overload can be selected.
protected  void resolveOperationCall(OperationCallExp expression, OperatorCS csOperator, ScopeFilter filter)
           
protected  OperationCallExp resolveOperationCallExp(InvocationExpCS csInvocationExp, OperationCallExp operationCallExp, Operation operation)
           
protected  void resolveOperationReturnType(CallExp callExp)
           
protected  CallExp resolvePropertyCallExp(OCLExpression sourceExp, NameExpCS csNameExp, Property property)
           
protected  Type resolvePropertyReturnType(OCLExpression sourceExp, NameExpCS csNameExp, Property property)
           
protected  StateExp resolveStateExp(ExpCS csExp, State state)
           
protected  TypeExp resolveTypeExp(ExpCS csExp, Type type)
           
protected  VariableExp resolveVariableExp(AbstractNameExpCS csNameExp, VariableDeclaration variableDeclaration)
           
 Element visitBinaryOperatorCS(BinaryOperatorCS csOperator)
           
 Element visitBooleanLiteralExpCS(BooleanLiteralExpCS csBooleanLiteralExp)
           
 Element visitCollectionLiteralExpCS(CollectionLiteralExpCS csCollectionLiteralExp)
           
 Element visitCollectionLiteralPartCS(CollectionLiteralPartCS csCollectionLiteralPart)
           
 Element visitCollectionTypeCS(CollectionTypeCS object)
           
 Element visitConstructorExpCS(ConstructorExpCS csConstructorExp)
           
 Element visitConstructorPartCS(ConstructorPartCS csConstructorPart)
           
 Element visitContextCS(ContextCS csContext)
           
 Element visitExpCS(ExpCS object)
           
 Element visitIfExpCS(IfExpCS csIfExp)
           
 Element visitIndexExpCS(IndexExpCS csIndexExp)
           
 Element visitInfixExpCS(InfixExpCS csInfixExp)
           
 Element visitInvalidLiteralExpCS(InvalidLiteralExpCS csInvalidLiteralExp)
           
 Element visitInvocationExpCS(InvocationExpCS csInvocationExp)
          Resolve an invocation such as name()
 Element visitLetExpCS(LetExpCS csLetExp)
           
 Element visitLetVariableCS(LetVariableCS csLetVariable)
           
 Element visitNameExpCS(NameExpCS csNameExp)
           
 Element visitNavigatingArgCS(NavigatingArgCS csNavigatingArg)
           
 OCLExpression visitNavigationOperatorCS(NavigationOperatorCS csOperator)
           
 Element visitNestedExpCS(NestedExpCS csNestedExp)
           
 Element visitNullLiteralExpCS(NullLiteralExpCS csNullLiteralExp)
           
 Element visitNumberLiteralExpCS(NumberLiteralExpCS csNumberLiteralExp)
           
 Element visitOperatorCS(OperatorCS object)
           
 Element visitPrefixExpCS(PrefixExpCS csPrefixExp)
           
 Element visitSelfExpCS(SelfExpCS csSelfExp)
           
 Element visitStringLiteralExpCS(StringLiteralExpCS csStringLiteralExp)
           
 Element visitTupleLiteralExpCS(TupleLiteralExpCS csTupleLiteralExp)
           
 Element visitTupleLiteralPartCS(TupleLiteralPartCS csTupleLiteralPart)
           
 Element visitTypeLiteralExpCS(TypeLiteralExpCS csTypeLiteralExp)
           
 Element visitUnaryOperatorCS(UnaryOperatorCS csOperator)
           
 Element visitUnlimitedNaturalLiteralExpCS(UnlimitedNaturalLiteralExpCS csUnlimitedNaturalLiteralExp)
           
 Element visitVariableCS(VariableCS csVariable)
           
 
Methods inherited from class org.eclipse.ocl.examples.xtext.essentialocl.essentialoclcs.util.AbstractEssentialOCLCSLeft2RightVisitor
visitExpSpecificationCS, visitLiteralExpCS, visitNamedExpCS, visitPrimitiveLiteralExpCS, visitTypeNameExpCS
 
Methods inherited from class org.eclipse.ocl.examples.xtext.base.cs2as.BaseCSLeft2RightVisitor
visitAnnotationCS, visitClassifierCS, visitConstraintCS, visitDetailCS, visiting, visitOperationCS, visitParameterCS, visitSpecificationCS, visitStructuralFeatureCS, visitTemplateBindingCS, visitTemplateParameterCS, visitTemplateParameterSubstitutionCS, visitTemplateSignatureCS, visitTuplePartCS, visitTupleTypeCS, visitTypeRefCS
 
Methods inherited from class org.eclipse.ocl.examples.xtext.base.basecs.util.AbstractExtendingBaseCSVisitor
visitAnnotationElementCS, visitAttributeCS, visitClassCS, visitDataTypeCS, visitDocumentationCS, visitElementCS, visitElementRefCS, visitEnumerationCS, visitEnumerationLiteralCS, visitImportCS, visitLambdaTypeCS, visitLibraryCS, visitModelElementCS, visitModelElementRefCS, visitMultiplicityBoundsCS, visitMultiplicityStringCS, visitNamedElementCS, visitPackageCS, visitPackageOwnerCS, visitPathElementCS, visitPathElementWithURICS, visitPathNameCS, visitPivotableElementCS, visitPrimitiveTypeRefCS, visitReferenceCS, visitRootPackageCS, visitTypedElementCS, visitTypedRefCS, visitTypedTypeRefCS, visitTypeParameterCS, visitWildcardTypeRefCS
 
Methods inherited from class org.eclipse.ocl.examples.xtext.base.basecs.util.AbstractBaseCSVisitor
getAdapter, safeVisit, visit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.ocl.examples.xtext.base.basecs.util.BaseCSVisitor
getAdapter, visitAnnotationCS, visitAnnotationElementCS, visitAttributeCS, visitClassCS, visitClassifierCS, visitConstraintCS, visitDataTypeCS, visitDetailCS, visitDocumentationCS, visitElementCS, visitElementRefCS, visitEnumerationCS, visitEnumerationLiteralCS, visitImportCS, visiting, visitLambdaTypeCS, visitLibraryCS, visitModelElementCS, visitModelElementRefCS, visitMultiplicityBoundsCS, visitMultiplicityStringCS, visitNamedElementCS, visitOperationCS, visitPackageCS, visitPackageOwnerCS, visitParameterCS, visitPathElementCS, visitPathElementWithURICS, visitPathNameCS, visitPivotableElementCS, visitPrimitiveTypeRefCS, visitReferenceCS, visitRootPackageCS, visitSpecificationCS, visitStructuralFeatureCS, visitTemplateBindingCS, visitTemplateParameterCS, visitTemplateParameterSubstitutionCS, visitTemplateSignatureCS, visitTuplePartCS, visitTupleTypeCS, visitTypedElementCS, visitTypedRefCS, visitTypedTypeRefCS, visitTypeParameterCS, visitTypeRefCS, visitWildcardTypeRefCS
 

Field Detail

metaModelManager

@NonNull
protected final MetaModelManager metaModelManager
Constructor Detail

EssentialOCLCSLeft2RightVisitor

public EssentialOCLCSLeft2RightVisitor(@NonNull
                                       CS2PivotConversion context)
Method Detail

checkForInvalidImplicitSourceType

protected void checkForInvalidImplicitSourceType(@NonNull
                                                 ExpCS csInvocationExp)

createImplicitSourceTypeIterator

protected ImplicitSourceTypeIterator createImplicitSourceTypeIterator(@NonNull
                                                                      ElementCS csElement)

createImplicitSourceVariableExp

@NonNull
protected OCLExpression createImplicitSourceVariableExp(@NonNull
                                                                AbstractNameExpCS csNameExp,
                                                                Type owningType)

createImplicitVariableExp

@NonNull
protected VariableExp createImplicitVariableExp(@NonNull
                                                        VariableDeclaration variable)

getBestIteration

@Nullable
protected Iteration getBestIteration(@NonNull
                                              java.util.List<NamedElement> invocations)

getExampleOperation

@Nullable
protected Operation getExampleOperation(@NonNull
                                                 java.util.List<NamedElement> invocations)

getInvocations

@Nullable
protected java.util.List<NamedElement> getInvocations(@Nullable
                                                               OCLExpression sourceExp,
                                                               @NonNull
                                                               InvocationExpCS csInvocationExp)

getImplicitSource

@Nullable
protected VariableDeclaration getImplicitSource(@NonNull
                                                         ModelElementCS csExp,
                                                         @NonNull
                                                         Type requiredType)

getInvocations

@Nullable
protected java.util.List<NamedElement> getInvocations(@NonNull
                                                               Type asType,
                                                               @NonNull
                                                               java.lang.String name,
                                                               int iteratorCount,
                                                               int expressionCount)
Return all operations/iterations in asType and its superclasses whose name is name. For iterations the number of iteration iterators must match iteratorCount unless iteratorCount is zero. For operations the number of parameters must be expressionCount. Returns null if nothing is found.


getInvocationsInternal

@Nullable
protected java.util.List<NamedElement> getInvocationsInternal(@Nullable
                                                                       java.util.List<NamedElement> invocations,
                                                                       @NonNull
                                                                       java.lang.Iterable<? extends DomainOperation> allOperations,
                                                                       int iteratorCount,
                                                                       int expressionCount)

isInvalidType

protected boolean isInvalidType(@Nullable
                                Type type)

refreshOperationCallExp

@NonNull
protected OperationCallExp refreshOperationCallExp(@NonNull
                                                           InvocationExpCS csInvocationExp,
                                                           @NonNull
                                                           OCLExpression sourceExp)

refreshOppositePropertyCallExp

@NonNull
protected OppositePropertyCallExp refreshOppositePropertyCallExp(@NonNull
                                                                         NameExpCS csNameExp,
                                                                         @NonNull
                                                                         OCLExpression sourceExp,
                                                                         @NonNull
                                                                         Property property)

refreshPropertyCallExp

@NonNull
protected PropertyCallExp refreshPropertyCallExp(@NonNull
                                                         NameExpCS csNameExp,
                                                         @NonNull
                                                         OCLExpression sourceExp,
                                                         @NonNull
                                                         Property property)

resolveAtPre

protected void resolveAtPre(@Nullable
                            NameExpCS csNameExp,
                            @NonNull
                            FeatureCallExp featureCallExp)

resolveBestInvocation

@Nullable
protected OCLExpression resolveBestInvocation(@Nullable
                                                       OCLExpression sourceExp,
                                                       @NonNull
                                                       InvocationExpCS csInvocationExp,
                                                       @NonNull
                                                       java.util.List<NamedElement> invocations)
Resolve an invocation such as name() or source.name(...) or source->name(...) to the best candidate from invocations.

sourceExp is null for an implicit source invocation.

csInvocationExp.getNamedElement() must be invoked once, after the left-hand context has been established to enable the lokup to proceed in a simple (perhaps rivial) fashion.


resolveEnumLiteral

@NonNull
protected EnumLiteralExp resolveEnumLiteral(@NonNull
                                                    ExpCS csExp,
                                                    @NonNull
                                                    EnumerationLiteral enumerationLiteral)

resolveExplicitSourceNavigation

@NonNull
protected OCLExpression resolveExplicitSourceNavigation(@NonNull
                                                                OCLExpression sourceExp,
                                                                @NonNull
                                                                NameExpCS csNamedExp)
Resolve an invocation such as source.name or source->name


resolveImplicitAsSet

@NonNull
protected OCLExpression resolveImplicitAsSet(@NonNull
                                                     OCLExpression sourceExp,
                                                     @NonNull
                                                     Type sourceType,
                                                     @NonNull
                                                     NavigationOperatorCS csOperator)

resolveImplicitCollectExp

@Nullable
protected IteratorExp resolveImplicitCollectExp(@NonNull
                                                         OCLExpression sourceExp,
                                                         @NonNull
                                                         AbstractNameExpCS csElement)
Return a non-null implicit collect() call if a sourceExp for a csElement requires an implicit collect. The return call has noo bosdy or return type since they cannot be synmthesized until the body is synthesized.


resolveInvocation

@NonNull
protected OCLExpression resolveInvocation(@Nullable
                                                  OCLExpression sourceExp,
                                                  @NonNull
                                                  InvocationExpCS csInvocationExp)
Resolve an invocation such as name() or source.name(...) or source->name(...)


resolveIterationAccumulators

protected void resolveIterationAccumulators(@NonNull
                                            InvocationExpCS csInvocationExp,
                                            @NonNull
                                            LoopExp expression)

resolveIterationBody

protected void resolveIterationBody(@NonNull
                                    InvocationExpCS csInvocationExp,
                                    @NonNull
                                    LoopExp expression)

resolveIterationCallExp

@NonNull
protected LoopExp resolveIterationCallExp(@NonNull
                                                  InvocationExpCS csInvocationExp,
                                                  @NonNull
                                                  OCLExpression sourceExp,
                                                  @NonNull
                                                  Iteration iteration)

resolveIterationContent

protected void resolveIterationContent(@NonNull
                                       InvocationExpCS csInvocationExp,
                                       @NonNull
                                       LoopExp expression)

resolveIterationIterators

protected void resolveIterationIterators(@NonNull
                                         InvocationExpCS csInvocationExp,
                                         @NonNull
                                         OCLExpression source,
                                         @NonNull
                                         LoopExp expression)

resolveOperationArgumentTypes

protected void resolveOperationArgumentTypes(@NonNull
                                             InvocationExpCS csInvocationExp)
Determine the type of each operation argument so that the appropriate operation overload can be selected. Arguments aligned with type (MetaClass) parameters are set to be parsed as types avoiding ambiguities from implicit opposite properties. Iterator bodies are left unresolved.


resolveOperationArguments

protected void resolveOperationArguments(@NonNull
                                         InvocationExpCS csInvocationExp,
                                         @NonNull
                                         Operation operation,
                                         @NonNull
                                         OperationCallExp expression)
Complete the installation of each operation argument in its operation call.


resolveOperationCall

protected void resolveOperationCall(@NonNull
                                    OperationCallExp expression,
                                    @NonNull
                                    OperatorCS csOperator,
                                    @NonNull
                                    ScopeFilter filter)

resolveOperationCallExp

@NonNull
protected OperationCallExp resolveOperationCallExp(@NonNull
                                                           InvocationExpCS csInvocationExp,
                                                           @NonNull
                                                           OperationCallExp operationCallExp,
                                                           @NonNull
                                                           Operation operation)

resolveOperationReturnType

protected void resolveOperationReturnType(@NonNull
                                          CallExp callExp)

resolvePropertyCallExp

@NonNull
protected CallExp resolvePropertyCallExp(@NonNull
                                                 OCLExpression sourceExp,
                                                 @NonNull
                                                 NameExpCS csNameExp,
                                                 @NonNull
                                                 Property property)

resolvePropertyReturnType

protected Type resolvePropertyReturnType(@NonNull
                                         OCLExpression sourceExp,
                                         @NonNull
                                         NameExpCS csNameExp,
                                         @NonNull
                                         Property property)

resolveStateExp

protected StateExp resolveStateExp(@NonNull
                                   ExpCS csExp,
                                   @NonNull
                                   State state)

resolveTypeExp

@NonNull
protected TypeExp resolveTypeExp(@NonNull
                                         ExpCS csExp,
                                         @NonNull
                                         Type type)

resolveVariableExp

@NonNull
protected VariableExp resolveVariableExp(@NonNull
                                                 AbstractNameExpCS csNameExp,
                                                 @NonNull
                                                 VariableDeclaration variableDeclaration)

visitBinaryOperatorCS

@NonNull
public Element visitBinaryOperatorCS(@NonNull
                                             BinaryOperatorCS csOperator)
Specified by:
visitBinaryOperatorCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitBinaryOperatorCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitBooleanLiteralExpCS

public Element visitBooleanLiteralExpCS(@NonNull
                                        BooleanLiteralExpCS csBooleanLiteralExp)
Specified by:
visitBooleanLiteralExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitBooleanLiteralExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitCollectionLiteralExpCS

public Element visitCollectionLiteralExpCS(@NonNull
                                           CollectionLiteralExpCS csCollectionLiteralExp)
Specified by:
visitCollectionLiteralExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitCollectionLiteralExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitCollectionLiteralPartCS

public Element visitCollectionLiteralPartCS(@NonNull
                                            CollectionLiteralPartCS csCollectionLiteralPart)
Specified by:
visitCollectionLiteralPartCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitCollectionLiteralPartCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitCollectionTypeCS

public Element visitCollectionTypeCS(@NonNull
                                     CollectionTypeCS object)
Specified by:
visitCollectionTypeCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitCollectionTypeCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitConstructorExpCS

public Element visitConstructorExpCS(@NonNull
                                     ConstructorExpCS csConstructorExp)
Specified by:
visitConstructorExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitConstructorExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitConstructorPartCS

public Element visitConstructorPartCS(@NonNull
                                      ConstructorPartCS csConstructorPart)
Specified by:
visitConstructorPartCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitConstructorPartCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitContextCS

public Element visitContextCS(@NonNull
                              ContextCS csContext)
Specified by:
visitContextCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitContextCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitExpCS

public Element visitExpCS(@NonNull
                          ExpCS object)
Specified by:
visitExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitIfExpCS

public Element visitIfExpCS(@NonNull
                            IfExpCS csIfExp)
Specified by:
visitIfExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitIfExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitIndexExpCS

public Element visitIndexExpCS(@NonNull
                               IndexExpCS csIndexExp)
Specified by:
visitIndexExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitIndexExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitInfixExpCS

public Element visitInfixExpCS(@NonNull
                               InfixExpCS csInfixExp)
Specified by:
visitInfixExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitInfixExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitInvalidLiteralExpCS

public Element visitInvalidLiteralExpCS(@NonNull
                                        InvalidLiteralExpCS csInvalidLiteralExp)
Specified by:
visitInvalidLiteralExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitInvalidLiteralExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitInvocationExpCS

public Element visitInvocationExpCS(@NonNull
                                    InvocationExpCS csInvocationExp)
Resolve an invocation such as name()

Specified by:
visitInvocationExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitInvocationExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitLetExpCS

public Element visitLetExpCS(@NonNull
                             LetExpCS csLetExp)
Specified by:
visitLetExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitLetExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitLetVariableCS

public Element visitLetVariableCS(@NonNull
                                  LetVariableCS csLetVariable)
Specified by:
visitLetVariableCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitLetVariableCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitNameExpCS

public Element visitNameExpCS(@NonNull
                              NameExpCS csNameExp)
Specified by:
visitNameExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitNameExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitNavigatingArgCS

public Element visitNavigatingArgCS(@NonNull
                                    NavigatingArgCS csNavigatingArg)
Specified by:
visitNavigatingArgCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitNavigatingArgCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitNavigationOperatorCS

public OCLExpression visitNavigationOperatorCS(@NonNull
                                               NavigationOperatorCS csOperator)
Specified by:
visitNavigationOperatorCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitNavigationOperatorCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitNestedExpCS

public Element visitNestedExpCS(@NonNull
                                NestedExpCS csNestedExp)
Specified by:
visitNestedExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitNestedExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitNullLiteralExpCS

public Element visitNullLiteralExpCS(@NonNull
                                     NullLiteralExpCS csNullLiteralExp)
Specified by:
visitNullLiteralExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitNullLiteralExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitNumberLiteralExpCS

public Element visitNumberLiteralExpCS(@NonNull
                                       NumberLiteralExpCS csNumberLiteralExp)
Specified by:
visitNumberLiteralExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitNumberLiteralExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitOperatorCS

public Element visitOperatorCS(@NonNull
                               OperatorCS object)
Specified by:
visitOperatorCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitOperatorCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitPrefixExpCS

public Element visitPrefixExpCS(@NonNull
                                PrefixExpCS csPrefixExp)
Specified by:
visitPrefixExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitPrefixExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitSelfExpCS

public Element visitSelfExpCS(@NonNull
                              SelfExpCS csSelfExp)
Specified by:
visitSelfExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitSelfExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitStringLiteralExpCS

public Element visitStringLiteralExpCS(@NonNull
                                       StringLiteralExpCS csStringLiteralExp)
Specified by:
visitStringLiteralExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitStringLiteralExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitTupleLiteralExpCS

public Element visitTupleLiteralExpCS(@NonNull
                                      TupleLiteralExpCS csTupleLiteralExp)
Specified by:
visitTupleLiteralExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitTupleLiteralExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitTupleLiteralPartCS

public Element visitTupleLiteralPartCS(@NonNull
                                       TupleLiteralPartCS csTupleLiteralPart)
Specified by:
visitTupleLiteralPartCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitTupleLiteralPartCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitTypeLiteralExpCS

public Element visitTypeLiteralExpCS(@NonNull
                                     TypeLiteralExpCS csTypeLiteralExp)
Specified by:
visitTypeLiteralExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitTypeLiteralExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitUnaryOperatorCS

public Element visitUnaryOperatorCS(@NonNull
                                    UnaryOperatorCS csOperator)
Specified by:
visitUnaryOperatorCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitUnaryOperatorCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitUnlimitedNaturalLiteralExpCS

public Element visitUnlimitedNaturalLiteralExpCS(@NonNull
                                                 UnlimitedNaturalLiteralExpCS csUnlimitedNaturalLiteralExp)
Specified by:
visitUnlimitedNaturalLiteralExpCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitUnlimitedNaturalLiteralExpCS in class AbstractEssentialOCLCSLeft2RightVisitor

visitVariableCS

public Element visitVariableCS(@NonNull
                               VariableCS csVariable)
Specified by:
visitVariableCS in interface EssentialOCLCSVisitor<Element>
Overrides:
visitVariableCS in class AbstractEssentialOCLCSLeft2RightVisitor