org.eclipse.ocl.examples.codegen.java
Class CG2JavaVisitor
java.lang.Object
org.eclipse.ocl.examples.codegen.cgmodel.util.AbstractCGModelVisitor<R,C>
org.eclipse.ocl.examples.codegen.cgmodel.util.AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
org.eclipse.ocl.examples.codegen.java.CG2JavaVisitor
- All Implemented Interfaces:
- CGModelVisitor<java.lang.Object>
- Direct Known Subclasses:
- JUnitCG2JavaClassVisitor, OCLinEcoreCG2JavaVisitor
public abstract class CG2JavaVisitor
- extends AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
A CG2JavaVisitor serializes the contributions of a tree of model elements in a StringBuilder whose result may be
obtained by toString() on completion.
The individual visits contribute a complete construct, usually one or more statements to the output. However
inlineable expressions contribute just their expression value.
Methods inherited from class org.eclipse.ocl.examples.codegen.cgmodel.util.AbstractExtendingCGModelVisitor |
visitCGCallExp, visitCGClass, visitCGConstant, visitCGEcoreClassConstructorExp, visitCGElement, visitCGEqualsExp, visitCGExecutorProperty, visitCGFinalVariable, visitCGIterationCallExp, visitCGIterator, visitCGLocalVariable, visitCGModel, visitCGNamedElement, visitCGOperationCallExp, visitCGPropertyCallExp, visitCGSettableVariable, visitCGTuplePart, visitCGTypedElement, visitCGValuedElement |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
globalContext
@NonNull
protected final JavaGlobalContext globalContext
genModelHelper
@NonNull
protected final GenModelHelper genModelHelper
analyzer
@NonNull
protected final CodeGenAnalyzer analyzer
id2JavaInterfaceVisitor
@NonNull
protected final Id2JavaInterfaceVisitor id2JavaInterfaceVisitor
js
@NonNull
protected final JavaStream js
localContext
protected JavaLocalContext localContext
- The local Java context for the current operation.
CG2JavaVisitor
public CG2JavaVisitor(@NonNull
JavaCodeGenerator codeGenerator)
addImport
protected void addImport(@NonNull
java.lang.String className)
appendGlobalPrefix
protected void appendGlobalPrefix()
createId2JavaClassVisitor
@NonNull
protected Id2JavaInterfaceVisitor createId2JavaClassVisitor()
createId2JavaExpressionVisitor
@NonNull
protected Id2JavaExpressionVisitor createId2JavaExpressionVisitor(@NonNull
JavaStream javaStream)
generateGlobals
public void generateGlobals(@NonNull
java.lang.Iterable<? extends CGValuedElement> sortedElements)
getAllImports
@NonNull
public java.util.Set<java.lang.String> getAllImports()
getAnalyzer
@NonNull
public CodeGenAnalyzer getAnalyzer()
getCodeGenerator
@NonNull
public JavaCodeGenerator getCodeGenerator()
getExpression
@NonNull
protected CGValuedElement getExpression(@Nullable
CGValuedElement cgExpression)
getGenModelHelper
@NonNull
public GenModelHelper getGenModelHelper()
getLeastDerivedClass
@Nullable
protected java.lang.Class<?> getLeastDerivedClass(java.lang.Class<?> requiredClass,
@NonNull
java.lang.String getAccessor)
getLeastDerivedMethod
@Nullable
protected java.lang.reflect.Method getLeastDerivedMethod(@NonNull
java.lang.Class<?> requiredClass,
@NonNull
java.lang.String getAccessor)
getMetaModelManager
@NonNull
protected MetaModelManager getMetaModelManager()
getValueName
@NonNull
protected java.lang.String getValueName(@NonNull
CGValuedElement cgElement)
getValueName2
protected java.lang.String getValueName2(@NonNull
CGValuedElement cgElement)
toString
@NonNull
public java.lang.String toString()
- Overrides:
toString
in class java.lang.Object
visiting
@Nullable
public java.lang.Object visiting(@NonNull
CGElement visitable)
- Description copied from interface:
CGModelVisitor
- Return the result of visiting a visitable for which no more specific pivot type method
is available.
visitCGBoolean
@Nullable
public java.lang.Object visitCGBoolean(@NonNull
CGBoolean cgBoolean)
- Specified by:
visitCGBoolean
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGBoolean
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGBoxExp
@Nullable
public java.lang.Object visitCGBoxExp(@NonNull
CGBoxExp cgBoxExp)
- Specified by:
visitCGBoxExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGBoxExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGBuiltInIterationCallExp
@Nullable
public java.lang.Object visitCGBuiltInIterationCallExp(@NonNull
CGBuiltInIterationCallExp cgIterationCallExp)
- Specified by:
visitCGBuiltInIterationCallExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGBuiltInIterationCallExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGCastParameter
@Nullable
public java.lang.Object visitCGCastParameter(@NonNull
CGCastParameter cgCastParameter)
- Specified by:
visitCGCastParameter
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGCastParameter
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGCatchExp
@Nullable
public java.lang.Object visitCGCatchExp(@NonNull
CGCatchExp cgCatchExp)
- Specified by:
visitCGCatchExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGCatchExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGCollectionExp
@Nullable
public java.lang.Object visitCGCollectionExp(@NonNull
CGCollectionExp cgCollectionExp)
- Specified by:
visitCGCollectionExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGCollectionExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGCollectionPart
@Nullable
public java.lang.Object visitCGCollectionPart(@NonNull
CGCollectionPart cgCollectionPart)
- Specified by:
visitCGCollectionPart
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGCollectionPart
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGConstantExp
@Nullable
public java.lang.Object visitCGConstantExp(@NonNull
CGConstantExp cgConstantExp)
- Specified by:
visitCGConstantExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGConstantExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGConstraint
@Nullable
public java.lang.Object visitCGConstraint(@NonNull
CGConstraint cgConstraint)
- Specified by:
visitCGConstraint
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGConstraint
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGConstructorExp
@Nullable
public java.lang.Object visitCGConstructorExp(@NonNull
CGConstructorExp cgConstructorExp)
- Specified by:
visitCGConstructorExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGConstructorExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGConstructorPart
@Nullable
public java.lang.Object visitCGConstructorPart(@NonNull
CGConstructorPart cgConstructorPart)
- Specified by:
visitCGConstructorPart
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGConstructorPart
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGEcoreDataTypeConstructorExp
@Nullable
public java.lang.Object visitCGEcoreDataTypeConstructorExp(@NonNull
CGEcoreDataTypeConstructorExp cgConstructorExp)
- Specified by:
visitCGEcoreDataTypeConstructorExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGEcoreDataTypeConstructorExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGEcoreOperationCallExp
@Nullable
public java.lang.Object visitCGEcoreOperationCallExp(@NonNull
CGEcoreOperationCallExp cgOperationCallExp)
- Specified by:
visitCGEcoreOperationCallExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGEcoreOperationCallExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGEcorePropertyCallExp
@Nullable
public java.lang.Object visitCGEcorePropertyCallExp(@NonNull
CGEcorePropertyCallExp cgPropertyCallExp)
- Specified by:
visitCGEcorePropertyCallExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGEcorePropertyCallExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGElementId
@Nullable
public java.lang.Object visitCGElementId(@NonNull
CGElementId cgElementId)
- Specified by:
visitCGElementId
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGElementId
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGExecutorCompositionProperty
@Nullable
public java.lang.Object visitCGExecutorCompositionProperty(@NonNull
CGExecutorCompositionProperty cgExecutorProperty)
- Specified by:
visitCGExecutorCompositionProperty
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGExecutorCompositionProperty
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGExecutorConstructorPart
@Nullable
public java.lang.Object visitCGExecutorConstructorPart(@NonNull
CGExecutorConstructorPart cgExecutorConstructorPart)
- Specified by:
visitCGExecutorConstructorPart
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGExecutorConstructorPart
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGExecutorNavigationProperty
@Nullable
public java.lang.Object visitCGExecutorNavigationProperty(@NonNull
CGExecutorNavigationProperty cgExecutorProperty)
- Specified by:
visitCGExecutorNavigationProperty
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGExecutorNavigationProperty
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGExecutorOppositeProperty
@Nullable
public java.lang.Object visitCGExecutorOppositeProperty(@NonNull
CGExecutorOppositeProperty cgExecutorProperty)
- Specified by:
visitCGExecutorOppositeProperty
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGExecutorOppositeProperty
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGExecutorOperation
@Nullable
public java.lang.Object visitCGExecutorOperation(@NonNull
CGExecutorOperation cgExecutorOperation)
- Specified by:
visitCGExecutorOperation
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGExecutorOperation
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGExecutorOperationCallExp
@Nullable
public java.lang.Object visitCGExecutorOperationCallExp(@NonNull
CGExecutorOperationCallExp cgOperationCallExp)
- Specified by:
visitCGExecutorOperationCallExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGExecutorOperationCallExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGExecutorPropertyCallExp
@Nullable
public java.lang.Object visitCGExecutorPropertyCallExp(@NonNull
CGExecutorPropertyCallExp cgPropertyCallExp)
- Specified by:
visitCGExecutorPropertyCallExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGExecutorPropertyCallExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGExecutorType
@Nullable
public java.lang.Object visitCGExecutorType(@NonNull
CGExecutorType cgExecutorType)
- Specified by:
visitCGExecutorType
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGExecutorType
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGGuardExp
@Nullable
public java.lang.Object visitCGGuardExp(@NonNull
CGGuardExp cgGuardExp)
- Specified by:
visitCGGuardExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGGuardExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGIfExp
@Nullable
public java.lang.Object visitCGIfExp(@NonNull
CGIfExp cgIfExp)
- Specified by:
visitCGIfExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGIfExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGInfinity
@Nullable
public java.lang.Object visitCGInfinity(@NonNull
CGInfinity object)
- Specified by:
visitCGInfinity
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGInfinity
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGInteger
@Nullable
public java.lang.Object visitCGInteger(@NonNull
CGInteger object)
- Specified by:
visitCGInteger
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGInteger
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGInvalid
@Nullable
public java.lang.Object visitCGInvalid(@NonNull
CGInvalid object)
- Specified by:
visitCGInvalid
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGInvalid
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGIsInvalidExp
@Nullable
public java.lang.Object visitCGIsInvalidExp(@NonNull
CGIsInvalidExp cgIsInvalidExp)
- Specified by:
visitCGIsInvalidExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGIsInvalidExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGIsUndefinedExp
@Nullable
public java.lang.Object visitCGIsUndefinedExp(@NonNull
CGIsUndefinedExp cgIsUndefinedExp)
- Specified by:
visitCGIsUndefinedExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGIsUndefinedExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGLetExp
@Nullable
public java.lang.Object visitCGLetExp(@NonNull
CGLetExp cgLetExp)
- Specified by:
visitCGLetExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGLetExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGLibraryIterateCallExp
@Nullable
public java.lang.Object visitCGLibraryIterateCallExp(@NonNull
CGLibraryIterateCallExp cgIterateCallExp)
- Specified by:
visitCGLibraryIterateCallExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGLibraryIterateCallExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGLibraryIterationCallExp
@Nullable
public java.lang.Object visitCGLibraryIterationCallExp(@NonNull
CGLibraryIterationCallExp cgIterationCallExp)
- Specified by:
visitCGLibraryIterationCallExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGLibraryIterationCallExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGLibraryOperationCallExp
@Nullable
public java.lang.Object visitCGLibraryOperationCallExp(@NonNull
CGLibraryOperationCallExp cgOperationCallExp)
- Specified by:
visitCGLibraryOperationCallExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGLibraryOperationCallExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGLibraryPropertyCallExp
@Nullable
public java.lang.Object visitCGLibraryPropertyCallExp(@NonNull
CGLibraryPropertyCallExp cgPropertyCallExp)
- Specified by:
visitCGLibraryPropertyCallExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGLibraryPropertyCallExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGNull
@Nullable
public java.lang.Object visitCGNull(@NonNull
CGNull object)
- Specified by:
visitCGNull
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGNull
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGOperation
@Nullable
public java.lang.Object visitCGOperation(@NonNull
CGOperation cgOperation)
- Specified by:
visitCGOperation
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGOperation
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGPackage
@Nullable
public java.lang.Object visitCGPackage(@NonNull
CGPackage cgPackage)
- Specified by:
visitCGPackage
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGPackage
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGParameter
@Nullable
public java.lang.Object visitCGParameter(@NonNull
CGParameter object)
- Specified by:
visitCGParameter
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGParameter
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGProperty
@Nullable
public java.lang.Object visitCGProperty(@NonNull
CGProperty cgProperty)
- Specified by:
visitCGProperty
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGProperty
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGReal
@Nullable
public java.lang.Object visitCGReal(@NonNull
CGReal object)
- Specified by:
visitCGReal
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGReal
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGString
@Nullable
public java.lang.Object visitCGString(@NonNull
CGString object)
- Specified by:
visitCGString
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGString
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGText
@Nullable
public java.lang.Object visitCGText(@NonNull
CGText cgText)
- Specified by:
visitCGText
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGText
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGTextParameter
@Nullable
public java.lang.Object visitCGTextParameter(@NonNull
CGTextParameter cgTextParameter)
- Specified by:
visitCGTextParameter
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGTextParameter
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGThrowExp
@Nullable
public java.lang.Object visitCGThrowExp(@NonNull
CGThrowExp cgThrowExp)
- Specified by:
visitCGThrowExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGThrowExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGTupleExp
@Nullable
public java.lang.Object visitCGTupleExp(@NonNull
CGTupleExp cgTupleExp)
- Specified by:
visitCGTupleExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGTupleExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGTuplePartCallExp
@Nullable
public java.lang.Object visitCGTuplePartCallExp(@NonNull
CGTuplePartCallExp cgTuplePartCallExp)
- Specified by:
visitCGTuplePartCallExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGTuplePartCallExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGTypeId
@Nullable
public java.lang.Object visitCGTypeId(@NonNull
CGTypeId cgTypeId)
- Specified by:
visitCGTypeId
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGTypeId
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGTypeExp
@Nullable
public java.lang.Object visitCGTypeExp(@NonNull
CGTypeExp cgTypeExp)
- Specified by:
visitCGTypeExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGTypeExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGUnboxExp
@Nullable
public java.lang.Object visitCGUnboxExp(@NonNull
CGUnboxExp cgUnboxExp)
- Specified by:
visitCGUnboxExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGUnboxExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGVariable
@Nullable
public java.lang.Object visitCGVariable(@NonNull
CGVariable cgVariable)
- Specified by:
visitCGVariable
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGVariable
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>
visitCGVariableExp
@Nullable
public java.lang.Object visitCGVariableExp(@NonNull
CGVariableExp cgVariableExp)
- Specified by:
visitCGVariableExp
in interface CGModelVisitor<java.lang.Object>
- Overrides:
visitCGVariableExp
in class AbstractExtendingCGModelVisitor<java.lang.Object,JavaCodeGenerator>