org.eclipse.emf.test.models.ext.util
Class ExtSwitch<T>

java.lang.Object
  extended by org.eclipse.emf.test.models.ext.util.ExtSwitch<T>

public class ExtSwitch<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:
ExtPackage

Field Summary
protected static ExtPackage modelPackage
          The cached model package
 
Constructor Summary
ExtSwitch()
          Creates an instance of the switch
 
Method Summary
 T caseE(E object)
          Returns the result of interpreting the object as an instance of 'E'
 T caseExtE(ExtE object)
          Returns the result of interpreting the object as an instance of 'E'
 T caseF(F object)
          Returns the result of interpreting the object as an instance of 'F'
 T defaultCase(EObject object)
          Returns the result of interpreting the object as an instance of 'EObject'
protected  T doSwitch(EClass theEClass, EObject theEObject)
          Calls caseXXX for each class of the model until one returns a non null result; it yields that result
 T doSwitch(EObject theEObject)
          Calls caseXXX for each class of the model until one returns a non null result; it yields that result
protected  T doSwitch(int classifierID, EObject theEObject)
          Calls caseXXX for each class of the model until one returns a non null result; it yields that result
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

modelPackage

protected static ExtPackage modelPackage
The cached model package

Constructor Detail

ExtSwitch

public ExtSwitch()
Creates an instance of the switch.

Method Detail

doSwitch

public T doSwitch(EObject theEObject)
Calls caseXXX for each class of the model until one returns a non null result; it yields that result.

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

doSwitch

protected T doSwitch(EClass theEClass,
                     EObject theEObject)
Calls caseXXX for each class of the model until one returns a non null result; it yields that result.

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

doSwitch

protected T doSwitch(int classifierID,
                     EObject theEObject)
Calls caseXXX for each class of the model until one returns a non null result; it yields that result.

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

caseExtE

public T caseExtE(ExtE object)
Returns the result of interpreting the object as an instance of 'E'. This implementation returns null; returning a non-null result will terminate the switch.

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

caseF

public T caseF(F object)
Returns the result of interpreting the object as an instance of 'F'. This implementation returns null; returning a non-null result will terminate the switch.

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

caseE

public T caseE(E object)
Returns the result of interpreting the object as an instance of 'E'. This implementation returns null; returning a non-null result will terminate the switch.

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

defaultCase

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

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

Copyright 2001-2006 IBM Corporation and others.
All Rights Reserved.