/** */ package org.eclipse.emf.mwe2.language.mwe2.util; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.util.Switch; import org.eclipse.emf.mwe2.language.mwe2.*; import org.eclipse.xtext.common.types.JvmIdentifiableElement; /** * <!-- begin-user-doc --> * The <b>Switch</b> for the model's inheritance hierarchy. * It supports the call {@link #doSwitch(EObject) doSwitch(object)} * to invoke the <code>caseXXX</code> 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. * <!-- end-user-doc --> * @see org.eclipse.emf.mwe2.language.mwe2.Mwe2Package * @generated */ public class Mwe2Switch<T> extends Switch<T> { /** * The cached model package * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ protected static Mwe2Package modelPackage; /** * Creates an instance of the switch. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public Mwe2Switch() { if (modelPackage == null) { modelPackage = Mwe2Package.eINSTANCE; } } /** * Checks whether this is a switch for the given package. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param ePackage the package in question. * @return whether this is a switch for the given package. * @generated */ @Override protected boolean isSwitchFor(EPackage ePackage) { return ePackage == modelPackage; } /** * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @return the first non-null result returned by a <code>caseXXX</code> call. * @generated */ @Override protected T doSwitch(int classifierID, EObject theEObject) { switch (classifierID) { case Mwe2Package.MODULE: { Module module = (Module)theEObject; T result = caseModule(module); if (result == null) result = defaultCase(theEObject); return result; } case Mwe2Package.REFERRABLE: { Referrable referrable = (Referrable)theEObject; T result = caseReferrable(referrable); if (result == null) result = defaultCase(theEObject); return result; } case Mwe2Package.DECLARED_PROPERTY: { DeclaredProperty declaredProperty = (DeclaredProperty)theEObject; T result = caseDeclaredProperty(declaredProperty); if (result == null) result = caseReferrable(declaredProperty); if (result == null) result = caseJvmIdentifiableElement(declaredProperty); if (result == null) result = defaultCase(theEObject); return result; } case Mwe2Package.COMPONENT: { Component component = (Component)theEObject; T result = caseComponent(component); if (result == null) result = caseReferrable(component); if (result == null) result = caseValue(component); if (result == null) result = defaultCase(theEObject); return result; } case Mwe2Package.IMPORT: { Import import_ = (Import)theEObject; T result = caseImport(import_); if (result == null) result = defaultCase(theEObject); return result; } case Mwe2Package.ASSIGNMENT: { Assignment assignment = (Assignment)theEObject; T result = caseAssignment(assignment); if (result == null) result = defaultCase(theEObject); return result; } case Mwe2Package.VALUE: { Value value = (Value)theEObject; T result = caseValue(value); if (result == null) result = defaultCase(theEObject); return result; } case Mwe2Package.BOOLEAN_LITERAL: { BooleanLiteral booleanLiteral = (BooleanLiteral)theEObject; T result = caseBooleanLiteral(booleanLiteral); if (result == null) result = caseValue(booleanLiteral); if (result == null) result = defaultCase(theEObject); return result; } case Mwe2Package.REFERENCE: { Reference reference = (Reference)theEObject; T result = caseReference(reference); if (result == null) result = caseValue(reference); if (result == null) result = caseAbstractReference(reference); if (result == null) result = defaultCase(theEObject); return result; } case Mwe2Package.STRING_LITERAL: { StringLiteral stringLiteral = (StringLiteral)theEObject; T result = caseStringLiteral(stringLiteral); if (result == null) result = caseValue(stringLiteral); if (result == null) result = defaultCase(theEObject); return result; } case Mwe2Package.STRING_PART: { StringPart stringPart = (StringPart)theEObject; T result = caseStringPart(stringPart); if (result == null) result = defaultCase(theEObject); return result; } case Mwe2Package.PROPERTY_REFERENCE: { PropertyReference propertyReference = (PropertyReference)theEObject; T result = casePropertyReference(propertyReference); if (result == null) result = caseStringPart(propertyReference); if (result == null) result = caseAbstractReference(propertyReference); if (result == null) result = defaultCase(theEObject); return result; } case Mwe2Package.PLAIN_STRING: { PlainString plainString = (PlainString)theEObject; T result = casePlainString(plainString); if (result == null) result = caseStringPart(plainString); if (result == null) result = defaultCase(theEObject); return result; } case Mwe2Package.ABSTRACT_REFERENCE: { AbstractReference abstractReference = (AbstractReference)theEObject; T result = caseAbstractReference(abstractReference); if (result == null) result = defaultCase(theEObject); return result; } default: return defaultCase(theEObject); } } /** * Returns the result of interpreting the object as an instance of '<em>Module</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. * @return the result of interpreting the object as an instance of '<em>Module</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseModule(Module object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Referrable</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. * @return the result of interpreting the object as an instance of '<em>Referrable</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseReferrable(Referrable object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Declared Property</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. * @return the result of interpreting the object as an instance of '<em>Declared Property</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseDeclaredProperty(DeclaredProperty object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Component</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. * @return the result of interpreting the object as an instance of '<em>Component</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseComponent(Component object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Import</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. * @return the result of interpreting the object as an instance of '<em>Import</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseImport(Import object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Assignment</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. * @return the result of interpreting the object as an instance of '<em>Assignment</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseAssignment(Assignment object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Value</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. * @return the result of interpreting the object as an instance of '<em>Value</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseValue(Value object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Boolean Literal</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. * @return the result of interpreting the object as an instance of '<em>Boolean Literal</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseBooleanLiteral(BooleanLiteral object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Reference</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. * @return the result of interpreting the object as an instance of '<em>Reference</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseReference(Reference object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>String Literal</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. * @return the result of interpreting the object as an instance of '<em>String Literal</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseStringLiteral(StringLiteral object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>String Part</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. * @return the result of interpreting the object as an instance of '<em>String Part</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseStringPart(StringPart object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Property Reference</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. * @return the result of interpreting the object as an instance of '<em>Property Reference</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T casePropertyReference(PropertyReference object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Plain String</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. * @return the result of interpreting the object as an instance of '<em>Plain String</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T casePlainString(PlainString object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Abstract Reference</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. * @return the result of interpreting the object as an instance of '<em>Abstract Reference</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseAbstractReference(AbstractReference object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>Jvm Identifiable Element</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch. * <!-- end-user-doc --> * @param object the target of the switch. * @return the result of interpreting the object as an instance of '<em>Jvm Identifiable Element</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ public T caseJvmIdentifiableElement(JvmIdentifiableElement object) { return null; } /** * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. * <!-- begin-user-doc --> * This implementation returns null; * returning a non-null result will terminate the switch, but this is the last case anyway. * <!-- end-user-doc --> * @param object the target of the switch. * @return the result of interpreting the object as an instance of '<em>EObject</em>'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) * @generated */ @Override public T defaultCase(EObject object) { return null; } } //Mwe2Switch