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 java.lang.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
`protected static EmftvmPackage` `modelPackage` The cached model package

### Constructor Summary

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

### Method Summary

All Methods Instance Methods Concrete Methods
`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 Detail

#### modelPackage

    protected static EmftvmPackage modelPackage

The cached model package

### Constructor Detail

#### EmftvmSwitch

    public EmftvmSwitch()

Creates an instance of the switch.

### Method Detail

#### 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.

#### 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)`

#### 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)`

#### 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)`