org.eclipse.ocl.examples.codegen.analyzer
Class CG2StringVisitor

java.lang.Object
  extended by org.eclipse.ocl.examples.codegen.cgmodel.util.AbstractCGModelVisitor<R,C>
      extended by org.eclipse.ocl.examples.codegen.cgmodel.util.AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>
          extended by org.eclipse.ocl.examples.codegen.analyzer.CG2StringVisitor
All Implemented Interfaces:
CGModelVisitor<java.lang.String>
Direct Known Subclasses:
AutoCG2StringVisitor

public class CG2StringVisitor
extends AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

Converts an OCL expression to a string for debugging. This is not intended to be used by client applications as an AST-to-text transformation.


Nested Class Summary
protected static class CG2StringVisitor.AbstractFactory
           
static interface CG2StringVisitor.Factory
           
 
Field Summary
static CG2StringVisitor.Factory FACTORY
           
protected static java.lang.String NULL_PLACEHOLDER
          Indicates where a required element in the AST was null, so that it is evident in the debugger that something was missing.
protected  java.lang.StringBuilder result
           
 
Fields inherited from class org.eclipse.ocl.examples.codegen.cgmodel.util.AbstractCGModelVisitor
context
 
Constructor Summary
CG2StringVisitor()
          Initializes me.
 
Method Summary
static void addFactory(CG2StringVisitor.Factory factory)
           
protected  void append(java.lang.Number number)
           
protected  void append(java.lang.String string)
           
protected  void appendElementType(CGTypedElement cgTypedElement)
           
protected  void appendName(CGNamedElement cgNamedElement)
           
protected  void appendName(NamedElement namedElement)
           
protected  void appendOperationSignature(CGOperation cgOperation)
           
protected  void appendPropertySignature(CGTypedElement cgElement)
           
protected  void appendQualifiedName(CGNamedElement object)
           
protected  void appendQualifiedName(CGNamedElement parent, java.lang.String separator, CGNamedElement child)
           
 java.lang.String toString()
           
static java.lang.String toString(CGElement cgElement)
           
 java.lang.String visitCGAssertNonNullExp(CGAssertNonNullExp cgAssertNonNullExp)
           
 java.lang.String visitCGBoxExp(CGBoxExp cgBoxExp)
           
 java.lang.String visitCGBuiltInIterationCallExp(CGBuiltInIterationCallExp cgExp)
           
 java.lang.String visitCGCastExp(CGCastExp cgCastExp)
           
 java.lang.String visitCGCatchExp(CGCatchExp cgCatchExp)
           
 java.lang.String visitCGClass(CGClass cgClass)
           
 java.lang.String visitCGCollectionExp(CGCollectionExp cgCollectionExp)
           
 java.lang.String visitCGCollectionPart(CGCollectionPart cgCollectionPart)
           
 java.lang.String visitCGConstant(CGConstant cgConstant)
           
 java.lang.String visitCGConstantExp(CGConstantExp cgConstantExp)
           
 java.lang.String visitCGConstraint(CGConstraint cgConstraint)
           
 java.lang.String visitCGGuardExp(CGGuardExp cgGuardExp)
           
 java.lang.String visitCGIfExp(CGIfExp cgExp)
           
 java.lang.String visitCGInvalid(CGInvalid cgInvalid)
           
 java.lang.String visitCGIsEqualExp(CGIsEqualExp cgIsEqualExp)
           
 java.lang.String visitCGIsInvalidExp(CGIsInvalidExp cgIsInvalidExp)
           
 java.lang.String visitCGIsUndefinedExp(CGIsUndefinedExp cgIsUndefinedExp)
           
 java.lang.String visitCGLetExp(CGLetExp cgLetExp)
           
 java.lang.String visitCGLocalVariable(CGLocalVariable cgVariable)
           
 java.lang.String visitCGModel(CGModel cgModel)
           
 java.lang.String visitCGOperation(CGOperation cgOperation)
           
 java.lang.String visitCGOperationCallExp(CGOperationCallExp oc)
           
 java.lang.String visitCGOppositePropertyCallExp(CGOppositePropertyCallExp pc)
           
 java.lang.String visitCGPackage(CGPackage cgPackage)
           
 java.lang.String visitCGPropertyCallExp(CGPropertyCallExp pc)
           
 java.lang.String visitCGTextParameter(CGTextParameter cgTextParameter)
           
 java.lang.String visitCGThrowExp(CGThrowExp cgThrowExp)
           
 java.lang.String visitCGTupleExp(CGTupleExp cgTupleExp)
           
 java.lang.String visitCGTuplePart(CGTuplePart cgTuplePart)
           
 java.lang.String visitCGUnboxExp(CGUnboxExp cgUnboxExp)
           
 java.lang.String visitCGValuedElement(CGValuedElement cgElement)
           
 java.lang.String visitCGVariable(CGVariable cgElement)
           
 java.lang.String visitCGVariableExp(CGVariableExp cgVariableExp)
           
 java.lang.String visiting(CGElement visitable)
          Return the result of visiting a visitable for which no more specific pivot type method is available.
 
Methods inherited from class org.eclipse.ocl.examples.codegen.cgmodel.util.AbstractExtendingCGModelVisitor
visitCGAccumulator, visitCGBoolean, visitCGCallable, visitCGCallExp, visitCGConstructorExp, visitCGConstructorPart, visitCGEcoreClassConstructorExp, visitCGEcoreDataTypeConstructorExp, visitCGEcoreOperation, visitCGEcoreOperationCallExp, visitCGEcoreOppositePropertyCallExp, visitCGEcorePropertyCallExp, visitCGElement, visitCGElementId, visitCGExecutorCompositionProperty, visitCGExecutorConstructorPart, visitCGExecutorNavigationProperty, visitCGExecutorOperation, visitCGExecutorOperationCallExp, visitCGExecutorOppositeProperty, visitCGExecutorOppositePropertyCallExp, visitCGExecutorProperty, visitCGExecutorPropertyCallExp, visitCGExecutorType, visitCGFinalVariable, visitCGInteger, visitCGIterationCallExp, visitCGIterator, visitCGLibraryIterateCallExp, visitCGLibraryIterationCallExp, visitCGLibraryOperation, visitCGLibraryOperationCallExp, visitCGLibraryPropertyCallExp, visitCGNamedElement, visitCGNavigationCallExp, visitCGNull, visitCGNumber, visitCGParameter, visitCGProperty, visitCGReal, visitCGSettableVariable, visitCGString, visitCGText, visitCGTuplePartCallExp, visitCGTypedElement, visitCGTypeExp, visitCGTypeId, visitCGUnlimited
 
Methods inherited from class org.eclipse.ocl.examples.codegen.cgmodel.util.AbstractCGModelVisitor
getAdapter, safeVisit, visit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eclipse.ocl.examples.codegen.cgmodel.util.CGModelVisitor
getAdapter
 

Field Detail

FACTORY

@NonNull
public static CG2StringVisitor.Factory FACTORY

NULL_PLACEHOLDER

@NonNull
protected static java.lang.String NULL_PLACEHOLDER
Indicates where a required element in the AST was null, so that it is evident in the debugger that something was missing. We don't want just "null" because that would look like the OclVoid literal.


result

@NonNull
protected java.lang.StringBuilder result
Constructor Detail

CG2StringVisitor

public CG2StringVisitor()
Initializes me.

Method Detail

addFactory

public static void addFactory(@NonNull
                              CG2StringVisitor.Factory factory)

toString

public static java.lang.String toString(@NonNull
                                        CGElement cgElement)

append

protected void append(java.lang.Number number)

append

protected void append(java.lang.String string)

appendElementType

protected void appendElementType(@Nullable
                                 CGTypedElement cgTypedElement)

appendName

protected void appendName(CGNamedElement cgNamedElement)

appendName

protected void appendName(NamedElement namedElement)

appendOperationSignature

protected void appendOperationSignature(CGOperation cgOperation)

appendPropertySignature

protected void appendPropertySignature(CGTypedElement cgElement)

appendQualifiedName

protected void appendQualifiedName(CGNamedElement parent,
                                   java.lang.String separator,
                                   CGNamedElement child)

appendQualifiedName

protected void appendQualifiedName(@Nullable
                                   CGNamedElement object)

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

visitCGAssertNonNullExp

@Nullable
public java.lang.String visitCGAssertNonNullExp(@NonNull
                                                         CGAssertNonNullExp cgAssertNonNullExp)
Specified by:
visitCGAssertNonNullExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGAssertNonNullExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGBoxExp

@Nullable
public java.lang.String visitCGBoxExp(@NonNull
                                               CGBoxExp cgBoxExp)
Specified by:
visitCGBoxExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGBoxExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGBuiltInIterationCallExp

@Nullable
public java.lang.String visitCGBuiltInIterationCallExp(@NonNull
                                                                CGBuiltInIterationCallExp cgExp)
Specified by:
visitCGBuiltInIterationCallExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGBuiltInIterationCallExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGCastExp

@Nullable
public java.lang.String visitCGCastExp(@NonNull
                                                CGCastExp cgCastExp)
Specified by:
visitCGCastExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGCastExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGCatchExp

@Nullable
public java.lang.String visitCGCatchExp(@NonNull
                                                 CGCatchExp cgCatchExp)
Specified by:
visitCGCatchExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGCatchExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGClass

public java.lang.String visitCGClass(@NonNull
                                     CGClass cgClass)
Specified by:
visitCGClass in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGClass in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGCollectionExp

@Nullable
public java.lang.String visitCGCollectionExp(@NonNull
                                                      CGCollectionExp cgCollectionExp)
Specified by:
visitCGCollectionExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGCollectionExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGCollectionPart

@Nullable
public java.lang.String visitCGCollectionPart(@NonNull
                                                       CGCollectionPart cgCollectionPart)
Specified by:
visitCGCollectionPart in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGCollectionPart in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGConstant

@Nullable
public java.lang.String visitCGConstant(@NonNull
                                                 CGConstant cgConstant)
Specified by:
visitCGConstant in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGConstant in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGConstantExp

@Nullable
public java.lang.String visitCGConstantExp(@NonNull
                                                    CGConstantExp cgConstantExp)
Specified by:
visitCGConstantExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGConstantExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGConstraint

@Nullable
public java.lang.String visitCGConstraint(@NonNull
                                                   CGConstraint cgConstraint)
Specified by:
visitCGConstraint in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGConstraint in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGGuardExp

@Nullable
public java.lang.String visitCGGuardExp(@NonNull
                                                 CGGuardExp cgGuardExp)
Specified by:
visitCGGuardExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGGuardExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGIfExp

@Nullable
public java.lang.String visitCGIfExp(@NonNull
                                              CGIfExp cgExp)
Specified by:
visitCGIfExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGIfExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGInvalid

@Nullable
public java.lang.String visitCGInvalid(@NonNull
                                                CGInvalid cgInvalid)
Specified by:
visitCGInvalid in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGInvalid in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGIsEqualExp

@Nullable
public java.lang.String visitCGIsEqualExp(@NonNull
                                                   CGIsEqualExp cgIsEqualExp)
Specified by:
visitCGIsEqualExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGIsEqualExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGIsInvalidExp

@Nullable
public java.lang.String visitCGIsInvalidExp(@NonNull
                                                     CGIsInvalidExp cgIsInvalidExp)
Specified by:
visitCGIsInvalidExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGIsInvalidExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGIsUndefinedExp

@Nullable
public java.lang.String visitCGIsUndefinedExp(@NonNull
                                                       CGIsUndefinedExp cgIsUndefinedExp)
Specified by:
visitCGIsUndefinedExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGIsUndefinedExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGLetExp

@Nullable
public java.lang.String visitCGLetExp(@NonNull
                                               CGLetExp cgLetExp)
Specified by:
visitCGLetExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGLetExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGLocalVariable

@Nullable
public java.lang.String visitCGLocalVariable(@NonNull
                                                      CGLocalVariable cgVariable)
Specified by:
visitCGLocalVariable in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGLocalVariable in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGModel

@Nullable
public java.lang.String visitCGModel(@NonNull
                                              CGModel cgModel)
Specified by:
visitCGModel in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGModel in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGOperation

@Nullable
public java.lang.String visitCGOperation(@NonNull
                                                  CGOperation cgOperation)
Specified by:
visitCGOperation in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGOperation in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGOperationCallExp

@Nullable
public java.lang.String visitCGOperationCallExp(@NonNull
                                                         CGOperationCallExp oc)
Specified by:
visitCGOperationCallExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGOperationCallExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGOppositePropertyCallExp

@Nullable
public java.lang.String visitCGOppositePropertyCallExp(@NonNull
                                                                CGOppositePropertyCallExp pc)
Specified by:
visitCGOppositePropertyCallExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGOppositePropertyCallExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGPackage

@Nullable
public java.lang.String visitCGPackage(@NonNull
                                                CGPackage cgPackage)
Specified by:
visitCGPackage in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGPackage in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGPropertyCallExp

@Nullable
public java.lang.String visitCGPropertyCallExp(@NonNull
                                                        CGPropertyCallExp pc)
Specified by:
visitCGPropertyCallExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGPropertyCallExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGTextParameter

@Nullable
public java.lang.String visitCGTextParameter(@NonNull
                                                      CGTextParameter cgTextParameter)
Specified by:
visitCGTextParameter in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGTextParameter in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGThrowExp

@Nullable
public java.lang.String visitCGThrowExp(@NonNull
                                                 CGThrowExp cgThrowExp)
Specified by:
visitCGThrowExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGThrowExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGTupleExp

@Nullable
public java.lang.String visitCGTupleExp(@NonNull
                                                 CGTupleExp cgTupleExp)
Specified by:
visitCGTupleExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGTupleExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGTuplePart

@Nullable
public java.lang.String visitCGTuplePart(@NonNull
                                                  CGTuplePart cgTuplePart)
Specified by:
visitCGTuplePart in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGTuplePart in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGUnboxExp

@Nullable
public java.lang.String visitCGUnboxExp(@NonNull
                                                 CGUnboxExp cgUnboxExp)
Specified by:
visitCGUnboxExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGUnboxExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGValuedElement

@Nullable
public java.lang.String visitCGValuedElement(@NonNull
                                                      CGValuedElement cgElement)
Specified by:
visitCGValuedElement in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGValuedElement in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGVariable

@Nullable
public java.lang.String visitCGVariable(@NonNull
                                                 CGVariable cgElement)
Specified by:
visitCGVariable in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGVariable in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visitCGVariableExp

@Nullable
public java.lang.String visitCGVariableExp(@NonNull
                                                    CGVariableExp cgVariableExp)
Specified by:
visitCGVariableExp in interface CGModelVisitor<java.lang.String>
Overrides:
visitCGVariableExp in class AbstractExtendingCGModelVisitor<java.lang.String,java.lang.Object>

visiting

@Nullable
public java.lang.String 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.