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

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.util.List<java.lang.Object>,java.lang.Object>
          extended by org.eclipse.ocl.examples.codegen.analyzer.ReferencesVisitor
All Implemented Interfaces:
CGModelVisitor<java.util.List<java.lang.Object>>
Direct Known Subclasses:
AutoReferencesVisitor

public class ReferencesVisitor
extends AbstractExtendingCGModelVisitor<java.util.List<java.lang.Object>,java.lang.Object>

The ReferencesVisitor compute a list of objects referenced by (but not contained by or containing) the visited object that contribute to that objects identity. The computed list may contain null elements to ensure that the returned lists by two different objects exhibit positioanl equivalence.


Field Summary
static ReferencesVisitor INSTANCE
           
 
Fields inherited from class org.eclipse.ocl.examples.codegen.cgmodel.util.AbstractCGModelVisitor
context
 
Constructor Summary
protected ReferencesVisitor(java.lang.Object context)
           
 
Method Summary
protected  java.util.List<java.lang.Object> append(java.util.List<java.lang.Object> iterables, java.lang.Object... objects)
           
 java.util.List<java.lang.Object> visitCGCastExp(CGCastExp cgElement)
           
 java.util.List<java.lang.Object> visitCGConstant(CGConstant cgElement)
           
 java.util.List<java.lang.Object> visitCGConstantExp(CGConstantExp cgElement)
           
 java.util.List<java.lang.Object> visitCGEcoreOperation(CGEcoreOperation cgElement)
           
 java.util.List<java.lang.Object> visitCGElement(CGElement cgElement)
           
 java.util.List<java.lang.Object> visitCGElementId(CGElementId cgElement)
           
 java.util.List<java.lang.Object> visitCGExecutorOperation(CGExecutorOperation cgElement)
           
 java.util.List<java.lang.Object> visitCGExecutorProperty(CGExecutorProperty cgElement)
           
 java.util.List<java.lang.Object> visitCGExecutorType(CGExecutorType cgElement)
           
 java.util.List<java.lang.Object> visitCGIterationCallExp(CGIterationCallExp cgElement)
           
 java.util.List<java.lang.Object> visitCGNamedElement(CGNamedElement cgElement)
           
 java.util.List<java.lang.Object> visitCGOperationCallExp(CGOperationCallExp cgElement)
           
 java.util.List<java.lang.Object> visitCGOppositePropertyCallExp(CGOppositePropertyCallExp cgElement)
           
 java.util.List<java.lang.Object> visitCGPropertyCallExp(CGPropertyCallExp cgElement)
           
 java.util.List<java.lang.Object> visitCGTypedElement(CGTypedElement cgElement)
           
 java.util.List<java.lang.Object> visitCGTypeExp(CGTypeExp cgElement)
           
 java.util.List<java.lang.Object> visitCGVariableExp(CGVariableExp cgElement)
           
 java.util.List<java.lang.Object> 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, visitCGAssertNonNullExp, visitCGBoolean, visitCGBoxExp, visitCGBuiltInIterationCallExp, visitCGCallable, visitCGCallExp, visitCGCatchExp, visitCGClass, visitCGCollectionExp, visitCGCollectionPart, visitCGConstraint, visitCGConstructorExp, visitCGConstructorPart, visitCGEcoreClassConstructorExp, visitCGEcoreDataTypeConstructorExp, visitCGEcoreOperationCallExp, visitCGEcoreOppositePropertyCallExp, visitCGEcorePropertyCallExp, visitCGExecutorCompositionProperty, visitCGExecutorConstructorPart, visitCGExecutorNavigationProperty, visitCGExecutorOperationCallExp, visitCGExecutorOppositeProperty, visitCGExecutorOppositePropertyCallExp, visitCGExecutorPropertyCallExp, visitCGFinalVariable, visitCGGuardExp, visitCGIfExp, visitCGInteger, visitCGInvalid, visitCGIsEqualExp, visitCGIsInvalidExp, visitCGIsUndefinedExp, visitCGIterator, visitCGLetExp, visitCGLibraryIterateCallExp, visitCGLibraryIterationCallExp, visitCGLibraryOperation, visitCGLibraryOperationCallExp, visitCGLibraryPropertyCallExp, visitCGLocalVariable, visitCGModel, visitCGNavigationCallExp, visitCGNull, visitCGNumber, visitCGOperation, visitCGPackage, visitCGParameter, visitCGProperty, visitCGReal, visitCGSettableVariable, visitCGString, visitCGText, visitCGTextParameter, visitCGThrowExp, visitCGTupleExp, visitCGTuplePart, visitCGTuplePartCallExp, visitCGTypeId, visitCGUnboxExp, visitCGUnlimited, visitCGValuedElement, visitCGVariable
 
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, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.ocl.examples.codegen.cgmodel.util.CGModelVisitor
getAdapter
 

Field Detail

INSTANCE

@NonNull
public static final ReferencesVisitor INSTANCE
Constructor Detail

ReferencesVisitor

protected ReferencesVisitor(@NonNull
                            java.lang.Object context)
Method Detail

append

@Nullable
protected java.util.List<java.lang.Object> append(@Nullable
                                                           java.util.List<java.lang.Object> iterables,
                                                           java.lang.Object... objects)

visiting

@Nullable
public java.util.List<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.


visitCGCastExp

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

visitCGConstant

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

visitCGConstantExp

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

visitCGEcoreOperation

@Nullable
public java.util.List<java.lang.Object> visitCGEcoreOperation(@NonNull
                                                                       CGEcoreOperation cgElement)
Specified by:
visitCGEcoreOperation in interface CGModelVisitor<java.util.List<java.lang.Object>>
Overrides:
visitCGEcoreOperation in class AbstractExtendingCGModelVisitor<java.util.List<java.lang.Object>,java.lang.Object>

visitCGElement

@Nullable
public java.util.List<java.lang.Object> visitCGElement(@NonNull
                                                                CGElement cgElement)
Specified by:
visitCGElement in interface CGModelVisitor<java.util.List<java.lang.Object>>
Overrides:
visitCGElement in class AbstractExtendingCGModelVisitor<java.util.List<java.lang.Object>,java.lang.Object>

visitCGElementId

@Nullable
public java.util.List<java.lang.Object> visitCGElementId(@NonNull
                                                                  CGElementId cgElement)
Specified by:
visitCGElementId in interface CGModelVisitor<java.util.List<java.lang.Object>>
Overrides:
visitCGElementId in class AbstractExtendingCGModelVisitor<java.util.List<java.lang.Object>,java.lang.Object>

visitCGExecutorOperation

@Nullable
public java.util.List<java.lang.Object> visitCGExecutorOperation(@NonNull
                                                                          CGExecutorOperation cgElement)
Specified by:
visitCGExecutorOperation in interface CGModelVisitor<java.util.List<java.lang.Object>>
Overrides:
visitCGExecutorOperation in class AbstractExtendingCGModelVisitor<java.util.List<java.lang.Object>,java.lang.Object>

visitCGExecutorProperty

@Nullable
public java.util.List<java.lang.Object> visitCGExecutorProperty(@NonNull
                                                                         CGExecutorProperty cgElement)
Specified by:
visitCGExecutorProperty in interface CGModelVisitor<java.util.List<java.lang.Object>>
Overrides:
visitCGExecutorProperty in class AbstractExtendingCGModelVisitor<java.util.List<java.lang.Object>,java.lang.Object>

visitCGExecutorType

@Nullable
public java.util.List<java.lang.Object> visitCGExecutorType(@NonNull
                                                                     CGExecutorType cgElement)
Specified by:
visitCGExecutorType in interface CGModelVisitor<java.util.List<java.lang.Object>>
Overrides:
visitCGExecutorType in class AbstractExtendingCGModelVisitor<java.util.List<java.lang.Object>,java.lang.Object>

visitCGNamedElement

@Nullable
public java.util.List<java.lang.Object> visitCGNamedElement(@NonNull
                                                                     CGNamedElement cgElement)
Specified by:
visitCGNamedElement in interface CGModelVisitor<java.util.List<java.lang.Object>>
Overrides:
visitCGNamedElement in class AbstractExtendingCGModelVisitor<java.util.List<java.lang.Object>,java.lang.Object>

visitCGIterationCallExp

@Nullable
public java.util.List<java.lang.Object> visitCGIterationCallExp(@NonNull
                                                                         CGIterationCallExp cgElement)
Specified by:
visitCGIterationCallExp in interface CGModelVisitor<java.util.List<java.lang.Object>>
Overrides:
visitCGIterationCallExp in class AbstractExtendingCGModelVisitor<java.util.List<java.lang.Object>,java.lang.Object>

visitCGOperationCallExp

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

visitCGOppositePropertyCallExp

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

visitCGPropertyCallExp

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

visitCGTypeExp

@Nullable
public java.util.List<java.lang.Object> visitCGTypeExp(@NonNull
                                                                CGTypeExp cgElement)
Specified by:
visitCGTypeExp in interface CGModelVisitor<java.util.List<java.lang.Object>>
Overrides:
visitCGTypeExp in class AbstractExtendingCGModelVisitor<java.util.List<java.lang.Object>,java.lang.Object>

visitCGTypedElement

@Nullable
public java.util.List<java.lang.Object> visitCGTypedElement(@NonNull
                                                                     CGTypedElement cgElement)
Specified by:
visitCGTypedElement in interface CGModelVisitor<java.util.List<java.lang.Object>>
Overrides:
visitCGTypedElement in class AbstractExtendingCGModelVisitor<java.util.List<java.lang.Object>,java.lang.Object>

visitCGVariableExp

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