/** * <copyright> * </copyright> * * $Id$ */ package org.eclipse.gmt.modisco.java.emffrag.impl; import org.eclipse.emf.common.util.EList; import org.eclipse.emf.ecore.EClass; import org.eclipse.gmt.modisco.java.AbstractMethodDeclaration; import org.eclipse.gmt.modisco.java.AbstractMethodInvocation; import org.eclipse.gmt.modisco.java.Expression; import org.eclipse.gmt.modisco.java.SuperMethodInvocation; import org.eclipse.gmt.modisco.java.TypeAccess; import org.eclipse.gmt.modisco.java.emffrag.metadata.JavaPackage; /** * <!-- begin-user-doc --> * An implementation of the model object '<em><b>Super Method Invocation</b></em>'. * <!-- end-user-doc --> * <p> * The following features are implemented: * </p> * <ul> * <li>{@link org.eclipse.gmt.modisco.java.emffrag.impl.SuperMethodInvocationImpl#getMethod <em>Method</em>}</li> * <li>{@link org.eclipse.gmt.modisco.java.emffrag.impl.SuperMethodInvocationImpl#getArguments <em>Arguments</em>}</li> * <li>{@link org.eclipse.gmt.modisco.java.emffrag.impl.SuperMethodInvocationImpl#getTypeArguments <em>Type Arguments</em>}</li> * </ul> * * @generated */ public class SuperMethodInvocationImpl extends AbstractTypeQualifiedExpressionImpl implements SuperMethodInvocation { /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ protected SuperMethodInvocationImpl() { super(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override protected EClass eStaticClass() { return JavaPackage.eINSTANCE.getSuperMethodInvocation(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public AbstractMethodDeclaration getMethod() { return (AbstractMethodDeclaration)eGet(JavaPackage.eINSTANCE.getAbstractMethodInvocation_Method(), true); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void setMethod(AbstractMethodDeclaration newMethod) { eSet(JavaPackage.eINSTANCE.getAbstractMethodInvocation_Method(), newMethod); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @SuppressWarnings("unchecked") public EList<Expression> getArguments() { return (EList<Expression>)eGet(JavaPackage.eINSTANCE.getAbstractMethodInvocation_Arguments(), true); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @SuppressWarnings("unchecked") public EList<TypeAccess> getTypeArguments() { return (EList<TypeAccess>)eGet(JavaPackage.eINSTANCE.getAbstractMethodInvocation_TypeArguments(), true); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) { if (baseClass == AbstractMethodInvocation.class) { switch (derivedFeatureID) { case JavaPackage.SUPER_METHOD_INVOCATION__METHOD: return JavaPackage.ABSTRACT_METHOD_INVOCATION__METHOD; case JavaPackage.SUPER_METHOD_INVOCATION__ARGUMENTS: return JavaPackage.ABSTRACT_METHOD_INVOCATION__ARGUMENTS; case JavaPackage.SUPER_METHOD_INVOCATION__TYPE_ARGUMENTS: return JavaPackage.ABSTRACT_METHOD_INVOCATION__TYPE_ARGUMENTS; default: return -1; } } return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ @Override public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) { if (baseClass == AbstractMethodInvocation.class) { switch (baseFeatureID) { case JavaPackage.ABSTRACT_METHOD_INVOCATION__METHOD: return JavaPackage.SUPER_METHOD_INVOCATION__METHOD; case JavaPackage.ABSTRACT_METHOD_INVOCATION__ARGUMENTS: return JavaPackage.SUPER_METHOD_INVOCATION__ARGUMENTS; case JavaPackage.ABSTRACT_METHOD_INVOCATION__TYPE_ARGUMENTS: return JavaPackage.SUPER_METHOD_INVOCATION__TYPE_ARGUMENTS; default: return -1; } } return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); } } //SuperMethodInvocationImpl