## org.eclipse.ocl.ecore.util
Class EcoreSwitch<T>

    java.lang.Object
      org.eclipse.ocl.ecore.util.EcoreSwitch<T>

    public class EcoreSwitch<T>

extends Object

The Switch for the model's inheritance hierarchy. It supports the call `doSwitch(object)` to invoke the `caseXXX` method for each class of the model, starting with the actual class of the object and proceeding up the inheritance hierarchy until a non-null result is returned, which is the result of the switch.

See Also:
  `EcorePackage`

Field Summary
`protected static EcorePackage` `modelPackage` The cached model package

Constructor Summary
`EcoreSwitch()` Creates an instance of the switch

Method Summary

`

`<O> T`

`

`caseAnyType_1(AnyType<O> object)`
Returns the result of interpreting the object as an instance of 'Any Type'

`T` `caseAnyType(AnyType object)` Returns the result of interpreting the object as an instance of 'Any Type'

`

`<C,P> T`

`

`caseAssociationClassCallExp_1(AssociationClassCallExp<C,P> object)`
Returns the result of interpreting the object as an instance of 'Association Class Call Exp'

`T` `caseAssociationClassCallExp(AssociationClassCallExp object)` Returns the result of interpreting the object as an instance of 'Association Class Call Exp'
`T` `caseASTNode(ASTNode object)` Returns the result of interpreting the object as an instance of 'AST Node'

`

`<C,O> T`

`

`caseBagType_1(BagType<C,O> object)`
Returns the result of interpreting the object as an instance of 'Bag Type'

`T` `caseBagType(BagType object)` Returns the result of interpreting the object as an instance of 'Bag Type'

`

`<C> T`

`

`caseBooleanLiteralExp_1(BooleanLiteralExp<C> object)`
Returns the result of interpreting the object as an instance of 'Boolean Literal Exp'

`T` `caseBooleanLiteralExp(BooleanLiteralExp object)` Returns the result of interpreting the object as an instance of 'Boolean Literal Exp'

`

`<C> T`

`

`caseCallExp_1(CallExp<C> object)`
Returns the result of interpreting the object as an instance of 'Call Exp'

`T` `caseCallExp(CallExp object)` Returns the result of interpreting the object as an instance of 'Call Exp'
`T` `caseCallingASTNode(CallingASTNode object)` Returns the result of interpreting the object as an instance of 'Calling AST Node'
`T` `caseCallOperationAction(CallOperationAction object)` Returns the result of interpreting the object as an instance of 'Call Operation Action'

`

`<C> T`

`

`caseCollectionItem_1(CollectionItem<C> object)`
Returns the result of interpreting the object as an instance of 'Collection Item'

`T` `caseCollectionItem(CollectionItem object)` Returns the result of interpreting the object as an instance of 'Collection Item'

`

`<C> T`

`

`caseCollectionLiteralExp_1(CollectionLiteralExp<C> object)`
Returns the result of interpreting the object as an instance of 'Collection Literal Exp'

`T` `caseCollectionLiteralExp(CollectionLiteralExp object)` Returns the result of interpreting the object as an instance of 'Collection Literal Exp'

`

`<C> T`

`

`caseCollectionLiteralPart_1(CollectionLiteralPart<C> object)`
Returns the result of interpreting the object as an instance of 'Collection Literal Part'

`T` `caseCollectionLiteralPart(CollectionLiteralPart object)` Returns the result of interpreting the object as an instance of 'Collection Literal Part'

`

`<C> T`

`

`caseCollectionRange_1(CollectionRange<C> object)`
Returns the result of interpreting the object as an instance of 'Collection Range'

`T` `caseCollectionRange(CollectionRange object)` Returns the result of interpreting the object as an instance of 'Collection Range'

`

`<C,O> T`

`

`caseCollectionType_1(CollectionType<C,O> object)`
Returns the result of interpreting the object as an instance of 'Collection Type'

`T` `caseCollectionType(CollectionType object)` Returns the result of interpreting the object as an instance of 'Collection Type'
`T` `caseConstraint(Constraint object)` Returns the result of interpreting the object as an instance of 'Constraint'
`T` `caseEClass(EClass object)` Returns the result of interpreting the object as an instance of 'EClass'
`T` `caseEClassifier(EClassifier object)` Returns the result of interpreting the object as an instance of 'EClassifier'
`T` `caseEDataType(EDataType object)` Returns the result of interpreting the object as an instance of 'EData Type'
`T` `caseElementType_1(ElementType object)` Returns the result of interpreting the object as an instance of 'Element Type'
`T` `caseElementType(ElementType object)` Returns the result of interpreting the object as an instance of 'Element Type'
`T` `caseEModelElement(EModelElement object)` Returns the result of interpreting the object as an instance of 'EModel Element'
`T` `caseENamedElement(ENamedElement object)` Returns the result of interpreting the object as an instance of 'ENamed Element'

`

`<C,EL> T`

`

`caseEnumLiteralExp_1(EnumLiteralExp<C,EL> object)`
Returns the result of interpreting the object as an instance of 'Enum Literal Exp'

`T` `caseEnumLiteralExp(EnumLiteralExp object)` Returns the result of interpreting the object as an instance of 'Enum Literal Exp'
`T` `caseETypedElement(ETypedElement object)` Returns the result of interpreting the object as an instance of 'ETyped Element'

`

`<C,PM> T`

`

`caseExpressionInOCL_1(ExpressionInOCL<C,PM> object)`
Returns the result of interpreting the object as an instance of 'Expression In OCL'

`T` `caseExpressionInOCL(ExpressionInOCL object)` Returns the result of interpreting the object as an instance of 'Expression In OCL'

`

`<C> T`

`

`caseFeatureCallExp_1(FeatureCallExp<C> object)`
Returns the result of interpreting the object as an instance of 'Feature Call Exp'

`T` `caseFeatureCallExp(FeatureCallExp object)` Returns the result of interpreting the object as an instance of 'Feature Call Exp'

`

`<C> T`

`

`caseIfExp_1(IfExp<C> object)`
Returns the result of interpreting the object as an instance of 'If Exp'

`T` `caseIfExp(IfExp object)` Returns the result of interpreting the object as an instance of 'If Exp'

`

`<C> T`

`

`caseIntegerLiteralExp_1(IntegerLiteralExp<C> object)`
Returns the result of interpreting the object as an instance of 'Integer Literal Exp'

`T` `caseIntegerLiteralExp(IntegerLiteralExp object)` Returns the result of interpreting the object as an instance of 'Integer Literal Exp'

`

`<C> T`

`

`caseInvalidLiteralExp_1(InvalidLiteralExp<C> object)`
Returns the result of interpreting the object as an instance of 'Invalid Literal Exp'

`T` `caseInvalidLiteralExp(InvalidLiteralExp object)` Returns the result of interpreting the object as an instance of 'Invalid Literal Exp'

`

`<O> T`

`

`caseInvalidType_1(InvalidType<O> object)`
Returns the result of interpreting the object as an instance of 'Invalid Type'

`T` `caseInvalidType(InvalidType object)` Returns the result of interpreting the object as an instance of 'Invalid Type'

`

`<C,PM> T`

`

`caseIterateExp_1(IterateExp<C,PM> object)`
Returns the result of interpreting the object as an instance of 'Iterate Exp'

`T` `caseIterateExp(IterateExp object)` Returns the result of interpreting the object as an instance of 'Iterate Exp'

`

`<C,PM> T`

`

`caseIteratorExp_1(IteratorExp<C,PM> object)`
Returns the result of interpreting the object as an instance of 'Iterator Exp'

`T` `caseIteratorExp(IteratorExp object)` Returns the result of interpreting the object as an instance of 'Iterator Exp'

`

`<C,PM> T`

`

`caseLetExp_1(LetExp<C,PM> object)`
Returns the result of interpreting the object as an instance of 'Let Exp'

`T` `caseLetExp(LetExp object)` Returns the result of interpreting the object as an instance of 'Let Exp'

`

`<C> T`

`

`caseLiteralExp_1(LiteralExp<C> object)`
Returns the result of interpreting the object as an instance of 'Literal Exp'

`T` `caseLiteralExp(LiteralExp object)` Returns the result of interpreting the object as an instance of 'Literal Exp'

`

`<C,PM> T`

`

`caseLoopExp_1(LoopExp<C,PM> object)`
Returns the result of interpreting the object as an instance of 'Loop Exp'

`T` `caseLoopExp(LoopExp object)` Returns the result of interpreting the object as an instance of 'Loop Exp'

`

`<C,COA,SSA> T`

`

`caseMessageExp_1(MessageExp<C,COA,SSA> object)`
Returns the result of interpreting the object as an instance of 'Message Exp'

`T` `caseMessageExp(MessageExp object)` Returns the result of interpreting the object as an instance of 'Message Exp'

`

`<C,O,P> T`

`

`caseMessageType_1(MessageType<C,O,P> object)`
Returns the result of interpreting the object as an instance of 'Message Type'

`T` `caseMessageType(MessageType object)` Returns the result of interpreting the object as an instance of 'Message Type'

`

`<C,P> T`

`

`caseNavigationCallExp_1(NavigationCallExp<C,P> object)`
Returns the result of interpreting the object as an instance of 'Navigation Call Exp'

`T` `caseNavigationCallExp(NavigationCallExp object)` Returns the result of interpreting the object as an instance of 'Navigation Call Exp'

`

`<C> T`

`

`caseNullLiteralExp_1(NullLiteralExp<C> object)`
Returns the result of interpreting the object as an instance of 'Null Literal Exp'

`T` `caseNullLiteralExp(NullLiteralExp object)` Returns the result of interpreting the object as an instance of 'Null Literal Exp'

`

`<C> T`

`

`caseNumericLiteralExp_1(NumericLiteralExp<C> object)`
Returns the result of interpreting the object as an instance of 'Numeric Literal Exp'

`T` `caseNumericLiteralExp(NumericLiteralExp object)` Returns the result of interpreting the object as an instance of 'Numeric Literal Exp'

`

`<C> T`

`

`caseOCLExpression_1(OCLExpression<C> object)`
Returns the result of interpreting the object as an instance of 'OCL Expression'

`T` `caseOCLExpression(OCLExpression object)` Returns the result of interpreting the object as an instance of 'OCL Expression'

`

`<C,O> T`

`

`caseOperationCallExp_1(OperationCallExp<C,O> object)`
Returns the result of interpreting the object as an instance of 'Operation Call Exp'

`T` `caseOperationCallExp(OperationCallExp object)` Returns the result of interpreting the object as an instance of 'Operation Call Exp'

`

`<C,O> T`

`

`caseOrderedSetType_1(OrderedSetType<C,O> object)`
Returns the result of interpreting the object as an instance of 'Ordered Set Type'

`T` `caseOrderedSetType(OrderedSetType object)` Returns the result of interpreting the object as an instance of 'Ordered Set Type'

`

`<O> T`

`

`casePredefinedType(PredefinedType<O> object)`
Returns the result of interpreting the object as an instance of 'Predefined Type'

`

`<C> T`

`

`casePrimitiveLiteralExp_1(PrimitiveLiteralExp<C> object)`
Returns the result of interpreting the object as an instance of 'Primitive Literal Exp'

`T` `casePrimitiveLiteralExp(PrimitiveLiteralExp object)` Returns the result of interpreting the object as an instance of 'Primitive Literal Exp'

`

`<O> T`

`

`casePrimitiveType_1(PrimitiveType<O> object)`
Returns the result of interpreting the object as an instance of 'Primitive Type'

`T` `casePrimitiveType(PrimitiveType object)` Returns the result of interpreting the object as an instance of 'Primitive Type'

`

`<C,P> T`

`

`casePropertyCallExp_1(PropertyCallExp<C,P> object)`
Returns the result of interpreting the object as an instance of 'Property Call Exp'

`T` `casePropertyCallExp(PropertyCallExp object)` Returns the result of interpreting the object as an instance of 'Property Call Exp'

`

`<C> T`

`

`caseRealLiteralExp_1(RealLiteralExp<C> object)`
Returns the result of interpreting the object as an instance of 'Real Literal Exp'

`T` `caseRealLiteralExp(RealLiteralExp object)` Returns the result of interpreting the object as an instance of 'Real Literal Exp'
`T` `caseSendSignalAction(SendSignalAction object)` Returns the result of interpreting the object as an instance of 'Send Signal Action'

`

`<C,O> T`

`

`caseSequenceType_1(SequenceType<C,O> object)`
Returns the result of interpreting the object as an instance of 'Sequence Type'

`T` `caseSequenceType(SequenceType object)` Returns the result of interpreting the object as an instance of 'Sequence Type'

`

`<C,O> T`

`

`caseSetType_1(SetType<C,O> object)`
Returns the result of interpreting the object as an instance of 'Set Type'

`T` `caseSetType(SetType object)` Returns the result of interpreting the object as an instance of 'Set Type'

`

`<C,S> T`

`

`caseStateExp_1(StateExp<C,S> object)`
Returns the result of interpreting the object as an instance of 'State Exp'

`T` `caseStateExp(StateExp object)` Returns the result of interpreting the object as an instance of 'State Exp'

`

`<C> T`

`

`caseStringLiteralExp_1(StringLiteralExp<C> object)`
Returns the result of interpreting the object as an instance of 'String Literal Exp'

`T` `caseStringLiteralExp(StringLiteralExp object)` Returns the result of interpreting the object as an instance of 'String Literal Exp'

`

`<C,P> T`

`

`caseTupleLiteralExp_1(TupleLiteralExp<C,P> object)`
Returns the result of interpreting the object as an instance of 'Tuple Literal Exp'

`T` `caseTupleLiteralExp(TupleLiteralExp object)` Returns the result of interpreting the object as an instance of 'Tuple Literal Exp'

`

`<C,P> T`

`

`caseTupleLiteralPart_1(TupleLiteralPart<C,P> object)`
Returns the result of interpreting the object as an instance of 'Tuple Literal Part'

`T` `caseTupleLiteralPart(TupleLiteralPart object)` Returns the result of interpreting the object as an instance of 'Tuple Literal Part'

`

`<O,P> T`

`

`caseTupleType_1(TupleType<O,P> object)`
Returns the result of interpreting the object as an instance of 'Tuple Type'

`T` `caseTupleType(TupleType object)` Returns the result of interpreting the object as an instance of 'Tuple Type'
`T` `caseTypedASTNode(TypedASTNode object)` Returns the result of interpreting the object as an instance of 'Typed AST Node'

`

`<C> T`

`

`caseTypedElement(TypedElement<C> object)`
Returns the result of interpreting the object as an instance of 'Typed Element'

`

`<C> T`

`

`caseTypeExp_1(TypeExp<C> object)`
Returns the result of interpreting the object as an instance of 'Type Exp'

`T` `caseTypeExp(TypeExp object)` Returns the result of interpreting the object as an instance of 'Type Exp'

`

`<C,O> T`

`

`caseTypeType_1(TypeType<C,O> object)`
Returns the result of interpreting the object as an instance of 'Type Type'

`T` `caseTypeType(TypeType object)` Returns the result of interpreting the object as an instance of 'Type Type'

`

`<C> T`

`

`caseUnlimitedNaturalLiteralExp_1(UnlimitedNaturalLiteralExp<C> object)`
Returns the result of interpreting the object as an instance of 'Unlimited Natural Literal Exp'

`T` `caseUnlimitedNaturalLiteralExp(UnlimitedNaturalLiteralExp object)` Returns the result of interpreting the object as an instance of 'Unlimited Natural Literal Exp'

`

`<C> T`

`

`caseUnspecifiedValueExp_1(UnspecifiedValueExp<C> object)`
Returns the result of interpreting the object as an instance of 'Unspecified Value Exp'

`T` `caseUnspecifiedValueExp(UnspecifiedValueExp object)` Returns the result of interpreting the object as an instance of 'Unspecified Value Exp'

`

`<C,PM> T`

`

`caseVariable_1(Variable<C,PM> object)`
Returns the result of interpreting the object as an instance of 'Variable'

`T` `caseVariable(Variable object)` Returns the result of interpreting the object as an instance of 'Variable'

`

`<C,PM> T`

`

`caseVariableExp_1(VariableExp<C,PM> object)`
Returns the result of interpreting the object as an instance of 'Variable Exp'

`T` `caseVariableExp(VariableExp object)` Returns the result of interpreting the object as an instance of 'Variable Exp'
`T` `caseVisitable(Visitable object)` Returns the result of interpreting the object as an instance of 'Visitable'

`

`<O> T`

`

`caseVoidType_1(VoidType<O> object)`
Returns the result of interpreting the object as an instance of 'Void Type'

`T` `caseVoidType(VoidType object)` Returns the result of interpreting the object as an instance of 'Void Type'
`T` `defaultCase(EObject object)` Returns the result of interpreting the object as an instance of 'EObject'
`protected T` `doSwitch(EClass theEClass, EObject theEObject)` Calls `caseXXX` for each class of the model until one returns a non null result; it yields that result
`T` `doSwitch(EObject theEObject)` Calls `caseXXX` for each class of the model until one returns a non null result; it yields that result
`protected T` `doSwitch(int classifierID, EObject theEObject)` Calls `caseXXX` for each class of the model until one returns a non null result; it yields that result

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### modelPackage

    protected static EcorePackage modelPackage

  The cached model package

Constructor Detail

### EcoreSwitch

    public EcoreSwitch()

  Creates an instance of the switch.

Method Detail

### doSwitch

    public T doSwitch(EObject theEObject)

  Calls `caseXXX` for each class of the model until one returns a non null result; it yields that result.

  Returns:
    the first non-null result returned by a `caseXXX` call.

### doSwitch

    protected T doSwitch(EClass theEClass,
                         EObject theEObject)

  Calls `caseXXX` for each class of the model until one returns a non null result; it yields that result.

  Returns:
    the first non-null result returned by a `caseXXX` call.

### doSwitch

    protected T doSwitch(int classifierID,
                         EObject theEObject)

  Calls `caseXXX` for each class of the model until one returns a non null result; it yields that result.

  Returns:
    the first non-null result returned by a `caseXXX` call.

### caseAnyType

    public T caseAnyType(AnyType object)

  Returns the result of interpreting the object as an instance of 'Any Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Any Type'.
  See Also:
    `doSwitch(EObject)`

### caseBagType

    public T caseBagType(BagType object)

  Returns the result of interpreting the object as an instance of 'Bag Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Bag Type'.
  See Also:
    `doSwitch(EObject)`

### caseCollectionType

    public T caseCollectionType(CollectionType object)

  Returns the result of interpreting the object as an instance of 'Collection Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Collection Type'.
  See Also:
    `doSwitch(EObject)`

### caseElementType

    public T caseElementType(ElementType object)

  Returns the result of interpreting the object as an instance of 'Element Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Element Type'.
  See Also:
    `doSwitch(EObject)`

### caseInvalidType

    public T caseInvalidType(InvalidType object)

  Returns the result of interpreting the object as an instance of 'Invalid Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Invalid Type'.
  See Also:
    `doSwitch(EObject)`

### caseMessageType

    public T caseMessageType(MessageType object)

  Returns the result of interpreting the object as an instance of 'Message Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Message Type'.
  See Also:
    `doSwitch(EObject)`

### caseOrderedSetType

    public T caseOrderedSetType(OrderedSetType object)

  Returns the result of interpreting the object as an instance of 'Ordered Set Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Ordered Set Type'.
  See Also:
    `doSwitch(EObject)`

### casePrimitiveType

    public T casePrimitiveType(PrimitiveType object)

  Returns the result of interpreting the object as an instance of 'Primitive Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Primitive Type'.
  See Also:
    `doSwitch(EObject)`

### caseSequenceType

    public T caseSequenceType(SequenceType object)

  Returns the result of interpreting the object as an instance of 'Sequence Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Sequence Type'.
  See Also:
    `doSwitch(EObject)`

### caseSetType

    public T caseSetType(SetType object)

  Returns the result of interpreting the object as an instance of 'Set Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Set Type'.
  See Also:
    `doSwitch(EObject)`

### caseTupleType

    public T caseTupleType(TupleType object)

  Returns the result of interpreting the object as an instance of 'Tuple Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Tuple Type'.
  See Also:
    `doSwitch(EObject)`

### caseTypeType

    public T caseTypeType(TypeType object)

  Returns the result of interpreting the object as an instance of 'Type Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Type Type'.
  See Also:
    `doSwitch(EObject)`

### caseVoidType

    public T caseVoidType(VoidType object)

  Returns the result of interpreting the object as an instance of 'Void Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Void Type'.
  See Also:
    `doSwitch(EObject)`

### caseCallOperationAction

    public T caseCallOperationAction(CallOperationAction object)

  Returns the result of interpreting the object as an instance of 'Call Operation Action'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Call Operation Action'.
  See Also:
    `doSwitch(EObject)`

### caseConstraint

    public T caseConstraint(Constraint object)

  Returns the result of interpreting the object as an instance of 'Constraint'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Constraint'.
  See Also:
    `doSwitch(EObject)`

### caseSendSignalAction

    public T caseSendSignalAction(SendSignalAction object)

  Returns the result of interpreting the object as an instance of 'Send Signal Action'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Send Signal Action'.
  See Also:
    `doSwitch(EObject)`

### caseExpressionInOCL

    public T caseExpressionInOCL(ExpressionInOCL object)

  Returns the result of interpreting the object as an instance of 'Expression In OCL'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Expression In OCL'.
  See Also:
    `doSwitch(EObject)`

### caseAssociationClassCallExp

    public T caseAssociationClassCallExp(AssociationClassCallExp object)

  Returns the result of interpreting the object as an instance of 'Association Class Call Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Association Class Call Exp'.
  See Also:
    `doSwitch(EObject)`

### caseBooleanLiteralExp

    public T caseBooleanLiteralExp(BooleanLiteralExp object)

  Returns the result of interpreting the object as an instance of 'Boolean Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Boolean Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseCallExp

    public T caseCallExp(CallExp object)

  Returns the result of interpreting the object as an instance of 'Call Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Call Exp'.
  See Also:
    `doSwitch(EObject)`

### caseCollectionItem

    public T caseCollectionItem(CollectionItem object)

  Returns the result of interpreting the object as an instance of 'Collection Item'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Collection Item'.
  See Also:
    `doSwitch(EObject)`

### caseCollectionLiteralExp

    public T caseCollectionLiteralExp(CollectionLiteralExp object)

  Returns the result of interpreting the object as an instance of 'Collection Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Collection Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseCollectionLiteralPart

    public T caseCollectionLiteralPart(CollectionLiteralPart object)

  Returns the result of interpreting the object as an instance of 'Collection Literal Part'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Collection Literal Part'.
  See Also:
    `doSwitch(EObject)`

### caseCollectionRange

    public T caseCollectionRange(CollectionRange object)

  Returns the result of interpreting the object as an instance of 'Collection Range'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Collection Range'.
  See Also:
    `doSwitch(EObject)`

### caseEnumLiteralExp

    public T caseEnumLiteralExp(EnumLiteralExp object)

  Returns the result of interpreting the object as an instance of 'Enum Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Enum Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseFeatureCallExp

    public T caseFeatureCallExp(FeatureCallExp object)

  Returns the result of interpreting the object as an instance of 'Feature Call Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Feature Call Exp'.
  See Also:
    `doSwitch(EObject)`

### caseIfExp

    public T caseIfExp(IfExp object)

  Returns the result of interpreting the object as an instance of 'If Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'If Exp'.
  See Also:
    `doSwitch(EObject)`

### caseIntegerLiteralExp

    public T caseIntegerLiteralExp(IntegerLiteralExp object)

  Returns the result of interpreting the object as an instance of 'Integer Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Integer Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseUnlimitedNaturalLiteralExp

    public T caseUnlimitedNaturalLiteralExp(UnlimitedNaturalLiteralExp object)

  Returns the result of interpreting the object as an instance of 'Unlimited Natural Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Unlimited Natural Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseInvalidLiteralExp

    public T caseInvalidLiteralExp(InvalidLiteralExp object)

  Returns the result of interpreting the object as an instance of 'Invalid Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Invalid Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseIterateExp

    public T caseIterateExp(IterateExp object)

  Returns the result of interpreting the object as an instance of 'Iterate Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Iterate Exp'.
  See Also:
    `doSwitch(EObject)`

### caseIteratorExp

    public T caseIteratorExp(IteratorExp object)

  Returns the result of interpreting the object as an instance of 'Iterator Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Iterator Exp'.
  See Also:
    `doSwitch(EObject)`

### caseLetExp

    public T caseLetExp(LetExp object)

  Returns the result of interpreting the object as an instance of 'Let Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Let Exp'.
  See Also:
    `doSwitch(EObject)`

### caseLiteralExp

    public T caseLiteralExp(LiteralExp object)

  Returns the result of interpreting the object as an instance of 'Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseLoopExp

    public T caseLoopExp(LoopExp object)

  Returns the result of interpreting the object as an instance of 'Loop Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Loop Exp'.
  See Also:
    `doSwitch(EObject)`

### caseMessageExp

    public T caseMessageExp(MessageExp object)

  Returns the result of interpreting the object as an instance of 'Message Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Message Exp'.
  See Also:
    `doSwitch(EObject)`

### caseNavigationCallExp

    public T caseNavigationCallExp(NavigationCallExp object)

  Returns the result of interpreting the object as an instance of 'Navigation Call Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Navigation Call Exp'.
  See Also:
    `doSwitch(EObject)`

### caseNullLiteralExp

    public T caseNullLiteralExp(NullLiteralExp object)

  Returns the result of interpreting the object as an instance of 'Null Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Null Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseNumericLiteralExp

    public T caseNumericLiteralExp(NumericLiteralExp object)

  Returns the result of interpreting the object as an instance of 'Numeric Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Numeric Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseOCLExpression

    public T caseOCLExpression(OCLExpression object)

  Returns the result of interpreting the object as an instance of 'OCL Expression'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'OCL Expression'.
  See Also:
    `doSwitch(EObject)`

### caseOperationCallExp

    public T caseOperationCallExp(OperationCallExp object)

  Returns the result of interpreting the object as an instance of 'Operation Call Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Operation Call Exp'.
  See Also:
    `doSwitch(EObject)`

### casePrimitiveLiteralExp

    public T casePrimitiveLiteralExp(PrimitiveLiteralExp object)

  Returns the result of interpreting the object as an instance of 'Primitive Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Primitive Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### casePropertyCallExp

    public T casePropertyCallExp(PropertyCallExp object)

  Returns the result of interpreting the object as an instance of 'Property Call Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Property Call Exp'.
  See Also:
    `doSwitch(EObject)`

### caseRealLiteralExp

    public T caseRealLiteralExp(RealLiteralExp object)

  Returns the result of interpreting the object as an instance of 'Real Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Real Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseStateExp

    public T caseStateExp(StateExp object)

  Returns the result of interpreting the object as an instance of 'State Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'State Exp'.
  See Also:
    `doSwitch(EObject)`

### caseStringLiteralExp

    public T caseStringLiteralExp(StringLiteralExp object)

  Returns the result of interpreting the object as an instance of 'String Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'String Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseTupleLiteralExp

    public T caseTupleLiteralExp(TupleLiteralExp object)

  Returns the result of interpreting the object as an instance of 'Tuple Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Tuple Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseTupleLiteralPart

    public T caseTupleLiteralPart(TupleLiteralPart object)

  Returns the result of interpreting the object as an instance of 'Tuple Literal Part'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Tuple Literal Part'.
  See Also:
    `doSwitch(EObject)`

### caseTypeExp

    public T caseTypeExp(TypeExp object)

  Returns the result of interpreting the object as an instance of 'Type Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Type Exp'.
  See Also:
    `doSwitch(EObject)`

### caseUnspecifiedValueExp

    public T caseUnspecifiedValueExp(UnspecifiedValueExp object)

  Returns the result of interpreting the object as an instance of 'Unspecified Value Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Unspecified Value Exp'.
  See Also:
    `doSwitch(EObject)`

### caseVariable

    public T caseVariable(Variable object)

  Returns the result of interpreting the object as an instance of 'Variable'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Variable'.
  See Also:
    `doSwitch(EObject)`

### caseVariableExp

    public T caseVariableExp(VariableExp object)

  Returns the result of interpreting the object as an instance of 'Variable Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Variable Exp'.
  See Also:
    `doSwitch(EObject)`

### caseEModelElement

    public T caseEModelElement(EModelElement object)

  Returns the result of interpreting the object as an instance of 'EModel Element'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'EModel Element'.
  See Also:
    `doSwitch(EObject)`

### caseENamedElement

    public T caseENamedElement(ENamedElement object)

  Returns the result of interpreting the object as an instance of 'ENamed Element'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'ENamed Element'.
  See Also:
    `doSwitch(EObject)`

### caseEClassifier

    public T caseEClassifier(EClassifier object)

  Returns the result of interpreting the object as an instance of 'EClassifier'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'EClassifier'.
  See Also:
    `doSwitch(EObject)`

### casePredefinedType

    public <O> T casePredefinedType(PredefinedType<O> object)

  Returns the result of interpreting the object as an instance of 'Predefined Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Predefined Type'.
  See Also:
    `doSwitch(EObject)`

### caseAnyType_1

    public <O> T caseAnyType_1(AnyType<O> object)

  Returns the result of interpreting the object as an instance of 'Any Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Any Type'.
  See Also:
    `doSwitch(EObject)`

### caseEDataType

    public T caseEDataType(EDataType object)

  Returns the result of interpreting the object as an instance of 'EData Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'EData Type'.
  See Also:
    `doSwitch(EObject)`

### caseASTNode

    public T caseASTNode(ASTNode object)

  Returns the result of interpreting the object as an instance of 'AST Node'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'AST Node'.
  See Also:
    `doSwitch(EObject)`

### caseTypedASTNode

    public T caseTypedASTNode(TypedASTNode object)

  Returns the result of interpreting the object as an instance of 'Typed AST Node'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Typed AST Node'.
  See Also:
    `doSwitch(EObject)`

### caseCollectionType_1

    public <C,O> T caseCollectionType_1(CollectionType<C,O> object)

  Returns the result of interpreting the object as an instance of 'Collection Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Collection Type'.
  See Also:
    `doSwitch(EObject)`

### caseBagType_1

    public <C,O> T caseBagType_1(BagType<C,O> object)

  Returns the result of interpreting the object as an instance of 'Bag Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Bag Type'.
  See Also:
    `doSwitch(EObject)`

### caseEClass

    public T caseEClass(EClass object)

  Returns the result of interpreting the object as an instance of 'EClass'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'EClass'.
  See Also:
    `doSwitch(EObject)`

### caseElementType_1

    public T caseElementType_1(ElementType object)

  Returns the result of interpreting the object as an instance of 'Element Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Element Type'.
  See Also:
    `doSwitch(EObject)`

### caseInvalidType_1

    public <O> T caseInvalidType_1(InvalidType<O> object)

  Returns the result of interpreting the object as an instance of 'Invalid Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Invalid Type'.
  See Also:
    `doSwitch(EObject)`

### caseMessageType_1

    public <C,O,P> T caseMessageType_1(MessageType<C,O,P> object)

  Returns the result of interpreting the object as an instance of 'Message Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Message Type'.
  See Also:
    `doSwitch(EObject)`

### caseOrderedSetType_1

    public <C,O> T caseOrderedSetType_1(OrderedSetType<C,O> object)

  Returns the result of interpreting the object as an instance of 'Ordered Set Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Ordered Set Type'.
  See Also:
    `doSwitch(EObject)`

### casePrimitiveType_1

    public <O> T casePrimitiveType_1(PrimitiveType<O> object)

  Returns the result of interpreting the object as an instance of 'Primitive Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Primitive Type'.
  See Also:
    `doSwitch(EObject)`

### caseSequenceType_1

    public <C,O> T caseSequenceType_1(SequenceType<C,O> object)

  Returns the result of interpreting the object as an instance of 'Sequence Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Sequence Type'.
  See Also:
    `doSwitch(EObject)`

### caseSetType_1

    public <C,O> T caseSetType_1(SetType<C,O> object)

  Returns the result of interpreting the object as an instance of 'Set Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Set Type'.
  See Also:
    `doSwitch(EObject)`

### caseTupleType_1

    public <O,P> T caseTupleType_1(TupleType<O,P> object)

  Returns the result of interpreting the object as an instance of 'Tuple Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Tuple Type'.
  See Also:
    `doSwitch(EObject)`

### caseTypeType_1

    public <C,O> T caseTypeType_1(TypeType<C,O> object)

  Returns the result of interpreting the object as an instance of 'Type Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Type Type'.
  See Also:
    `doSwitch(EObject)`

### caseVoidType_1

    public <O> T caseVoidType_1(VoidType<O> object)

  Returns the result of interpreting the object as an instance of 'Void Type'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Void Type'.
  See Also:
    `doSwitch(EObject)`

### caseVisitable

    public T caseVisitable(Visitable object)

  Returns the result of interpreting the object as an instance of 'Visitable'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Visitable'.
  See Also:
    `doSwitch(EObject)`

### caseExpressionInOCL_1

    public <C,PM> T caseExpressionInOCL_1(ExpressionInOCL<C,PM> object)

  Returns the result of interpreting the object as an instance of 'Expression In OCL'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Expression In OCL'.
  See Also:
    `doSwitch(EObject)`

### caseETypedElement

    public T caseETypedElement(ETypedElement object)

  Returns the result of interpreting the object as an instance of 'ETyped Element'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'ETyped Element'.
  See Also:
    `doSwitch(EObject)`

### caseTypedElement

    public <C> T caseTypedElement(TypedElement<C> object)

  Returns the result of interpreting the object as an instance of 'Typed Element'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Typed Element'.
  See Also:
    `doSwitch(EObject)`

### caseOCLExpression_1

    public <C> T caseOCLExpression_1(OCLExpression<C> object)

  Returns the result of interpreting the object as an instance of 'OCL Expression'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'OCL Expression'.
  See Also:
    `doSwitch(EObject)`

### caseCallingASTNode

    public T caseCallingASTNode(CallingASTNode object)

  Returns the result of interpreting the object as an instance of 'Calling AST Node'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Calling AST Node'.
  See Also:
    `doSwitch(EObject)`

### caseCallExp_1

    public <C> T caseCallExp_1(CallExp<C> object)

  Returns the result of interpreting the object as an instance of 'Call Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Call Exp'.
  See Also:
    `doSwitch(EObject)`

### caseFeatureCallExp_1

    public <C> T caseFeatureCallExp_1(FeatureCallExp<C> object)

  Returns the result of interpreting the object as an instance of 'Feature Call Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Feature Call Exp'.
  See Also:
    `doSwitch(EObject)`

### caseNavigationCallExp_1

    public <C,P> T caseNavigationCallExp_1(NavigationCallExp<C,P> object)

  Returns the result of interpreting the object as an instance of 'Navigation Call Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Navigation Call Exp'.
  See Also:
    `doSwitch(EObject)`

### caseAssociationClassCallExp_1

    public <C,P> T caseAssociationClassCallExp_1(AssociationClassCallExp<C,P> object)

  Returns the result of interpreting the object as an instance of 'Association Class Call Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Association Class Call Exp'.
  See Also:
    `doSwitch(EObject)`

### caseLiteralExp_1

    public <C> T caseLiteralExp_1(LiteralExp<C> object)

  Returns the result of interpreting the object as an instance of 'Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### casePrimitiveLiteralExp_1

    public <C> T casePrimitiveLiteralExp_1(PrimitiveLiteralExp<C> object)

  Returns the result of interpreting the object as an instance of 'Primitive Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Primitive Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseBooleanLiteralExp_1

    public <C> T caseBooleanLiteralExp_1(BooleanLiteralExp<C> object)

  Returns the result of interpreting the object as an instance of 'Boolean Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Boolean Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseCollectionLiteralPart_1

    public <C> T caseCollectionLiteralPart_1(CollectionLiteralPart<C> object)

  Returns the result of interpreting the object as an instance of 'Collection Literal Part'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Collection Literal Part'.
  See Also:
    `doSwitch(EObject)`

### caseCollectionItem_1

    public <C> T caseCollectionItem_1(CollectionItem<C> object)

  Returns the result of interpreting the object as an instance of 'Collection Item'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Collection Item'.
  See Also:
    `doSwitch(EObject)`

### caseCollectionLiteralExp_1

    public <C> T caseCollectionLiteralExp_1(CollectionLiteralExp<C> object)

  Returns the result of interpreting the object as an instance of 'Collection Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Collection Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseCollectionRange_1

    public <C> T caseCollectionRange_1(CollectionRange<C> object)

  Returns the result of interpreting the object as an instance of 'Collection Range'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Collection Range'.
  See Also:
    `doSwitch(EObject)`

### caseEnumLiteralExp_1

    public <C,EL> T caseEnumLiteralExp_1(EnumLiteralExp<C,EL> object)

  Returns the result of interpreting the object as an instance of 'Enum Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Enum Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseIfExp_1

    public <C> T caseIfExp_1(IfExp<C> object)

  Returns the result of interpreting the object as an instance of 'If Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'If Exp'.
  See Also:
    `doSwitch(EObject)`

### caseNumericLiteralExp_1

    public <C> T caseNumericLiteralExp_1(NumericLiteralExp<C> object)

  Returns the result of interpreting the object as an instance of 'Numeric Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Numeric Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseIntegerLiteralExp_1

    public <C> T caseIntegerLiteralExp_1(IntegerLiteralExp<C> object)

  Returns the result of interpreting the object as an instance of 'Integer Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Integer Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseUnlimitedNaturalLiteralExp_1

    public <C> T caseUnlimitedNaturalLiteralExp_1(UnlimitedNaturalLiteralExp<C> object)

  Returns the result of interpreting the object as an instance of 'Unlimited Natural Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Unlimited Natural Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseInvalidLiteralExp_1

    public <C> T caseInvalidLiteralExp_1(InvalidLiteralExp<C> object)

  Returns the result of interpreting the object as an instance of 'Invalid Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Invalid Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseLoopExp_1

    public <C,PM> T caseLoopExp_1(LoopExp<C,PM> object)

  Returns the result of interpreting the object as an instance of 'Loop Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Loop Exp'.
  See Also:
    `doSwitch(EObject)`

### caseIterateExp_1

    public <C,PM> T caseIterateExp_1(IterateExp<C,PM> object)

  Returns the result of interpreting the object as an instance of 'Iterate Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Iterate Exp'.
  See Also:
    `doSwitch(EObject)`

### caseIteratorExp_1

    public <C,PM> T caseIteratorExp_1(IteratorExp<C,PM> object)

  Returns the result of interpreting the object as an instance of 'Iterator Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Iterator Exp'.
  See Also:
    `doSwitch(EObject)`

### caseLetExp_1

    public <C,PM> T caseLetExp_1(LetExp<C,PM> object)

  Returns the result of interpreting the object as an instance of 'Let Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Let Exp'.
  See Also:
    `doSwitch(EObject)`

### caseMessageExp_1

    public <C,COA,SSA> T caseMessageExp_1(MessageExp<C,COA,SSA> object)

  Returns the result of interpreting the object as an instance of 'Message Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Message Exp'.
  See Also:
    `doSwitch(EObject)`

### caseNullLiteralExp_1

    public <C> T caseNullLiteralExp_1(NullLiteralExp<C> object)

  Returns the result of interpreting the object as an instance of 'Null Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Null Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseOperationCallExp_1

    public <C,O> T caseOperationCallExp_1(OperationCallExp<C,O> object)

  Returns the result of interpreting the object as an instance of 'Operation Call Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Operation Call Exp'.
  See Also:
    `doSwitch(EObject)`

### casePropertyCallExp_1

    public <C,P> T casePropertyCallExp_1(PropertyCallExp<C,P> object)

  Returns the result of interpreting the object as an instance of 'Property Call Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Property Call Exp'.
  See Also:
    `doSwitch(EObject)`

### caseRealLiteralExp_1

    public <C> T caseRealLiteralExp_1(RealLiteralExp<C> object)

  Returns the result of interpreting the object as an instance of 'Real Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Real Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseStateExp_1

    public <C,S> T caseStateExp_1(StateExp<C,S> object)

  Returns the result of interpreting the object as an instance of 'State Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'State Exp'.
  See Also:
    `doSwitch(EObject)`

### caseStringLiteralExp_1

    public <C> T caseStringLiteralExp_1(StringLiteralExp<C> object)

  Returns the result of interpreting the object as an instance of 'String Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'String Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseTupleLiteralExp_1

    public <C,P> T caseTupleLiteralExp_1(TupleLiteralExp<C,P> object)

  Returns the result of interpreting the object as an instance of 'Tuple Literal Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Tuple Literal Exp'.
  See Also:
    `doSwitch(EObject)`

### caseTupleLiteralPart_1

    public <C,P> T caseTupleLiteralPart_1(TupleLiteralPart<C,P> object)

  Returns the result of interpreting the object as an instance of 'Tuple Literal Part'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Tuple Literal Part'.
  See Also:
    `doSwitch(EObject)`

### caseTypeExp_1

    public <C> T caseTypeExp_1(TypeExp<C> object)

  Returns the result of interpreting the object as an instance of 'Type Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Type Exp'.
  See Also:
    `doSwitch(EObject)`

### caseUnspecifiedValueExp_1

    public <C> T caseUnspecifiedValueExp_1(UnspecifiedValueExp<C> object)

  Returns the result of interpreting the object as an instance of 'Unspecified Value Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Unspecified Value Exp'.
  See Also:
    `doSwitch(EObject)`

### caseVariable_1

    public <C,PM> T caseVariable_1(Variable<C,PM> object)

  Returns the result of interpreting the object as an instance of 'Variable'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Variable'.
  See Also:
    `doSwitch(EObject)`

### caseVariableExp_1

    public <C,PM> T caseVariableExp_1(VariableExp<C,PM> object)

  Returns the result of interpreting the object as an instance of 'Variable Exp'. This implementation returns null; returning a non-null result will terminate the switch.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'Variable Exp'.
  See Also:
    `doSwitch(EObject)`

### defaultCase

    public T defaultCase(EObject object)

  Returns the result of interpreting the object as an instance of 'EObject'. This implementation returns null; returning a non-null result will terminate the switch, but this is the last case anyway.

  Parameters:
    `object` - the target of the switch.
  Returns:
    the result of interpreting the object as an instance of 'EObject'.
  See Also:
    `doSwitch(org.eclipse.emf.ecore.EObject)`

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