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

## Class TraceSwitch<T>

- java.lang.Object
- - org.eclipse.m2m.atl.emftvm.trace.util.TraceSwitch<T>

    public class TraceSwitch<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:
  `TracePackage`

### Field Summary

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

### Constructor Summary

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

### Method Summary

All Methods Instance Methods Concrete Methods
`T` `caseSourceElement​(SourceElement object)` Returns the result of interpreting the object as an instance of 'Source Element'.
`T` `caseSourceElementList​(SourceElementList object)` Returns the result of interpreting the object as an instance of 'Source Element List'.
`T` `caseTargetElement​(TargetElement object)` Returns the result of interpreting the object as an instance of 'Target Element'.
`T` `caseTracedRule​(TracedRule object)` Returns the result of interpreting the object as an instance of 'Traced Rule'.
`T` `caseTraceElement​(TraceElement object)` Returns the result of interpreting the object as an instance of 'Element'.
`T` `caseTraceLink​(TraceLink object)` Returns the result of interpreting the object as an instance of 'Link'.
`T` `caseTraceLinkSet​(TraceLinkSet object)` Returns the result of interpreting the object as an instance of 'Link Set'.
`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 TracePackage modelPackage

The cached model package

### Constructor Detail

#### TraceSwitch

    public TraceSwitch()

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.

#### caseTraceLinkSet

    public T caseTraceLinkSet​(TraceLinkSet object)

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

#### caseTracedRule

    public T caseTracedRule​(TracedRule object)

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

#### caseTraceLink

    public T caseTraceLink​(TraceLink object)

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

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

#### caseTraceElement

    public T caseTraceElement​(TraceElement object)

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

#### caseSourceElement

    public T caseSourceElement​(SourceElement object)

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

#### caseTargetElement

    public T caseTargetElement​(TargetElement object)

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

#### caseSourceElementList

    public T caseSourceElementList​(SourceElementList object)

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

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