diff options
Diffstat (limited to 'plugins/org.eclipse.xpand3.parser/emf-gen/org/eclipse/xpand3/internal/frontend/parser/xpand3node/impl/SwitchExpressionNodeImpl.java')
-rw-r--r-- | plugins/org.eclipse.xpand3.parser/emf-gen/org/eclipse/xpand3/internal/frontend/parser/xpand3node/impl/SwitchExpressionNodeImpl.java | 264 |
1 files changed, 264 insertions, 0 deletions
diff --git a/plugins/org.eclipse.xpand3.parser/emf-gen/org/eclipse/xpand3/internal/frontend/parser/xpand3node/impl/SwitchExpressionNodeImpl.java b/plugins/org.eclipse.xpand3.parser/emf-gen/org/eclipse/xpand3/internal/frontend/parser/xpand3node/impl/SwitchExpressionNodeImpl.java new file mode 100644 index 00000000..9e6331e9 --- /dev/null +++ b/plugins/org.eclipse.xpand3.parser/emf-gen/org/eclipse/xpand3/internal/frontend/parser/xpand3node/impl/SwitchExpressionNodeImpl.java @@ -0,0 +1,264 @@ +/** + * <copyright> + * </copyright> + * + * $Id: SwitchExpressionNodeImpl.java,v 1.1 2008/03/17 14:39:07 jkohnlein Exp $ + */ +package org.eclipse.xpand3.internal.frontend.parser.xpand3node.impl; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectResolvingEList; + +import org.eclipse.tmf.common.node.CompositeNode; + +import org.eclipse.tmf.common.node.impl.CompositeNodeImpl; + +import org.eclipse.xpand3.internal.frontend.parser.xpand3node.SwitchExpressionNode; +import org.eclipse.xpand3.internal.frontend.parser.xpand3node.Xpand3nodePackage; + +/** + * <!-- begin-user-doc --> + * An implementation of the model object '<em><b>Switch Expression Node</b></em>'. + * <!-- end-user-doc --> + * <p> + * The following features are implemented: + * <ul> + * <li>{@link org.eclipse.xpand3.internal.frontend.parser.xpand3node.impl.SwitchExpressionNodeImpl#getExpression <em>Expression</em>}</li> + * <li>{@link org.eclipse.xpand3.internal.frontend.parser.xpand3node.impl.SwitchExpressionNodeImpl#getCases <em>Cases</em>}</li> + * <li>{@link org.eclipse.xpand3.internal.frontend.parser.xpand3node.impl.SwitchExpressionNodeImpl#getDefault <em>Default</em>}</li> + * </ul> + * </p> + * + * @generated + */ +public class SwitchExpressionNodeImpl extends CompositeNodeImpl implements SwitchExpressionNode { + /** + * The cached value of the '{@link #getExpression() <em>Expression</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getExpression() + * @generated + * @ordered + */ + protected CompositeNode expression; + + /** + * The cached value of the '{@link #getCases() <em>Cases</em>}' reference list. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getCases() + * @generated + * @ordered + */ + protected EList<CompositeNode> cases; + + /** + * The cached value of the '{@link #getDefault() <em>Default</em>}' reference. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @see #getDefault() + * @generated + * @ordered + */ + protected CompositeNode default_; + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected SwitchExpressionNodeImpl() { + super(); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + protected EClass eStaticClass() { + return Xpand3nodePackage.Literals.SWITCH_EXPRESSION_NODE; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public CompositeNode getExpression() { + if (expression != null && expression.eIsProxy()) { + InternalEObject oldExpression = (InternalEObject)expression; + expression = (CompositeNode)eResolveProxy(oldExpression); + if (expression != oldExpression) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, Xpand3nodePackage.SWITCH_EXPRESSION_NODE__EXPRESSION, oldExpression, expression)); + } + } + return expression; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public CompositeNode basicGetExpression() { + return expression; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setExpression(CompositeNode newExpression) { + CompositeNode oldExpression = expression; + expression = newExpression; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, Xpand3nodePackage.SWITCH_EXPRESSION_NODE__EXPRESSION, oldExpression, expression)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public EList<CompositeNode> getCases() { + if (cases == null) { + cases = new EObjectResolvingEList<CompositeNode>(CompositeNode.class, this, Xpand3nodePackage.SWITCH_EXPRESSION_NODE__CASES); + } + return cases; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public CompositeNode getDefault() { + if (default_ != null && default_.eIsProxy()) { + InternalEObject oldDefault = (InternalEObject)default_; + default_ = (CompositeNode)eResolveProxy(oldDefault); + if (default_ != oldDefault) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, Xpand3nodePackage.SWITCH_EXPRESSION_NODE__DEFAULT, oldDefault, default_)); + } + } + return default_; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public CompositeNode basicGetDefault() { + return default_; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void setDefault(CompositeNode newDefault) { + CompositeNode oldDefault = default_; + default_ = newDefault; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, Xpand3nodePackage.SWITCH_EXPRESSION_NODE__DEFAULT, oldDefault, default_)); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case Xpand3nodePackage.SWITCH_EXPRESSION_NODE__EXPRESSION: + if (resolve) return getExpression(); + return basicGetExpression(); + case Xpand3nodePackage.SWITCH_EXPRESSION_NODE__CASES: + return getCases(); + case Xpand3nodePackage.SWITCH_EXPRESSION_NODE__DEFAULT: + if (resolve) return getDefault(); + return basicGetDefault(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case Xpand3nodePackage.SWITCH_EXPRESSION_NODE__EXPRESSION: + setExpression((CompositeNode)newValue); + return; + case Xpand3nodePackage.SWITCH_EXPRESSION_NODE__CASES: + getCases().clear(); + getCases().addAll((Collection<? extends CompositeNode>)newValue); + return; + case Xpand3nodePackage.SWITCH_EXPRESSION_NODE__DEFAULT: + setDefault((CompositeNode)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case Xpand3nodePackage.SWITCH_EXPRESSION_NODE__EXPRESSION: + setExpression((CompositeNode)null); + return; + case Xpand3nodePackage.SWITCH_EXPRESSION_NODE__CASES: + getCases().clear(); + return; + case Xpand3nodePackage.SWITCH_EXPRESSION_NODE__DEFAULT: + setDefault((CompositeNode)null); + return; + } + super.eUnset(featureID); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case Xpand3nodePackage.SWITCH_EXPRESSION_NODE__EXPRESSION: + return expression != null; + case Xpand3nodePackage.SWITCH_EXPRESSION_NODE__CASES: + return cases != null && !cases.isEmpty(); + case Xpand3nodePackage.SWITCH_EXPRESSION_NODE__DEFAULT: + return default_ != null; + } + return super.eIsSet(featureID); + } + +} //SwitchExpressionNodeImpl |