org.eclipse.ocl.internal.evaluation
Class TracingEvaluationVisitor<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

java.lang.Object
  extended by org.eclipse.ocl.EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>
      extended by org.eclipse.ocl.internal.evaluation.TracingEvaluationVisitor<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>
All Implemented Interfaces:
EvaluationVisitor<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>, Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Direct Known Subclasses:
TracingEvaluationVisitor

public class TracingEvaluationVisitor<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>
extends EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

A decorator for evaluation visitors that is installed when evaluation tracing is enabled, to trace interim evaluation results to the console.

Author:
Christian W. Damus (cdamus)

Constructor Summary
TracingEvaluationVisitor(EvaluationVisitor<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> decorated)
          Initializes me with the visitor whose evaluation I trace to the console.
 
Method Summary
 java.lang.Object visitAssociationClassCallExp(AssociationClassCallExp<C,P> callExp)
          Delegates to my decorated visitor.
 java.lang.Object visitBooleanLiteralExp(BooleanLiteralExp<C> literalExp)
          Delegates to my decorated visitor.
 java.lang.Object visitCollectionItem(CollectionItem<C> item)
          Delegates to my decorated visitor.
 java.lang.Object visitCollectionLiteralExp(CollectionLiteralExp<C> literalExp)
          Delegates to my decorated visitor.
 java.lang.Object visitCollectionRange(CollectionRange<C> range)
          Delegates to my decorated visitor.
 java.lang.Object visitConstraint(CT constraint)
          Delegates to my decorated visitor.
 java.lang.Object visitEnumLiteralExp(EnumLiteralExp<C,EL> literalExp)
          Delegates to my decorated visitor.
 java.lang.Object visitExpression(OCLExpression<C> expression)
          Delegates to my decorated visitor.
 java.lang.Object visitExpressionInOCL(ExpressionInOCL<C,PM> expression)
          Delegates to my decorated visitor.
 java.lang.Object visitIfExp(IfExp<C> ifExp)
          Delegates to my decorated visitor.
 java.lang.Object visitIntegerLiteralExp(IntegerLiteralExp<C> literalExp)
          Delegates to my decorated visitor.
 java.lang.Object visitInvalidLiteralExp(InvalidLiteralExp<C> literalExp)
          Delegates to my decorated visitor.
 java.lang.Object visitIterateExp(IterateExp<C,PM> callExp)
          Delegates to my decorated visitor.
 java.lang.Object visitIteratorExp(IteratorExp<C,PM> callExp)
          Delegates to my decorated visitor.
 java.lang.Object visitLetExp(LetExp<C,PM> letExp)
          Delegates to my decorated visitor.
 java.lang.Object visitMessageExp(MessageExp<C,COA,SSA> messageExp)
          Delegates to my decorated visitor.
 java.lang.Object visitNullLiteralExp(NullLiteralExp<C> literalExp)
          Delegates to my decorated visitor.
 java.lang.Object visitOperationCallExp(OperationCallExp<C,O> callExp)
          Delegates to my decorated visitor.
 java.lang.Object visitPropertyCallExp(PropertyCallExp<C,P> callExp)
          Delegates to my decorated visitor.
 java.lang.Object visitRealLiteralExp(RealLiteralExp<C> literalExp)
          Delegates to my decorated visitor.
 java.lang.Object visitStateExp(StateExp<C,S> stateExp)
          Delegates to my decorated visitor.
 java.lang.Object visitStringLiteralExp(StringLiteralExp<C> literalExp)
          Delegates to my decorated visitor.
 java.lang.Object visitTupleLiteralExp(TupleLiteralExp<C,P> literalExp)
          Delegates to my decorated visitor.
 java.lang.Object visitTupleLiteralPart(TupleLiteralPart<C,P> part)
          Delegates to my decorated visitor.
 java.lang.Object visitTypeExp(TypeExp<C> typeExp)
          Delegates to my decorated visitor.
 java.lang.Object visitUnlimitedNaturalLiteralExp(UnlimitedNaturalLiteralExp<C> literalExp)
          Delegates to my decorated visitor.
 java.lang.Object visitUnspecifiedValueExp(UnspecifiedValueExp<C> unspecExp)
          Delegates to my decorated visitor.
 java.lang.Object visitVariable(Variable<C,PM> variable)
          Delegates to my decorated visitor.
 java.lang.Object visitVariableExp(VariableExp<C,PM> variableExp)
          Delegates to my decorated visitor.
 
Methods inherited from class org.eclipse.ocl.EvaluationVisitorDecorator
getDelegate, getEnvironment, getEvaluationEnvironment, getExtentMap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TracingEvaluationVisitor

public TracingEvaluationVisitor(EvaluationVisitor<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E> decorated)
Initializes me with the visitor whose evaluation I trace to the console.

Parameters:
decorated - a real evaluation visitor
Method Detail

visitAssociationClassCallExp

public java.lang.Object visitAssociationClassCallExp(AssociationClassCallExp<C,P> callExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitAssociationClassCallExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitAssociationClassCallExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitBooleanLiteralExp

public java.lang.Object visitBooleanLiteralExp(BooleanLiteralExp<C> literalExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitBooleanLiteralExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitBooleanLiteralExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitCollectionItem

public java.lang.Object visitCollectionItem(CollectionItem<C> item)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitCollectionItem in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitCollectionItem in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitCollectionLiteralExp

public java.lang.Object visitCollectionLiteralExp(CollectionLiteralExp<C> literalExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitCollectionLiteralExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitCollectionLiteralExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitCollectionRange

public java.lang.Object visitCollectionRange(CollectionRange<C> range)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitCollectionRange in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitCollectionRange in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitConstraint

public java.lang.Object visitConstraint(CT constraint)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitConstraint in interface EvaluationVisitor<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>
Specified by:
visitConstraint in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitConstraint in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>
Returns:
for boolean-valued constraints (invariant, precondition, postcondition) Boolean.TRUE if the constraint holds and Boolean.FALSE if it is violated (including evaluations that result in OclInvalid). For operation body conditions, the value of the operation result

visitEnumLiteralExp

public java.lang.Object visitEnumLiteralExp(EnumLiteralExp<C,EL> literalExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitEnumLiteralExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitEnumLiteralExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitExpression

public java.lang.Object visitExpression(OCLExpression<C> expression)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitExpression in interface EvaluationVisitor<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>
Overrides:
visitExpression in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>
Parameters:
expression - the expression to evaluate
Returns:
the value of the expression

visitExpressionInOCL

public java.lang.Object visitExpressionInOCL(ExpressionInOCL<C,PM> expression)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitExpressionInOCL in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitExpressionInOCL in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitIfExp

public java.lang.Object visitIfExp(IfExp<C> ifExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitIfExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitIfExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitIntegerLiteralExp

public java.lang.Object visitIntegerLiteralExp(IntegerLiteralExp<C> literalExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitIntegerLiteralExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitIntegerLiteralExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitInvalidLiteralExp

public java.lang.Object visitInvalidLiteralExp(InvalidLiteralExp<C> literalExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitInvalidLiteralExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitInvalidLiteralExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitIterateExp

public java.lang.Object visitIterateExp(IterateExp<C,PM> callExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitIterateExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitIterateExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitIteratorExp

public java.lang.Object visitIteratorExp(IteratorExp<C,PM> callExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitIteratorExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitIteratorExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitLetExp

public java.lang.Object visitLetExp(LetExp<C,PM> letExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitLetExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitLetExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitMessageExp

public java.lang.Object visitMessageExp(MessageExp<C,COA,SSA> messageExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitMessageExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitMessageExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitNullLiteralExp

public java.lang.Object visitNullLiteralExp(NullLiteralExp<C> literalExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitNullLiteralExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitNullLiteralExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitOperationCallExp

public java.lang.Object visitOperationCallExp(OperationCallExp<C,O> callExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitOperationCallExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitOperationCallExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitPropertyCallExp

public java.lang.Object visitPropertyCallExp(PropertyCallExp<C,P> callExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitPropertyCallExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitPropertyCallExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitRealLiteralExp

public java.lang.Object visitRealLiteralExp(RealLiteralExp<C> literalExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitRealLiteralExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitRealLiteralExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitStateExp

public java.lang.Object visitStateExp(StateExp<C,S> stateExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitStateExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitStateExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitStringLiteralExp

public java.lang.Object visitStringLiteralExp(StringLiteralExp<C> literalExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitStringLiteralExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitStringLiteralExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitTupleLiteralExp

public java.lang.Object visitTupleLiteralExp(TupleLiteralExp<C,P> literalExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitTupleLiteralExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitTupleLiteralExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitTupleLiteralPart

public java.lang.Object visitTupleLiteralPart(TupleLiteralPart<C,P> part)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitTupleLiteralPart in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitTupleLiteralPart in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitTypeExp

public java.lang.Object visitTypeExp(TypeExp<C> typeExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitTypeExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitTypeExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitUnlimitedNaturalLiteralExp

public java.lang.Object visitUnlimitedNaturalLiteralExp(UnlimitedNaturalLiteralExp<C> literalExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitUnlimitedNaturalLiteralExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitUnlimitedNaturalLiteralExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitUnspecifiedValueExp

public java.lang.Object visitUnspecifiedValueExp(UnspecifiedValueExp<C> unspecExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitUnspecifiedValueExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitUnspecifiedValueExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitVariable

public java.lang.Object visitVariable(Variable<C,PM> variable)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitVariable in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitVariable in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

visitVariableExp

public java.lang.Object visitVariableExp(VariableExp<C,PM> variableExp)
Description copied from class: EvaluationVisitorDecorator
Delegates to my decorated visitor.

Specified by:
visitVariableExp in interface Visitor<java.lang.Object,C,O,P,EL,PM,S,COA,SSA,CT>
Overrides:
visitVariableExp in class EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>