org.infai.emo.matcher.diff.util
Class DiffSwitch<T>

java.lang.Object
  extended by org.infai.emo.matcher.diff.util.DiffSwitch<T>

public class DiffSwitch<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:
DiffPackage

Field Summary
protected static DiffPackage modelPackage
          The cached model package
 
Constructor Summary
DiffSwitch()
          Creates an instance of the switch
 
Method Summary
 T caseAddDelModelElement(AddDelModelElement object)
          Returns the result of interpreting the object as an instance of 'Add Del Model Element'
 T caseChangeAttribute(ChangeAttribute object)
          Returns the result of interpreting the object as an instance of 'Change Attribute'
 T caseChangeReference(ChangeReference object)
          Returns the result of interpreting the object as an instance of 'Change Reference'
 T caseDiffElement(DiffElement object)
          Returns the result of interpreting the object as an instance of 'Element'
 T caseDiffModel(DiffModel object)
          Returns the result of interpreting the object as an instance of 'Model'
 T caseGroup(Group object)
          Returns the result of interpreting the object as an instance of 'Group'
 T caseInput(Input object)
          Returns the result of interpreting the object as an instance of 'Input'
 T caseMoveModelElement(MoveModelElement object)
          Returns the result of interpreting the object as an instance of 'Move Model Element'
 T defaultCase(org.eclipse.emf.ecore.EObject object)
          Returns the result of interpreting the object as an instance of 'EObject'
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
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
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

modelPackage

protected static DiffPackage modelPackage
The cached model package

Constructor Detail

DiffSwitch

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

caseInput

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

caseDiffModel

public T caseDiffModel(DiffModel 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)

caseDiffElement

public T caseDiffElement(DiffElement 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)

caseGroup

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

caseAddDelModelElement

public T caseAddDelModelElement(AddDelModelElement object)
Returns the result of interpreting the object as an instance of 'Add Del Model 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 'Add Del Model Element'.
See Also:
doSwitch(EObject)

caseMoveModelElement

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

caseChangeAttribute

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

caseChangeReference

public T caseChangeReference(ChangeReference object)
Returns the result of interpreting the object as an instance of 'Change Reference'. 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 'Change Reference'.
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)