## org.eclipse.ocl.utilities
Interface Visitor<T,C,O,P,EL,PM,S,COA,SSA,CT>

All Known Subinterfaces:
  EvaluationVisitor<PK,C,O,P,EL,PM,S,COA,SSA,CT,CLS,E>

All Known Implementing Classes:
  AbstractEvaluationVisitor, AbstractVisitor, EvaluationVisitorDecorator, EvaluationVisitorImpl, ToStringVisitor, TracingEvaluationVisitor, ValidationVisitor

    public interface Visitor<T,C,O,P,EL,PM,S,COA,SSA,CT>

Something which can visit an `OCLExpression`. Each subclass will call a corresponding method on the `Visitor`. See Design Patterns -- Visitor.

Method Summary
`T` `visitAssociationClassCallExp(AssociationClassCallExp<C,P> callExp)`
`T` `visitBooleanLiteralExp(BooleanLiteralExp<C> literalExp)`
`T` `visitCollectionItem(CollectionItem<C> item)`
`T` `visitCollectionLiteralExp(CollectionLiteralExp<C> literalExp)`
`T` `visitCollectionRange(CollectionRange<C> range)`
`T` `visitConstraint(CT constraint)`
`T` `visitEnumLiteralExp(EnumLiteralExp<C,EL> literalExp)`
`T` `visitExpressionInOCL(ExpressionInOCL<C,PM> expression)`
`T` `visitIfExp(IfExp<C> ifExp)`
`T` `visitIntegerLiteralExp(IntegerLiteralExp<C> literalExp)`
`T` `visitInvalidLiteralExp(InvalidLiteralExp<C> literalExp)`
`T` `visitIterateExp(IterateExp<C,PM> callExp)`
`T` `visitIteratorExp(IteratorExp<C,PM> callExp)`
`T` `visitLetExp(LetExp<C,PM> letExp)`
`T` `visitMessageExp(MessageExp<C,COA,SSA> messageExp)`
`T` `visitNullLiteralExp(NullLiteralExp<C> literalExp)`
`T` `visitOperationCallExp(OperationCallExp<C,O> callExp)`
`T` `visitPropertyCallExp(PropertyCallExp<C,P> callExp)`
`T` `visitRealLiteralExp(RealLiteralExp<C> literalExp)`
`T` `visitStateExp(StateExp<C,S> stateExp)`
`T` `visitStringLiteralExp(StringLiteralExp<C> literalExp)`
`T` `visitTupleLiteralExp(TupleLiteralExp<C,P> literalExp)`
`T` `visitTupleLiteralPart(TupleLiteralPart<C,P> part)`
`T` `visitTypeExp(TypeExp<C> typeExp)`
`T` `visitUnlimitedNaturalLiteralExp(UnlimitedNaturalLiteralExp<C> literalExp)`
`T` `visitUnspecifiedValueExp(UnspecifiedValueExp<C> unspecExp)`
`T` `visitVariable(Variable<C,PM> variable)`
`T` `visitVariableExp(VariableExp<C,PM> variableExp)`

Method Detail

### visitVariableExp

    T visitVariableExp(VariableExp<C,PM> variableExp)

### visitLetExp

    T visitLetExp(LetExp<C,PM> letExp)

### visitIfExp

    T visitIfExp(IfExp<C> ifExp)

### visitTypeExp

    T visitTypeExp(TypeExp<C> typeExp)

### visitPropertyCallExp

    T visitPropertyCallExp(PropertyCallExp<C,P> callExp)

### visitOperationCallExp

    T visitOperationCallExp(OperationCallExp<C,O> callExp)

### visitAssociationClassCallExp

    T visitAssociationClassCallExp(AssociationClassCallExp<C,P> callExp)

### visitIteratorExp

    T visitIteratorExp(IteratorExp<C,PM> callExp)

### visitIterateExp

    T visitIterateExp(IterateExp<C,PM> callExp)

### visitUnspecifiedValueExp

    T visitUnspecifiedValueExp(UnspecifiedValueExp<C> unspecExp)

### visitIntegerLiteralExp

    T visitIntegerLiteralExp(IntegerLiteralExp<C> literalExp)

### visitUnlimitedNaturalLiteralExp

    T visitUnlimitedNaturalLiteralExp(UnlimitedNaturalLiteralExp<C> literalExp)

### visitRealLiteralExp

    T visitRealLiteralExp(RealLiteralExp<C> literalExp)

### visitStringLiteralExp

    T visitStringLiteralExp(StringLiteralExp<C> literalExp)

### visitBooleanLiteralExp

    T visitBooleanLiteralExp(BooleanLiteralExp<C> literalExp)

### visitEnumLiteralExp

    T visitEnumLiteralExp(EnumLiteralExp<C,EL> literalExp)

### visitCollectionLiteralExp

    T visitCollectionLiteralExp(CollectionLiteralExp<C> literalExp)

### visitCollectionItem

    T visitCollectionItem(CollectionItem<C> item)

### visitCollectionRange

    T visitCollectionRange(CollectionRange<C> range)

### visitTupleLiteralExp

    T visitTupleLiteralExp(TupleLiteralExp<C,P> literalExp)

### visitTupleLiteralPart

    T visitTupleLiteralPart(TupleLiteralPart<C,P> part)

### visitInvalidLiteralExp

    T visitInvalidLiteralExp(InvalidLiteralExp<C> literalExp)

### visitNullLiteralExp

    T visitNullLiteralExp(NullLiteralExp<C> literalExp)

### visitStateExp

    T visitStateExp(StateExp<C,S> stateExp)

### visitMessageExp

    T visitMessageExp(MessageExp<C,COA,SSA> messageExp)

### visitVariable

    T visitVariable(Variable<C,PM> variable)

### visitExpressionInOCL

    T visitExpressionInOCL(ExpressionInOCL<C,PM> expression)

### visitConstraint

    T visitConstraint(CT constraint)

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