Package org.eclipse.m2m.atl.profiler.model.util

## Class ModelSwitch<T>

- java.lang.Object
- - org.eclipse.m2m.atl.profiler.model.util.ModelSwitch<T>

    public class ModelSwitch<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:
  `ModelPackage`

### Field Summary

Fields
`protected static ModelPackage` `modelPackage` The cached model package

### Constructor Summary

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

### Method Summary

All Methods Instance Methods Concrete Methods
`T` `caseATLInstruction​(ATLInstruction object)` Returns the result of interpreting the object as an instance of 'ATL Instruction'.
`T` `caseATLOperation​(ATLOperation object)` Returns the result of interpreting the object as an instance of 'ATL Operation'.
`T` `caseContext​(Context object)` Returns the result of interpreting the object as an instance of 'Context'.
`T` `caseExecutionError​(ExecutionError object)` Returns the result of interpreting the object as an instance of 'Execution Error'.
`T` `caseProfilingInstruction​(ProfilingInstruction object)` Returns the result of interpreting the object as an instance of 'Profiling Instruction'.
`T` `caseProfilingModel​(ProfilingModel object)` Returns the result of interpreting the object as an instance of 'Profiling Model'.
`T` `caseProfilingOperation​(ProfilingOperation object)` Returns the result of interpreting the object as an instance of 'Profiling Operation'.
`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 ModelPackage modelPackage

The cached model package

### Constructor Detail

#### ModelSwitch

    public ModelSwitch()

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.

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

#### caseProfilingInstruction

    public T caseProfilingInstruction​(ProfilingInstruction object)

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

#### caseProfilingOperation

    public T caseProfilingOperation​(ProfilingOperation object)

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

#### caseProfilingModel

    public T caseProfilingModel​(ProfilingModel object)

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

#### caseATLOperation

    public T caseATLOperation​(ATLOperation object)

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

#### caseATLInstruction

    public T caseATLInstruction​(ATLInstruction object)

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

#### caseContext

    public T caseContext​(Context object)

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

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

#### caseExecutionError

    public T caseExecutionError​(ExecutionError object)

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

Parameters:
  `object` - the target of the switch.
Returns:
  the result of interpreting the object as an instance of 'Execution Error'.
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)`