org.eclipse.ocl.examples.pivot.util
Class AbstractVisitor<R,C>

java.lang.Object
  extended by org.eclipse.ocl.examples.pivot.util.AbstractVisitor<R,C>
All Implemented Interfaces:
Visitor<R>
Direct Known Subclasses:
AbstractDelegatingVisitor, AbstractExtendingVisitor, AbstractNullVisitor, AbstractWrappingVisitor

public abstract class AbstractVisitor<R,C>
extends java.lang.Object
implements Visitor<R>


Field Summary
protected  C context
          Context for the AST visitation.
 
Constructor Summary
protected AbstractVisitor(C context)
          Initializes me with an initial value for my result.
 
Method Summary
<A> A
getAdapter(java.lang.Class<A> adapter)
          Returns an object which is an instance of the given class associated with this object.
 R safeVisit(Visitable v)
          A null-safe visitation of the specified visitable.
 R visit(Visitable v)
          Perform a visit to the specified visitable.
 
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.pivot.util.Visitor
visitAnnotation, visitAnyType, visitAssociationClass, visitAssociationClassCallExp, visitBagType, visitBehavior, visitBooleanLiteralExp, visitCallExp, visitCallOperationAction, visitClass, visitCollectionItem, visitCollectionLiteralExp, visitCollectionLiteralPart, visitCollectionRange, visitCollectionType, visitComment, visitConnectionPointReference, visitConstraint, visitConstructorExp, visitConstructorPart, visitDataType, visitDetail, visitDynamicElement, visitDynamicProperty, visitDynamicType, visitElement, visitElementExtension, visitEnumeration, visitEnumerationLiteral, visitEnumLiteralExp, visitExpressionInOCL, visitFeature, visitFeatureCallExp, visitFinalState, visitIfExp, visitImport, visiting, visitIntegerLiteralExp, visitInvalidLiteralExp, visitInvalidType, visitIterateExp, visitIteration, visitIteratorExp, visitLambdaType, visitLetExp, visitLibrary, visitLiteralExp, visitLoopExp, visitMessageExp, visitMessageType, visitMetaclass, visitNamedElement, visitNamespace, visitNavigationCallExp, visitNullLiteralExp, visitNumericLiteralExp, visitOCLExpression, visitOpaqueExpression, visitOperation, visitOperationCallExp, visitOperationTemplateParameter, visitOppositePropertyCallExp, visitOrderedSetType, visitPackage, visitPackageableElement, visitParameter, visitParameterableElement, visitPrecedence, visitPrimitiveLiteralExp, visitPrimitiveType, visitProfile, visitProfileApplication, visitProperty, visitPropertyCallExp, visitPseudostate, visitRealLiteralExp, visitRegion, visitRoot, visitSelfType, visitSendSignalAction, visitSequenceType, visitSetType, visitSignal, visitState, visitStateExp, visitStateMachine, visitStereotype, visitStringLiteralExp, visitTemplateableElement, visitTemplateBinding, visitTemplateParameter, visitTemplateParameterSubstitution, visitTemplateParameterType, visitTemplateSignature, visitTransition, visitTrigger, visitTupleLiteralExp, visitTupleLiteralPart, visitTupleType, visitType, visitTypedElement, visitTypedMultiplicityElement, visitTypeExp, visitTypeExtension, visitTypeTemplateParameter, visitUnlimitedNaturalLiteralExp, visitUnspecifiedType, visitUnspecifiedValueExp, visitValueSpecification, visitVariable, visitVariableDeclaration, visitVariableExp, visitVertex, visitVoidType
 

Field Detail

context

@NonNull
protected final C context
Context for the AST visitation.

Constructor Detail

AbstractVisitor

protected AbstractVisitor(@NonNull
                          C context)
Initializes me with an initial value for my result.

Parameters:
context - my initial result value
Method Detail

getAdapter

public <A> A getAdapter(@NonNull
                        java.lang.Class<A> adapter)
Description copied from interface: Visitor
Returns an object which is an instance of the given class associated with this object. Returns null if no such object can be found.

Specified by:
getAdapter in interface Visitor<R>
Parameters:
adapter - the adapter class to look up
Returns:
an object of the given class, or null if this object does not have an adapter for the given class

safeVisit

@Nullable
public R safeVisit(@Nullable
                            Visitable v)
A null-safe visitation of the specified visitable.

Parameters:
v - a visitable, or null
Returns:
null if the visitable is null; otherwise, the result of visiting it

visit

@Nullable
public R visit(@NonNull
                        Visitable v)
Perform a visit to the specified visitable.

Parameters:
v - a visitable, or null
Returns:
null if the visitable is null; otherwise, the result of visiting it