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

    java.lang.Object
      org.eclipse.ocl.EvaluationVisitorDecorator<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>
          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<Object,C,O,P,EL,PM,S,COA,SSA,CT>

    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.

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
`Object` `visitAssociationClassCallExp(AssociationClassCallExp<C,P> callExp)` Delegates to my decorated visitor.
`Object` `visitBooleanLiteralExp(BooleanLiteralExp<C> literalExp)` Delegates to my decorated visitor.
`Object` `visitCollectionItem(CollectionItem<C> item)` Delegates to my decorated visitor.
`Object` `visitCollectionLiteralExp(CollectionLiteralExp<C> literalExp)` Delegates to my decorated visitor.
`Object` `visitCollectionRange(CollectionRange<C> range)` Delegates to my decorated visitor.
`Object` `visitConstraint(CT constraint)` Delegates to my decorated visitor.
`Object` `visitEnumLiteralExp(EnumLiteralExp<C,EL> literalExp)` Delegates to my decorated visitor.
`Object` `visitExpression(OCLExpression<C> expression)` Delegates to my decorated visitor.
`Object` `visitExpressionInOCL(ExpressionInOCL<C,PM> expression)` Delegates to my decorated visitor.
`Object` `visitIfExp(IfExp<C> ifExp)` Delegates to my decorated visitor.
`Object` `visitIntegerLiteralExp(IntegerLiteralExp<C> literalExp)` Delegates to my decorated visitor.
`Object` `visitInvalidLiteralExp(InvalidLiteralExp<C> literalExp)` Delegates to my decorated visitor.
`Object` `visitIterateExp(IterateExp<C,PM> callExp)` Delegates to my decorated visitor.
`Object` `visitIteratorExp(IteratorExp<C,PM> callExp)` Delegates to my decorated visitor.
`Object` `visitLetExp(LetExp<C,PM> letExp)` Delegates to my decorated visitor.
`Object` `visitMessageExp(MessageExp<C,COA,SSA> messageExp)` Delegates to my decorated visitor.
`Object` `visitNullLiteralExp(NullLiteralExp<C> literalExp)` Delegates to my decorated visitor.
`Object` `visitOperationCallExp(OperationCallExp<C,O> callExp)` Delegates to my decorated visitor.
`Object` `visitPropertyCallExp(PropertyCallExp<C,P> callExp)` Delegates to my decorated visitor.
`Object` `visitRealLiteralExp(RealLiteralExp<C> literalExp)` Delegates to my decorated visitor.
`Object` `visitStateExp(StateExp<C,S> stateExp)` Delegates to my decorated visitor.
`Object` `visitStringLiteralExp(StringLiteralExp<C> literalExp)` Delegates to my decorated visitor.
`Object` `visitTupleLiteralExp(TupleLiteralExp<C,P> literalExp)` Delegates to my decorated visitor.
`Object` `visitTupleLiteralPart(TupleLiteralPart<C,P> part)` Delegates to my decorated visitor.
`Object` `visitTypeExp(TypeExp<C> typeExp)` Delegates to my decorated visitor.
`Object` `visitUnlimitedNaturalLiteralExp(UnlimitedNaturalLiteralExp<C> literalExp)` Delegates to my decorated visitor.
`Object` `visitUnspecifiedValueExp(UnspecifiedValueExp<C> unspecExp)` Delegates to my decorated visitor.
`Object` `visitVariable(Variable<C,PM> variable)` Delegates to my decorated visitor.
`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 Object visitAssociationClassCallExp(AssociationClassCallExp<C,P> callExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitAssociationClassCallExp` in interface `Visitor<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 Object visitBooleanLiteralExp(BooleanLiteralExp<C> literalExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitBooleanLiteralExp` in interface `Visitor<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 Object visitCollectionItem(CollectionItem<C> item)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitCollectionItem` in interface `Visitor<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 Object visitCollectionLiteralExp(CollectionLiteralExp<C> literalExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitCollectionLiteralExp` in interface `Visitor<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 Object visitCollectionRange(CollectionRange<C> range)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitCollectionRange` in interface `Visitor<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 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<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 Object visitEnumLiteralExp(EnumLiteralExp<C,EL> literalExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitEnumLiteralExp` in interface `Visitor<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 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 Object visitExpressionInOCL(ExpressionInOCL<C,PM> expression)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitExpressionInOCL` in interface `Visitor<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 Object visitIfExp(IfExp<C> ifExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitIfExp` in interface `Visitor<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 Object visitIntegerLiteralExp(IntegerLiteralExp<C> literalExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitIntegerLiteralExp` in interface `Visitor<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 Object visitInvalidLiteralExp(InvalidLiteralExp<C> literalExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitInvalidLiteralExp` in interface `Visitor<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 Object visitIterateExp(IterateExp<C,PM> callExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitIterateExp` in interface `Visitor<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 Object visitIteratorExp(IteratorExp<C,PM> callExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitIteratorExp` in interface `Visitor<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 Object visitLetExp(LetExp<C,PM> letExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitLetExp` in interface `Visitor<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 Object visitMessageExp(MessageExp<C,COA,SSA> messageExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitMessageExp` in interface `Visitor<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 Object visitNullLiteralExp(NullLiteralExp<C> literalExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitNullLiteralExp` in interface `Visitor<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 Object visitOperationCallExp(OperationCallExp<C,O> callExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitOperationCallExp` in interface `Visitor<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 Object visitPropertyCallExp(PropertyCallExp<C,P> callExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitPropertyCallExp` in interface `Visitor<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 Object visitRealLiteralExp(RealLiteralExp<C> literalExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitRealLiteralExp` in interface `Visitor<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 Object visitStateExp(StateExp<C,S> stateExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitStateExp` in interface `Visitor<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 Object visitStringLiteralExp(StringLiteralExp<C> literalExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitStringLiteralExp` in interface `Visitor<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 Object visitTupleLiteralExp(TupleLiteralExp<C,P> literalExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitTupleLiteralExp` in interface `Visitor<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 Object visitTupleLiteralPart(TupleLiteralPart<C,P> part)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitTupleLiteralPart` in interface `Visitor<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 Object visitTypeExp(TypeExp<C> typeExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitTypeExp` in interface `Visitor<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 Object visitUnlimitedNaturalLiteralExp(UnlimitedNaturalLiteralExp<C> literalExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitUnlimitedNaturalLiteralExp` in interface `Visitor<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 Object visitUnspecifiedValueExp(UnspecifiedValueExp<C> unspecExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitUnspecifiedValueExp` in interface `Visitor<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 Object visitVariable(Variable<C,PM> variable)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitVariable` in interface `Visitor<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 Object visitVariableExp(VariableExp<C,PM> variableExp)

  Description copied from class: `EvaluationVisitorDecorator`
  Delegates to my decorated visitor.

  Specified by:
    `visitVariableExp` in interface `Visitor<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>`

Copyright 2002, 2007 IBM Corporation and others. All Rights Reserved.