org.eclipse.gmt.umlx.emof.util
Class EmofSwitch<T>

java.lang.Object
  extended by org.eclipse.gmt.umlx.emof.util.EmofSwitch<T>

public class EmofSwitch<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:
EmofPackage

Constructor Summary
EmofSwitch()
          Creates an instance of the switch.
 
Method Summary
 T caseClass(Class object)
          Returns the result of interpreting the object as an instance of 'Class'.
 T caseComment(Comment object)
          Returns the result of interpreting the object as an instance of 'Comment'.
 T caseDataType(DataType object)
          Returns the result of interpreting the object as an instance of 'Data Type'.
 T caseElement(Element object)
          Returns the result of interpreting the object as an instance of 'Element'.
 T caseEnumeration(Enumeration object)
          Returns the result of interpreting the object as an instance of 'Enumeration'.
 T caseEnumerationLiteral(EnumerationLiteral object)
          Returns the result of interpreting the object as an instance of 'Enumeration Literal'.
 T caseExtent(Extent object)
          Returns the result of interpreting the object as an instance of 'Extent'.
 T caseMultiplicityElement(MultiplicityElement object)
          Returns the result of interpreting the object as an instance of 'Multiplicity Element'.
 T caseNamedElement(NamedElement object)
          Returns the result of interpreting the object as an instance of 'Named Element'.
 T caseObject(Object object)
          Returns the result of interpreting the object as an instance of 'Object'.
 T caseOperation(Operation object)
          Returns the result of interpreting the object as an instance of 'Operation'.
 T casePackage(Package object)
          Returns the result of interpreting the object as an instance of 'Package'.
 T caseParameter(Parameter object)
          Returns the result of interpreting the object as an instance of 'Parameter'.
 T casePrimitiveType(PrimitiveType object)
          Returns the result of interpreting the object as an instance of 'Primitive Type'.
 T caseProperty(Property object)
          Returns the result of interpreting the object as an instance of 'Property'.
 T caseTag(Tag object)
          Returns the result of interpreting the object as an instance of 'Tag'.
 T caseType(Type object)
          Returns the result of interpreting the object as an instance of 'Type'.
 T caseTypedElement(TypedElement object)
          Returns the result of interpreting the object as an instance of 'Typed Element'.
 T caseURIExtent(URIExtent object)
          Returns the result of interpreting the object as an instance of 'URI Extent'.
 T defaultCase(org.eclipse.emf.ecore.EObject object)
          Returns the result of interpreting the object as an instance of 'EObject'.
 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
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EmofSwitch

public EmofSwitch()
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.

caseClass

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

caseDataType

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

caseElement

public T caseElement(Element 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)

caseTag

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

caseEnumeration

public T caseEnumeration(Enumeration object)
Returns the result of interpreting the object as an instance of 'Enumeration'. 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 'Enumeration'.
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)

caseExtent

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

caseObject

public T caseObject(Object object)
Returns the result of interpreting the object as an instance of 'Object'. 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 'Object'.
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)

caseMultiplicityElement

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

casePackage

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

caseType

public T caseType(Type object)
Returns the result of interpreting the object as an instance of 'Type'. 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 'Type'.
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)

caseEnumerationLiteral

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

caseProperty

public T caseProperty(Property object)
Returns the result of interpreting the object as an instance of 'Property'. 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 'Property'.
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)

casePrimitiveType

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

caseURIExtent

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

caseComment

public T caseComment(Comment object)
Returns the result of interpreting the object as an instance of 'Comment'. 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 'Comment'.
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)