Package org.eclipse.m2m.atl.emftvm.util

# Class EmftvmSwitch<T>

java.lang.Object
org.eclipse.m2m.atl.emftvm.util.EmftvmSwitch<T>

Type Parameters:
  `T` - the switched type

Direct Known Subclasses:
  `ByteCodeSwitch`, `ConstantPool.CreateConstantsSwitch`, `LabelSwitch`, `LoadInstructionParametersSwitch`, `SaveInstructionParametersSwitch`

public class EmftvmSwitch<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:
  - `EmftvmPackage`

## Field Summary

Fields
Modifier and Type
Field
Description
`protected static EmftvmPackage`
`modelPackage`
The cached model package

## Constructor Summary

Constructors
Constructor
Description
`EmftvmSwitch()`
Creates an instance of the switch.

## Method Summary

Modifier and Type
Method
Description
`T`
`caseAdd(Add object)`
Returns the result of interpreting the object as an instance of 'Add'.
`T`
`caseAllinst(Allinst object)`
Returns the result of interpreting the object as an instance of 'Allinst'.
`T`
`caseAllinstIn(AllinstIn object)`
Returns the result of interpreting the object as an instance of 'Allinst In'.
`T`
`caseAnd(And object)`
Returns the result of interpreting the object as an instance of 'And'.
`T`
`caseBranchInstruction(BranchInstruction object)`
Returns the result of interpreting the object as an instance of 'Branch Instruction'.
`T`
`caseCodeBlock(CodeBlock object)`
Returns the result of interpreting the object as an instance of 'Code Block'.
`T`
`caseCodeBlockInstruction(CodeBlockInstruction object)`
Returns the result of interpreting the object as an instance of 'Code Block Instruction'.
`T`
`caseDelete(Delete object)`
Returns the result of interpreting the object as an instance of 'Delete'.
`T`
`caseDup(Dup object)`
Returns the result of interpreting the object as an instance of 'Dup'.
`T`
`caseDupX1(DupX1 object)`
Returns the result of interpreting the object as an instance of 'Dup X1'.
`T`
`caseEnditerate(Enditerate object)`
Returns the result of interpreting the object as an instance of 'Enditerate'.
`T`
`caseExecEnv(ExecEnv object)`
Returns the result of interpreting the object as an instance of 'Exec Env'.
`T`
`caseFeature(Feature object)`
Returns the result of interpreting the object as an instance of 'Feature'.
`T`
`caseField(Field object)`
Returns the result of interpreting the object as an instance of 'Field'.
`T`
`caseFieldInstruction(FieldInstruction object)`
Returns the result of interpreting the object as an instance of 'Field Instruction'.
`T`
`caseFindtype(Findtype object)`
Returns the result of interpreting the object as an instance of 'Findtype'.
`T`
`caseFindtypeS(FindtypeS object)`
Returns the result of interpreting the object as an instance of 'Findtype S'.
`T`
`caseGet(Get object)`
Returns the result of interpreting the object as an instance of 'Get'.
`T`
`caseGetcb(Getcb object)`
Returns the result of interpreting the object as an instance of 'Getcb'.
`T`
`caseGetenv(Getenv object)`
Returns the result of interpreting the object as an instance of 'Getenv'.
`T`
`caseGetenvtype(Getenvtype object)`
Returns the result of interpreting the object as an instance of 'Getenvtype'.
`T`
`caseGetStatic(GetStatic object)`
Returns the result of interpreting the object as an instance of 'Get Static'.
`T`
`caseGetSuper(GetSuper object)`
Returns the result of interpreting the object as an instance of 'Get Super'.
`T`
`caseGetTrans(GetTrans object)`
Returns the result of interpreting the object as an instance of 'Get Trans'.
`T`
`caseGoto(Goto object)`
Returns the result of interpreting the object as an instance of 'Goto'.
`T`
`caseIf(If object)`
Returns the result of interpreting the object as an instance of 'If'.
`T`
`caseIfn(Ifn object)`
Returns the result of interpreting the object as an instance of 'Ifn'.
`T`
`caseIfte(Ifte object)`
Returns the result of interpreting the object as an instance of 'Ifte'.
`T`
`caseImplies(Implies object)`
Returns the result of interpreting the object as an instance of 'Implies'.
`T`
`caseInputRuleElement(InputRuleElement object)`
Returns the result of interpreting the object as an instance of 'Input Rule Element'.
`T`
`caseInsert(Insert object)`
Returns the result of interpreting the object as an instance of 'Insert'.
`T`
`caseInstruction(Instruction object)`
Returns the result of interpreting the object as an instance of 'Instruction'.
`T`
`caseInvoke(Invoke object)`
Returns the result of interpreting the object as an instance of 'Invoke'.
`T`
`caseInvokeAllCbs(InvokeAllCbs object)`
Returns the result of interpreting the object as an instance of 'Invoke All Cbs'.
`T`
`caseInvokeCb(InvokeCb object)`
Returns the result of interpreting the object as an instance of 'Invoke Cb'.
`T`
`caseInvokeCbS(InvokeCbS object)`
Returns the result of interpreting the object as an instance of 'Invoke Cb S'.
`T`
`caseInvokeInstruction(InvokeInstruction object)`
Returns the result of interpreting the object as an instance of 'Invoke Instruction'.
`T`
`caseInvokeOperationInstruction(InvokeOperationInstruction object)`
Returns the result of interpreting the object as an instance of 'Invoke Operation Instruction'.
`T`
`caseInvokeStatic(InvokeStatic object)`
Returns the result of interpreting the object as an instance of 'Invoke Static'.
`T`
`caseInvokeSuper(InvokeSuper object)`
Returns the result of interpreting the object as an instance of 'Invoke Super'.
`T`
`caseIsnull(Isnull object)`
Returns the result of interpreting the object as an instance of 'Isnull'.
`T`
`caseIterate(Iterate object)`
Returns the result of interpreting the object as an instance of 'Iterate'.
`T`
`caseLineNumber(LineNumber object)`
Returns the result of interpreting the object as an instance of 'Line Number'.
`T`
`caseLoad(Load object)`
Returns the result of interpreting the object as an instance of 'Load'.
`T`
`caseLocalVariable(LocalVariable object)`
Returns the result of interpreting the object as an instance of 'Local Variable'.
`T`
`caseLocalVariableInstruction(LocalVariableInstruction object)`
Returns the result of interpreting the object as an instance of 'Local Variable Instruction'.
`T`
`caseMatch(Match object)`
Returns the result of interpreting the object as an instance of 'Match'.
`T`
`caseMatchS(MatchS object)`
Returns the result of interpreting the object as an instance of 'Match S'.
`T`
`caseMetamodel(Metamodel object)`
Returns the result of interpreting the object as an instance of 'Metamodel'.
`T`
`caseModel(Model object)`
Returns the result of interpreting the object as an instance of 'Model'.
`T`
`caseModelDeclaration(ModelDeclaration object)`
Returns the result of interpreting the object as an instance of 'Model Declaration'.
`T`
`caseModule(Module object)`
Returns the result of interpreting the object as an instance of 'Module'.
`T`
`caseNamedElement(NamedElement object)`
Returns the result of interpreting the object as an instance of 'Named Element'.
`T`
`caseNew(New object)`
Returns the result of interpreting the object as an instance of 'New'.
`T`
`caseNewS(NewS object)`
Returns the result of interpreting the object as an instance of 'New S'.
`T`
`caseNot(Not object)`
Returns the result of interpreting the object as an instance of 'Not'.
`T`
`caseOperation(Operation object)`
Returns the result of interpreting the object as an instance of 'Operation'.
`T`
`caseOr(Or object)`
Returns the result of interpreting the object as an instance of 'Or'.
`T`
`caseOutputRuleElement(OutputRuleElement object)`
Returns the result of interpreting the object as an instance of 'Output Rule Element'.
`T`
`caseParameter(Parameter object)`
Returns the result of interpreting the object as an instance of 'Parameter'.
`T`
`casePop(Pop object)`
Returns the result of interpreting the object as an instance of 'Pop'.
`T`
`casePush(Push object)`
Returns the result of interpreting the object as an instance of 'Push'.
`T`
`casePushf(Pushf object)`
Returns the result of interpreting the object as an instance of 'Pushf'.
`T`
`casePusht(Pusht object)`
Returns the result of interpreting the object as an instance of 'Pusht'.
`T`
`caseRemove(Remove object)`
Returns the result of interpreting the object as an instance of 'Remove'.
`T`
`caseReturn(Return object)`
Returns the result of interpreting the object as an instance of 'Return'.
`T`
`caseRule(Rule object)`
Returns the result of interpreting the object as an instance of 'Rule'.
`T`
`caseRuleElement(RuleElement object)`
Returns the result of interpreting the object as an instance of 'Rule Element'.
`T`
`caseSet(Set object)`
Returns the result of interpreting the object as an instance of 'Set'.
`T`
`caseSetStatic(SetStatic object)`
Returns the result of interpreting the object as an instance of 'Set Static'.
`T`
`caseStore(Store object)`
Returns the result of interpreting the object as an instance of 'Store'.
`T`
`caseSwap(Swap object)`
Returns the result of interpreting the object as an instance of 'Swap'.
`T`
`caseSwapX1(SwapX1 object)`
Returns the result of interpreting the object as an instance of 'Swap X1'.
`T`
`caseTypedElement(TypedElement object)`
Returns the result of interpreting the object as an instance of 'Typed Element'.
`T`
`caseXor(Xor object)`
Returns the result of interpreting the object as an instance of 'Xor'.
`T`
`defaultCase(org.eclipse.emf.ecore.EObject object)`
Returns the result of interpreting the object as an instance of 'EObject'.
`protected T`
`doSwitch(int classifierID, org.eclipse.emf.ecore.EObject theEObject)`
Calls `caseXXX` for each class of the model until one returns a non null result; it yields that result.
`protected T`
`doSwitch(org.eclipse.emf.ecore.EClass theEClass, org.eclipse.emf.ecore.EObject theEObject)`
Calls `caseXXX` for each class of the model until one returns a non null result; it yields that result.
`T`
`doSwitch(org.eclipse.emf.ecore.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 Details

### modelPackage

protected static EmftvmPackage modelPackage
The cached model package

## Constructor Details

### EmftvmSwitch

public EmftvmSwitch()
Creates an instance of the switch.

## Method Details

### doSwitch

public T doSwitch(org.eclipse.emf.ecore.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(org.eclipse.emf.ecore.EClass theEClass, org.eclipse.emf.ecore.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, org.eclipse.emf.ecore.EObject theEObject)
Calls `caseXXX` for each class of the model until one returns a non null result; it yields that result.

Parameters:
  `classifierID` - the classifier ID of the `EClass` of

      theEObject

  `theEObject` - the object to switch on
Returns:
  the first non-null result returned by a `caseXXX` call.

### caseModelDeclaration

public T caseModelDeclaration(ModelDeclaration object)
Returns the result of interpreting the object as an instance of 'Model Declaration'. 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 'Model Declaration'.
See Also:
  - `doSwitch(EObject)`

### caseFeature

public T caseFeature(Feature object)
Returns the result of interpreting the object as an instance of 'Feature'. 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'.
See Also:
  - `doSwitch(EObject)`

### caseField

public T caseField(Field object)
Returns the result of interpreting the object as an instance of 'Field'. 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 'Field'.
See Also:
  - `doSwitch(EObject)`

### caseOperation

public T caseOperation(Operation object)
Returns the result of interpreting the object as an instance of 'Operation'. 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'.
See Also:
  - `doSwitch(EObject)`

### caseNamedElement

public T caseNamedElement(NamedElement object)
Returns the result of interpreting the object as an instance of 'Named 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 'Named Element'.
See Also:
  - `doSwitch(EObject)`

### caseParameter

public T caseParameter(Parameter object)
Returns the result of interpreting the object as an instance of 'Parameter'. 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 'Parameter'.
See Also:
  - `doSwitch(EObject)`

### caseTypedElement

public T caseTypedElement(TypedElement 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)`

### caseInstruction

public T caseInstruction(Instruction object)
Returns the result of interpreting the object as an instance of 'Instruction'. 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 'Instruction'.
See Also:
  - `doSwitch(EObject)`

### caseLineNumber

public T caseLineNumber(LineNumber object)
Returns the result of interpreting the object as an instance of 'Line Number'. 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 'Line Number'.
See Also:
  - `doSwitch(EObject)`

### caseLocalVariable

public T caseLocalVariable(LocalVariable object)
Returns the result of interpreting the object as an instance of 'Local 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 'Local Variable'.
See Also:
  - `doSwitch(EObject)`

### caseRule

public T caseRule(Rule object)
Returns the result of interpreting the object as an instance of 'Rule'. 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 'Rule'.
See Also:
  - `doSwitch(EObject)`

### caseRuleElement

public T caseRuleElement(RuleElement object)
Returns the result of interpreting the object as an instance of 'Rule 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 'Rule Element'.
See Also:
  - `doSwitch(EObject)`

### caseInputRuleElement

public T caseInputRuleElement(InputRuleElement object)
Returns the result of interpreting the object as an instance of 'Input Rule 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 'Input Rule Element'.
See Also:
  - `doSwitch(EObject)`

### caseOutputRuleElement

public T caseOutputRuleElement(OutputRuleElement object)
Returns the result of interpreting the object as an instance of 'Output Rule 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 'Output Rule Element'.
See Also:
  - `doSwitch(EObject)`

### caseCodeBlock

public T caseCodeBlock(CodeBlock object)
Returns the result of interpreting the object as an instance of 'Code Block'. 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 'Code Block'.
See Also:
  - `doSwitch(EObject)`

### casePush

public T casePush(Push object)
Returns the result of interpreting the object as an instance of 'Push'. 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 'Push'.
See Also:
  - `doSwitch(EObject)`

### casePusht

public T casePusht(Pusht object)
Returns the result of interpreting the object as an instance of 'Pusht'. 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 'Pusht'.
See Also:
  - `doSwitch(EObject)`

### casePushf

public T casePushf(Pushf object)
Returns the result of interpreting the object as an instance of 'Pushf'. 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 'Pushf'.
See Also:
  - `doSwitch(EObject)`

### casePop

public T casePop(Pop object)
Returns the result of interpreting the object as an instance of 'Pop'. 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 'Pop'.
See Also:
  - `doSwitch(EObject)`

### caseLocalVariableInstruction

public T caseLocalVariableInstruction(LocalVariableInstruction object)
Returns the result of interpreting the object as an instance of 'Local Variable Instruction'. 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 'Local Variable Instruction'.
See Also:
  - `doSwitch(EObject)`

### caseLoad

public T caseLoad(Load object)
Returns the result of interpreting the object as an instance of 'Load'. 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 'Load'.
See Also:
  - `doSwitch(EObject)`

### caseStore

public T caseStore(Store object)
Returns the result of interpreting the object as an instance of 'Store'. 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 'Store'.
See Also:
  - `doSwitch(EObject)`

### caseFieldInstruction

public T caseFieldInstruction(FieldInstruction object)
Returns the result of interpreting the object as an instance of 'Field Instruction'. 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 'Field Instruction'.
See Also:
  - `doSwitch(EObject)`

### caseSet

public T caseSet(Set object)
Returns the result of interpreting the object as an instance of 'Set'. 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'.
See Also:
  - `doSwitch(EObject)`

### caseGet

public T caseGet(Get object)
Returns the result of interpreting the object as an instance of 'Get'. 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 'Get'.
See Also:
  - `doSwitch(EObject)`

### caseGetTrans

public T caseGetTrans(GetTrans object)
Returns the result of interpreting the object as an instance of 'Get Trans'. 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 'Get Trans'.
See Also:
  - `doSwitch(EObject)`

### caseSetStatic

public T caseSetStatic(SetStatic object)
Returns the result of interpreting the object as an instance of 'Set Static'. 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 Static'.
See Also:
  - `doSwitch(EObject)`

### caseGetStatic

public T caseGetStatic(GetStatic object)
Returns the result of interpreting the object as an instance of 'Get Static'. 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 'Get Static'.
See Also:
  - `doSwitch(EObject)`

### caseFindtype

public T caseFindtype(Findtype object)
Returns the result of interpreting the object as an instance of 'Findtype'. 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 'Findtype'.
See Also:
  - `doSwitch(EObject)`

### caseFindtypeS

public T caseFindtypeS(FindtypeS object)
Returns the result of interpreting the object as an instance of 'Findtype S'. 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 'Findtype S'.
See Also:
  - `doSwitch(EObject)`

### caseNew

public T caseNew(New object)
Returns the result of interpreting the object as an instance of 'New'. 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 'New'.
See Also:
  - `doSwitch(EObject)`

### caseNewS

public T caseNewS(NewS object)
Returns the result of interpreting the object as an instance of 'New S'. 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 'New S'.
See Also:
  - `doSwitch(EObject)`

### caseDelete

public T caseDelete(Delete object)
Returns the result of interpreting the object as an instance of 'Delete'. 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 'Delete'.
See Also:
  - `doSwitch(EObject)`

### caseDup

public T caseDup(Dup object)
Returns the result of interpreting the object as an instance of 'Dup'. 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 'Dup'.
See Also:
  - `doSwitch(EObject)`

### caseDupX1

public T caseDupX1(DupX1 object)
Returns the result of interpreting the object as an instance of 'Dup X1'. 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 'Dup X1'.
See Also:
  - `doSwitch(EObject)`

### caseSwap

public T caseSwap(Swap object)
Returns the result of interpreting the object as an instance of 'Swap'. 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 'Swap'.
See Also:
  - `doSwitch(EObject)`

### caseSwapX1

public T caseSwapX1(SwapX1 object)
Returns the result of interpreting the object as an instance of 'Swap X1'. 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 'Swap X1'.
See Also:
  - `doSwitch(EObject)`

### caseBranchInstruction

public T caseBranchInstruction(BranchInstruction object)
Returns the result of interpreting the object as an instance of 'Branch Instruction'. 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 'Branch Instruction'.
See Also:
  - `doSwitch(EObject)`

### caseIf

public T caseIf(If object)
Returns the result of interpreting the object as an instance of 'If'. 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'.
See Also:
  - `doSwitch(EObject)`

### caseIfn

public T caseIfn(Ifn object)
Returns the result of interpreting the object as an instance of 'Ifn'. 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 'Ifn'.
See Also:
  - `doSwitch(EObject)`

### caseGoto

public T caseGoto(Goto object)
Returns the result of interpreting the object as an instance of 'Goto'. 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 'Goto'.
See Also:
  - `doSwitch(EObject)`

### caseIterate

public T caseIterate(Iterate object)
Returns the result of interpreting the object as an instance of 'Iterate'. 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'.
See Also:
  - `doSwitch(EObject)`

### caseEnditerate

public T caseEnditerate(Enditerate object)
Returns the result of interpreting the object as an instance of 'Enditerate'. 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 'Enditerate'.
See Also:
  - `doSwitch(EObject)`

### caseInvokeInstruction

public T caseInvokeInstruction(InvokeInstruction object)
Returns the result of interpreting the object as an instance of 'Invoke Instruction'. 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 'Invoke Instruction'.
See Also:
  - `doSwitch(EObject)`

### caseInvokeOperationInstruction

public T caseInvokeOperationInstruction(InvokeOperationInstruction object)
Returns the result of interpreting the object as an instance of 'Invoke Operation Instruction'. 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 'Invoke Operation Instruction'.
See Also:
  - `doSwitch(EObject)`

### caseInvoke

public T caseInvoke(Invoke object)
Returns the result of interpreting the object as an instance of 'Invoke'. 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 'Invoke'.
See Also:
  - `doSwitch(EObject)`

### caseInvokeSuper

public T caseInvokeSuper(InvokeSuper object)
Returns the result of interpreting the object as an instance of 'Invoke Super'. 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 'Invoke Super'.
See Also:
  - `doSwitch(EObject)`

### caseInvokeStatic

public T caseInvokeStatic(InvokeStatic object)
Returns the result of interpreting the object as an instance of 'Invoke Static'. 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 'Invoke Static'.
See Also:
  - `doSwitch(EObject)`

### caseAllinst

public T caseAllinst(Allinst object)
Returns the result of interpreting the object as an instance of 'Allinst'. 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 'Allinst'.
See Also:
  - `doSwitch(EObject)`

### caseAllinstIn

public T caseAllinstIn(AllinstIn object)
Returns the result of interpreting the object as an instance of 'Allinst In'. 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 'Allinst In'.
See Also:
  - `doSwitch(EObject)`

### caseMatch

public T caseMatch(Match object)
Returns the result of interpreting the object as an instance of 'Match'. 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 'Match'.
See Also:
  - `doSwitch(EObject)`

### caseMatchS

public T caseMatchS(MatchS object)
Returns the result of interpreting the object as an instance of 'Match S'. 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 'Match S'.
See Also:
  - `doSwitch(EObject)`

### caseAdd

public T caseAdd(Add object)
Returns the result of interpreting the object as an instance of 'Add'. 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 'Add'.
See Also:
  - `doSwitch(EObject)`

### caseRemove

public T caseRemove(Remove object)
Returns the result of interpreting the object as an instance of 'Remove'. 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 'Remove'.
See Also:
  - `doSwitch(EObject)`

### caseInsert

public T caseInsert(Insert object)
Returns the result of interpreting the object as an instance of 'Insert'. 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 'Insert'.
See Also:
  - `doSwitch(EObject)`

### caseGetSuper

public T caseGetSuper(GetSuper object)
Returns the result of interpreting the object as an instance of 'Get Super'. 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 'Get Super'.
See Also:
  - `doSwitch(EObject)`

### caseGetenv

public T caseGetenv(Getenv object)
Returns the result of interpreting the object as an instance of 'Getenv'. 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 'Getenv'.
See Also:
  - `doSwitch(EObject)`

### caseReturn

public T caseReturn(Return object)
Returns the result of interpreting the object as an instance of 'Return'. 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 'Return'.
See Also:
  - `doSwitch(EObject)`

### caseCodeBlockInstruction

public T caseCodeBlockInstruction(CodeBlockInstruction object)
Returns the result of interpreting the object as an instance of 'Code Block Instruction'. 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 'Code Block Instruction'.
See Also:
  - `doSwitch(EObject)`

### caseGetcb

public T caseGetcb(Getcb object)
Returns the result of interpreting the object as an instance of 'Getcb'. 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 'Getcb'.
See Also:
  - `doSwitch(EObject)`

### caseInvokeAllCbs

public T caseInvokeAllCbs(InvokeAllCbs object)
Returns the result of interpreting the object as an instance of 'Invoke All Cbs'. 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 'Invoke All Cbs'.
See Also:
  - `doSwitch(EObject)`

### caseInvokeCb

public T caseInvokeCb(InvokeCb object)
Returns the result of interpreting the object as an instance of 'Invoke Cb'. 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 'Invoke Cb'.
See Also:
  - `doSwitch(EObject)`

### caseInvokeCbS

public T caseInvokeCbS(InvokeCbS object)
Returns the result of interpreting the object as an instance of 'Invoke Cb S'. 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 'Invoke Cb S'.
See Also:
  - `doSwitch(EObject)`

### caseNot

public T caseNot(Not object)
Returns the result of interpreting the object as an instance of 'Not'. 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 'Not'.
See Also:
  - `doSwitch(EObject)`

### caseAnd

public T caseAnd(And object)
Returns the result of interpreting the object as an instance of 'And'. 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 'And'.
See Also:
  - `doSwitch(EObject)`

### caseOr

public T caseOr(Or object)
Returns the result of interpreting the object as an instance of 'Or'. 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 'Or'.
See Also:
  - `doSwitch(EObject)`

### caseXor

public T caseXor(Xor object)
Returns the result of interpreting the object as an instance of 'Xor'. 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 'Xor'.
See Also:
  - `doSwitch(EObject)`

### caseImplies

public T caseImplies(Implies object)
Returns the result of interpreting the object as an instance of 'Implies'. 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 'Implies'.
See Also:
  - `doSwitch(EObject)`

### caseIfte

public T caseIfte(Ifte object)
Returns the result of interpreting the object as an instance of 'Ifte'. 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 'Ifte'.
See Also:
  - `doSwitch(EObject)`

### caseIsnull

public T caseIsnull(Isnull object)
Returns the result of interpreting the object as an instance of 'Isnull'. 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 'Isnull'.
See Also:
  - `doSwitch(EObject)`

### caseGetenvtype

public T caseGetenvtype(Getenvtype object)
Returns the result of interpreting the object as an instance of 'Getenvtype'. 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 'Getenvtype'.
See Also:
  - `doSwitch(EObject)`

### caseExecEnv

public T caseExecEnv(ExecEnv object)
Returns the result of interpreting the object as an instance of 'Exec Env'. 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 'Exec Env'.
See Also:
  - `doSwitch(EObject)`

### caseModel

public T caseModel(Model object)
Returns the result of interpreting the object as an instance of 'Model'. 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 'Model'.
See Also:
  - `doSwitch(EObject)`

### caseMetamodel

public T caseMetamodel(Metamodel object)
Returns the result of interpreting the object as an instance of 'Metamodel'. 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 'Metamodel'.
See Also:
  - `doSwitch(EObject)`

### caseModule

public T caseModule(Module object)
Returns the result of interpreting the object as an instance of 'Module'. 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 'Module'.
See Also:
  - `doSwitch(EObject)`

### defaultCase

public T defaultCase(org.eclipse.emf.ecore.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)`