Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEd Willink2016-04-30 16:49:52 +0000
committerEd Willink2016-05-04 10:08:26 +0000
commitf12633e0c205473a48d1db174673b7444f17c271 (patch)
tree5f9f76af01a3b698165e30c0942377b5638c43b4
parentf9704aa6d0073d519113fd64f27d6176c1e05633 (diff)
downloadorg.eclipse.qvtd-f12633e0c205473a48d1db174673b7444f17c271.tar.gz
org.eclipse.qvtd-f12633e0c205473a48d1db174673b7444f17c271.tar.xz
org.eclipse.qvtd-f12633e0c205473a48d1db174673b7444f17c271.zip
[492764] Generate with OppositePropertyAssignment
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/NavigationAssignment.java63
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/OppositePropertyAssignment.java64
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/PropertyAssignment.java30
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/QVTcoreBaseFactory.java9
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/QVTcoreBasePackage.java304
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/NavigationAssignmentImpl.java190
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/OppositePropertyAssignmentImpl.java184
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/PropertyAssignmentImpl.java83
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/QVTcoreBaseFactoryImpl.java13
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/QVTcoreBasePackageImpl.java82
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractDelegatingQVTcoreBaseVisitor.java10
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractExtendingQVTcoreBaseVisitor.java12
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractMergedQVTcoreBaseVisitor.java10
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractNullQVTcoreBaseVisitor.java10
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseAS2MonikerVisitor.java12
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseAS2XMIidVisitor.java12
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseASSaverLocateVisitor.java12
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseASSaverNormalizeVisitor.java12
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseASSaverResolveVisitor.java12
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseTemplateParameterSubstitutionVisitor.java12
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractWrappingQVTcoreBaseVisitor.java24
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/QVTcoreBaseAdapterFactory.java37
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/QVTcoreBaseSwitch.java51
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/QVTcoreBaseVisitor.java2
-rw-r--r--plugins/org.eclipse.qvtd.pivot.qvtcorebase/model/QVTcoreBase.genmodel7
25 files changed, 1102 insertions, 155 deletions
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/NavigationAssignment.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/NavigationAssignment.java
new file mode 100644
index 000000000..bb3b8431f
--- /dev/null
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/NavigationAssignment.java
@@ -0,0 +1,63 @@
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2013, 2015 Willink Transformations and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * E.D.Willink - Initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.qvtd.pivot.qvtcorebase;
+
+import org.eclipse.ocl.pivot.OCLExpression;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Navigation Assignment</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.qvtd.pivot.qvtcorebase.NavigationAssignment#getSlotExpression <em>Slot Expression</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.QVTcoreBasePackage#getNavigationAssignment()
+ * @model abstract="true"
+ * @generated
+ */
+public interface NavigationAssignment extends Assignment {
+ /**
+ * Returns the value of the '<em><b>Slot Expression</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Slot Expression</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Slot Expression</em>' containment reference.
+ * @see #setSlotExpression(OCLExpression)
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.QVTcoreBasePackage#getNavigationAssignment_SlotExpression()
+ * @model containment="true" required="true"
+ * annotation="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName body='slotAssignment'"
+ * @generated
+ */
+ OCLExpression getSlotExpression();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.qvtd.pivot.qvtcorebase.NavigationAssignment#getSlotExpression <em>Slot Expression</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Slot Expression</em>' containment reference.
+ * @see #getSlotExpression()
+ * @generated
+ */
+ void setSlotExpression(OCLExpression value);
+
+} // NavigationAssignment
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/OppositePropertyAssignment.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/OppositePropertyAssignment.java
new file mode 100644
index 000000000..eed03528c
--- /dev/null
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/OppositePropertyAssignment.java
@@ -0,0 +1,64 @@
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2013, 2015 Willink Transformations and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * E.D.Willink - Initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.qvtd.pivot.qvtcorebase;
+
+import org.eclipse.ocl.pivot.Property;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Opposite Property Assignment</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.qvtd.pivot.qvtcorebase.OppositePropertyAssignment#getTargetProperty <em>Target Property</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.QVTcoreBasePackage#getOppositePropertyAssignment()
+ * @model
+ * @generated
+ */
+public interface OppositePropertyAssignment extends NavigationAssignment {
+
+ /**
+ * Returns the value of the '<em><b>Target Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Target Property</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Target Property</em>' reference.
+ * @see #setTargetProperty(Property)
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.QVTcoreBasePackage#getOppositePropertyAssignment_TargetProperty()
+ * @model required="true"
+ * annotation="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName body='assignment'"
+ * @generated
+ */
+ Property getTargetProperty();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.qvtd.pivot.qvtcorebase.OppositePropertyAssignment#getTargetProperty <em>Target Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Target Property</em>' reference.
+ * @see #getTargetProperty()
+ * @generated
+ */
+ void setTargetProperty(Property value);
+} // OppositePropertyAssignment
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/PropertyAssignment.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/PropertyAssignment.java
index 1f4dc9356..4c5c074b2 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/PropertyAssignment.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/PropertyAssignment.java
@@ -10,7 +10,6 @@
*******************************************************************************/
package org.eclipse.qvtd.pivot.qvtcorebase;
-import org.eclipse.ocl.pivot.OCLExpression;
import org.eclipse.ocl.pivot.Property;
/**
@@ -22,7 +21,6 @@ import org.eclipse.ocl.pivot.Property;
* The following features are supported:
* </p>
* <ul>
- * <li>{@link org.eclipse.qvtd.pivot.qvtcorebase.PropertyAssignment#getSlotExpression <em>Slot Expression</em>}</li>
* <li>{@link org.eclipse.qvtd.pivot.qvtcorebase.PropertyAssignment#getTargetProperty <em>Target Property</em>}</li>
* </ul>
*
@@ -30,33 +28,7 @@ import org.eclipse.ocl.pivot.Property;
* @model
* @generated
*/
-public interface PropertyAssignment extends Assignment {
- /**
- * Returns the value of the '<em><b>Slot Expression</b></em>' containment reference.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Slot Expression</em>' containment reference isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>Slot Expression</em>' containment reference.
- * @see #setSlotExpression(OCLExpression)
- * @see org.eclipse.qvtd.pivot.qvtcorebase.QVTcoreBasePackage#getPropertyAssignment_SlotExpression()
- * @model containment="true" required="true"
- * annotation="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName body='slotAssignment'"
- * @generated
- */
- OCLExpression getSlotExpression();
-
- /**
- * Sets the value of the '{@link org.eclipse.qvtd.pivot.qvtcorebase.PropertyAssignment#getSlotExpression <em>Slot Expression</em>}' containment reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param value the new value of the '<em>Slot Expression</em>' containment reference.
- * @see #getSlotExpression()
- * @generated
- */
- void setSlotExpression(OCLExpression value);
+public interface PropertyAssignment extends NavigationAssignment {
/**
* Returns the value of the '<em><b>Target Property</b></em>' reference.
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/QVTcoreBaseFactory.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/QVTcoreBaseFactory.java
index 8ed24cd09..8e3f910ed 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/QVTcoreBaseFactory.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/QVTcoreBaseFactory.java
@@ -76,6 +76,15 @@ public interface QVTcoreBaseFactory extends EFactory {
@NonNull GuardPattern createGuardPattern();
/**
+ * Returns a new object of class '<em>Opposite Property Assignment</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Opposite Property Assignment</em>'.
+ * @generated
+ */
+ @NonNull OppositePropertyAssignment createOppositePropertyAssignment();
+
+ /**
* Returns a new object of class '<em>Property Assignment</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/QVTcoreBasePackage.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/QVTcoreBasePackage.java
index b80da2912..20f42d614 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/QVTcoreBasePackage.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/QVTcoreBasePackage.java
@@ -848,6 +848,197 @@ public interface QVTcoreBasePackage extends EPackage {
int GUARD_PATTERN_FEATURE_COUNT = CORE_PATTERN_FEATURE_COUNT + 1;
/**
+ * The meta object id for the '{@link org.eclipse.qvtd.pivot.qvtcorebase.impl.NavigationAssignmentImpl <em>Navigation Assignment</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.impl.NavigationAssignmentImpl
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.impl.QVTcoreBasePackageImpl#getNavigationAssignment()
+ * @generated
+ */
+ int NAVIGATION_ASSIGNMENT = 8;
+
+ /**
+ * The feature id for the '<em><b>Annotating Comments</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAVIGATION_ASSIGNMENT__ANNOTATING_COMMENTS = ASSIGNMENT__ANNOTATING_COMMENTS;
+
+ /**
+ * The feature id for the '<em><b>Owned Annotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAVIGATION_ASSIGNMENT__OWNED_ANNOTATIONS = ASSIGNMENT__OWNED_ANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Owned Comments</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAVIGATION_ASSIGNMENT__OWNED_COMMENTS = ASSIGNMENT__OWNED_COMMENTS;
+
+ /**
+ * The feature id for the '<em><b>Owned Extensions</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAVIGATION_ASSIGNMENT__OWNED_EXTENSIONS = ASSIGNMENT__OWNED_EXTENSIONS;
+
+ /**
+ * The feature id for the '<em><b>Bottom Pattern</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAVIGATION_ASSIGNMENT__BOTTOM_PATTERN = ASSIGNMENT__BOTTOM_PATTERN;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAVIGATION_ASSIGNMENT__VALUE = ASSIGNMENT__VALUE;
+
+ /**
+ * The feature id for the '<em><b>Is Default</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAVIGATION_ASSIGNMENT__IS_DEFAULT = ASSIGNMENT__IS_DEFAULT;
+
+ /**
+ * The feature id for the '<em><b>Slot Expression</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAVIGATION_ASSIGNMENT__SLOT_EXPRESSION = ASSIGNMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Navigation Assignment</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAVIGATION_ASSIGNMENT_FEATURE_COUNT = ASSIGNMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.qvtd.pivot.qvtcorebase.impl.OppositePropertyAssignmentImpl <em>Opposite Property Assignment</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.impl.OppositePropertyAssignmentImpl
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.impl.QVTcoreBasePackageImpl#getOppositePropertyAssignment()
+ * @generated
+ */
+ int OPPOSITE_PROPERTY_ASSIGNMENT = 9;
+
+ /**
+ * The feature id for the '<em><b>Annotating Comments</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPPOSITE_PROPERTY_ASSIGNMENT__ANNOTATING_COMMENTS = NAVIGATION_ASSIGNMENT__ANNOTATING_COMMENTS;
+
+ /**
+ * The feature id for the '<em><b>Owned Annotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPPOSITE_PROPERTY_ASSIGNMENT__OWNED_ANNOTATIONS = NAVIGATION_ASSIGNMENT__OWNED_ANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Owned Comments</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPPOSITE_PROPERTY_ASSIGNMENT__OWNED_COMMENTS = NAVIGATION_ASSIGNMENT__OWNED_COMMENTS;
+
+ /**
+ * The feature id for the '<em><b>Owned Extensions</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPPOSITE_PROPERTY_ASSIGNMENT__OWNED_EXTENSIONS = NAVIGATION_ASSIGNMENT__OWNED_EXTENSIONS;
+
+ /**
+ * The feature id for the '<em><b>Bottom Pattern</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPPOSITE_PROPERTY_ASSIGNMENT__BOTTOM_PATTERN = NAVIGATION_ASSIGNMENT__BOTTOM_PATTERN;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPPOSITE_PROPERTY_ASSIGNMENT__VALUE = NAVIGATION_ASSIGNMENT__VALUE;
+
+ /**
+ * The feature id for the '<em><b>Is Default</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPPOSITE_PROPERTY_ASSIGNMENT__IS_DEFAULT = NAVIGATION_ASSIGNMENT__IS_DEFAULT;
+
+ /**
+ * The feature id for the '<em><b>Slot Expression</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPPOSITE_PROPERTY_ASSIGNMENT__SLOT_EXPRESSION = NAVIGATION_ASSIGNMENT__SLOT_EXPRESSION;
+
+ /**
+ * The feature id for the '<em><b>Target Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPPOSITE_PROPERTY_ASSIGNMENT__TARGET_PROPERTY = NAVIGATION_ASSIGNMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Opposite Property Assignment</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPPOSITE_PROPERTY_ASSIGNMENT_FEATURE_COUNT = NAVIGATION_ASSIGNMENT_FEATURE_COUNT + 1;
+
+ /**
* The meta object id for the '{@link org.eclipse.qvtd.pivot.qvtcorebase.impl.PropertyAssignmentImpl <em>Property Assignment</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -855,7 +1046,7 @@ public interface QVTcoreBasePackage extends EPackage {
* @see org.eclipse.qvtd.pivot.qvtcorebase.impl.QVTcoreBasePackageImpl#getPropertyAssignment()
* @generated
*/
- int PROPERTY_ASSIGNMENT = 8;
+ int PROPERTY_ASSIGNMENT = 10;
/**
* The feature id for the '<em><b>Annotating Comments</b></em>' reference list.
@@ -864,7 +1055,7 @@ public interface QVTcoreBasePackage extends EPackage {
* @generated
* @ordered
*/
- int PROPERTY_ASSIGNMENT__ANNOTATING_COMMENTS = ASSIGNMENT__ANNOTATING_COMMENTS;
+ int PROPERTY_ASSIGNMENT__ANNOTATING_COMMENTS = NAVIGATION_ASSIGNMENT__ANNOTATING_COMMENTS;
/**
* The feature id for the '<em><b>Owned Annotations</b></em>' containment reference list.
@@ -873,7 +1064,7 @@ public interface QVTcoreBasePackage extends EPackage {
* @generated
* @ordered
*/
- int PROPERTY_ASSIGNMENT__OWNED_ANNOTATIONS = ASSIGNMENT__OWNED_ANNOTATIONS;
+ int PROPERTY_ASSIGNMENT__OWNED_ANNOTATIONS = NAVIGATION_ASSIGNMENT__OWNED_ANNOTATIONS;
/**
* The feature id for the '<em><b>Owned Comments</b></em>' containment reference list.
@@ -882,7 +1073,7 @@ public interface QVTcoreBasePackage extends EPackage {
* @generated
* @ordered
*/
- int PROPERTY_ASSIGNMENT__OWNED_COMMENTS = ASSIGNMENT__OWNED_COMMENTS;
+ int PROPERTY_ASSIGNMENT__OWNED_COMMENTS = NAVIGATION_ASSIGNMENT__OWNED_COMMENTS;
/**
* The feature id for the '<em><b>Owned Extensions</b></em>' containment reference list.
@@ -891,7 +1082,7 @@ public interface QVTcoreBasePackage extends EPackage {
* @generated
* @ordered
*/
- int PROPERTY_ASSIGNMENT__OWNED_EXTENSIONS = ASSIGNMENT__OWNED_EXTENSIONS;
+ int PROPERTY_ASSIGNMENT__OWNED_EXTENSIONS = NAVIGATION_ASSIGNMENT__OWNED_EXTENSIONS;
/**
* The feature id for the '<em><b>Bottom Pattern</b></em>' container reference.
@@ -900,7 +1091,7 @@ public interface QVTcoreBasePackage extends EPackage {
* @generated
* @ordered
*/
- int PROPERTY_ASSIGNMENT__BOTTOM_PATTERN = ASSIGNMENT__BOTTOM_PATTERN;
+ int PROPERTY_ASSIGNMENT__BOTTOM_PATTERN = NAVIGATION_ASSIGNMENT__BOTTOM_PATTERN;
/**
* The feature id for the '<em><b>Value</b></em>' containment reference.
@@ -909,7 +1100,7 @@ public interface QVTcoreBasePackage extends EPackage {
* @generated
* @ordered
*/
- int PROPERTY_ASSIGNMENT__VALUE = ASSIGNMENT__VALUE;
+ int PROPERTY_ASSIGNMENT__VALUE = NAVIGATION_ASSIGNMENT__VALUE;
/**
* The feature id for the '<em><b>Is Default</b></em>' attribute.
@@ -918,7 +1109,7 @@ public interface QVTcoreBasePackage extends EPackage {
* @generated
* @ordered
*/
- int PROPERTY_ASSIGNMENT__IS_DEFAULT = ASSIGNMENT__IS_DEFAULT;
+ int PROPERTY_ASSIGNMENT__IS_DEFAULT = NAVIGATION_ASSIGNMENT__IS_DEFAULT;
/**
* The feature id for the '<em><b>Slot Expression</b></em>' containment reference.
@@ -927,7 +1118,7 @@ public interface QVTcoreBasePackage extends EPackage {
* @generated
* @ordered
*/
- int PROPERTY_ASSIGNMENT__SLOT_EXPRESSION = ASSIGNMENT_FEATURE_COUNT + 0;
+ int PROPERTY_ASSIGNMENT__SLOT_EXPRESSION = NAVIGATION_ASSIGNMENT__SLOT_EXPRESSION;
/**
* The feature id for the '<em><b>Target Property</b></em>' reference.
@@ -936,7 +1127,7 @@ public interface QVTcoreBasePackage extends EPackage {
* @generated
* @ordered
*/
- int PROPERTY_ASSIGNMENT__TARGET_PROPERTY = ASSIGNMENT_FEATURE_COUNT + 1;
+ int PROPERTY_ASSIGNMENT__TARGET_PROPERTY = NAVIGATION_ASSIGNMENT_FEATURE_COUNT + 0;
/**
* The number of structural features of the '<em>Property Assignment</em>' class.
@@ -945,7 +1136,7 @@ public interface QVTcoreBasePackage extends EPackage {
* @generated
* @ordered
*/
- int PROPERTY_ASSIGNMENT_FEATURE_COUNT = ASSIGNMENT_FEATURE_COUNT + 2;
+ int PROPERTY_ASSIGNMENT_FEATURE_COUNT = NAVIGATION_ASSIGNMENT_FEATURE_COUNT + 1;
/**
* The meta object id for the '{@link org.eclipse.qvtd.pivot.qvtcorebase.impl.RealizedVariableImpl <em>Realized Variable</em>}' class.
@@ -955,7 +1146,7 @@ public interface QVTcoreBasePackage extends EPackage {
* @see org.eclipse.qvtd.pivot.qvtcorebase.impl.QVTcoreBasePackageImpl#getRealizedVariable()
* @generated
*/
- int REALIZED_VARIABLE = 9;
+ int REALIZED_VARIABLE = 11;
/**
* The feature id for the '<em><b>Annotating Comments</b></em>' reference list.
@@ -1082,7 +1273,7 @@ public interface QVTcoreBasePackage extends EPackage {
* @see org.eclipse.qvtd.pivot.qvtcorebase.impl.QVTcoreBasePackageImpl#getVariableAssignment()
* @generated
*/
- int VARIABLE_ASSIGNMENT = 10;
+ int VARIABLE_ASSIGNMENT = 12;
/**
* The feature id for the '<em><b>Annotating Comments</b></em>' reference list.
@@ -1173,7 +1364,7 @@ public interface QVTcoreBasePackage extends EPackage {
* @see org.eclipse.qvtd.pivot.qvtcorebase.impl.QVTcoreBasePackageImpl#getEnforcementMode()
* @generated
*/
- int ENFORCEMENT_MODE = 11;
+ int ENFORCEMENT_MODE = 13;
/**
@@ -1411,25 +1602,56 @@ public interface QVTcoreBasePackage extends EPackage {
EReference getGuardPattern_Area();
/**
- * Returns the meta object for class '{@link org.eclipse.qvtd.pivot.qvtcorebase.PropertyAssignment <em>Property Assignment</em>}'.
+ * Returns the meta object for class '{@link org.eclipse.qvtd.pivot.qvtcorebase.NavigationAssignment <em>Navigation Assignment</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @return the meta object for class '<em>Property Assignment</em>'.
- * @see org.eclipse.qvtd.pivot.qvtcorebase.PropertyAssignment
+ * @return the meta object for class '<em>Navigation Assignment</em>'.
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.NavigationAssignment
* @generated
*/
- EClass getPropertyAssignment();
+ EClass getNavigationAssignment();
/**
- * Returns the meta object for the containment reference '{@link org.eclipse.qvtd.pivot.qvtcorebase.PropertyAssignment#getSlotExpression <em>Slot Expression</em>}'.
+ * Returns the meta object for the containment reference '{@link org.eclipse.qvtd.pivot.qvtcorebase.NavigationAssignment#getSlotExpression <em>Slot Expression</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the containment reference '<em>Slot Expression</em>'.
- * @see org.eclipse.qvtd.pivot.qvtcorebase.PropertyAssignment#getSlotExpression()
- * @see #getPropertyAssignment()
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.NavigationAssignment#getSlotExpression()
+ * @see #getNavigationAssignment()
+ * @generated
+ */
+ EReference getNavigationAssignment_SlotExpression();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.qvtd.pivot.qvtcorebase.OppositePropertyAssignment <em>Opposite Property Assignment</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Opposite Property Assignment</em>'.
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.OppositePropertyAssignment
* @generated
*/
- EReference getPropertyAssignment_SlotExpression();
+ EClass getOppositePropertyAssignment();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.qvtd.pivot.qvtcorebase.OppositePropertyAssignment#getTargetProperty <em>Target Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Target Property</em>'.
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.OppositePropertyAssignment#getTargetProperty()
+ * @see #getOppositePropertyAssignment()
+ * @generated
+ */
+ EReference getOppositePropertyAssignment_TargetProperty();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.qvtd.pivot.qvtcorebase.PropertyAssignment <em>Property Assignment</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Property Assignment</em>'.
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.PropertyAssignment
+ * @generated
+ */
+ EClass getPropertyAssignment();
/**
* Returns the meta object for the reference '{@link org.eclipse.qvtd.pivot.qvtcorebase.PropertyAssignment#getTargetProperty <em>Target Property</em>}'.
@@ -1698,14 +1920,14 @@ public interface QVTcoreBasePackage extends EPackage {
EReference GUARD_PATTERN__AREA = eINSTANCE.getGuardPattern_Area();
/**
- * The meta object literal for the '{@link org.eclipse.qvtd.pivot.qvtcorebase.impl.PropertyAssignmentImpl <em>Property Assignment</em>}' class.
+ * The meta object literal for the '{@link org.eclipse.qvtd.pivot.qvtcorebase.impl.NavigationAssignmentImpl <em>Navigation Assignment</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @see org.eclipse.qvtd.pivot.qvtcorebase.impl.PropertyAssignmentImpl
- * @see org.eclipse.qvtd.pivot.qvtcorebase.impl.QVTcoreBasePackageImpl#getPropertyAssignment()
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.impl.NavigationAssignmentImpl
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.impl.QVTcoreBasePackageImpl#getNavigationAssignment()
* @generated
*/
- EClass PROPERTY_ASSIGNMENT = eINSTANCE.getPropertyAssignment();
+ EClass NAVIGATION_ASSIGNMENT = eINSTANCE.getNavigationAssignment();
/**
* The meta object literal for the '<em><b>Slot Expression</b></em>' containment reference feature.
@@ -1713,7 +1935,35 @@ public interface QVTcoreBasePackage extends EPackage {
* <!-- end-user-doc -->
* @generated
*/
- EReference PROPERTY_ASSIGNMENT__SLOT_EXPRESSION = eINSTANCE.getPropertyAssignment_SlotExpression();
+ EReference NAVIGATION_ASSIGNMENT__SLOT_EXPRESSION = eINSTANCE.getNavigationAssignment_SlotExpression();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.qvtd.pivot.qvtcorebase.impl.OppositePropertyAssignmentImpl <em>Opposite Property Assignment</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.impl.OppositePropertyAssignmentImpl
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.impl.QVTcoreBasePackageImpl#getOppositePropertyAssignment()
+ * @generated
+ */
+ EClass OPPOSITE_PROPERTY_ASSIGNMENT = eINSTANCE.getOppositePropertyAssignment();
+
+ /**
+ * The meta object literal for the '<em><b>Target Property</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference OPPOSITE_PROPERTY_ASSIGNMENT__TARGET_PROPERTY = eINSTANCE.getOppositePropertyAssignment_TargetProperty();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.qvtd.pivot.qvtcorebase.impl.PropertyAssignmentImpl <em>Property Assignment</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.impl.PropertyAssignmentImpl
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.impl.QVTcoreBasePackageImpl#getPropertyAssignment()
+ * @generated
+ */
+ EClass PROPERTY_ASSIGNMENT = eINSTANCE.getPropertyAssignment();
/**
* The meta object literal for the '<em><b>Target Property</b></em>' reference feature.
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/NavigationAssignmentImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/NavigationAssignmentImpl.java
new file mode 100644
index 000000000..fdb7f2e3b
--- /dev/null
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/NavigationAssignmentImpl.java
@@ -0,0 +1,190 @@
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2013, 2015 Willink Transformations and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * E.D.Willink - Initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.qvtd.pivot.qvtcorebase.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.ocl.pivot.OCLExpression;
+import org.eclipse.qvtd.pivot.qvtcorebase.NavigationAssignment;
+import org.eclipse.qvtd.pivot.qvtcorebase.QVTcoreBasePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Navigation Assignment</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.qvtd.pivot.qvtcorebase.impl.NavigationAssignmentImpl#getSlotExpression <em>Slot Expression</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class NavigationAssignmentImpl extends AssignmentImpl implements NavigationAssignment {
+ /**
+ * The cached value of the '{@link #getSlotExpression() <em>Slot Expression</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSlotExpression()
+ * @generated
+ * @ordered
+ */
+ protected OCLExpression slotExpression;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected NavigationAssignmentImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return QVTcoreBasePackage.Literals.NAVIGATION_ASSIGNMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public OCLExpression getSlotExpression() {
+ return slotExpression;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetSlotExpression(OCLExpression newSlotExpression, NotificationChain msgs) {
+ OCLExpression oldSlotExpression = slotExpression;
+ slotExpression = newSlotExpression;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, QVTcoreBasePackage.NAVIGATION_ASSIGNMENT__SLOT_EXPRESSION, oldSlotExpression, newSlotExpression);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setSlotExpression(OCLExpression newSlotExpression) {
+ if (newSlotExpression != slotExpression) {
+ NotificationChain msgs = null;
+ if (slotExpression != null)
+ msgs = ((InternalEObject)slotExpression).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - QVTcoreBasePackage.NAVIGATION_ASSIGNMENT__SLOT_EXPRESSION, null, msgs);
+ if (newSlotExpression != null)
+ msgs = ((InternalEObject)newSlotExpression).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - QVTcoreBasePackage.NAVIGATION_ASSIGNMENT__SLOT_EXPRESSION, null, msgs);
+ msgs = basicSetSlotExpression(newSlotExpression, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, QVTcoreBasePackage.NAVIGATION_ASSIGNMENT__SLOT_EXPRESSION, newSlotExpression, newSlotExpression));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case QVTcoreBasePackage.NAVIGATION_ASSIGNMENT__SLOT_EXPRESSION:
+ return basicSetSlotExpression(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case QVTcoreBasePackage.NAVIGATION_ASSIGNMENT__SLOT_EXPRESSION:
+ return getSlotExpression();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case QVTcoreBasePackage.NAVIGATION_ASSIGNMENT__SLOT_EXPRESSION:
+ setSlotExpression((OCLExpression)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case QVTcoreBasePackage.NAVIGATION_ASSIGNMENT__SLOT_EXPRESSION:
+ setSlotExpression((OCLExpression)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case QVTcoreBasePackage.NAVIGATION_ASSIGNMENT__SLOT_EXPRESSION:
+ return slotExpression != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+
+} //NavigationAssignmentImpl
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/OppositePropertyAssignmentImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/OppositePropertyAssignmentImpl.java
new file mode 100644
index 000000000..73b98454f
--- /dev/null
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/OppositePropertyAssignmentImpl.java
@@ -0,0 +1,184 @@
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2013, 2015 Willink Transformations and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * E.D.Willink - Initial API and implementation
+ *
+ * </copyright>
+ */
+package org.eclipse.qvtd.pivot.qvtcorebase.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.jdt.annotation.NonNull;
+
+import org.eclipse.ocl.pivot.Property;
+import org.eclipse.ocl.pivot.util.Visitor;
+
+import org.eclipse.qvtd.pivot.qvtcorebase.OppositePropertyAssignment;
+import org.eclipse.qvtd.pivot.qvtcorebase.QVTcoreBasePackage;
+
+import org.eclipse.qvtd.pivot.qvtcorebase.util.QVTcoreBaseVisitor;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Opposite Property Assignment</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.qvtd.pivot.qvtcorebase.impl.OppositePropertyAssignmentImpl#getTargetProperty <em>Target Property</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class OppositePropertyAssignmentImpl extends NavigationAssignmentImpl implements OppositePropertyAssignment {
+ /**
+ * The cached value of the '{@link #getTargetProperty() <em>Target Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTargetProperty()
+ * @generated
+ * @ordered
+ */
+ protected Property targetProperty;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected OppositePropertyAssignmentImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return QVTcoreBasePackage.Literals.OPPOSITE_PROPERTY_ASSIGNMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Property getTargetProperty() {
+ if (targetProperty != null && targetProperty.eIsProxy()) {
+ InternalEObject oldTargetProperty = (InternalEObject)targetProperty;
+ targetProperty = (Property)eResolveProxy(oldTargetProperty);
+ if (targetProperty != oldTargetProperty) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, QVTcoreBasePackage.OPPOSITE_PROPERTY_ASSIGNMENT__TARGET_PROPERTY, oldTargetProperty, targetProperty));
+ }
+ }
+ return targetProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property basicGetTargetProperty() {
+ return targetProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setTargetProperty(Property newTargetProperty) {
+ Property oldTargetProperty = targetProperty;
+ targetProperty = newTargetProperty;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, QVTcoreBasePackage.OPPOSITE_PROPERTY_ASSIGNMENT__TARGET_PROPERTY, oldTargetProperty, targetProperty));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case QVTcoreBasePackage.OPPOSITE_PROPERTY_ASSIGNMENT__TARGET_PROPERTY:
+ if (resolve) return getTargetProperty();
+ return basicGetTargetProperty();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case QVTcoreBasePackage.OPPOSITE_PROPERTY_ASSIGNMENT__TARGET_PROPERTY:
+ setTargetProperty((Property)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case QVTcoreBasePackage.OPPOSITE_PROPERTY_ASSIGNMENT__TARGET_PROPERTY:
+ setTargetProperty((Property)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case QVTcoreBasePackage.OPPOSITE_PROPERTY_ASSIGNMENT__TARGET_PROPERTY:
+ return targetProperty != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * {@inheritDoc}
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public <R> R accept(@NonNull Visitor<R> visitor) {
+ return (R) ((QVTcoreBaseVisitor<?>)visitor).visitOppositePropertyAssignment(this);
+ }
+
+} //OppositePropertyAssignmentImpl
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/PropertyAssignmentImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/PropertyAssignmentImpl.java
index c7e0da6c6..428e76b5c 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/PropertyAssignmentImpl.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/PropertyAssignmentImpl.java
@@ -11,7 +11,6 @@
package org.eclipse.qvtd.pivot.qvtcorebase.impl;
import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
@@ -31,23 +30,12 @@ import org.eclipse.qvtd.pivot.qvtcorebase.util.QVTcoreBaseVisitor;
* The following features are implemented:
* </p>
* <ul>
- * <li>{@link org.eclipse.qvtd.pivot.qvtcorebase.impl.PropertyAssignmentImpl#getSlotExpression <em>Slot Expression</em>}</li>
* <li>{@link org.eclipse.qvtd.pivot.qvtcorebase.impl.PropertyAssignmentImpl#getTargetProperty <em>Target Property</em>}</li>
* </ul>
*
* @generated
*/
-public class PropertyAssignmentImpl extends AssignmentImpl implements PropertyAssignment {
- /**
- * The cached value of the '{@link #getSlotExpression() <em>Slot Expression</em>}' containment reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getSlotExpression()
- * @generated
- * @ordered
- */
- protected OCLExpression slotExpression;
-
+public class PropertyAssignmentImpl extends NavigationAssignmentImpl implements PropertyAssignment {
/**
* The cached value of the '{@link #getTargetProperty() <em>Target Property</em>}' reference.
* <!-- begin-user-doc -->
@@ -83,51 +71,6 @@ public class PropertyAssignmentImpl extends AssignmentImpl implements PropertyAs
* @generated
*/
@Override
- public OCLExpression getSlotExpression() {
- return slotExpression;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public NotificationChain basicSetSlotExpression(OCLExpression newSlotExpression, NotificationChain msgs) {
- OCLExpression oldSlotExpression = slotExpression;
- slotExpression = newSlotExpression;
- if (eNotificationRequired()) {
- ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, QVTcoreBasePackage.PROPERTY_ASSIGNMENT__SLOT_EXPRESSION, oldSlotExpression, newSlotExpression);
- if (msgs == null) msgs = notification; else msgs.add(notification);
- }
- return msgs;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
- public void setSlotExpression(OCLExpression newSlotExpression) {
- if (newSlotExpression != slotExpression) {
- NotificationChain msgs = null;
- if (slotExpression != null)
- msgs = ((InternalEObject)slotExpression).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - QVTcoreBasePackage.PROPERTY_ASSIGNMENT__SLOT_EXPRESSION, null, msgs);
- if (newSlotExpression != null)
- msgs = ((InternalEObject)newSlotExpression).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - QVTcoreBasePackage.PROPERTY_ASSIGNMENT__SLOT_EXPRESSION, null, msgs);
- msgs = basicSetSlotExpression(newSlotExpression, msgs);
- if (msgs != null) msgs.dispatch();
- }
- else if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, QVTcoreBasePackage.PROPERTY_ASSIGNMENT__SLOT_EXPRESSION, newSlotExpression, newSlotExpression));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
public Property getTargetProperty() {
if (targetProperty != null && targetProperty.eIsProxy()) {
InternalEObject oldTargetProperty = (InternalEObject)targetProperty;
@@ -168,24 +111,8 @@ public class PropertyAssignmentImpl extends AssignmentImpl implements PropertyAs
* @generated
*/
@Override
- public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
- switch (featureID) {
- case QVTcoreBasePackage.PROPERTY_ASSIGNMENT__SLOT_EXPRESSION:
- return basicSetSlotExpression(null, msgs);
- }
- return super.eInverseRemove(otherEnd, featureID, msgs);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- @Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
- case QVTcoreBasePackage.PROPERTY_ASSIGNMENT__SLOT_EXPRESSION:
- return getSlotExpression();
case QVTcoreBasePackage.PROPERTY_ASSIGNMENT__TARGET_PROPERTY:
if (resolve) return getTargetProperty();
return basicGetTargetProperty();
@@ -201,9 +128,6 @@ public class PropertyAssignmentImpl extends AssignmentImpl implements PropertyAs
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
- case QVTcoreBasePackage.PROPERTY_ASSIGNMENT__SLOT_EXPRESSION:
- setSlotExpression((OCLExpression)newValue);
- return;
case QVTcoreBasePackage.PROPERTY_ASSIGNMENT__TARGET_PROPERTY:
setTargetProperty((Property)newValue);
return;
@@ -219,9 +143,6 @@ public class PropertyAssignmentImpl extends AssignmentImpl implements PropertyAs
@Override
public void eUnset(int featureID) {
switch (featureID) {
- case QVTcoreBasePackage.PROPERTY_ASSIGNMENT__SLOT_EXPRESSION:
- setSlotExpression((OCLExpression)null);
- return;
case QVTcoreBasePackage.PROPERTY_ASSIGNMENT__TARGET_PROPERTY:
setTargetProperty((Property)null);
return;
@@ -237,8 +158,6 @@ public class PropertyAssignmentImpl extends AssignmentImpl implements PropertyAs
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
- case QVTcoreBasePackage.PROPERTY_ASSIGNMENT__SLOT_EXPRESSION:
- return slotExpression != null;
case QVTcoreBasePackage.PROPERTY_ASSIGNMENT__TARGET_PROPERTY:
return targetProperty != null;
}
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/QVTcoreBaseFactoryImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/QVTcoreBaseFactoryImpl.java
index 96758209f..80e1656c1 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/QVTcoreBaseFactoryImpl.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/QVTcoreBaseFactoryImpl.java
@@ -23,6 +23,7 @@ import org.eclipse.qvtd.pivot.qvtcorebase.CorePattern;
import org.eclipse.qvtd.pivot.qvtcorebase.EnforcementMode;
import org.eclipse.qvtd.pivot.qvtcorebase.EnforcementOperation;
import org.eclipse.qvtd.pivot.qvtcorebase.GuardPattern;
+import org.eclipse.qvtd.pivot.qvtcorebase.OppositePropertyAssignment;
import org.eclipse.qvtd.pivot.qvtcorebase.PropertyAssignment;
import org.eclipse.qvtd.pivot.qvtcorebase.QVTcoreBaseFactory;
import org.eclipse.qvtd.pivot.qvtcorebase.QVTcoreBasePackage;
@@ -78,6 +79,7 @@ public class QVTcoreBaseFactoryImpl extends EFactoryImpl implements QVTcoreBaseF
case QVTcoreBasePackage.CORE_PATTERN: return createCorePattern();
case QVTcoreBasePackage.ENFORCEMENT_OPERATION: return createEnforcementOperation();
case QVTcoreBasePackage.GUARD_PATTERN: return createGuardPattern();
+ case QVTcoreBasePackage.OPPOSITE_PROPERTY_ASSIGNMENT: return createOppositePropertyAssignment();
case QVTcoreBasePackage.PROPERTY_ASSIGNMENT: return createPropertyAssignment();
case QVTcoreBasePackage.REALIZED_VARIABLE: return createRealizedVariable();
case QVTcoreBasePackage.VARIABLE_ASSIGNMENT: return createVariableAssignment();
@@ -177,6 +179,17 @@ public class QVTcoreBaseFactoryImpl extends EFactoryImpl implements QVTcoreBaseF
* @generated
*/
@Override
+ public @NonNull OppositePropertyAssignment createOppositePropertyAssignment() {
+ OppositePropertyAssignmentImpl oppositePropertyAssignment = new OppositePropertyAssignmentImpl();
+ return oppositePropertyAssignment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
public @NonNull PropertyAssignment createPropertyAssignment() {
PropertyAssignmentImpl propertyAssignment = new PropertyAssignmentImpl();
return propertyAssignment;
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/QVTcoreBasePackageImpl.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/QVTcoreBasePackageImpl.java
index aa99aa1c4..6d0b5e617 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/QVTcoreBasePackageImpl.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/impl/QVTcoreBasePackageImpl.java
@@ -27,6 +27,8 @@ import org.eclipse.qvtd.pivot.qvtcorebase.CorePattern;
import org.eclipse.qvtd.pivot.qvtcorebase.EnforcementMode;
import org.eclipse.qvtd.pivot.qvtcorebase.EnforcementOperation;
import org.eclipse.qvtd.pivot.qvtcorebase.GuardPattern;
+import org.eclipse.qvtd.pivot.qvtcorebase.NavigationAssignment;
+import org.eclipse.qvtd.pivot.qvtcorebase.OppositePropertyAssignment;
import org.eclipse.qvtd.pivot.qvtcorebase.PropertyAssignment;
import org.eclipse.qvtd.pivot.qvtcorebase.QVTcoreBaseFactory;
import org.eclipse.qvtd.pivot.qvtcorebase.QVTcoreBasePackage;
@@ -101,6 +103,20 @@ public class QVTcoreBasePackageImpl extends EPackageImpl implements QVTcoreBaseP
* <!-- end-user-doc -->
* @generated
*/
+ private EClass navigationAssignmentEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass oppositePropertyAssignmentEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
private EClass propertyAssignmentEClass = null;
/**
@@ -415,8 +431,8 @@ public class QVTcoreBasePackageImpl extends EPackageImpl implements QVTcoreBaseP
* @generated
*/
@Override
- public EClass getPropertyAssignment() {
- return propertyAssignmentEClass;
+ public EClass getNavigationAssignment() {
+ return navigationAssignmentEClass;
}
/**
@@ -425,8 +441,38 @@ public class QVTcoreBasePackageImpl extends EPackageImpl implements QVTcoreBaseP
* @generated
*/
@Override
- public EReference getPropertyAssignment_SlotExpression() {
- return (EReference)propertyAssignmentEClass.getEStructuralFeatures().get(0);
+ public EReference getNavigationAssignment_SlotExpression() {
+ return (EReference)navigationAssignmentEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getOppositePropertyAssignment() {
+ return oppositePropertyAssignmentEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EReference getOppositePropertyAssignment_TargetProperty() {
+ return (EReference)oppositePropertyAssignmentEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EClass getPropertyAssignment() {
+ return propertyAssignmentEClass;
}
/**
@@ -436,7 +482,7 @@ public class QVTcoreBasePackageImpl extends EPackageImpl implements QVTcoreBaseP
*/
@Override
public EReference getPropertyAssignment_TargetProperty() {
- return (EReference)propertyAssignmentEClass.getEStructuralFeatures().get(1);
+ return (EReference)propertyAssignmentEClass.getEStructuralFeatures().get(0);
}
/**
@@ -538,8 +584,13 @@ public class QVTcoreBasePackageImpl extends EPackageImpl implements QVTcoreBaseP
guardPatternEClass = createEClass(GUARD_PATTERN);
createEReference(guardPatternEClass, GUARD_PATTERN__AREA);
+ navigationAssignmentEClass = createEClass(NAVIGATION_ASSIGNMENT);
+ createEReference(navigationAssignmentEClass, NAVIGATION_ASSIGNMENT__SLOT_EXPRESSION);
+
+ oppositePropertyAssignmentEClass = createEClass(OPPOSITE_PROPERTY_ASSIGNMENT);
+ createEReference(oppositePropertyAssignmentEClass, OPPOSITE_PROPERTY_ASSIGNMENT__TARGET_PROPERTY);
+
propertyAssignmentEClass = createEClass(PROPERTY_ASSIGNMENT);
- createEReference(propertyAssignmentEClass, PROPERTY_ASSIGNMENT__SLOT_EXPRESSION);
createEReference(propertyAssignmentEClass, PROPERTY_ASSIGNMENT__TARGET_PROPERTY);
realizedVariableEClass = createEClass(REALIZED_VARIABLE);
@@ -593,7 +644,9 @@ public class QVTcoreBasePackageImpl extends EPackageImpl implements QVTcoreBaseP
corePatternEClass.getESuperTypes().add(theQVTbasePackage.getPattern());
enforcementOperationEClass.getESuperTypes().add(thePivotPackage.getElement());
guardPatternEClass.getESuperTypes().add(this.getCorePattern());
- propertyAssignmentEClass.getESuperTypes().add(this.getAssignment());
+ navigationAssignmentEClass.getESuperTypes().add(this.getAssignment());
+ oppositePropertyAssignmentEClass.getESuperTypes().add(this.getNavigationAssignment());
+ propertyAssignmentEClass.getESuperTypes().add(this.getNavigationAssignment());
realizedVariableEClass.getESuperTypes().add(thePivotPackage.getVariable());
variableAssignmentEClass.getESuperTypes().add(this.getAssignment());
@@ -638,8 +691,13 @@ public class QVTcoreBasePackageImpl extends EPackageImpl implements QVTcoreBaseP
initEClass(guardPatternEClass, GuardPattern.class, "GuardPattern", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getGuardPattern_Area(), this.getArea(), this.getArea_GuardPattern(), "area", null, 1, 1, GuardPattern.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEClass(navigationAssignmentEClass, NavigationAssignment.class, "NavigationAssignment", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getNavigationAssignment_SlotExpression(), thePivotPackage.getOCLExpression(), null, "slotExpression", null, 1, 1, NavigationAssignment.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(oppositePropertyAssignmentEClass, OppositePropertyAssignment.class, "OppositePropertyAssignment", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getOppositePropertyAssignment_TargetProperty(), thePivotPackage.getProperty(), null, "targetProperty", null, 1, 1, OppositePropertyAssignment.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
initEClass(propertyAssignmentEClass, PropertyAssignment.class, "PropertyAssignment", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getPropertyAssignment_SlotExpression(), thePivotPackage.getOCLExpression(), null, "slotExpression", null, 1, 1, PropertyAssignment.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getPropertyAssignment_TargetProperty(), thePivotPackage.getProperty(), null, "targetProperty", null, 1, 1, PropertyAssignment.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(realizedVariableEClass, RealizedVariable.class, "RealizedVariable", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
@@ -675,12 +733,18 @@ public class QVTcoreBasePackageImpl extends EPackageImpl implements QVTcoreBaseP
"body", "valueAssignment"
});
addAnnotation
- (getPropertyAssignment_SlotExpression(),
+ (getNavigationAssignment_SlotExpression(),
source,
new String[] {
"body", "slotAssignment"
});
addAnnotation
+ (getOppositePropertyAssignment_TargetProperty(),
+ source,
+ new String[] {
+ "body", "assignment"
+ });
+ addAnnotation
(getPropertyAssignment_TargetProperty(),
source,
new String[] {
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractDelegatingQVTcoreBaseVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractDelegatingQVTcoreBaseVisitor.java
index d79774fea..4c213b6d8 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractDelegatingQVTcoreBaseVisitor.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractDelegatingQVTcoreBaseVisitor.java
@@ -66,6 +66,16 @@ public abstract class AbstractDelegatingQVTcoreBaseVisitor<R, C, @NonNull D exte
}
@Override
+ public R visitNavigationAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull NavigationAssignment object) {
+ return delegate.visitNavigationAssignment(object);
+ }
+
+ @Override
+ public R visitOppositePropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull OppositePropertyAssignment object) {
+ return delegate.visitOppositePropertyAssignment(object);
+ }
+
+ @Override
public R visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object) {
return delegate.visitPropertyAssignment(object);
}
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractExtendingQVTcoreBaseVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractExtendingQVTcoreBaseVisitor.java
index 162015d25..326271002 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractExtendingQVTcoreBaseVisitor.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractExtendingQVTcoreBaseVisitor.java
@@ -70,11 +70,21 @@ public abstract class AbstractExtendingQVTcoreBaseVisitor<R, C>
}
@Override
- public R visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object) {
+ public R visitNavigationAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull NavigationAssignment object) {
return visitAssignment(object);
}
@Override
+ public R visitOppositePropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull OppositePropertyAssignment object) {
+ return visitNavigationAssignment(object);
+ }
+
+ @Override
+ public R visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object) {
+ return visitNavigationAssignment(object);
+ }
+
+ @Override
public R visitRealizedVariable(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull RealizedVariable object) {
return visitVariable(object);
}
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractMergedQVTcoreBaseVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractMergedQVTcoreBaseVisitor.java
index 95159b3d9..7a5613355 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractMergedQVTcoreBaseVisitor.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractMergedQVTcoreBaseVisitor.java
@@ -64,6 +64,16 @@ public abstract class AbstractMergedQVTcoreBaseVisitor<R, C>
}
@Override
+ public R visitNavigationAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull NavigationAssignment object) {
+ return visiting(object);
+ }
+
+ @Override
+ public R visitOppositePropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull OppositePropertyAssignment object) {
+ return visiting(object);
+ }
+
+ @Override
public R visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object) {
return visiting(object);
}
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractNullQVTcoreBaseVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractNullQVTcoreBaseVisitor.java
index ebd3ff610..b2276fc83 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractNullQVTcoreBaseVisitor.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractNullQVTcoreBaseVisitor.java
@@ -70,6 +70,16 @@ public abstract class AbstractNullQVTcoreBaseVisitor<@Nullable R, C>
}
@Override
+ public R visitNavigationAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull NavigationAssignment object) {
+ return null;
+ }
+
+ @Override
+ public R visitOppositePropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull OppositePropertyAssignment object) {
+ return null;
+ }
+
+ @Override
public R visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object) {
return null;
}
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseAS2MonikerVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseAS2MonikerVisitor.java
index 3eb5276ae..bf30d6ea4 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseAS2MonikerVisitor.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseAS2MonikerVisitor.java
@@ -74,11 +74,21 @@ public abstract class AbstractQVTcoreBaseAS2MonikerVisitor
}
@Override
- public @Nullable Object visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object) {
+ public @Nullable Object visitNavigationAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull NavigationAssignment object) {
return visitAssignment(object);
}
@Override
+ public @Nullable Object visitOppositePropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull OppositePropertyAssignment object) {
+ return visitNavigationAssignment(object);
+ }
+
+ @Override
+ public @Nullable Object visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object) {
+ return visitNavigationAssignment(object);
+ }
+
+ @Override
public @Nullable Object visitRealizedVariable(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull RealizedVariable object) {
return visitVariable(object);
}
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseAS2XMIidVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseAS2XMIidVisitor.java
index e4011bb62..7c19d72c9 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseAS2XMIidVisitor.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseAS2XMIidVisitor.java
@@ -74,11 +74,21 @@ public abstract class AbstractQVTcoreBaseAS2XMIidVisitor
}
@Override
- public @Nullable Boolean visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object) {
+ public @Nullable Boolean visitNavigationAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull NavigationAssignment object) {
return visitAssignment(object);
}
@Override
+ public @Nullable Boolean visitOppositePropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull OppositePropertyAssignment object) {
+ return visitNavigationAssignment(object);
+ }
+
+ @Override
+ public @Nullable Boolean visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object) {
+ return visitNavigationAssignment(object);
+ }
+
+ @Override
public @Nullable Boolean visitRealizedVariable(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull RealizedVariable object) {
return visitVariable(object);
}
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseASSaverLocateVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseASSaverLocateVisitor.java
index de5050412..59a2bec9f 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseASSaverLocateVisitor.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseASSaverLocateVisitor.java
@@ -74,11 +74,21 @@ public abstract class AbstractQVTcoreBaseASSaverLocateVisitor
}
@Override
- public @Nullable Object visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object) {
+ public @Nullable Object visitNavigationAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull NavigationAssignment object) {
return visitAssignment(object);
}
@Override
+ public @Nullable Object visitOppositePropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull OppositePropertyAssignment object) {
+ return visitNavigationAssignment(object);
+ }
+
+ @Override
+ public @Nullable Object visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object) {
+ return visitNavigationAssignment(object);
+ }
+
+ @Override
public @Nullable Object visitRealizedVariable(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull RealizedVariable object) {
return visitVariable(object);
}
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseASSaverNormalizeVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseASSaverNormalizeVisitor.java
index df79398d2..3de1bc560 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseASSaverNormalizeVisitor.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseASSaverNormalizeVisitor.java
@@ -76,11 +76,21 @@ public abstract class AbstractQVTcoreBaseASSaverNormalizeVisitor
}
@Override
- public @Nullable Object visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object) {
+ public @Nullable Object visitNavigationAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull NavigationAssignment object) {
return visitAssignment(object);
}
@Override
+ public @Nullable Object visitOppositePropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull OppositePropertyAssignment object) {
+ return visitNavigationAssignment(object);
+ }
+
+ @Override
+ public @Nullable Object visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object) {
+ return visitNavigationAssignment(object);
+ }
+
+ @Override
public @Nullable Object visitRealizedVariable(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull RealizedVariable object) {
return visitVariable(object);
}
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseASSaverResolveVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseASSaverResolveVisitor.java
index 73a2e91cf..cf84f0465 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseASSaverResolveVisitor.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseASSaverResolveVisitor.java
@@ -74,11 +74,21 @@ public abstract class AbstractQVTcoreBaseASSaverResolveVisitor
}
@Override
- public @Nullable Object visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object) {
+ public @Nullable Object visitNavigationAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull NavigationAssignment object) {
return visitAssignment(object);
}
@Override
+ public @Nullable Object visitOppositePropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull OppositePropertyAssignment object) {
+ return visitNavigationAssignment(object);
+ }
+
+ @Override
+ public @Nullable Object visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object) {
+ return visitNavigationAssignment(object);
+ }
+
+ @Override
public @Nullable Object visitRealizedVariable(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull RealizedVariable object) {
return visitVariable(object);
}
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseTemplateParameterSubstitutionVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseTemplateParameterSubstitutionVisitor.java
index 1f3e5596d..646158063 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseTemplateParameterSubstitutionVisitor.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractQVTcoreBaseTemplateParameterSubstitutionVisitor.java
@@ -77,11 +77,21 @@ public abstract class AbstractQVTcoreBaseTemplateParameterSubstitutionVisitor
}
@Override
- public @Nullable Object visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object) {
+ public @Nullable Object visitNavigationAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull NavigationAssignment object) {
return visitAssignment(object);
}
@Override
+ public @Nullable Object visitOppositePropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull OppositePropertyAssignment object) {
+ return visitNavigationAssignment(object);
+ }
+
+ @Override
+ public @Nullable Object visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object) {
+ return visitNavigationAssignment(object);
+ }
+
+ @Override
public @Nullable Object visitRealizedVariable(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull RealizedVariable object) {
return visitVariable(object);
}
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractWrappingQVTcoreBaseVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractWrappingQVTcoreBaseVisitor.java
index 8cfa17682..f1ff1e15b 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractWrappingQVTcoreBaseVisitor.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/AbstractWrappingQVTcoreBaseVisitor.java
@@ -104,6 +104,30 @@ public abstract class AbstractWrappingQVTcoreBaseVisitor<R, C, @NonNull D extend
}
@Override
+ public R visitNavigationAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull NavigationAssignment object) {
+ @Nullable P prologue = preVisit(object);
+ try {
+ R result = delegate.visitNavigationAssignment(object);
+ return postVisit(object, prologue, result);
+ }
+ catch (Throwable e) {
+ return badVisit(object, prologue, e);
+ }
+ }
+
+ @Override
+ public R visitOppositePropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull OppositePropertyAssignment object) {
+ @Nullable P prologue = preVisit(object);
+ try {
+ R result = delegate.visitOppositePropertyAssignment(object);
+ return postVisit(object, prologue, result);
+ }
+ catch (Throwable e) {
+ return badVisit(object, prologue, e);
+ }
+ }
+
+ @Override
public R visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object) {
@Nullable P prologue = preVisit(object);
try {
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/QVTcoreBaseAdapterFactory.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/QVTcoreBaseAdapterFactory.java
index 08b217ff0..f867865e1 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/QVTcoreBaseAdapterFactory.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/QVTcoreBaseAdapterFactory.java
@@ -26,6 +26,7 @@ import org.eclipse.ocl.pivot.utilities.Nameable;
import org.eclipse.qvtd.pivot.qvtbase.Domain;
import org.eclipse.qvtd.pivot.qvtbase.Pattern;
import org.eclipse.qvtd.pivot.qvtbase.Rule;
+import org.eclipse.qvtd.pivot.qvtcorebase.*;
import org.eclipse.qvtd.pivot.qvtcorebase.AbstractMapping;
import org.eclipse.qvtd.pivot.qvtcorebase.Area;
import org.eclipse.qvtd.pivot.qvtcorebase.Assignment;
@@ -128,6 +129,14 @@ public class QVTcoreBaseAdapterFactory extends AdapterFactoryImpl {
return createGuardPatternAdapter();
}
@Override
+ public Adapter caseNavigationAssignment(NavigationAssignment object) {
+ return createNavigationAssignmentAdapter();
+ }
+ @Override
+ public Adapter caseOppositePropertyAssignment(OppositePropertyAssignment object) {
+ return createOppositePropertyAssignmentAdapter();
+ }
+ @Override
public Adapter casePropertyAssignment(PropertyAssignment object) {
return createPropertyAssignmentAdapter();
}
@@ -316,6 +325,34 @@ public class QVTcoreBaseAdapterFactory extends AdapterFactoryImpl {
}
/**
+ * Creates a new adapter for an object of class '{@link org.eclipse.qvtd.pivot.qvtcorebase.NavigationAssignment <em>Navigation Assignment</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.NavigationAssignment
+ * @generated
+ */
+ public Adapter createNavigationAssignmentAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.qvtd.pivot.qvtcorebase.OppositePropertyAssignment <em>Opposite Property Assignment</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.qvtd.pivot.qvtcorebase.OppositePropertyAssignment
+ * @generated
+ */
+ public Adapter createOppositePropertyAssignmentAdapter() {
+ return null;
+ }
+
+ /**
* Creates a new adapter for an object of class '{@link org.eclipse.qvtd.pivot.qvtcorebase.PropertyAssignment <em>Property Assignment</em>}'.
* <!-- begin-user-doc -->
* This default implementation returns null so that we can easily ignore cases;
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/QVTcoreBaseSwitch.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/QVTcoreBaseSwitch.java
index 8a062bdc2..60e54a2f1 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/QVTcoreBaseSwitch.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/QVTcoreBaseSwitch.java
@@ -25,6 +25,7 @@ import org.eclipse.ocl.pivot.utilities.Nameable;
import org.eclipse.qvtd.pivot.qvtbase.Domain;
import org.eclipse.qvtd.pivot.qvtbase.Pattern;
import org.eclipse.qvtd.pivot.qvtbase.Rule;
+import org.eclipse.qvtd.pivot.qvtcorebase.*;
import org.eclipse.qvtd.pivot.qvtcorebase.AbstractMapping;
import org.eclipse.qvtd.pivot.qvtcorebase.Area;
import org.eclipse.qvtd.pivot.qvtcorebase.Assignment;
@@ -173,9 +174,29 @@ public class QVTcoreBaseSwitch<@Nullable T> extends Switch<T> {
if (result == null) result = defaultCase(theEObject);
return result;
}
+ case QVTcoreBasePackage.NAVIGATION_ASSIGNMENT: {
+ NavigationAssignment navigationAssignment = (NavigationAssignment)theEObject;
+ T result = caseNavigationAssignment(navigationAssignment);
+ if (result == null) result = caseAssignment(navigationAssignment);
+ if (result == null) result = caseElement(navigationAssignment);
+ if (result == null) result = caseVisitable(navigationAssignment);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case QVTcoreBasePackage.OPPOSITE_PROPERTY_ASSIGNMENT: {
+ OppositePropertyAssignment oppositePropertyAssignment = (OppositePropertyAssignment)theEObject;
+ T result = caseOppositePropertyAssignment(oppositePropertyAssignment);
+ if (result == null) result = caseNavigationAssignment(oppositePropertyAssignment);
+ if (result == null) result = caseAssignment(oppositePropertyAssignment);
+ if (result == null) result = caseElement(oppositePropertyAssignment);
+ if (result == null) result = caseVisitable(oppositePropertyAssignment);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
case QVTcoreBasePackage.PROPERTY_ASSIGNMENT: {
PropertyAssignment propertyAssignment = (PropertyAssignment)theEObject;
T result = casePropertyAssignment(propertyAssignment);
+ if (result == null) result = caseNavigationAssignment(propertyAssignment);
if (result == null) result = caseAssignment(propertyAssignment);
if (result == null) result = caseElement(propertyAssignment);
if (result == null) result = caseVisitable(propertyAssignment);
@@ -329,6 +350,36 @@ public class QVTcoreBaseSwitch<@Nullable T> extends Switch<T> {
}
/**
+ * Returns the result of interpreting the object as an instance of '<em>Navigation 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>Navigation Assignment</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNavigationAssignment(NavigationAssignment object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Opposite Property 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>Opposite Property Assignment</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseOppositePropertyAssignment(OppositePropertyAssignment object) {
+ return null;
+ }
+
+ /**
* Returns the result of interpreting the object as an instance of '<em>Property Assignment</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/QVTcoreBaseVisitor.java b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/QVTcoreBaseVisitor.java
index 2fa020a73..7d46625cc 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/QVTcoreBaseVisitor.java
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/emf-gen/org/eclipse/qvtd/pivot/qvtcorebase/util/QVTcoreBaseVisitor.java
@@ -29,6 +29,8 @@ public interface QVTcoreBaseVisitor<R> extends org.eclipse.qvtd.pivot.qvtbase.ut
R visitCorePattern(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull CorePattern object);
R visitEnforcementOperation(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull EnforcementOperation object);
R visitGuardPattern(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull GuardPattern object);
+ R visitNavigationAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull NavigationAssignment object);
+ R visitOppositePropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull OppositePropertyAssignment object);
R visitPropertyAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull PropertyAssignment object);
R visitRealizedVariable(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull RealizedVariable object);
R visitVariableAssignment(org.eclipse.qvtd.pivot.qvtcorebase.@NonNull VariableAssignment object);
diff --git a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/model/QVTcoreBase.genmodel b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/model/QVTcoreBase.genmodel
index 41a541ab0..69d005343 100644
--- a/plugins/org.eclipse.qvtd.pivot.qvtcorebase/model/QVTcoreBase.genmodel
+++ b/plugins/org.eclipse.qvtd.pivot.qvtcorebase/model/QVTcoreBase.genmodel
@@ -55,8 +55,13 @@
<genClasses ecoreClass="QVTcoreBase.ecore#//GuardPattern">
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference QVTcoreBase.ecore#//GuardPattern/area"/>
</genClasses>
+ <genClasses image="false" ecoreClass="QVTcoreBase.ecore#//NavigationAssignment">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference QVTcoreBase.ecore#//NavigationAssignment/slotExpression"/>
+ </genClasses>
+ <genClasses ecoreClass="QVTcoreBase.ecore#//OppositePropertyAssignment">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference QVTcoreBase.ecore#//OppositePropertyAssignment/targetProperty"/>
+ </genClasses>
<genClasses ecoreClass="QVTcoreBase.ecore#//PropertyAssignment">
- <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference QVTcoreBase.ecore#//PropertyAssignment/slotExpression"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference QVTcoreBase.ecore#//PropertyAssignment/targetProperty"/>
</genClasses>
<genClasses ecoreClass="QVTcoreBase.ecore#//RealizedVariable"/>

Back to the top