aboutsummaryrefslogtreecommitdiffstats
path: root/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu
diff options
context:
space:
mode:
Diffstat (limited to 'Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu')
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Choice.java17
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/CompositeElement.java42
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Entry.java17
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Exit.java17
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/FinalState.java17
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Pseudostate.java17
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Region.java42
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/RegularState.java17
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/State.java17
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Statechart.java17
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Synchronization.java17
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Transition.java81
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Vertex.java63
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/ChoiceImpl.java37
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/CompositeElementImpl.java152
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/EntryImpl.java37
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/ExitImpl.java37
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/FinalStateImpl.java37
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/PseudostateImpl.java37
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/RegionImpl.java152
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/RegularStateImpl.java37
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/StateImpl.java183
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/StatechartImpl.java37
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/SynchronizationImpl.java37
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/TransitionImpl.java284
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/VertexImpl.java206
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/yakinduFactoryImpl.java183
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/yakinduPackageImpl.java494
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/queries/yakinduMutatedPatterns.vql270
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/queries/yakinduPatterns.vql227
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/util/yakinduAdapterFactory.java336
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/util/yakinduSwitch.java378
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/yakinduFactory.java114
-rw-r--r--Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/yakinduPackage.java1038
34 files changed, 4694 insertions, 0 deletions
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Choice.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Choice.java
new file mode 100644
index 00000000..cc4049c4
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Choice.java
@@ -0,0 +1,17 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu;
4
5
6/**
7 * <!-- begin-user-doc -->
8 * A representation of the model object '<em><b>Choice</b></em>'.
9 * <!-- end-user-doc -->
10 *
11 *
12 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getChoice()
13 * @model
14 * @generated
15 */
16public interface Choice extends Pseudostate {
17} // Choice
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/CompositeElement.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/CompositeElement.java
new file mode 100644
index 00000000..037b1b3c
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/CompositeElement.java
@@ -0,0 +1,42 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu;
4
5import org.eclipse.emf.common.util.EList;
6
7import org.eclipse.emf.ecore.EObject;
8
9/**
10 * <!-- begin-user-doc -->
11 * A representation of the model object '<em><b>Composite Element</b></em>'.
12 * <!-- end-user-doc -->
13 *
14 * <p>
15 * The following features are supported:
16 * </p>
17 * <ul>
18 * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement#getRegions <em>Regions</em>}</li>
19 * </ul>
20 *
21 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getCompositeElement()
22 * @model abstract="true"
23 * @generated
24 */
25public interface CompositeElement extends EObject {
26 /**
27 * Returns the value of the '<em><b>Regions</b></em>' containment reference list.
28 * The list contents are of type {@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region}.
29 * <!-- begin-user-doc -->
30 * <p>
31 * If the meaning of the '<em>Regions</em>' containment reference list isn't clear,
32 * there really should be more of a description here...
33 * </p>
34 * <!-- end-user-doc -->
35 * @return the value of the '<em>Regions</em>' containment reference list.
36 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getCompositeElement_Regions()
37 * @model containment="true"
38 * @generated
39 */
40 EList<Region> getRegions();
41
42} // CompositeElement
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Entry.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Entry.java
new file mode 100644
index 00000000..da40c481
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Entry.java
@@ -0,0 +1,17 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu;
4
5
6/**
7 * <!-- begin-user-doc -->
8 * A representation of the model object '<em><b>Entry</b></em>'.
9 * <!-- end-user-doc -->
10 *
11 *
12 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getEntry()
13 * @model
14 * @generated
15 */
16public interface Entry extends Pseudostate {
17} // Entry
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Exit.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Exit.java
new file mode 100644
index 00000000..9f8e12d3
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Exit.java
@@ -0,0 +1,17 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu;
4
5
6/**
7 * <!-- begin-user-doc -->
8 * A representation of the model object '<em><b>Exit</b></em>'.
9 * <!-- end-user-doc -->
10 *
11 *
12 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getExit()
13 * @model
14 * @generated
15 */
16public interface Exit extends Pseudostate {
17} // Exit
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/FinalState.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/FinalState.java
new file mode 100644
index 00000000..33703d36
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/FinalState.java
@@ -0,0 +1,17 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu;
4
5
6/**
7 * <!-- begin-user-doc -->
8 * A representation of the model object '<em><b>Final State</b></em>'.
9 * <!-- end-user-doc -->
10 *
11 *
12 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getFinalState()
13 * @model
14 * @generated
15 */
16public interface FinalState extends RegularState {
17} // FinalState
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Pseudostate.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Pseudostate.java
new file mode 100644
index 00000000..e6a003f9
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Pseudostate.java
@@ -0,0 +1,17 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu;
4
5
6/**
7 * <!-- begin-user-doc -->
8 * A representation of the model object '<em><b>Pseudostate</b></em>'.
9 * <!-- end-user-doc -->
10 *
11 *
12 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getPseudostate()
13 * @model abstract="true"
14 * @generated
15 */
16public interface Pseudostate extends Vertex {
17} // Pseudostate
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Region.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Region.java
new file mode 100644
index 00000000..f4c3f114
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Region.java
@@ -0,0 +1,42 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu;
4
5import org.eclipse.emf.common.util.EList;
6
7import org.eclipse.emf.ecore.EObject;
8
9/**
10 * <!-- begin-user-doc -->
11 * A representation of the model object '<em><b>Region</b></em>'.
12 * <!-- end-user-doc -->
13 *
14 * <p>
15 * The following features are supported:
16 * </p>
17 * <ul>
18 * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region#getVertices <em>Vertices</em>}</li>
19 * </ul>
20 *
21 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getRegion()
22 * @model
23 * @generated
24 */
25public interface Region extends EObject {
26 /**
27 * Returns the value of the '<em><b>Vertices</b></em>' containment reference list.
28 * The list contents are of type {@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex}.
29 * <!-- begin-user-doc -->
30 * <p>
31 * If the meaning of the '<em>Vertices</em>' containment reference list isn't clear,
32 * there really should be more of a description here...
33 * </p>
34 * <!-- end-user-doc -->
35 * @return the value of the '<em>Vertices</em>' containment reference list.
36 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getRegion_Vertices()
37 * @model containment="true" ordered="false"
38 * @generated
39 */
40 EList<Vertex> getVertices();
41
42} // Region
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/RegularState.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/RegularState.java
new file mode 100644
index 00000000..7db584e5
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/RegularState.java
@@ -0,0 +1,17 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu;
4
5
6/**
7 * <!-- begin-user-doc -->
8 * A representation of the model object '<em><b>Regular State</b></em>'.
9 * <!-- end-user-doc -->
10 *
11 *
12 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getRegularState()
13 * @model abstract="true"
14 * @generated
15 */
16public interface RegularState extends Vertex {
17} // RegularState
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/State.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/State.java
new file mode 100644
index 00000000..3c65be40
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/State.java
@@ -0,0 +1,17 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu;
4
5
6/**
7 * <!-- begin-user-doc -->
8 * A representation of the model object '<em><b>State</b></em>'.
9 * <!-- end-user-doc -->
10 *
11 *
12 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getState()
13 * @model
14 * @generated
15 */
16public interface State extends RegularState, CompositeElement {
17} // State
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Statechart.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Statechart.java
new file mode 100644
index 00000000..33a1dd7a
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Statechart.java
@@ -0,0 +1,17 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu;
4
5
6/**
7 * <!-- begin-user-doc -->
8 * A representation of the model object '<em><b>Statechart</b></em>'.
9 * <!-- end-user-doc -->
10 *
11 *
12 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getStatechart()
13 * @model
14 * @generated
15 */
16public interface Statechart extends CompositeElement {
17} // Statechart
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Synchronization.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Synchronization.java
new file mode 100644
index 00000000..f1294200
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Synchronization.java
@@ -0,0 +1,17 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu;
4
5
6/**
7 * <!-- begin-user-doc -->
8 * A representation of the model object '<em><b>Synchronization</b></em>'.
9 * <!-- end-user-doc -->
10 *
11 *
12 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getSynchronization()
13 * @model
14 * @generated
15 */
16public interface Synchronization extends Pseudostate {
17} // Synchronization
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Transition.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Transition.java
new file mode 100644
index 00000000..543cc73b
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Transition.java
@@ -0,0 +1,81 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Transition</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getTarget <em>Target</em>}</li>
17 * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getSource <em>Source</em>}</li>
18 * </ul>
19 *
20 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getTransition()
21 * @model
22 * @generated
23 */
24public interface Transition extends EObject {
25 /**
26 * Returns the value of the '<em><b>Target</b></em>' reference.
27 * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getIncomingTransitions <em>Incoming Transitions</em>}'.
28 * <!-- begin-user-doc -->
29 * <p>
30 * If the meaning of the '<em>Target</em>' reference isn't clear,
31 * there really should be more of a description here...
32 * </p>
33 * <!-- end-user-doc -->
34 * @return the value of the '<em>Target</em>' reference.
35 * @see #setTarget(Vertex)
36 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getTransition_Target()
37 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getIncomingTransitions
38 * @model opposite="incomingTransitions" required="true" ordered="false"
39 * @generated
40 */
41 Vertex getTarget();
42
43 /**
44 * Sets the value of the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getTarget <em>Target</em>}' reference.
45 * <!-- begin-user-doc -->
46 * <!-- end-user-doc -->
47 * @param value the new value of the '<em>Target</em>' reference.
48 * @see #getTarget()
49 * @generated
50 */
51 void setTarget(Vertex value);
52
53 /**
54 * Returns the value of the '<em><b>Source</b></em>' container reference.
55 * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getOutgoingTransitions <em>Outgoing Transitions</em>}'.
56 * <!-- begin-user-doc -->
57 * <p>
58 * If the meaning of the '<em>Source</em>' container reference isn't clear,
59 * there really should be more of a description here...
60 * </p>
61 * <!-- end-user-doc -->
62 * @return the value of the '<em>Source</em>' container reference.
63 * @see #setSource(Vertex)
64 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getTransition_Source()
65 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getOutgoingTransitions
66 * @model opposite="outgoingTransitions" transient="false" ordered="false"
67 * @generated
68 */
69 Vertex getSource();
70
71 /**
72 * Sets the value of the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getSource <em>Source</em>}' container reference.
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @param value the new value of the '<em>Source</em>' container reference.
76 * @see #getSource()
77 * @generated
78 */
79 void setSource(Vertex value);
80
81} // Transition
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Vertex.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Vertex.java
new file mode 100644
index 00000000..6005a550
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/Vertex.java
@@ -0,0 +1,63 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu;
4
5import org.eclipse.emf.common.util.EList;
6
7import org.eclipse.emf.ecore.EObject;
8
9/**
10 * <!-- begin-user-doc -->
11 * A representation of the model object '<em><b>Vertex</b></em>'.
12 * <!-- end-user-doc -->
13 *
14 * <p>
15 * The following features are supported:
16 * </p>
17 * <ul>
18 * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getIncomingTransitions <em>Incoming Transitions</em>}</li>
19 * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getOutgoingTransitions <em>Outgoing Transitions</em>}</li>
20 * </ul>
21 *
22 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getVertex()
23 * @model abstract="true"
24 * @generated
25 */
26public interface Vertex extends EObject {
27 /**
28 * Returns the value of the '<em><b>Incoming Transitions</b></em>' reference list.
29 * The list contents are of type {@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition}.
30 * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getTarget <em>Target</em>}'.
31 * <!-- begin-user-doc -->
32 * <p>
33 * If the meaning of the '<em>Incoming Transitions</em>' reference list isn't clear,
34 * there really should be more of a description here...
35 * </p>
36 * <!-- end-user-doc -->
37 * @return the value of the '<em>Incoming Transitions</em>' reference list.
38 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getVertex_IncomingTransitions()
39 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getTarget
40 * @model opposite="target" ordered="false"
41 * @generated
42 */
43 EList<Transition> getIncomingTransitions();
44
45 /**
46 * Returns the value of the '<em><b>Outgoing Transitions</b></em>' containment reference list.
47 * The list contents are of type {@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition}.
48 * It is bidirectional and its opposite is '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getSource <em>Source</em>}'.
49 * <!-- begin-user-doc -->
50 * <p>
51 * If the meaning of the '<em>Outgoing Transitions</em>' containment reference list isn't clear,
52 * there really should be more of a description here...
53 * </p>
54 * <!-- end-user-doc -->
55 * @return the value of the '<em>Outgoing Transitions</em>' containment reference list.
56 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#getVertex_OutgoingTransitions()
57 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getSource
58 * @model opposite="source" containment="true" ordered="false"
59 * @generated
60 */
61 EList<Transition> getOutgoingTransitions();
62
63} // Vertex
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/ChoiceImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/ChoiceImpl.java
new file mode 100644
index 00000000..8fc4883b
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/ChoiceImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl;
4
5import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Choice;
6import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage;
7
8import org.eclipse.emf.ecore.EClass;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Choice</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class ChoiceImpl extends PseudostateImpl implements Choice {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected ChoiceImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return yakinduPackage.Literals.CHOICE;
35 }
36
37} //ChoiceImpl
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/CompositeElementImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/CompositeElementImpl.java
new file mode 100644
index 00000000..0218f9c7
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/CompositeElementImpl.java
@@ -0,0 +1,152 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl;
4
5import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement;
6import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region;
7import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage;
8
9import java.util.Collection;
10
11import org.eclipse.emf.common.notify.NotificationChain;
12
13import org.eclipse.emf.common.util.EList;
14
15import org.eclipse.emf.ecore.EClass;
16import org.eclipse.emf.ecore.InternalEObject;
17
18import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
19
20import org.eclipse.emf.ecore.util.EObjectContainmentEList;
21import org.eclipse.emf.ecore.util.InternalEList;
22
23/**
24 * <!-- begin-user-doc -->
25 * An implementation of the model object '<em><b>Composite Element</b></em>'.
26 * <!-- end-user-doc -->
27 * <p>
28 * The following features are implemented:
29 * </p>
30 * <ul>
31 * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.CompositeElementImpl#getRegions <em>Regions</em>}</li>
32 * </ul>
33 *
34 * @generated
35 */
36public abstract class CompositeElementImpl extends MinimalEObjectImpl.Container implements CompositeElement {
37 /**
38 * The cached value of the '{@link #getRegions() <em>Regions</em>}' containment reference list.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @see #getRegions()
42 * @generated
43 * @ordered
44 */
45 protected EList<Region> regions;
46
47 /**
48 * <!-- begin-user-doc -->
49 * <!-- end-user-doc -->
50 * @generated
51 */
52 protected CompositeElementImpl() {
53 super();
54 }
55
56 /**
57 * <!-- begin-user-doc -->
58 * <!-- end-user-doc -->
59 * @generated
60 */
61 @Override
62 protected EClass eStaticClass() {
63 return yakinduPackage.Literals.COMPOSITE_ELEMENT;
64 }
65
66 /**
67 * <!-- begin-user-doc -->
68 * <!-- end-user-doc -->
69 * @generated
70 */
71 public EList<Region> getRegions() {
72 if (regions == null) {
73 regions = new EObjectContainmentEList<Region>(Region.class, this, yakinduPackage.COMPOSITE_ELEMENT__REGIONS);
74 }
75 return regions;
76 }
77
78 /**
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 */
83 @Override
84 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
85 switch (featureID) {
86 case yakinduPackage.COMPOSITE_ELEMENT__REGIONS:
87 return ((InternalEList<?>)getRegions()).basicRemove(otherEnd, msgs);
88 }
89 return super.eInverseRemove(otherEnd, featureID, msgs);
90 }
91
92 /**
93 * <!-- begin-user-doc -->
94 * <!-- end-user-doc -->
95 * @generated
96 */
97 @Override
98 public Object eGet(int featureID, boolean resolve, boolean coreType) {
99 switch (featureID) {
100 case yakinduPackage.COMPOSITE_ELEMENT__REGIONS:
101 return getRegions();
102 }
103 return super.eGet(featureID, resolve, coreType);
104 }
105
106 /**
107 * <!-- begin-user-doc -->
108 * <!-- end-user-doc -->
109 * @generated
110 */
111 @SuppressWarnings("unchecked")
112 @Override
113 public void eSet(int featureID, Object newValue) {
114 switch (featureID) {
115 case yakinduPackage.COMPOSITE_ELEMENT__REGIONS:
116 getRegions().clear();
117 getRegions().addAll((Collection<? extends Region>)newValue);
118 return;
119 }
120 super.eSet(featureID, newValue);
121 }
122
123 /**
124 * <!-- begin-user-doc -->
125 * <!-- end-user-doc -->
126 * @generated
127 */
128 @Override
129 public void eUnset(int featureID) {
130 switch (featureID) {
131 case yakinduPackage.COMPOSITE_ELEMENT__REGIONS:
132 getRegions().clear();
133 return;
134 }
135 super.eUnset(featureID);
136 }
137
138 /**
139 * <!-- begin-user-doc -->
140 * <!-- end-user-doc -->
141 * @generated
142 */
143 @Override
144 public boolean eIsSet(int featureID) {
145 switch (featureID) {
146 case yakinduPackage.COMPOSITE_ELEMENT__REGIONS:
147 return regions != null && !regions.isEmpty();
148 }
149 return super.eIsSet(featureID);
150 }
151
152} //CompositeElementImpl
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/EntryImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/EntryImpl.java
new file mode 100644
index 00000000..d0334475
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/EntryImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl;
4
5import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Entry;
6import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage;
7
8import org.eclipse.emf.ecore.EClass;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Entry</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class EntryImpl extends PseudostateImpl implements Entry {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected EntryImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return yakinduPackage.Literals.ENTRY;
35 }
36
37} //EntryImpl
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/ExitImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/ExitImpl.java
new file mode 100644
index 00000000..d1448776
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/ExitImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl;
4
5import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Exit;
6import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage;
7
8import org.eclipse.emf.ecore.EClass;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Exit</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class ExitImpl extends PseudostateImpl implements Exit {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected ExitImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return yakinduPackage.Literals.EXIT;
35 }
36
37} //ExitImpl
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/FinalStateImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/FinalStateImpl.java
new file mode 100644
index 00000000..716c096e
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/FinalStateImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl;
4
5import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.FinalState;
6import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage;
7
8import org.eclipse.emf.ecore.EClass;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Final State</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class FinalStateImpl extends RegularStateImpl implements FinalState {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected FinalStateImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return yakinduPackage.Literals.FINAL_STATE;
35 }
36
37} //FinalStateImpl
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/PseudostateImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/PseudostateImpl.java
new file mode 100644
index 00000000..b9fc27f3
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/PseudostateImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl;
4
5import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Pseudostate;
6import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage;
7
8import org.eclipse.emf.ecore.EClass;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Pseudostate</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public abstract class PseudostateImpl extends VertexImpl implements Pseudostate {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected PseudostateImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return yakinduPackage.Literals.PSEUDOSTATE;
35 }
36
37} //PseudostateImpl
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/RegionImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/RegionImpl.java
new file mode 100644
index 00000000..fa873aeb
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/RegionImpl.java
@@ -0,0 +1,152 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl;
4
5import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region;
6import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex;
7import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage;
8
9import java.util.Collection;
10
11import org.eclipse.emf.common.notify.NotificationChain;
12
13import org.eclipse.emf.common.util.EList;
14
15import org.eclipse.emf.ecore.EClass;
16import org.eclipse.emf.ecore.InternalEObject;
17
18import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
19
20import org.eclipse.emf.ecore.util.EObjectContainmentEList;
21import org.eclipse.emf.ecore.util.InternalEList;
22
23/**
24 * <!-- begin-user-doc -->
25 * An implementation of the model object '<em><b>Region</b></em>'.
26 * <!-- end-user-doc -->
27 * <p>
28 * The following features are implemented:
29 * </p>
30 * <ul>
31 * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.RegionImpl#getVertices <em>Vertices</em>}</li>
32 * </ul>
33 *
34 * @generated
35 */
36public class RegionImpl extends MinimalEObjectImpl.Container implements Region {
37 /**
38 * The cached value of the '{@link #getVertices() <em>Vertices</em>}' containment reference list.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @see #getVertices()
42 * @generated
43 * @ordered
44 */
45 protected EList<Vertex> vertices;
46
47 /**
48 * <!-- begin-user-doc -->
49 * <!-- end-user-doc -->
50 * @generated
51 */
52 protected RegionImpl() {
53 super();
54 }
55
56 /**
57 * <!-- begin-user-doc -->
58 * <!-- end-user-doc -->
59 * @generated
60 */
61 @Override
62 protected EClass eStaticClass() {
63 return yakinduPackage.Literals.REGION;
64 }
65
66 /**
67 * <!-- begin-user-doc -->
68 * <!-- end-user-doc -->
69 * @generated
70 */
71 public EList<Vertex> getVertices() {
72 if (vertices == null) {
73 vertices = new EObjectContainmentEList<Vertex>(Vertex.class, this, yakinduPackage.REGION__VERTICES);
74 }
75 return vertices;
76 }
77
78 /**
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 */
83 @Override
84 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
85 switch (featureID) {
86 case yakinduPackage.REGION__VERTICES:
87 return ((InternalEList<?>)getVertices()).basicRemove(otherEnd, msgs);
88 }
89 return super.eInverseRemove(otherEnd, featureID, msgs);
90 }
91
92 /**
93 * <!-- begin-user-doc -->
94 * <!-- end-user-doc -->
95 * @generated
96 */
97 @Override
98 public Object eGet(int featureID, boolean resolve, boolean coreType) {
99 switch (featureID) {
100 case yakinduPackage.REGION__VERTICES:
101 return getVertices();
102 }
103 return super.eGet(featureID, resolve, coreType);
104 }
105
106 /**
107 * <!-- begin-user-doc -->
108 * <!-- end-user-doc -->
109 * @generated
110 */
111 @SuppressWarnings("unchecked")
112 @Override
113 public void eSet(int featureID, Object newValue) {
114 switch (featureID) {
115 case yakinduPackage.REGION__VERTICES:
116 getVertices().clear();
117 getVertices().addAll((Collection<? extends Vertex>)newValue);
118 return;
119 }
120 super.eSet(featureID, newValue);
121 }
122
123 /**
124 * <!-- begin-user-doc -->
125 * <!-- end-user-doc -->
126 * @generated
127 */
128 @Override
129 public void eUnset(int featureID) {
130 switch (featureID) {
131 case yakinduPackage.REGION__VERTICES:
132 getVertices().clear();
133 return;
134 }
135 super.eUnset(featureID);
136 }
137
138 /**
139 * <!-- begin-user-doc -->
140 * <!-- end-user-doc -->
141 * @generated
142 */
143 @Override
144 public boolean eIsSet(int featureID) {
145 switch (featureID) {
146 case yakinduPackage.REGION__VERTICES:
147 return vertices != null && !vertices.isEmpty();
148 }
149 return super.eIsSet(featureID);
150 }
151
152} //RegionImpl
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/RegularStateImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/RegularStateImpl.java
new file mode 100644
index 00000000..bbe21a14
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/RegularStateImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl;
4
5import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.RegularState;
6import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage;
7
8import org.eclipse.emf.ecore.EClass;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Regular State</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public abstract class RegularStateImpl extends VertexImpl implements RegularState {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected RegularStateImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return yakinduPackage.Literals.REGULAR_STATE;
35 }
36
37} //RegularStateImpl
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/StateImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/StateImpl.java
new file mode 100644
index 00000000..66ab2a8f
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/StateImpl.java
@@ -0,0 +1,183 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl;
4
5import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement;
6import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region;
7import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.State;
8import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage;
9
10import java.util.Collection;
11
12import org.eclipse.emf.common.notify.NotificationChain;
13
14import org.eclipse.emf.common.util.EList;
15
16import org.eclipse.emf.ecore.EClass;
17import org.eclipse.emf.ecore.InternalEObject;
18
19import org.eclipse.emf.ecore.util.EObjectContainmentEList;
20import org.eclipse.emf.ecore.util.InternalEList;
21
22/**
23 * <!-- begin-user-doc -->
24 * An implementation of the model object '<em><b>State</b></em>'.
25 * <!-- end-user-doc -->
26 * <p>
27 * The following features are implemented:
28 * </p>
29 * <ul>
30 * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.StateImpl#getRegions <em>Regions</em>}</li>
31 * </ul>
32 *
33 * @generated
34 */
35public class StateImpl extends RegularStateImpl implements State {
36 /**
37 * The cached value of the '{@link #getRegions() <em>Regions</em>}' containment reference list.
38 * <!-- begin-user-doc -->
39 * <!-- end-user-doc -->
40 * @see #getRegions()
41 * @generated
42 * @ordered
43 */
44 protected EList<Region> regions;
45
46 /**
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @generated
50 */
51 protected StateImpl() {
52 super();
53 }
54
55 /**
56 * <!-- begin-user-doc -->
57 * <!-- end-user-doc -->
58 * @generated
59 */
60 @Override
61 protected EClass eStaticClass() {
62 return yakinduPackage.Literals.STATE;
63 }
64
65 /**
66 * <!-- begin-user-doc -->
67 * <!-- end-user-doc -->
68 * @generated
69 */
70 public EList<Region> getRegions() {
71 if (regions == null) {
72 regions = new EObjectContainmentEList<Region>(Region.class, this, yakinduPackage.STATE__REGIONS);
73 }
74 return regions;
75 }
76
77 /**
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @generated
81 */
82 @Override
83 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
84 switch (featureID) {
85 case yakinduPackage.STATE__REGIONS:
86 return ((InternalEList<?>)getRegions()).basicRemove(otherEnd, msgs);
87 }
88 return super.eInverseRemove(otherEnd, featureID, msgs);
89 }
90
91 /**
92 * <!-- begin-user-doc -->
93 * <!-- end-user-doc -->
94 * @generated
95 */
96 @Override
97 public Object eGet(int featureID, boolean resolve, boolean coreType) {
98 switch (featureID) {
99 case yakinduPackage.STATE__REGIONS:
100 return getRegions();
101 }
102 return super.eGet(featureID, resolve, coreType);
103 }
104
105 /**
106 * <!-- begin-user-doc -->
107 * <!-- end-user-doc -->
108 * @generated
109 */
110 @SuppressWarnings("unchecked")
111 @Override
112 public void eSet(int featureID, Object newValue) {
113 switch (featureID) {
114 case yakinduPackage.STATE__REGIONS:
115 getRegions().clear();
116 getRegions().addAll((Collection<? extends Region>)newValue);
117 return;
118 }
119 super.eSet(featureID, newValue);
120 }
121
122 /**
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @generated
126 */
127 @Override
128 public void eUnset(int featureID) {
129 switch (featureID) {
130 case yakinduPackage.STATE__REGIONS:
131 getRegions().clear();
132 return;
133 }
134 super.eUnset(featureID);
135 }
136
137 /**
138 * <!-- begin-user-doc -->
139 * <!-- end-user-doc -->
140 * @generated
141 */
142 @Override
143 public boolean eIsSet(int featureID) {
144 switch (featureID) {
145 case yakinduPackage.STATE__REGIONS:
146 return regions != null && !regions.isEmpty();
147 }
148 return super.eIsSet(featureID);
149 }
150
151 /**
152 * <!-- begin-user-doc -->
153 * <!-- end-user-doc -->
154 * @generated
155 */
156 @Override
157 public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
158 if (baseClass == CompositeElement.class) {
159 switch (derivedFeatureID) {
160 case yakinduPackage.STATE__REGIONS: return yakinduPackage.COMPOSITE_ELEMENT__REGIONS;
161 default: return -1;
162 }
163 }
164 return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
165 }
166
167 /**
168 * <!-- begin-user-doc -->
169 * <!-- end-user-doc -->
170 * @generated
171 */
172 @Override
173 public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
174 if (baseClass == CompositeElement.class) {
175 switch (baseFeatureID) {
176 case yakinduPackage.COMPOSITE_ELEMENT__REGIONS: return yakinduPackage.STATE__REGIONS;
177 default: return -1;
178 }
179 }
180 return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
181 }
182
183} //StateImpl
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/StatechartImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/StatechartImpl.java
new file mode 100644
index 00000000..056820ca
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/StatechartImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl;
4
5import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Statechart;
6import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage;
7
8import org.eclipse.emf.ecore.EClass;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Statechart</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class StatechartImpl extends CompositeElementImpl implements Statechart {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected StatechartImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return yakinduPackage.Literals.STATECHART;
35 }
36
37} //StatechartImpl
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/SynchronizationImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/SynchronizationImpl.java
new file mode 100644
index 00000000..28ef69ea
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/SynchronizationImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl;
4
5import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Synchronization;
6import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage;
7
8import org.eclipse.emf.ecore.EClass;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Synchronization</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class SynchronizationImpl extends PseudostateImpl implements Synchronization {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected SynchronizationImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return yakinduPackage.Literals.SYNCHRONIZATION;
35 }
36
37} //SynchronizationImpl
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/TransitionImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/TransitionImpl.java
new file mode 100644
index 00000000..ea1677ee
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/TransitionImpl.java
@@ -0,0 +1,284 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl;
4
5import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition;
6import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex;
7import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage;
8
9import org.eclipse.emf.common.notify.Notification;
10import org.eclipse.emf.common.notify.NotificationChain;
11
12import org.eclipse.emf.ecore.EClass;
13import org.eclipse.emf.ecore.InternalEObject;
14
15import org.eclipse.emf.ecore.impl.ENotificationImpl;
16import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
17
18import org.eclipse.emf.ecore.util.EcoreUtil;
19
20/**
21 * <!-- begin-user-doc -->
22 * An implementation of the model object '<em><b>Transition</b></em>'.
23 * <!-- end-user-doc -->
24 * <p>
25 * The following features are implemented:
26 * </p>
27 * <ul>
28 * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.TransitionImpl#getTarget <em>Target</em>}</li>
29 * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.TransitionImpl#getSource <em>Source</em>}</li>
30 * </ul>
31 *
32 * @generated
33 */
34public class TransitionImpl extends MinimalEObjectImpl.Container implements Transition {
35 /**
36 * The cached value of the '{@link #getTarget() <em>Target</em>}' reference.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @see #getTarget()
40 * @generated
41 * @ordered
42 */
43 protected Vertex target;
44
45 /**
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @generated
49 */
50 protected TransitionImpl() {
51 super();
52 }
53
54 /**
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @generated
58 */
59 @Override
60 protected EClass eStaticClass() {
61 return yakinduPackage.Literals.TRANSITION;
62 }
63
64 /**
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @generated
68 */
69 public Vertex getTarget() {
70 if (target != null && target.eIsProxy()) {
71 InternalEObject oldTarget = (InternalEObject)target;
72 target = (Vertex)eResolveProxy(oldTarget);
73 if (target != oldTarget) {
74 if (eNotificationRequired())
75 eNotify(new ENotificationImpl(this, Notification.RESOLVE, yakinduPackage.TRANSITION__TARGET, oldTarget, target));
76 }
77 }
78 return target;
79 }
80
81 /**
82 * <!-- begin-user-doc -->
83 * <!-- end-user-doc -->
84 * @generated
85 */
86 public Vertex basicGetTarget() {
87 return target;
88 }
89
90 /**
91 * <!-- begin-user-doc -->
92 * <!-- end-user-doc -->
93 * @generated
94 */
95 public NotificationChain basicSetTarget(Vertex newTarget, NotificationChain msgs) {
96 Vertex oldTarget = target;
97 target = newTarget;
98 if (eNotificationRequired()) {
99 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, yakinduPackage.TRANSITION__TARGET, oldTarget, newTarget);
100 if (msgs == null) msgs = notification; else msgs.add(notification);
101 }
102 return msgs;
103 }
104
105 /**
106 * <!-- begin-user-doc -->
107 * <!-- end-user-doc -->
108 * @generated
109 */
110 public void setTarget(Vertex newTarget) {
111 if (newTarget != target) {
112 NotificationChain msgs = null;
113 if (target != null)
114 msgs = ((InternalEObject)target).eInverseRemove(this, yakinduPackage.VERTEX__INCOMING_TRANSITIONS, Vertex.class, msgs);
115 if (newTarget != null)
116 msgs = ((InternalEObject)newTarget).eInverseAdd(this, yakinduPackage.VERTEX__INCOMING_TRANSITIONS, Vertex.class, msgs);
117 msgs = basicSetTarget(newTarget, msgs);
118 if (msgs != null) msgs.dispatch();
119 }
120 else if (eNotificationRequired())
121 eNotify(new ENotificationImpl(this, Notification.SET, yakinduPackage.TRANSITION__TARGET, newTarget, newTarget));
122 }
123
124 /**
125 * <!-- begin-user-doc -->
126 * <!-- end-user-doc -->
127 * @generated
128 */
129 public Vertex getSource() {
130 if (eContainerFeatureID() != yakinduPackage.TRANSITION__SOURCE) return null;
131 return (Vertex)eInternalContainer();
132 }
133
134 /**
135 * <!-- begin-user-doc -->
136 * <!-- end-user-doc -->
137 * @generated
138 */
139 public NotificationChain basicSetSource(Vertex newSource, NotificationChain msgs) {
140 msgs = eBasicSetContainer((InternalEObject)newSource, yakinduPackage.TRANSITION__SOURCE, msgs);
141 return msgs;
142 }
143
144 /**
145 * <!-- begin-user-doc -->
146 * <!-- end-user-doc -->
147 * @generated
148 */
149 public void setSource(Vertex newSource) {
150 if (newSource != eInternalContainer() || (eContainerFeatureID() != yakinduPackage.TRANSITION__SOURCE && newSource != null)) {
151 if (EcoreUtil.isAncestor(this, newSource))
152 throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
153 NotificationChain msgs = null;
154 if (eInternalContainer() != null)
155 msgs = eBasicRemoveFromContainer(msgs);
156 if (newSource != null)
157 msgs = ((InternalEObject)newSource).eInverseAdd(this, yakinduPackage.VERTEX__OUTGOING_TRANSITIONS, Vertex.class, msgs);
158 msgs = basicSetSource(newSource, msgs);
159 if (msgs != null) msgs.dispatch();
160 }
161 else if (eNotificationRequired())
162 eNotify(new ENotificationImpl(this, Notification.SET, yakinduPackage.TRANSITION__SOURCE, newSource, newSource));
163 }
164
165 /**
166 * <!-- begin-user-doc -->
167 * <!-- end-user-doc -->
168 * @generated
169 */
170 @Override
171 public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
172 switch (featureID) {
173 case yakinduPackage.TRANSITION__TARGET:
174 if (target != null)
175 msgs = ((InternalEObject)target).eInverseRemove(this, yakinduPackage.VERTEX__INCOMING_TRANSITIONS, Vertex.class, msgs);
176 return basicSetTarget((Vertex)otherEnd, msgs);
177 case yakinduPackage.TRANSITION__SOURCE:
178 if (eInternalContainer() != null)
179 msgs = eBasicRemoveFromContainer(msgs);
180 return basicSetSource((Vertex)otherEnd, msgs);
181 }
182 return super.eInverseAdd(otherEnd, featureID, msgs);
183 }
184
185 /**
186 * <!-- begin-user-doc -->
187 * <!-- end-user-doc -->
188 * @generated
189 */
190 @Override
191 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
192 switch (featureID) {
193 case yakinduPackage.TRANSITION__TARGET:
194 return basicSetTarget(null, msgs);
195 case yakinduPackage.TRANSITION__SOURCE:
196 return basicSetSource(null, msgs);
197 }
198 return super.eInverseRemove(otherEnd, featureID, msgs);
199 }
200
201 /**
202 * <!-- begin-user-doc -->
203 * <!-- end-user-doc -->
204 * @generated
205 */
206 @Override
207 public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
208 switch (eContainerFeatureID()) {
209 case yakinduPackage.TRANSITION__SOURCE:
210 return eInternalContainer().eInverseRemove(this, yakinduPackage.VERTEX__OUTGOING_TRANSITIONS, Vertex.class, msgs);
211 }
212 return super.eBasicRemoveFromContainerFeature(msgs);
213 }
214
215 /**
216 * <!-- begin-user-doc -->
217 * <!-- end-user-doc -->
218 * @generated
219 */
220 @Override
221 public Object eGet(int featureID, boolean resolve, boolean coreType) {
222 switch (featureID) {
223 case yakinduPackage.TRANSITION__TARGET:
224 if (resolve) return getTarget();
225 return basicGetTarget();
226 case yakinduPackage.TRANSITION__SOURCE:
227 return getSource();
228 }
229 return super.eGet(featureID, resolve, coreType);
230 }
231
232 /**
233 * <!-- begin-user-doc -->
234 * <!-- end-user-doc -->
235 * @generated
236 */
237 @Override
238 public void eSet(int featureID, Object newValue) {
239 switch (featureID) {
240 case yakinduPackage.TRANSITION__TARGET:
241 setTarget((Vertex)newValue);
242 return;
243 case yakinduPackage.TRANSITION__SOURCE:
244 setSource((Vertex)newValue);
245 return;
246 }
247 super.eSet(featureID, newValue);
248 }
249
250 /**
251 * <!-- begin-user-doc -->
252 * <!-- end-user-doc -->
253 * @generated
254 */
255 @Override
256 public void eUnset(int featureID) {
257 switch (featureID) {
258 case yakinduPackage.TRANSITION__TARGET:
259 setTarget((Vertex)null);
260 return;
261 case yakinduPackage.TRANSITION__SOURCE:
262 setSource((Vertex)null);
263 return;
264 }
265 super.eUnset(featureID);
266 }
267
268 /**
269 * <!-- begin-user-doc -->
270 * <!-- end-user-doc -->
271 * @generated
272 */
273 @Override
274 public boolean eIsSet(int featureID) {
275 switch (featureID) {
276 case yakinduPackage.TRANSITION__TARGET:
277 return target != null;
278 case yakinduPackage.TRANSITION__SOURCE:
279 return getSource() != null;
280 }
281 return super.eIsSet(featureID);
282 }
283
284} //TransitionImpl
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/VertexImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/VertexImpl.java
new file mode 100644
index 00000000..6f5b9ed3
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/VertexImpl.java
@@ -0,0 +1,206 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl;
4
5import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition;
6import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex;
7import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage;
8
9import java.util.Collection;
10
11import org.eclipse.emf.common.notify.NotificationChain;
12
13import org.eclipse.emf.common.util.EList;
14
15import org.eclipse.emf.ecore.EClass;
16import org.eclipse.emf.ecore.InternalEObject;
17
18import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
19
20import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
21import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
22import org.eclipse.emf.ecore.util.InternalEList;
23
24/**
25 * <!-- begin-user-doc -->
26 * An implementation of the model object '<em><b>Vertex</b></em>'.
27 * <!-- end-user-doc -->
28 * <p>
29 * The following features are implemented:
30 * </p>
31 * <ul>
32 * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.VertexImpl#getIncomingTransitions <em>Incoming Transitions</em>}</li>
33 * <li>{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.VertexImpl#getOutgoingTransitions <em>Outgoing Transitions</em>}</li>
34 * </ul>
35 *
36 * @generated
37 */
38public abstract class VertexImpl extends MinimalEObjectImpl.Container implements Vertex {
39 /**
40 * The cached value of the '{@link #getIncomingTransitions() <em>Incoming Transitions</em>}' reference list.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @see #getIncomingTransitions()
44 * @generated
45 * @ordered
46 */
47 protected EList<Transition> incomingTransitions;
48
49 /**
50 * The cached value of the '{@link #getOutgoingTransitions() <em>Outgoing Transitions</em>}' containment reference list.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @see #getOutgoingTransitions()
54 * @generated
55 * @ordered
56 */
57 protected EList<Transition> outgoingTransitions;
58
59 /**
60 * <!-- begin-user-doc -->
61 * <!-- end-user-doc -->
62 * @generated
63 */
64 protected VertexImpl() {
65 super();
66 }
67
68 /**
69 * <!-- begin-user-doc -->
70 * <!-- end-user-doc -->
71 * @generated
72 */
73 @Override
74 protected EClass eStaticClass() {
75 return yakinduPackage.Literals.VERTEX;
76 }
77
78 /**
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 */
83 public EList<Transition> getIncomingTransitions() {
84 if (incomingTransitions == null) {
85 incomingTransitions = new EObjectWithInverseResolvingEList<Transition>(Transition.class, this, yakinduPackage.VERTEX__INCOMING_TRANSITIONS, yakinduPackage.TRANSITION__TARGET);
86 }
87 return incomingTransitions;
88 }
89
90 /**
91 * <!-- begin-user-doc -->
92 * <!-- end-user-doc -->
93 * @generated
94 */
95 public EList<Transition> getOutgoingTransitions() {
96 if (outgoingTransitions == null) {
97 outgoingTransitions = new EObjectContainmentWithInverseEList<Transition>(Transition.class, this, yakinduPackage.VERTEX__OUTGOING_TRANSITIONS, yakinduPackage.TRANSITION__SOURCE);
98 }
99 return outgoingTransitions;
100 }
101
102 /**
103 * <!-- begin-user-doc -->
104 * <!-- end-user-doc -->
105 * @generated
106 */
107 @SuppressWarnings("unchecked")
108 @Override
109 public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
110 switch (featureID) {
111 case yakinduPackage.VERTEX__INCOMING_TRANSITIONS:
112 return ((InternalEList<InternalEObject>)(InternalEList<?>)getIncomingTransitions()).basicAdd(otherEnd, msgs);
113 case yakinduPackage.VERTEX__OUTGOING_TRANSITIONS:
114 return ((InternalEList<InternalEObject>)(InternalEList<?>)getOutgoingTransitions()).basicAdd(otherEnd, msgs);
115 }
116 return super.eInverseAdd(otherEnd, featureID, msgs);
117 }
118
119 /**
120 * <!-- begin-user-doc -->
121 * <!-- end-user-doc -->
122 * @generated
123 */
124 @Override
125 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
126 switch (featureID) {
127 case yakinduPackage.VERTEX__INCOMING_TRANSITIONS:
128 return ((InternalEList<?>)getIncomingTransitions()).basicRemove(otherEnd, msgs);
129 case yakinduPackage.VERTEX__OUTGOING_TRANSITIONS:
130 return ((InternalEList<?>)getOutgoingTransitions()).basicRemove(otherEnd, msgs);
131 }
132 return super.eInverseRemove(otherEnd, featureID, msgs);
133 }
134
135 /**
136 * <!-- begin-user-doc -->
137 * <!-- end-user-doc -->
138 * @generated
139 */
140 @Override
141 public Object eGet(int featureID, boolean resolve, boolean coreType) {
142 switch (featureID) {
143 case yakinduPackage.VERTEX__INCOMING_TRANSITIONS:
144 return getIncomingTransitions();
145 case yakinduPackage.VERTEX__OUTGOING_TRANSITIONS:
146 return getOutgoingTransitions();
147 }
148 return super.eGet(featureID, resolve, coreType);
149 }
150
151 /**
152 * <!-- begin-user-doc -->
153 * <!-- end-user-doc -->
154 * @generated
155 */
156 @SuppressWarnings("unchecked")
157 @Override
158 public void eSet(int featureID, Object newValue) {
159 switch (featureID) {
160 case yakinduPackage.VERTEX__INCOMING_TRANSITIONS:
161 getIncomingTransitions().clear();
162 getIncomingTransitions().addAll((Collection<? extends Transition>)newValue);
163 return;
164 case yakinduPackage.VERTEX__OUTGOING_TRANSITIONS:
165 getOutgoingTransitions().clear();
166 getOutgoingTransitions().addAll((Collection<? extends Transition>)newValue);
167 return;
168 }
169 super.eSet(featureID, newValue);
170 }
171
172 /**
173 * <!-- begin-user-doc -->
174 * <!-- end-user-doc -->
175 * @generated
176 */
177 @Override
178 public void eUnset(int featureID) {
179 switch (featureID) {
180 case yakinduPackage.VERTEX__INCOMING_TRANSITIONS:
181 getIncomingTransitions().clear();
182 return;
183 case yakinduPackage.VERTEX__OUTGOING_TRANSITIONS:
184 getOutgoingTransitions().clear();
185 return;
186 }
187 super.eUnset(featureID);
188 }
189
190 /**
191 * <!-- begin-user-doc -->
192 * <!-- end-user-doc -->
193 * @generated
194 */
195 @Override
196 public boolean eIsSet(int featureID) {
197 switch (featureID) {
198 case yakinduPackage.VERTEX__INCOMING_TRANSITIONS:
199 return incomingTransitions != null && !incomingTransitions.isEmpty();
200 case yakinduPackage.VERTEX__OUTGOING_TRANSITIONS:
201 return outgoingTransitions != null && !outgoingTransitions.isEmpty();
202 }
203 return super.eIsSet(featureID);
204 }
205
206} //VertexImpl
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/yakinduFactoryImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/yakinduFactoryImpl.java
new file mode 100644
index 00000000..5d004565
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/yakinduFactoryImpl.java
@@ -0,0 +1,183 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl;
4
5import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.*;
6
7import org.eclipse.emf.ecore.EClass;
8import org.eclipse.emf.ecore.EObject;
9import org.eclipse.emf.ecore.EPackage;
10
11import org.eclipse.emf.ecore.impl.EFactoryImpl;
12
13import org.eclipse.emf.ecore.plugin.EcorePlugin;
14
15/**
16 * <!-- begin-user-doc -->
17 * An implementation of the model <b>Factory</b>.
18 * <!-- end-user-doc -->
19 * @generated
20 */
21public class yakinduFactoryImpl extends EFactoryImpl implements yakinduFactory {
22 /**
23 * Creates the default factory implementation.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @generated
27 */
28 public static yakinduFactory init() {
29 try {
30 yakinduFactory theyakinduFactory = (yakinduFactory)EPackage.Registry.INSTANCE.getEFactory(yakinduPackage.eNS_URI);
31 if (theyakinduFactory != null) {
32 return theyakinduFactory;
33 }
34 }
35 catch (Exception exception) {
36 EcorePlugin.INSTANCE.log(exception);
37 }
38 return new yakinduFactoryImpl();
39 }
40
41 /**
42 * Creates an instance of the factory.
43 * <!-- begin-user-doc -->
44 * <!-- end-user-doc -->
45 * @generated
46 */
47 public yakinduFactoryImpl() {
48 super();
49 }
50
51 /**
52 * <!-- begin-user-doc -->
53 * <!-- end-user-doc -->
54 * @generated
55 */
56 @Override
57 public EObject create(EClass eClass) {
58 switch (eClass.getClassifierID()) {
59 case yakinduPackage.REGION: return createRegion();
60 case yakinduPackage.TRANSITION: return createTransition();
61 case yakinduPackage.STATECHART: return createStatechart();
62 case yakinduPackage.ENTRY: return createEntry();
63 case yakinduPackage.SYNCHRONIZATION: return createSynchronization();
64 case yakinduPackage.STATE: return createState();
65 case yakinduPackage.CHOICE: return createChoice();
66 case yakinduPackage.EXIT: return createExit();
67 case yakinduPackage.FINAL_STATE: return createFinalState();
68 default:
69 throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
70 }
71 }
72
73 /**
74 * <!-- begin-user-doc -->
75 * <!-- end-user-doc -->
76 * @generated
77 */
78 public Region createRegion() {
79 RegionImpl region = new RegionImpl();
80 return region;
81 }
82
83 /**
84 * <!-- begin-user-doc -->
85 * <!-- end-user-doc -->
86 * @generated
87 */
88 public Transition createTransition() {
89 TransitionImpl transition = new TransitionImpl();
90 return transition;
91 }
92
93 /**
94 * <!-- begin-user-doc -->
95 * <!-- end-user-doc -->
96 * @generated
97 */
98 public Statechart createStatechart() {
99 StatechartImpl statechart = new StatechartImpl();
100 return statechart;
101 }
102
103 /**
104 * <!-- begin-user-doc -->
105 * <!-- end-user-doc -->
106 * @generated
107 */
108 public Entry createEntry() {
109 EntryImpl entry = new EntryImpl();
110 return entry;
111 }
112
113 /**
114 * <!-- begin-user-doc -->
115 * <!-- end-user-doc -->
116 * @generated
117 */
118 public Synchronization createSynchronization() {
119 SynchronizationImpl synchronization = new SynchronizationImpl();
120 return synchronization;
121 }
122
123 /**
124 * <!-- begin-user-doc -->
125 * <!-- end-user-doc -->
126 * @generated
127 */
128 public State createState() {
129 StateImpl state = new StateImpl();
130 return state;
131 }
132
133 /**
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @generated
137 */
138 public Choice createChoice() {
139 ChoiceImpl choice = new ChoiceImpl();
140 return choice;
141 }
142
143 /**
144 * <!-- begin-user-doc -->
145 * <!-- end-user-doc -->
146 * @generated
147 */
148 public Exit createExit() {
149 ExitImpl exit = new ExitImpl();
150 return exit;
151 }
152
153 /**
154 * <!-- begin-user-doc -->
155 * <!-- end-user-doc -->
156 * @generated
157 */
158 public FinalState createFinalState() {
159 FinalStateImpl finalState = new FinalStateImpl();
160 return finalState;
161 }
162
163 /**
164 * <!-- begin-user-doc -->
165 * <!-- end-user-doc -->
166 * @generated
167 */
168 public yakinduPackage getyakinduPackage() {
169 return (yakinduPackage)getEPackage();
170 }
171
172 /**
173 * <!-- begin-user-doc -->
174 * <!-- end-user-doc -->
175 * @deprecated
176 * @generated
177 */
178 @Deprecated
179 public static yakinduPackage getPackage() {
180 return yakinduPackage.eINSTANCE;
181 }
182
183} //yakinduFactoryImpl
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/yakinduPackageImpl.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/yakinduPackageImpl.java
new file mode 100644
index 00000000..2213e07f
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/impl/yakinduPackageImpl.java
@@ -0,0 +1,494 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl;
4
5import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Choice;
6import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement;
7import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Entry;
8import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Exit;
9import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.FinalState;
10import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Pseudostate;
11import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region;
12import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.RegularState;
13import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.State;
14import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Statechart;
15import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Synchronization;
16import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition;
17import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex;
18import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduFactory;
19import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage;
20
21import org.eclipse.emf.ecore.EClass;
22import org.eclipse.emf.ecore.EPackage;
23import org.eclipse.emf.ecore.EReference;
24
25import org.eclipse.emf.ecore.impl.EPackageImpl;
26
27/**
28 * <!-- begin-user-doc -->
29 * An implementation of the model <b>Package</b>.
30 * <!-- end-user-doc -->
31 * @generated
32 */
33public class yakinduPackageImpl extends EPackageImpl implements yakinduPackage {
34 /**
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @generated
38 */
39 private EClass pseudostateEClass = null;
40
41 /**
42 * <!-- begin-user-doc -->
43 * <!-- end-user-doc -->
44 * @generated
45 */
46 private EClass vertexEClass = null;
47
48 /**
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @generated
52 */
53 private EClass regionEClass = null;
54
55 /**
56 * <!-- begin-user-doc -->
57 * <!-- end-user-doc -->
58 * @generated
59 */
60 private EClass transitionEClass = null;
61
62 /**
63 * <!-- begin-user-doc -->
64 * <!-- end-user-doc -->
65 * @generated
66 */
67 private EClass statechartEClass = null;
68
69 /**
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @generated
73 */
74 private EClass entryEClass = null;
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 private EClass synchronizationEClass = null;
82
83 /**
84 * <!-- begin-user-doc -->
85 * <!-- end-user-doc -->
86 * @generated
87 */
88 private EClass stateEClass = null;
89
90 /**
91 * <!-- begin-user-doc -->
92 * <!-- end-user-doc -->
93 * @generated
94 */
95 private EClass regularStateEClass = null;
96
97 /**
98 * <!-- begin-user-doc -->
99 * <!-- end-user-doc -->
100 * @generated
101 */
102 private EClass compositeElementEClass = null;
103
104 /**
105 * <!-- begin-user-doc -->
106 * <!-- end-user-doc -->
107 * @generated
108 */
109 private EClass choiceEClass = null;
110
111 /**
112 * <!-- begin-user-doc -->
113 * <!-- end-user-doc -->
114 * @generated
115 */
116 private EClass exitEClass = null;
117
118 /**
119 * <!-- begin-user-doc -->
120 * <!-- end-user-doc -->
121 * @generated
122 */
123 private EClass finalStateEClass = null;
124
125 /**
126 * Creates an instance of the model <b>Package</b>, registered with
127 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
128 * package URI value.
129 * <p>Note: the correct way to create the package is via the static
130 * factory method {@link #init init()}, which also performs
131 * initialization of the package, or returns the registered package,
132 * if one already exists.
133 * <!-- begin-user-doc -->
134 * <!-- end-user-doc -->
135 * @see org.eclipse.emf.ecore.EPackage.Registry
136 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage#eNS_URI
137 * @see #init()
138 * @generated
139 */
140 private yakinduPackageImpl() {
141 super(eNS_URI, yakinduFactory.eINSTANCE);
142 }
143
144 /**
145 * <!-- begin-user-doc -->
146 * <!-- end-user-doc -->
147 * @generated
148 */
149 private static boolean isInited = false;
150
151 /**
152 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
153 *
154 * <p>This method is used to initialize {@link yakinduPackage#eINSTANCE} when that field is accessed.
155 * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
156 * <!-- begin-user-doc -->
157 * <!-- end-user-doc -->
158 * @see #eNS_URI
159 * @see #createPackageContents()
160 * @see #initializePackageContents()
161 * @generated
162 */
163 public static yakinduPackage init() {
164 if (isInited) return (yakinduPackage)EPackage.Registry.INSTANCE.getEPackage(yakinduPackage.eNS_URI);
165
166 // Obtain or create and register package
167 yakinduPackageImpl theyakinduPackage = (yakinduPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof yakinduPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new yakinduPackageImpl());
168
169 isInited = true;
170
171 // Create package meta-data objects
172 theyakinduPackage.createPackageContents();
173
174 // Initialize created meta-data
175 theyakinduPackage.initializePackageContents();
176
177 // Mark meta-data to indicate it can't be changed
178 theyakinduPackage.freeze();
179
180
181 // Update the registry and return the package
182 EPackage.Registry.INSTANCE.put(yakinduPackage.eNS_URI, theyakinduPackage);
183 return theyakinduPackage;
184 }
185
186 /**
187 * <!-- begin-user-doc -->
188 * <!-- end-user-doc -->
189 * @generated
190 */
191 public EClass getPseudostate() {
192 return pseudostateEClass;
193 }
194
195 /**
196 * <!-- begin-user-doc -->
197 * <!-- end-user-doc -->
198 * @generated
199 */
200 public EClass getVertex() {
201 return vertexEClass;
202 }
203
204 /**
205 * <!-- begin-user-doc -->
206 * <!-- end-user-doc -->
207 * @generated
208 */
209 public EReference getVertex_IncomingTransitions() {
210 return (EReference)vertexEClass.getEStructuralFeatures().get(0);
211 }
212
213 /**
214 * <!-- begin-user-doc -->
215 * <!-- end-user-doc -->
216 * @generated
217 */
218 public EReference getVertex_OutgoingTransitions() {
219 return (EReference)vertexEClass.getEStructuralFeatures().get(1);
220 }
221
222 /**
223 * <!-- begin-user-doc -->
224 * <!-- end-user-doc -->
225 * @generated
226 */
227 public EClass getRegion() {
228 return regionEClass;
229 }
230
231 /**
232 * <!-- begin-user-doc -->
233 * <!-- end-user-doc -->
234 * @generated
235 */
236 public EReference getRegion_Vertices() {
237 return (EReference)regionEClass.getEStructuralFeatures().get(0);
238 }
239
240 /**
241 * <!-- begin-user-doc -->
242 * <!-- end-user-doc -->
243 * @generated
244 */
245 public EClass getTransition() {
246 return transitionEClass;
247 }
248
249 /**
250 * <!-- begin-user-doc -->
251 * <!-- end-user-doc -->
252 * @generated
253 */
254 public EReference getTransition_Target() {
255 return (EReference)transitionEClass.getEStructuralFeatures().get(0);
256 }
257
258 /**
259 * <!-- begin-user-doc -->
260 * <!-- end-user-doc -->
261 * @generated
262 */
263 public EReference getTransition_Source() {
264 return (EReference)transitionEClass.getEStructuralFeatures().get(1);
265 }
266
267 /**
268 * <!-- begin-user-doc -->
269 * <!-- end-user-doc -->
270 * @generated
271 */
272 public EClass getStatechart() {
273 return statechartEClass;
274 }
275
276 /**
277 * <!-- begin-user-doc -->
278 * <!-- end-user-doc -->
279 * @generated
280 */
281 public EClass getEntry() {
282 return entryEClass;
283 }
284
285 /**
286 * <!-- begin-user-doc -->
287 * <!-- end-user-doc -->
288 * @generated
289 */
290 public EClass getSynchronization() {
291 return synchronizationEClass;
292 }
293
294 /**
295 * <!-- begin-user-doc -->
296 * <!-- end-user-doc -->
297 * @generated
298 */
299 public EClass getState() {
300 return stateEClass;
301 }
302
303 /**
304 * <!-- begin-user-doc -->
305 * <!-- end-user-doc -->
306 * @generated
307 */
308 public EClass getRegularState() {
309 return regularStateEClass;
310 }
311
312 /**
313 * <!-- begin-user-doc -->
314 * <!-- end-user-doc -->
315 * @generated
316 */
317 public EClass getCompositeElement() {
318 return compositeElementEClass;
319 }
320
321 /**
322 * <!-- begin-user-doc -->
323 * <!-- end-user-doc -->
324 * @generated
325 */
326 public EReference getCompositeElement_Regions() {
327 return (EReference)compositeElementEClass.getEStructuralFeatures().get(0);
328 }
329
330 /**
331 * <!-- begin-user-doc -->
332 * <!-- end-user-doc -->
333 * @generated
334 */
335 public EClass getChoice() {
336 return choiceEClass;
337 }
338
339 /**
340 * <!-- begin-user-doc -->
341 * <!-- end-user-doc -->
342 * @generated
343 */
344 public EClass getExit() {
345 return exitEClass;
346 }
347
348 /**
349 * <!-- begin-user-doc -->
350 * <!-- end-user-doc -->
351 * @generated
352 */
353 public EClass getFinalState() {
354 return finalStateEClass;
355 }
356
357 /**
358 * <!-- begin-user-doc -->
359 * <!-- end-user-doc -->
360 * @generated
361 */
362 public yakinduFactory getyakinduFactory() {
363 return (yakinduFactory)getEFactoryInstance();
364 }
365
366 /**
367 * <!-- begin-user-doc -->
368 * <!-- end-user-doc -->
369 * @generated
370 */
371 private boolean isCreated = false;
372
373 /**
374 * Creates the meta-model objects for the package. This method is
375 * guarded to have no affect on any invocation but its first.
376 * <!-- begin-user-doc -->
377 * <!-- end-user-doc -->
378 * @generated
379 */
380 public void createPackageContents() {
381 if (isCreated) return;
382 isCreated = true;
383
384 // Create classes and their features
385 pseudostateEClass = createEClass(PSEUDOSTATE);
386
387 vertexEClass = createEClass(VERTEX);
388 createEReference(vertexEClass, VERTEX__INCOMING_TRANSITIONS);
389 createEReference(vertexEClass, VERTEX__OUTGOING_TRANSITIONS);
390
391 regionEClass = createEClass(REGION);
392 createEReference(regionEClass, REGION__VERTICES);
393
394 transitionEClass = createEClass(TRANSITION);
395 createEReference(transitionEClass, TRANSITION__TARGET);
396 createEReference(transitionEClass, TRANSITION__SOURCE);
397
398 statechartEClass = createEClass(STATECHART);
399
400 entryEClass = createEClass(ENTRY);
401
402 synchronizationEClass = createEClass(SYNCHRONIZATION);
403
404 stateEClass = createEClass(STATE);
405
406 regularStateEClass = createEClass(REGULAR_STATE);
407
408 compositeElementEClass = createEClass(COMPOSITE_ELEMENT);
409 createEReference(compositeElementEClass, COMPOSITE_ELEMENT__REGIONS);
410
411 choiceEClass = createEClass(CHOICE);
412
413 exitEClass = createEClass(EXIT);
414
415 finalStateEClass = createEClass(FINAL_STATE);
416 }
417
418 /**
419 * <!-- begin-user-doc -->
420 * <!-- end-user-doc -->
421 * @generated
422 */
423 private boolean isInitialized = false;
424
425 /**
426 * Complete the initialization of the package and its meta-model. This
427 * method is guarded to have no affect on any invocation but its first.
428 * <!-- begin-user-doc -->
429 * <!-- end-user-doc -->
430 * @generated
431 */
432 public void initializePackageContents() {
433 if (isInitialized) return;
434 isInitialized = true;
435
436 // Initialize package
437 setName(eNAME);
438 setNsPrefix(eNS_PREFIX);
439 setNsURI(eNS_URI);
440
441 // Create type parameters
442
443 // Set bounds for type parameters
444
445 // Add supertypes to classes
446 pseudostateEClass.getESuperTypes().add(this.getVertex());
447 statechartEClass.getESuperTypes().add(this.getCompositeElement());
448 entryEClass.getESuperTypes().add(this.getPseudostate());
449 synchronizationEClass.getESuperTypes().add(this.getPseudostate());
450 stateEClass.getESuperTypes().add(this.getRegularState());
451 stateEClass.getESuperTypes().add(this.getCompositeElement());
452 regularStateEClass.getESuperTypes().add(this.getVertex());
453 choiceEClass.getESuperTypes().add(this.getPseudostate());
454 exitEClass.getESuperTypes().add(this.getPseudostate());
455 finalStateEClass.getESuperTypes().add(this.getRegularState());
456
457 // Initialize classes, features, and operations; add parameters
458 initEClass(pseudostateEClass, Pseudostate.class, "Pseudostate", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
459
460 initEClass(vertexEClass, Vertex.class, "Vertex", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
461 initEReference(getVertex_IncomingTransitions(), this.getTransition(), this.getTransition_Target(), "incomingTransitions", null, 0, -1, Vertex.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
462 initEReference(getVertex_OutgoingTransitions(), this.getTransition(), this.getTransition_Source(), "outgoingTransitions", null, 0, -1, Vertex.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
463
464 initEClass(regionEClass, Region.class, "Region", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
465 initEReference(getRegion_Vertices(), this.getVertex(), null, "vertices", null, 0, -1, Region.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
466
467 initEClass(transitionEClass, Transition.class, "Transition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
468 initEReference(getTransition_Target(), this.getVertex(), this.getVertex_IncomingTransitions(), "target", null, 1, 1, Transition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
469 initEReference(getTransition_Source(), this.getVertex(), this.getVertex_OutgoingTransitions(), "source", null, 0, 1, Transition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
470
471 initEClass(statechartEClass, Statechart.class, "Statechart", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
472
473 initEClass(entryEClass, Entry.class, "Entry", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
474
475 initEClass(synchronizationEClass, Synchronization.class, "Synchronization", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
476
477 initEClass(stateEClass, State.class, "State", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
478
479 initEClass(regularStateEClass, RegularState.class, "RegularState", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
480
481 initEClass(compositeElementEClass, CompositeElement.class, "CompositeElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
482 initEReference(getCompositeElement_Regions(), this.getRegion(), null, "regions", null, 0, -1, CompositeElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
483
484 initEClass(choiceEClass, Choice.class, "Choice", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
485
486 initEClass(exitEClass, Exit.class, "Exit", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
487
488 initEClass(finalStateEClass, FinalState.class, "FinalState", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
489
490 // Create resource
491 createResource(eNS_URI);
492 }
493
494} //yakinduPackageImpl
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/queries/yakinduMutatedPatterns.vql b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/queries/yakinduMutatedPatterns.vql
new file mode 100644
index 00000000..2e498670
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/queries/yakinduMutatedPatterns.vql
@@ -0,0 +1,270 @@
1package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.queries
2
3import epackage "YakinduMetamodel"
4
5/////////
6// Entry
7/////////
8
9pattern entryInRegion_M0(r1 : Region, e1 : Entry) {
10 Region.vertices(r1, e1);
11}
12pattern entryInRegion_M1(r1 : Region, e1) {
13 Region.vertices(r1, e1);
14}
15pattern entryInRegion_M2(r1 : Region, e1: Entry) {
16 // For positive constraint
17 Region(r1);Entry(e1);
18}
19
20
21//@Constraint(severity="error", message="error", key = {r1})
22pattern noEntryInRegion_M0(r1 : Region) {
23 neg find entryInRegion_M0(r1, _);
24}
25pattern noEntryInRegion_M1(r1 : Region) {
26 neg find entryInRegion_M1(r1, _);
27}
28pattern noEntryInRegion_M2(r1 : Region) {
29 neg find entryInRegion_M2(r1, _);
30}
31pattern noEntryInRegion_M3(r1 : Region) {
32 find entryInRegion_M0(r1, _);
33}
34pattern noEntryInRegion_M4(r1 : Region) {
35 find entryInRegion_M1(r1, _);
36}
37pattern noEntryInRegion_M5(r1 : Region) {
38 find entryInRegion_M2(r1, _);
39}
40
41//@Constraint(severity="error", message="error", key = {r})
42pattern multipleEntryInRegion_M0(r : Region) {
43 find entryInRegion_M0(r, e1);
44 find entryInRegion_M0(r, e2);
45 e1 != e2;
46}
47pattern multipleEntryInRegion_M1(r : Region) {
48 find entryInRegion_M1(r, e1);
49 find entryInRegion_M0(r, e2);
50 e1 != e2;
51}
52pattern multipleEntryInRegion_M2(r : Region) {
53 find entryInRegion_M2(r, e1);
54 find entryInRegion_M0(r, e2);
55 e1 != e2;
56}
57pattern multipleEntryInRegion_M3(r : Region) {
58 find entryInRegion_M0(r, e1);
59 find entryInRegion_M1(r, e2);
60 e1 != e2;
61}
62pattern multipleEntryInRegion_M4(r : Region) {
63 find entryInRegion_M2(r, e1);
64 find entryInRegion_M2(r, e2);
65 e1 != e2;
66}
67pattern multipleEntryInRegion_M5(r : Region) {
68 find entryInRegion_M0(r, e1);
69 find entryInRegion_M0(r, e2);
70}
71
72
73pattern transition_M0(t : Transition, src : Vertex, trg : Vertex) {
74 Transition.source(t, src);
75 Transition.target(t, trg);
76}
77pattern transition_M1(t : Transition, src : Vertex, trg : Vertex) {
78 Transition.source(t, src);
79 Vertex(trg);
80}
81pattern transition_M2(t : Transition, src : Vertex, trg : Vertex) {
82 Vertex(src);
83 Transition.target(t, trg);
84}
85pattern transition_M3(t : Transition, src : Vertex, trg : Vertex) {
86 Transition.source(t_x, src);
87 Transition.target(t, trg);
88}
89pattern transition_M4(t : Transition, src : Vertex, trg : Vertex) {
90 Transition.source(t, src);
91 Transition.target(t_x, trg);
92}
93
94//@Constraint(severity="error", message="error", key = {e})
95pattern incomingToEntry_M0(t : Transition, e : Entry) {
96 find transition_M0(t, _, e);
97}
98pattern incomingToEntry_1(t : Transition, e) {
99 find transition_M0(t, _, e);
100}
101pattern incomingToEntry_2(t : Transition, e : Entry) {
102 find transition_M1(t, _, e);
103}
104pattern incomingToEntry_3(t : Transition, e : Entry) {
105 find transition_M2(t, _, e);
106}
107pattern incomingToEntry_4(t : Transition, e : Entry) {
108 find transition_M3(t, _, e);
109}
110pattern incomingToEntry_5(t : Transition, e : Entry) {
111 find transition_M4(t, _, e);
112}
113
114pattern noOutgoingTransitionFromEntry_M0(e : Entry) {
115 neg find transition_M0(_, e, _);
116}
117
118pattern noOutgoingTransitionFromEntry_M1(e) {
119 Vertex(e);
120 neg find transition_M0(_, e, _);
121}
122pattern noOutgoingTransitionFromEntry_M2(e : Entry) {
123 neg find transition_M1(_, e, _);
124}
125pattern noOutgoingTransitionFromEntry_M3(e : Entry) {
126 neg find transition_M2(_, e, _);
127}
128pattern noOutgoingTransitionFromEntry_M4(e : Entry) {
129 neg find transition_M3(_, e, _);
130}
131pattern noOutgoingTransitionFromEntry_M5(e : Entry) {
132 neg find transition_M4(_, e, _);
133}
134
135
136//@Constraint(severity="error", message="error", key = {e})
137pattern multipleTransitionFromEntry_M0(e : Entry, t1 : Transition, t2: Transition) {
138 Entry.outgoingTransitions(e,t1);
139 Entry.outgoingTransitions(e,t2);
140 t1!=t2;
141}
142pattern multipleTransitionFromEntry_M1(e, t1 : Transition, t2: Transition) {
143 Entry.outgoingTransitions(e,t1);
144 Entry.outgoingTransitions(e,t2);
145 t1!=t2;
146}
147pattern multipleTransitionFromEntry_M2(e : Entry, t1 : Transition, t2: Transition) {
148 Transition(t1);
149 Entry.outgoingTransitions(e,t2);
150 t1!=t2;
151}
152pattern multipleTransitionFromEntry_M3(e : Entry, t1 : Transition, t2: Transition) {
153 Entry.outgoingTransitions(e,t1);
154 Transition(t2);
155 t1!=t2;
156}
157pattern multipleTransitionFromEntry_M4(e : Entry, t1 : Transition, t2: Transition) {
158 Entry.outgoingTransitions(e,t1);
159 Entry.outgoingTransitions(e,t2);
160}
161
162/////////
163// Exit
164/////////
165
166//@Constraint(severity="error", message="error", key = {e})
167pattern outgoingFromExit_M0(t : Transition, e : Exit) {
168 Exit.outgoingTransitions(e,t);
169}
170pattern outgoingFromExit_M1(t : Transition, e) {
171 Vertex.outgoingTransitions(e,t);
172}
173pattern outgoingFromExit_M2(t : Transition, e : Exit) {
174 Transition(t);
175 Exit(e);
176}
177
178/////////
179// Final
180/////////
181
182//@Constraint(severity="error", message="error", key = {f})
183pattern outgoingFromFinal_M0(t : Transition, f : FinalState) {
184 FinalState.outgoingTransitions(f,t);
185}
186pattern outgoingFromFinal_M1(t : Transition, f) {
187 Vertex.outgoingTransitions(f,t);
188}
189pattern outgoingFromFinal_M2(t : Transition, f : FinalState) {
190 Transition(t);
191 FinalState(f);
192}
193
194/////////
195// State vs Region
196/////////
197
198//@Constraint(severity="error", message="error", key = {region})
199pattern noStateInRegion_M0(region: Region) {
200 neg find StateInRegion_M0(region,_);
201}
202pattern noStateInRegion_M1(region: Region) {
203 neg find StateInRegion_M1(region,_);
204}
205pattern noStateInRegion_M2(region: Region) {
206 neg find StateInRegion_M2(region,_);
207}
208pattern noStateInRegion_M3(region: Region) {
209 find StateInRegion_M0(region,_);
210}
211
212pattern StateInRegion_M0(region: Region, state: State) {
213 Region.vertices(region,state);
214}
215pattern StateInRegion_M1(region: Region, state) {
216 Region.vertices(region,state);
217}
218pattern StateInRegion_M2(region: Region, state:State) {
219 Region(region);State(state);
220}
221
222/////////
223// Choice
224/////////
225
226@Constraint(severity="error", message="error", key = {c})
227pattern choiceHasNoOutgoing_M0(c : Choice) {
228 neg find transition_M0(_, c, _);
229}
230pattern choiceHasNoOutgoing_M1(c:Vertex) {
231 neg find transition_M0(_, c, _);
232}
233pattern choiceHasNoOutgoing_M2(c : Choice) {
234 neg find transition_M1(_, c, _);
235}
236pattern choiceHasNoOutgoing_M3(c : Choice) {
237 neg find transition_M2(_, c, _);
238}
239pattern choiceHasNoOutgoing_M4(c : Choice) {
240 neg find transition_M3(_, c, _);
241}
242pattern choiceHasNoOutgoing_M5(c : Choice) {
243 neg find transition_M4(_, c, _);
244}
245pattern choiceHasNoOutgoing_M6(c : Choice) {
246 find transition_M0(_, c, _);
247}
248
249@Constraint(severity="error", message="error", key = {c})
250pattern choiceHasNoIncoming_M0(c: Choice) {
251 neg find transition_M0(_, _, c);
252}
253pattern choiceHasNoIncoming_M1(c:Vertex) {
254 neg find transition_M0(_, _, c);
255}
256pattern choiceHasNoIncoming_M2(c: Choice) {
257 neg find transition_M1(_, _, c);
258}
259pattern choiceHasNoIncoming_M3(c: Choice) {
260 neg find transition_M2(_, _, c);
261}
262pattern choiceHasNoIncoming_M4(c: Choice) {
263 neg find transition_M3(_, _, c);
264}
265pattern choiceHasNoIncoming_M5(c: Choice) {
266 neg find transition_M4(_, _, c);
267}
268pattern choiceHasNoIncoming_M6(c: Choice) {
269 find transition_M0(_, _, c);
270}
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/queries/yakinduPatterns.vql b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/queries/yakinduPatterns.vql
new file mode 100644
index 00000000..597b1691
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/queries/yakinduPatterns.vql
@@ -0,0 +1,227 @@
1package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.queries
2
3import epackage "YakinduMetamodel"
4
5/////////
6// Entry
7/////////
8
9pattern entryInRegion(r1 : Region, e1 : Entry) {
10 Region.vertices(r1, e1);
11}
12
13@Constraint(severity="error", message="error", key = {r1})
14pattern noEntryInRegion(r1 : Region) {
15 neg find entryInRegion(r1, _);
16}
17
18@Constraint(severity="error", message="error", key = {r})
19pattern multipleEntryInRegion(r : Region) {
20 find entryInRegion(r, e1);
21 find entryInRegion(r, e2);
22 e1 != e2;
23}
24
25pattern transition(t : Transition, src : Vertex, trg : Vertex) {
26 Transition.source(t, src);
27 Transition.target(t, trg);
28}
29
30@Constraint(severity="error", message="error", key = {e})
31pattern incomingToEntry(t : Transition, e : Entry) {
32 find transition(t, _, e);
33}
34
35@Constraint(severity="error", message="error", key = {e})
36pattern noOutgoingTransitionFromEntry(e : Entry) {
37 neg find transition(_, e, _);
38}
39
40@Constraint(severity="error", message="error", key = {e})
41pattern multipleTransitionFromEntry(e : Entry, t1 : Transition, t2: Transition) {
42 Entry.outgoingTransitions(e,t1);
43 Entry.outgoingTransitions(e,t2);
44 t1!=t2;
45}
46
47/////////
48// Exit
49/////////
50
51@Constraint(severity="error", message="error", key = {e})
52pattern outgoingFromExit(t : Transition, e : Exit) {
53 Exit.outgoingTransitions(e,t);
54}
55
56/////////
57// Final
58/////////
59
60@Constraint(severity="error", message="error", key = {f})
61pattern outgoingFromFinal(t : Transition, f : FinalState) {
62 FinalState.outgoingTransitions(f,t);
63}
64
65/////////
66// State vs Region
67/////////
68
69@Constraint(severity="error", message="error", key = {region})
70pattern noStateInRegion(region: Region) {
71 neg find StateInRegion(region,_);
72}
73pattern StateInRegion(region: Region, state: State) {
74 Region.vertices(region,state);
75}
76
77/////////
78// Choice
79/////////
80
81@Constraint(severity="error", message="error", key = {c})
82pattern choiceHasNoOutgoing(c : Choice) {
83 neg find transition(_, c, _);
84}
85
86@Constraint(severity="error", message="error", key = {c})
87pattern choiceHasNoIncoming(c: Choice) {
88 neg find transition(_, _, c);
89}
90
91/////////
92// Synchronization
93/////////
94
95@Constraint(severity="error", message="error", key = {s})
96pattern synchHasNoOutgoing(s : Synchronization) {
97 neg find transition(_, s, _);
98}
99
100@Constraint(severity="error", message="error", key = {s})
101pattern synchHasNoIncoming(s : Synchronization) {
102 neg find transition(_, _, s);
103}
104
105@Constraint(severity="error", message="error", key = {s})
106pattern SynchronizedIncomingInSameRegion(s : Synchronization, v1 : Vertex, v2 : Vertex) {
107 find transition(t1, v1, s);
108 find transition(t2, v2, s);
109 t1!=t2;
110 Region.vertices(r, v1);
111 Region.vertices(r, v2);
112} or {
113 find transition(t1, s, v1);
114 find transition(t2, s, v2);
115 t1!=t2;
116 Region.vertices(r, v1);
117 Region.vertices(r, v2);
118}
119
120@Constraint(severity="error", message="error", key = {s})
121pattern notSynchronizingStates(s : Synchronization) {
122 neg find hasMultipleOutgoingTrainsition(s);
123 neg find hasMultipleIncomingTrainsition(s);
124}
125
126pattern hasMultipleOutgoingTrainsition(v : Synchronization) {
127 find transition(_, v, trg1);
128 find transition(_, v, trg2);
129 trg1 != trg2;
130}
131
132pattern hasMultipleIncomingTrainsition(v : Synchronization) {
133 find transition(_, src1, v);
134 find transition(_, src2, v);
135 src1 != src2;
136}
137
138@Constraint(severity="error", message="error", key = {s})
139pattern SynchronizedRegionsAreNotSiblings(s : Synchronization, v1 : Vertex, v2 : Vertex) {
140 find transition(_, v1, s);
141 find transition(_, v2, s);
142 CompositeElement.regions.vertices(r1, v1);
143 CompositeElement.regions.vertices(r2, v2);
144 r1 != r2;
145} or {
146 find transition(_, s, v1);
147 find transition(_, s, v2);
148 CompositeElement.regions.vertices(r1, v1);
149 CompositeElement.regions.vertices(r2, v2);
150 r1 != r2;
151}
152
153///////////////////////////////
154// Extra
155//
156//@Constraint(severity="error", message="error", key = {s})
157//pattern SynchronizedRegionDoesNotHaveParent(s : Synchronization, v : Vertex) {
158// find transition(_, v, s);
159// neg find child(_,v);
160//} or {
161// find transition(_, s, v);
162// neg find child(_,v);
163//}
164
165pattern child(parent: CompositeElement, child: Vertex) {
166 CompositeElement.regions.vertices(parent, child);
167}
168
169@Constraint(severity="error", message="error", key = {s})
170pattern SynchronizedRegionDoesNotHaveMultipleRegions(s : Synchronization, v : Vertex) {
171 find transition(_, v, s);
172 find child(c,v);
173 neg find hasMultipleRegions(c);
174} or {
175 find transition(_, s, v);
176 find child(c,v);
177 neg find hasMultipleRegions(c);
178}
179
180
181pattern hasMultipleRegions(composite: CompositeElement) {
182 CompositeElement.regions(composite,region1);
183 CompositeElement.regions(composite,region2);
184 region1 != region2;
185}
186
187/**
188 * Simplifying model generation
189 */
190@Constraint(severity="error", message="error", key = {s})
191pattern synchThree(s: Synchronization) {
192 Transition.target(t1,s);
193 Transition.target(t2,s);
194 Transition.target(t3,s);
195 t1!=t2;
196 t2!=t3;
197 t1!=t3;
198} or {
199 Transition.source(t1,s);
200 Transition.source(t2,s);
201 Transition.source(t3,s);
202 t1!=t2;
203 t2!=t3;
204 t1!=t3;
205}
206
207/**
208 * Simplifying model generation
209 */
210@Constraint(severity="error", message="error", key = {s1,s2})
211pattern twoSynch(s1 : Synchronization, s2 : Synchronization) {
212 Synchronization(s1);
213 Synchronization(s2);
214 s1 != s2;
215}
216
217/**
218 * Model generation task: at least one synch
219 */
220//@Constraint(severity="error", message="error", key = {s})
221//pattern noSynch(s:Statechart) {
222// Statechart(s);
223// neg find synch(_);
224//}
225//pattern synch(s:Synchronization) {
226// Synchronization(s);
227//} \ No newline at end of file
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/util/yakinduAdapterFactory.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/util/yakinduAdapterFactory.java
new file mode 100644
index 00000000..b8fafb35
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/util/yakinduAdapterFactory.java
@@ -0,0 +1,336 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.util;
4
5import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.*;
6
7import org.eclipse.emf.common.notify.Adapter;
8import org.eclipse.emf.common.notify.Notifier;
9
10import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
11
12import org.eclipse.emf.ecore.EObject;
13
14/**
15 * <!-- begin-user-doc -->
16 * The <b>Adapter Factory</b> for the model.
17 * It provides an adapter <code>createXXX</code> method for each class of the model.
18 * <!-- end-user-doc -->
19 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage
20 * @generated
21 */
22public class yakinduAdapterFactory extends AdapterFactoryImpl {
23 /**
24 * The cached model package.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @generated
28 */
29 protected static yakinduPackage modelPackage;
30
31 /**
32 * Creates an instance of the adapter factory.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @generated
36 */
37 public yakinduAdapterFactory() {
38 if (modelPackage == null) {
39 modelPackage = yakinduPackage.eINSTANCE;
40 }
41 }
42
43 /**
44 * Returns whether this factory is applicable for the type of the object.
45 * <!-- begin-user-doc -->
46 * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
47 * <!-- end-user-doc -->
48 * @return whether this factory is applicable for the type of the object.
49 * @generated
50 */
51 @Override
52 public boolean isFactoryForType(Object object) {
53 if (object == modelPackage) {
54 return true;
55 }
56 if (object instanceof EObject) {
57 return ((EObject)object).eClass().getEPackage() == modelPackage;
58 }
59 return false;
60 }
61
62 /**
63 * The switch that delegates to the <code>createXXX</code> methods.
64 * <!-- begin-user-doc -->
65 * <!-- end-user-doc -->
66 * @generated
67 */
68 protected yakinduSwitch<Adapter> modelSwitch =
69 new yakinduSwitch<Adapter>() {
70 @Override
71 public Adapter casePseudostate(Pseudostate object) {
72 return createPseudostateAdapter();
73 }
74 @Override
75 public Adapter caseVertex(Vertex object) {
76 return createVertexAdapter();
77 }
78 @Override
79 public Adapter caseRegion(Region object) {
80 return createRegionAdapter();
81 }
82 @Override
83 public Adapter caseTransition(Transition object) {
84 return createTransitionAdapter();
85 }
86 @Override
87 public Adapter caseStatechart(Statechart object) {
88 return createStatechartAdapter();
89 }
90 @Override
91 public Adapter caseEntry(Entry object) {
92 return createEntryAdapter();
93 }
94 @Override
95 public Adapter caseSynchronization(Synchronization object) {
96 return createSynchronizationAdapter();
97 }
98 @Override
99 public Adapter caseState(State object) {
100 return createStateAdapter();
101 }
102 @Override
103 public Adapter caseRegularState(RegularState object) {
104 return createRegularStateAdapter();
105 }
106 @Override
107 public Adapter caseCompositeElement(CompositeElement object) {
108 return createCompositeElementAdapter();
109 }
110 @Override
111 public Adapter caseChoice(Choice object) {
112 return createChoiceAdapter();
113 }
114 @Override
115 public Adapter caseExit(Exit object) {
116 return createExitAdapter();
117 }
118 @Override
119 public Adapter caseFinalState(FinalState object) {
120 return createFinalStateAdapter();
121 }
122 @Override
123 public Adapter defaultCase(EObject object) {
124 return createEObjectAdapter();
125 }
126 };
127
128 /**
129 * Creates an adapter for the <code>target</code>.
130 * <!-- begin-user-doc -->
131 * <!-- end-user-doc -->
132 * @param target the object to adapt.
133 * @return the adapter for the <code>target</code>.
134 * @generated
135 */
136 @Override
137 public Adapter createAdapter(Notifier target) {
138 return modelSwitch.doSwitch((EObject)target);
139 }
140
141
142 /**
143 * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Pseudostate <em>Pseudostate</em>}'.
144 * <!-- begin-user-doc -->
145 * This default implementation returns null so that we can easily ignore cases;
146 * it's useful to ignore a case when inheritance will catch all the cases anyway.
147 * <!-- end-user-doc -->
148 * @return the new adapter.
149 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Pseudostate
150 * @generated
151 */
152 public Adapter createPseudostateAdapter() {
153 return null;
154 }
155
156 /**
157 * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex <em>Vertex</em>}'.
158 * <!-- begin-user-doc -->
159 * This default implementation returns null so that we can easily ignore cases;
160 * it's useful to ignore a case when inheritance will catch all the cases anyway.
161 * <!-- end-user-doc -->
162 * @return the new adapter.
163 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex
164 * @generated
165 */
166 public Adapter createVertexAdapter() {
167 return null;
168 }
169
170 /**
171 * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region <em>Region</em>}'.
172 * <!-- begin-user-doc -->
173 * This default implementation returns null so that we can easily ignore cases;
174 * it's useful to ignore a case when inheritance will catch all the cases anyway.
175 * <!-- end-user-doc -->
176 * @return the new adapter.
177 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region
178 * @generated
179 */
180 public Adapter createRegionAdapter() {
181 return null;
182 }
183
184 /**
185 * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition <em>Transition</em>}'.
186 * <!-- begin-user-doc -->
187 * This default implementation returns null so that we can easily ignore cases;
188 * it's useful to ignore a case when inheritance will catch all the cases anyway.
189 * <!-- end-user-doc -->
190 * @return the new adapter.
191 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition
192 * @generated
193 */
194 public Adapter createTransitionAdapter() {
195 return null;
196 }
197
198 /**
199 * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Statechart <em>Statechart</em>}'.
200 * <!-- begin-user-doc -->
201 * This default implementation returns null so that we can easily ignore cases;
202 * it's useful to ignore a case when inheritance will catch all the cases anyway.
203 * <!-- end-user-doc -->
204 * @return the new adapter.
205 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Statechart
206 * @generated
207 */
208 public Adapter createStatechartAdapter() {
209 return null;
210 }
211
212 /**
213 * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Entry <em>Entry</em>}'.
214 * <!-- begin-user-doc -->
215 * This default implementation returns null so that we can easily ignore cases;
216 * it's useful to ignore a case when inheritance will catch all the cases anyway.
217 * <!-- end-user-doc -->
218 * @return the new adapter.
219 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Entry
220 * @generated
221 */
222 public Adapter createEntryAdapter() {
223 return null;
224 }
225
226 /**
227 * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Synchronization <em>Synchronization</em>}'.
228 * <!-- begin-user-doc -->
229 * This default implementation returns null so that we can easily ignore cases;
230 * it's useful to ignore a case when inheritance will catch all the cases anyway.
231 * <!-- end-user-doc -->
232 * @return the new adapter.
233 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Synchronization
234 * @generated
235 */
236 public Adapter createSynchronizationAdapter() {
237 return null;
238 }
239
240 /**
241 * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.State <em>State</em>}'.
242 * <!-- begin-user-doc -->
243 * This default implementation returns null so that we can easily ignore cases;
244 * it's useful to ignore a case when inheritance will catch all the cases anyway.
245 * <!-- end-user-doc -->
246 * @return the new adapter.
247 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.State
248 * @generated
249 */
250 public Adapter createStateAdapter() {
251 return null;
252 }
253
254 /**
255 * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.RegularState <em>Regular State</em>}'.
256 * <!-- begin-user-doc -->
257 * This default implementation returns null so that we can easily ignore cases;
258 * it's useful to ignore a case when inheritance will catch all the cases anyway.
259 * <!-- end-user-doc -->
260 * @return the new adapter.
261 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.RegularState
262 * @generated
263 */
264 public Adapter createRegularStateAdapter() {
265 return null;
266 }
267
268 /**
269 * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement <em>Composite Element</em>}'.
270 * <!-- begin-user-doc -->
271 * This default implementation returns null so that we can easily ignore cases;
272 * it's useful to ignore a case when inheritance will catch all the cases anyway.
273 * <!-- end-user-doc -->
274 * @return the new adapter.
275 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement
276 * @generated
277 */
278 public Adapter createCompositeElementAdapter() {
279 return null;
280 }
281
282 /**
283 * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Choice <em>Choice</em>}'.
284 * <!-- begin-user-doc -->
285 * This default implementation returns null so that we can easily ignore cases;
286 * it's useful to ignore a case when inheritance will catch all the cases anyway.
287 * <!-- end-user-doc -->
288 * @return the new adapter.
289 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Choice
290 * @generated
291 */
292 public Adapter createChoiceAdapter() {
293 return null;
294 }
295
296 /**
297 * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Exit <em>Exit</em>}'.
298 * <!-- begin-user-doc -->
299 * This default implementation returns null so that we can easily ignore cases;
300 * it's useful to ignore a case when inheritance will catch all the cases anyway.
301 * <!-- end-user-doc -->
302 * @return the new adapter.
303 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Exit
304 * @generated
305 */
306 public Adapter createExitAdapter() {
307 return null;
308 }
309
310 /**
311 * Creates a new adapter for an object of class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.FinalState <em>Final State</em>}'.
312 * <!-- begin-user-doc -->
313 * This default implementation returns null so that we can easily ignore cases;
314 * it's useful to ignore a case when inheritance will catch all the cases anyway.
315 * <!-- end-user-doc -->
316 * @return the new adapter.
317 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.FinalState
318 * @generated
319 */
320 public Adapter createFinalStateAdapter() {
321 return null;
322 }
323
324 /**
325 * Creates a new adapter for the default case.
326 * <!-- begin-user-doc -->
327 * This default implementation returns null.
328 * <!-- end-user-doc -->
329 * @return the new adapter.
330 * @generated
331 */
332 public Adapter createEObjectAdapter() {
333 return null;
334 }
335
336} //yakinduAdapterFactory
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/util/yakinduSwitch.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/util/yakinduSwitch.java
new file mode 100644
index 00000000..fbc6f821
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/util/yakinduSwitch.java
@@ -0,0 +1,378 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.util;
4
5import ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.*;
6
7import org.eclipse.emf.ecore.EObject;
8import org.eclipse.emf.ecore.EPackage;
9
10import org.eclipse.emf.ecore.util.Switch;
11
12/**
13 * <!-- begin-user-doc -->
14 * The <b>Switch</b> for the model's inheritance hierarchy.
15 * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
16 * to invoke the <code>caseXXX</code> method for each class of the model,
17 * starting with the actual class of the object
18 * and proceeding up the inheritance hierarchy
19 * until a non-null result is returned,
20 * which is the result of the switch.
21 * <!-- end-user-doc -->
22 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage
23 * @generated
24 */
25public class yakinduSwitch<T> extends Switch<T> {
26 /**
27 * The cached model package
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 protected static yakinduPackage modelPackage;
33
34 /**
35 * Creates an instance of the switch.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @generated
39 */
40 public yakinduSwitch() {
41 if (modelPackage == null) {
42 modelPackage = yakinduPackage.eINSTANCE;
43 }
44 }
45
46 /**
47 * Checks whether this is a switch for the given package.
48 * <!-- begin-user-doc -->
49 * <!-- end-user-doc -->
50 * @param ePackage the package in question.
51 * @return whether this is a switch for the given package.
52 * @generated
53 */
54 @Override
55 protected boolean isSwitchFor(EPackage ePackage) {
56 return ePackage == modelPackage;
57 }
58
59 /**
60 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @return the first non-null result returned by a <code>caseXXX</code> call.
64 * @generated
65 */
66 @Override
67 protected T doSwitch(int classifierID, EObject theEObject) {
68 switch (classifierID) {
69 case yakinduPackage.PSEUDOSTATE: {
70 Pseudostate pseudostate = (Pseudostate)theEObject;
71 T result = casePseudostate(pseudostate);
72 if (result == null) result = caseVertex(pseudostate);
73 if (result == null) result = defaultCase(theEObject);
74 return result;
75 }
76 case yakinduPackage.VERTEX: {
77 Vertex vertex = (Vertex)theEObject;
78 T result = caseVertex(vertex);
79 if (result == null) result = defaultCase(theEObject);
80 return result;
81 }
82 case yakinduPackage.REGION: {
83 Region region = (Region)theEObject;
84 T result = caseRegion(region);
85 if (result == null) result = defaultCase(theEObject);
86 return result;
87 }
88 case yakinduPackage.TRANSITION: {
89 Transition transition = (Transition)theEObject;
90 T result = caseTransition(transition);
91 if (result == null) result = defaultCase(theEObject);
92 return result;
93 }
94 case yakinduPackage.STATECHART: {
95 Statechart statechart = (Statechart)theEObject;
96 T result = caseStatechart(statechart);
97 if (result == null) result = caseCompositeElement(statechart);
98 if (result == null) result = defaultCase(theEObject);
99 return result;
100 }
101 case yakinduPackage.ENTRY: {
102 Entry entry = (Entry)theEObject;
103 T result = caseEntry(entry);
104 if (result == null) result = casePseudostate(entry);
105 if (result == null) result = caseVertex(entry);
106 if (result == null) result = defaultCase(theEObject);
107 return result;
108 }
109 case yakinduPackage.SYNCHRONIZATION: {
110 Synchronization synchronization = (Synchronization)theEObject;
111 T result = caseSynchronization(synchronization);
112 if (result == null) result = casePseudostate(synchronization);
113 if (result == null) result = caseVertex(synchronization);
114 if (result == null) result = defaultCase(theEObject);
115 return result;
116 }
117 case yakinduPackage.STATE: {
118 State state = (State)theEObject;
119 T result = caseState(state);
120 if (result == null) result = caseRegularState(state);
121 if (result == null) result = caseCompositeElement(state);
122 if (result == null) result = caseVertex(state);
123 if (result == null) result = defaultCase(theEObject);
124 return result;
125 }
126 case yakinduPackage.REGULAR_STATE: {
127 RegularState regularState = (RegularState)theEObject;
128 T result = caseRegularState(regularState);
129 if (result == null) result = caseVertex(regularState);
130 if (result == null) result = defaultCase(theEObject);
131 return result;
132 }
133 case yakinduPackage.COMPOSITE_ELEMENT: {
134 CompositeElement compositeElement = (CompositeElement)theEObject;
135 T result = caseCompositeElement(compositeElement);
136 if (result == null) result = defaultCase(theEObject);
137 return result;
138 }
139 case yakinduPackage.CHOICE: {
140 Choice choice = (Choice)theEObject;
141 T result = caseChoice(choice);
142 if (result == null) result = casePseudostate(choice);
143 if (result == null) result = caseVertex(choice);
144 if (result == null) result = defaultCase(theEObject);
145 return result;
146 }
147 case yakinduPackage.EXIT: {
148 Exit exit = (Exit)theEObject;
149 T result = caseExit(exit);
150 if (result == null) result = casePseudostate(exit);
151 if (result == null) result = caseVertex(exit);
152 if (result == null) result = defaultCase(theEObject);
153 return result;
154 }
155 case yakinduPackage.FINAL_STATE: {
156 FinalState finalState = (FinalState)theEObject;
157 T result = caseFinalState(finalState);
158 if (result == null) result = caseRegularState(finalState);
159 if (result == null) result = caseVertex(finalState);
160 if (result == null) result = defaultCase(theEObject);
161 return result;
162 }
163 default: return defaultCase(theEObject);
164 }
165 }
166
167 /**
168 * Returns the result of interpreting the object as an instance of '<em>Pseudostate</em>'.
169 * <!-- begin-user-doc -->
170 * This implementation returns null;
171 * returning a non-null result will terminate the switch.
172 * <!-- end-user-doc -->
173 * @param object the target of the switch.
174 * @return the result of interpreting the object as an instance of '<em>Pseudostate</em>'.
175 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
176 * @generated
177 */
178 public T casePseudostate(Pseudostate object) {
179 return null;
180 }
181
182 /**
183 * Returns the result of interpreting the object as an instance of '<em>Vertex</em>'.
184 * <!-- begin-user-doc -->
185 * This implementation returns null;
186 * returning a non-null result will terminate the switch.
187 * <!-- end-user-doc -->
188 * @param object the target of the switch.
189 * @return the result of interpreting the object as an instance of '<em>Vertex</em>'.
190 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
191 * @generated
192 */
193 public T caseVertex(Vertex object) {
194 return null;
195 }
196
197 /**
198 * Returns the result of interpreting the object as an instance of '<em>Region</em>'.
199 * <!-- begin-user-doc -->
200 * This implementation returns null;
201 * returning a non-null result will terminate the switch.
202 * <!-- end-user-doc -->
203 * @param object the target of the switch.
204 * @return the result of interpreting the object as an instance of '<em>Region</em>'.
205 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
206 * @generated
207 */
208 public T caseRegion(Region object) {
209 return null;
210 }
211
212 /**
213 * Returns the result of interpreting the object as an instance of '<em>Transition</em>'.
214 * <!-- begin-user-doc -->
215 * This implementation returns null;
216 * returning a non-null result will terminate the switch.
217 * <!-- end-user-doc -->
218 * @param object the target of the switch.
219 * @return the result of interpreting the object as an instance of '<em>Transition</em>'.
220 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
221 * @generated
222 */
223 public T caseTransition(Transition object) {
224 return null;
225 }
226
227 /**
228 * Returns the result of interpreting the object as an instance of '<em>Statechart</em>'.
229 * <!-- begin-user-doc -->
230 * This implementation returns null;
231 * returning a non-null result will terminate the switch.
232 * <!-- end-user-doc -->
233 * @param object the target of the switch.
234 * @return the result of interpreting the object as an instance of '<em>Statechart</em>'.
235 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
236 * @generated
237 */
238 public T caseStatechart(Statechart object) {
239 return null;
240 }
241
242 /**
243 * Returns the result of interpreting the object as an instance of '<em>Entry</em>'.
244 * <!-- begin-user-doc -->
245 * This implementation returns null;
246 * returning a non-null result will terminate the switch.
247 * <!-- end-user-doc -->
248 * @param object the target of the switch.
249 * @return the result of interpreting the object as an instance of '<em>Entry</em>'.
250 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
251 * @generated
252 */
253 public T caseEntry(Entry object) {
254 return null;
255 }
256
257 /**
258 * Returns the result of interpreting the object as an instance of '<em>Synchronization</em>'.
259 * <!-- begin-user-doc -->
260 * This implementation returns null;
261 * returning a non-null result will terminate the switch.
262 * <!-- end-user-doc -->
263 * @param object the target of the switch.
264 * @return the result of interpreting the object as an instance of '<em>Synchronization</em>'.
265 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
266 * @generated
267 */
268 public T caseSynchronization(Synchronization object) {
269 return null;
270 }
271
272 /**
273 * Returns the result of interpreting the object as an instance of '<em>State</em>'.
274 * <!-- begin-user-doc -->
275 * This implementation returns null;
276 * returning a non-null result will terminate the switch.
277 * <!-- end-user-doc -->
278 * @param object the target of the switch.
279 * @return the result of interpreting the object as an instance of '<em>State</em>'.
280 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
281 * @generated
282 */
283 public T caseState(State object) {
284 return null;
285 }
286
287 /**
288 * Returns the result of interpreting the object as an instance of '<em>Regular State</em>'.
289 * <!-- begin-user-doc -->
290 * This implementation returns null;
291 * returning a non-null result will terminate the switch.
292 * <!-- end-user-doc -->
293 * @param object the target of the switch.
294 * @return the result of interpreting the object as an instance of '<em>Regular State</em>'.
295 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
296 * @generated
297 */
298 public T caseRegularState(RegularState object) {
299 return null;
300 }
301
302 /**
303 * Returns the result of interpreting the object as an instance of '<em>Composite Element</em>'.
304 * <!-- begin-user-doc -->
305 * This implementation returns null;
306 * returning a non-null result will terminate the switch.
307 * <!-- end-user-doc -->
308 * @param object the target of the switch.
309 * @return the result of interpreting the object as an instance of '<em>Composite Element</em>'.
310 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
311 * @generated
312 */
313 public T caseCompositeElement(CompositeElement object) {
314 return null;
315 }
316
317 /**
318 * Returns the result of interpreting the object as an instance of '<em>Choice</em>'.
319 * <!-- begin-user-doc -->
320 * This implementation returns null;
321 * returning a non-null result will terminate the switch.
322 * <!-- end-user-doc -->
323 * @param object the target of the switch.
324 * @return the result of interpreting the object as an instance of '<em>Choice</em>'.
325 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
326 * @generated
327 */
328 public T caseChoice(Choice object) {
329 return null;
330 }
331
332 /**
333 * Returns the result of interpreting the object as an instance of '<em>Exit</em>'.
334 * <!-- begin-user-doc -->
335 * This implementation returns null;
336 * returning a non-null result will terminate the switch.
337 * <!-- end-user-doc -->
338 * @param object the target of the switch.
339 * @return the result of interpreting the object as an instance of '<em>Exit</em>'.
340 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
341 * @generated
342 */
343 public T caseExit(Exit object) {
344 return null;
345 }
346
347 /**
348 * Returns the result of interpreting the object as an instance of '<em>Final State</em>'.
349 * <!-- begin-user-doc -->
350 * This implementation returns null;
351 * returning a non-null result will terminate the switch.
352 * <!-- end-user-doc -->
353 * @param object the target of the switch.
354 * @return the result of interpreting the object as an instance of '<em>Final State</em>'.
355 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
356 * @generated
357 */
358 public T caseFinalState(FinalState object) {
359 return null;
360 }
361
362 /**
363 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
364 * <!-- begin-user-doc -->
365 * This implementation returns null;
366 * returning a non-null result will terminate the switch, but this is the last case anyway.
367 * <!-- end-user-doc -->
368 * @param object the target of the switch.
369 * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
370 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
371 * @generated
372 */
373 @Override
374 public T defaultCase(EObject object) {
375 return null;
376 }
377
378} //yakinduSwitch
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/yakinduFactory.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/yakinduFactory.java
new file mode 100644
index 00000000..6d437ecb
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/yakinduFactory.java
@@ -0,0 +1,114 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu;
4
5import org.eclipse.emf.ecore.EFactory;
6
7/**
8 * <!-- begin-user-doc -->
9 * The <b>Factory</b> for the model.
10 * It provides a create method for each non-abstract class of the model.
11 * <!-- end-user-doc -->
12 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduPackage
13 * @generated
14 */
15public interface yakinduFactory extends EFactory {
16 /**
17 * The singleton instance of the factory.
18 * <!-- begin-user-doc -->
19 * <!-- end-user-doc -->
20 * @generated
21 */
22 yakinduFactory eINSTANCE = ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduFactoryImpl.init();
23
24 /**
25 * Returns a new object of class '<em>Region</em>'.
26 * <!-- begin-user-doc -->
27 * <!-- end-user-doc -->
28 * @return a new object of class '<em>Region</em>'.
29 * @generated
30 */
31 Region createRegion();
32
33 /**
34 * Returns a new object of class '<em>Transition</em>'.
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @return a new object of class '<em>Transition</em>'.
38 * @generated
39 */
40 Transition createTransition();
41
42 /**
43 * Returns a new object of class '<em>Statechart</em>'.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @return a new object of class '<em>Statechart</em>'.
47 * @generated
48 */
49 Statechart createStatechart();
50
51 /**
52 * Returns a new object of class '<em>Entry</em>'.
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @return a new object of class '<em>Entry</em>'.
56 * @generated
57 */
58 Entry createEntry();
59
60 /**
61 * Returns a new object of class '<em>Synchronization</em>'.
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @return a new object of class '<em>Synchronization</em>'.
65 * @generated
66 */
67 Synchronization createSynchronization();
68
69 /**
70 * Returns a new object of class '<em>State</em>'.
71 * <!-- begin-user-doc -->
72 * <!-- end-user-doc -->
73 * @return a new object of class '<em>State</em>'.
74 * @generated
75 */
76 State createState();
77
78 /**
79 * Returns a new object of class '<em>Choice</em>'.
80 * <!-- begin-user-doc -->
81 * <!-- end-user-doc -->
82 * @return a new object of class '<em>Choice</em>'.
83 * @generated
84 */
85 Choice createChoice();
86
87 /**
88 * Returns a new object of class '<em>Exit</em>'.
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @return a new object of class '<em>Exit</em>'.
92 * @generated
93 */
94 Exit createExit();
95
96 /**
97 * Returns a new object of class '<em>Final State</em>'.
98 * <!-- begin-user-doc -->
99 * <!-- end-user-doc -->
100 * @return a new object of class '<em>Final State</em>'.
101 * @generated
102 */
103 FinalState createFinalState();
104
105 /**
106 * Returns the package supported by this factory.
107 * <!-- begin-user-doc -->
108 * <!-- end-user-doc -->
109 * @return the package supported by this factory.
110 * @generated
111 */
112 yakinduPackage getyakinduPackage();
113
114} //yakinduFactory
diff --git a/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/yakinduPackage.java b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/yakinduPackage.java
new file mode 100644
index 00000000..b3b14944
--- /dev/null
+++ b/Tests/ca.mcgill.ecse.dslreasoner.standalone.test/src/ca/mcgill/ecse/dslreasoner/standalone/test/yakindu/yakinduPackage.java
@@ -0,0 +1,1038 @@
1/**
2 */
3package ca.mcgill.ecse.dslreasoner.standalone.test.yakindu;
4
5import org.eclipse.emf.ecore.EClass;
6import org.eclipse.emf.ecore.EPackage;
7import org.eclipse.emf.ecore.EReference;
8
9/**
10 * <!-- begin-user-doc -->
11 * The <b>Package</b> for the model.
12 * It contains accessors for the meta objects to represent
13 * <ul>
14 * <li>each class,</li>
15 * <li>each feature of each class,</li>
16 * <li>each operation of each class,</li>
17 * <li>each enum,</li>
18 * <li>and each data type</li>
19 * </ul>
20 * <!-- end-user-doc -->
21 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.yakinduFactory
22 * @model kind="package"
23 * @generated
24 */
25public interface yakinduPackage extends EPackage {
26 /**
27 * The package name.
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 String eNAME = "yakindu";
33
34 /**
35 * The package namespace URI.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @generated
39 */
40 String eNS_URI = "YakinduMetamodel";
41
42 /**
43 * The package namespace name.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @generated
47 */
48 String eNS_PREFIX = "yakindu";
49
50 /**
51 * The singleton instance of the package.
52 * <!-- begin-user-doc -->
53 * <!-- end-user-doc -->
54 * @generated
55 */
56 yakinduPackage eINSTANCE = ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl.init();
57
58 /**
59 * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.VertexImpl <em>Vertex</em>}' class.
60 * <!-- begin-user-doc -->
61 * <!-- end-user-doc -->
62 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.VertexImpl
63 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getVertex()
64 * @generated
65 */
66 int VERTEX = 1;
67
68 /**
69 * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list.
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @generated
73 * @ordered
74 */
75 int VERTEX__INCOMING_TRANSITIONS = 0;
76
77 /**
78 * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list.
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 * @ordered
83 */
84 int VERTEX__OUTGOING_TRANSITIONS = 1;
85
86 /**
87 * The number of structural features of the '<em>Vertex</em>' class.
88 * <!-- begin-user-doc -->
89 * <!-- end-user-doc -->
90 * @generated
91 * @ordered
92 */
93 int VERTEX_FEATURE_COUNT = 2;
94
95 /**
96 * The number of operations of the '<em>Vertex</em>' class.
97 * <!-- begin-user-doc -->
98 * <!-- end-user-doc -->
99 * @generated
100 * @ordered
101 */
102 int VERTEX_OPERATION_COUNT = 0;
103
104 /**
105 * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.PseudostateImpl <em>Pseudostate</em>}' class.
106 * <!-- begin-user-doc -->
107 * <!-- end-user-doc -->
108 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.PseudostateImpl
109 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getPseudostate()
110 * @generated
111 */
112 int PSEUDOSTATE = 0;
113
114 /**
115 * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list.
116 * <!-- begin-user-doc -->
117 * <!-- end-user-doc -->
118 * @generated
119 * @ordered
120 */
121 int PSEUDOSTATE__INCOMING_TRANSITIONS = VERTEX__INCOMING_TRANSITIONS;
122
123 /**
124 * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list.
125 * <!-- begin-user-doc -->
126 * <!-- end-user-doc -->
127 * @generated
128 * @ordered
129 */
130 int PSEUDOSTATE__OUTGOING_TRANSITIONS = VERTEX__OUTGOING_TRANSITIONS;
131
132 /**
133 * The number of structural features of the '<em>Pseudostate</em>' class.
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @generated
137 * @ordered
138 */
139 int PSEUDOSTATE_FEATURE_COUNT = VERTEX_FEATURE_COUNT + 0;
140
141 /**
142 * The number of operations of the '<em>Pseudostate</em>' class.
143 * <!-- begin-user-doc -->
144 * <!-- end-user-doc -->
145 * @generated
146 * @ordered
147 */
148 int PSEUDOSTATE_OPERATION_COUNT = VERTEX_OPERATION_COUNT + 0;
149
150 /**
151 * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.RegionImpl <em>Region</em>}' class.
152 * <!-- begin-user-doc -->
153 * <!-- end-user-doc -->
154 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.RegionImpl
155 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getRegion()
156 * @generated
157 */
158 int REGION = 2;
159
160 /**
161 * The feature id for the '<em><b>Vertices</b></em>' containment reference list.
162 * <!-- begin-user-doc -->
163 * <!-- end-user-doc -->
164 * @generated
165 * @ordered
166 */
167 int REGION__VERTICES = 0;
168
169 /**
170 * The number of structural features of the '<em>Region</em>' class.
171 * <!-- begin-user-doc -->
172 * <!-- end-user-doc -->
173 * @generated
174 * @ordered
175 */
176 int REGION_FEATURE_COUNT = 1;
177
178 /**
179 * The number of operations of the '<em>Region</em>' class.
180 * <!-- begin-user-doc -->
181 * <!-- end-user-doc -->
182 * @generated
183 * @ordered
184 */
185 int REGION_OPERATION_COUNT = 0;
186
187 /**
188 * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.TransitionImpl <em>Transition</em>}' class.
189 * <!-- begin-user-doc -->
190 * <!-- end-user-doc -->
191 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.TransitionImpl
192 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getTransition()
193 * @generated
194 */
195 int TRANSITION = 3;
196
197 /**
198 * The feature id for the '<em><b>Target</b></em>' reference.
199 * <!-- begin-user-doc -->
200 * <!-- end-user-doc -->
201 * @generated
202 * @ordered
203 */
204 int TRANSITION__TARGET = 0;
205
206 /**
207 * The feature id for the '<em><b>Source</b></em>' container reference.
208 * <!-- begin-user-doc -->
209 * <!-- end-user-doc -->
210 * @generated
211 * @ordered
212 */
213 int TRANSITION__SOURCE = 1;
214
215 /**
216 * The number of structural features of the '<em>Transition</em>' class.
217 * <!-- begin-user-doc -->
218 * <!-- end-user-doc -->
219 * @generated
220 * @ordered
221 */
222 int TRANSITION_FEATURE_COUNT = 2;
223
224 /**
225 * The number of operations of the '<em>Transition</em>' class.
226 * <!-- begin-user-doc -->
227 * <!-- end-user-doc -->
228 * @generated
229 * @ordered
230 */
231 int TRANSITION_OPERATION_COUNT = 0;
232
233 /**
234 * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.CompositeElementImpl <em>Composite Element</em>}' class.
235 * <!-- begin-user-doc -->
236 * <!-- end-user-doc -->
237 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.CompositeElementImpl
238 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getCompositeElement()
239 * @generated
240 */
241 int COMPOSITE_ELEMENT = 9;
242
243 /**
244 * The feature id for the '<em><b>Regions</b></em>' containment reference list.
245 * <!-- begin-user-doc -->
246 * <!-- end-user-doc -->
247 * @generated
248 * @ordered
249 */
250 int COMPOSITE_ELEMENT__REGIONS = 0;
251
252 /**
253 * The number of structural features of the '<em>Composite Element</em>' class.
254 * <!-- begin-user-doc -->
255 * <!-- end-user-doc -->
256 * @generated
257 * @ordered
258 */
259 int COMPOSITE_ELEMENT_FEATURE_COUNT = 1;
260
261 /**
262 * The number of operations of the '<em>Composite Element</em>' class.
263 * <!-- begin-user-doc -->
264 * <!-- end-user-doc -->
265 * @generated
266 * @ordered
267 */
268 int COMPOSITE_ELEMENT_OPERATION_COUNT = 0;
269
270 /**
271 * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.StatechartImpl <em>Statechart</em>}' class.
272 * <!-- begin-user-doc -->
273 * <!-- end-user-doc -->
274 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.StatechartImpl
275 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getStatechart()
276 * @generated
277 */
278 int STATECHART = 4;
279
280 /**
281 * The feature id for the '<em><b>Regions</b></em>' containment reference list.
282 * <!-- begin-user-doc -->
283 * <!-- end-user-doc -->
284 * @generated
285 * @ordered
286 */
287 int STATECHART__REGIONS = COMPOSITE_ELEMENT__REGIONS;
288
289 /**
290 * The number of structural features of the '<em>Statechart</em>' class.
291 * <!-- begin-user-doc -->
292 * <!-- end-user-doc -->
293 * @generated
294 * @ordered
295 */
296 int STATECHART_FEATURE_COUNT = COMPOSITE_ELEMENT_FEATURE_COUNT + 0;
297
298 /**
299 * The number of operations of the '<em>Statechart</em>' class.
300 * <!-- begin-user-doc -->
301 * <!-- end-user-doc -->
302 * @generated
303 * @ordered
304 */
305 int STATECHART_OPERATION_COUNT = COMPOSITE_ELEMENT_OPERATION_COUNT + 0;
306
307 /**
308 * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.EntryImpl <em>Entry</em>}' class.
309 * <!-- begin-user-doc -->
310 * <!-- end-user-doc -->
311 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.EntryImpl
312 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getEntry()
313 * @generated
314 */
315 int ENTRY = 5;
316
317 /**
318 * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list.
319 * <!-- begin-user-doc -->
320 * <!-- end-user-doc -->
321 * @generated
322 * @ordered
323 */
324 int ENTRY__INCOMING_TRANSITIONS = PSEUDOSTATE__INCOMING_TRANSITIONS;
325
326 /**
327 * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list.
328 * <!-- begin-user-doc -->
329 * <!-- end-user-doc -->
330 * @generated
331 * @ordered
332 */
333 int ENTRY__OUTGOING_TRANSITIONS = PSEUDOSTATE__OUTGOING_TRANSITIONS;
334
335 /**
336 * The number of structural features of the '<em>Entry</em>' class.
337 * <!-- begin-user-doc -->
338 * <!-- end-user-doc -->
339 * @generated
340 * @ordered
341 */
342 int ENTRY_FEATURE_COUNT = PSEUDOSTATE_FEATURE_COUNT + 0;
343
344 /**
345 * The number of operations of the '<em>Entry</em>' class.
346 * <!-- begin-user-doc -->
347 * <!-- end-user-doc -->
348 * @generated
349 * @ordered
350 */
351 int ENTRY_OPERATION_COUNT = PSEUDOSTATE_OPERATION_COUNT + 0;
352
353 /**
354 * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.SynchronizationImpl <em>Synchronization</em>}' class.
355 * <!-- begin-user-doc -->
356 * <!-- end-user-doc -->
357 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.SynchronizationImpl
358 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getSynchronization()
359 * @generated
360 */
361 int SYNCHRONIZATION = 6;
362
363 /**
364 * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list.
365 * <!-- begin-user-doc -->
366 * <!-- end-user-doc -->
367 * @generated
368 * @ordered
369 */
370 int SYNCHRONIZATION__INCOMING_TRANSITIONS = PSEUDOSTATE__INCOMING_TRANSITIONS;
371
372 /**
373 * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list.
374 * <!-- begin-user-doc -->
375 * <!-- end-user-doc -->
376 * @generated
377 * @ordered
378 */
379 int SYNCHRONIZATION__OUTGOING_TRANSITIONS = PSEUDOSTATE__OUTGOING_TRANSITIONS;
380
381 /**
382 * The number of structural features of the '<em>Synchronization</em>' class.
383 * <!-- begin-user-doc -->
384 * <!-- end-user-doc -->
385 * @generated
386 * @ordered
387 */
388 int SYNCHRONIZATION_FEATURE_COUNT = PSEUDOSTATE_FEATURE_COUNT + 0;
389
390 /**
391 * The number of operations of the '<em>Synchronization</em>' class.
392 * <!-- begin-user-doc -->
393 * <!-- end-user-doc -->
394 * @generated
395 * @ordered
396 */
397 int SYNCHRONIZATION_OPERATION_COUNT = PSEUDOSTATE_OPERATION_COUNT + 0;
398
399 /**
400 * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.RegularStateImpl <em>Regular State</em>}' class.
401 * <!-- begin-user-doc -->
402 * <!-- end-user-doc -->
403 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.RegularStateImpl
404 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getRegularState()
405 * @generated
406 */
407 int REGULAR_STATE = 8;
408
409 /**
410 * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list.
411 * <!-- begin-user-doc -->
412 * <!-- end-user-doc -->
413 * @generated
414 * @ordered
415 */
416 int REGULAR_STATE__INCOMING_TRANSITIONS = VERTEX__INCOMING_TRANSITIONS;
417
418 /**
419 * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list.
420 * <!-- begin-user-doc -->
421 * <!-- end-user-doc -->
422 * @generated
423 * @ordered
424 */
425 int REGULAR_STATE__OUTGOING_TRANSITIONS = VERTEX__OUTGOING_TRANSITIONS;
426
427 /**
428 * The number of structural features of the '<em>Regular State</em>' class.
429 * <!-- begin-user-doc -->
430 * <!-- end-user-doc -->
431 * @generated
432 * @ordered
433 */
434 int REGULAR_STATE_FEATURE_COUNT = VERTEX_FEATURE_COUNT + 0;
435
436 /**
437 * The number of operations of the '<em>Regular State</em>' class.
438 * <!-- begin-user-doc -->
439 * <!-- end-user-doc -->
440 * @generated
441 * @ordered
442 */
443 int REGULAR_STATE_OPERATION_COUNT = VERTEX_OPERATION_COUNT + 0;
444
445 /**
446 * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.StateImpl <em>State</em>}' class.
447 * <!-- begin-user-doc -->
448 * <!-- end-user-doc -->
449 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.StateImpl
450 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getState()
451 * @generated
452 */
453 int STATE = 7;
454
455 /**
456 * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list.
457 * <!-- begin-user-doc -->
458 * <!-- end-user-doc -->
459 * @generated
460 * @ordered
461 */
462 int STATE__INCOMING_TRANSITIONS = REGULAR_STATE__INCOMING_TRANSITIONS;
463
464 /**
465 * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list.
466 * <!-- begin-user-doc -->
467 * <!-- end-user-doc -->
468 * @generated
469 * @ordered
470 */
471 int STATE__OUTGOING_TRANSITIONS = REGULAR_STATE__OUTGOING_TRANSITIONS;
472
473 /**
474 * The feature id for the '<em><b>Regions</b></em>' containment reference list.
475 * <!-- begin-user-doc -->
476 * <!-- end-user-doc -->
477 * @generated
478 * @ordered
479 */
480 int STATE__REGIONS = REGULAR_STATE_FEATURE_COUNT + 0;
481
482 /**
483 * The number of structural features of the '<em>State</em>' class.
484 * <!-- begin-user-doc -->
485 * <!-- end-user-doc -->
486 * @generated
487 * @ordered
488 */
489 int STATE_FEATURE_COUNT = REGULAR_STATE_FEATURE_COUNT + 1;
490
491 /**
492 * The number of operations of the '<em>State</em>' class.
493 * <!-- begin-user-doc -->
494 * <!-- end-user-doc -->
495 * @generated
496 * @ordered
497 */
498 int STATE_OPERATION_COUNT = REGULAR_STATE_OPERATION_COUNT + 0;
499
500 /**
501 * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.ChoiceImpl <em>Choice</em>}' class.
502 * <!-- begin-user-doc -->
503 * <!-- end-user-doc -->
504 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.ChoiceImpl
505 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getChoice()
506 * @generated
507 */
508 int CHOICE = 10;
509
510 /**
511 * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list.
512 * <!-- begin-user-doc -->
513 * <!-- end-user-doc -->
514 * @generated
515 * @ordered
516 */
517 int CHOICE__INCOMING_TRANSITIONS = PSEUDOSTATE__INCOMING_TRANSITIONS;
518
519 /**
520 * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list.
521 * <!-- begin-user-doc -->
522 * <!-- end-user-doc -->
523 * @generated
524 * @ordered
525 */
526 int CHOICE__OUTGOING_TRANSITIONS = PSEUDOSTATE__OUTGOING_TRANSITIONS;
527
528 /**
529 * The number of structural features of the '<em>Choice</em>' class.
530 * <!-- begin-user-doc -->
531 * <!-- end-user-doc -->
532 * @generated
533 * @ordered
534 */
535 int CHOICE_FEATURE_COUNT = PSEUDOSTATE_FEATURE_COUNT + 0;
536
537 /**
538 * The number of operations of the '<em>Choice</em>' class.
539 * <!-- begin-user-doc -->
540 * <!-- end-user-doc -->
541 * @generated
542 * @ordered
543 */
544 int CHOICE_OPERATION_COUNT = PSEUDOSTATE_OPERATION_COUNT + 0;
545
546 /**
547 * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.ExitImpl <em>Exit</em>}' class.
548 * <!-- begin-user-doc -->
549 * <!-- end-user-doc -->
550 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.ExitImpl
551 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getExit()
552 * @generated
553 */
554 int EXIT = 11;
555
556 /**
557 * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list.
558 * <!-- begin-user-doc -->
559 * <!-- end-user-doc -->
560 * @generated
561 * @ordered
562 */
563 int EXIT__INCOMING_TRANSITIONS = PSEUDOSTATE__INCOMING_TRANSITIONS;
564
565 /**
566 * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list.
567 * <!-- begin-user-doc -->
568 * <!-- end-user-doc -->
569 * @generated
570 * @ordered
571 */
572 int EXIT__OUTGOING_TRANSITIONS = PSEUDOSTATE__OUTGOING_TRANSITIONS;
573
574 /**
575 * The number of structural features of the '<em>Exit</em>' class.
576 * <!-- begin-user-doc -->
577 * <!-- end-user-doc -->
578 * @generated
579 * @ordered
580 */
581 int EXIT_FEATURE_COUNT = PSEUDOSTATE_FEATURE_COUNT + 0;
582
583 /**
584 * The number of operations of the '<em>Exit</em>' class.
585 * <!-- begin-user-doc -->
586 * <!-- end-user-doc -->
587 * @generated
588 * @ordered
589 */
590 int EXIT_OPERATION_COUNT = PSEUDOSTATE_OPERATION_COUNT + 0;
591
592 /**
593 * The meta object id for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.FinalStateImpl <em>Final State</em>}' class.
594 * <!-- begin-user-doc -->
595 * <!-- end-user-doc -->
596 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.FinalStateImpl
597 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getFinalState()
598 * @generated
599 */
600 int FINAL_STATE = 12;
601
602 /**
603 * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list.
604 * <!-- begin-user-doc -->
605 * <!-- end-user-doc -->
606 * @generated
607 * @ordered
608 */
609 int FINAL_STATE__INCOMING_TRANSITIONS = REGULAR_STATE__INCOMING_TRANSITIONS;
610
611 /**
612 * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list.
613 * <!-- begin-user-doc -->
614 * <!-- end-user-doc -->
615 * @generated
616 * @ordered
617 */
618 int FINAL_STATE__OUTGOING_TRANSITIONS = REGULAR_STATE__OUTGOING_TRANSITIONS;
619
620 /**
621 * The number of structural features of the '<em>Final State</em>' class.
622 * <!-- begin-user-doc -->
623 * <!-- end-user-doc -->
624 * @generated
625 * @ordered
626 */
627 int FINAL_STATE_FEATURE_COUNT = REGULAR_STATE_FEATURE_COUNT + 0;
628
629 /**
630 * The number of operations of the '<em>Final State</em>' class.
631 * <!-- begin-user-doc -->
632 * <!-- end-user-doc -->
633 * @generated
634 * @ordered
635 */
636 int FINAL_STATE_OPERATION_COUNT = REGULAR_STATE_OPERATION_COUNT + 0;
637
638
639 /**
640 * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Pseudostate <em>Pseudostate</em>}'.
641 * <!-- begin-user-doc -->
642 * <!-- end-user-doc -->
643 * @return the meta object for class '<em>Pseudostate</em>'.
644 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Pseudostate
645 * @generated
646 */
647 EClass getPseudostate();
648
649 /**
650 * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex <em>Vertex</em>}'.
651 * <!-- begin-user-doc -->
652 * <!-- end-user-doc -->
653 * @return the meta object for class '<em>Vertex</em>'.
654 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex
655 * @generated
656 */
657 EClass getVertex();
658
659 /**
660 * Returns the meta object for the reference list '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getIncomingTransitions <em>Incoming Transitions</em>}'.
661 * <!-- begin-user-doc -->
662 * <!-- end-user-doc -->
663 * @return the meta object for the reference list '<em>Incoming Transitions</em>'.
664 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getIncomingTransitions()
665 * @see #getVertex()
666 * @generated
667 */
668 EReference getVertex_IncomingTransitions();
669
670 /**
671 * Returns the meta object for the containment reference list '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getOutgoingTransitions <em>Outgoing Transitions</em>}'.
672 * <!-- begin-user-doc -->
673 * <!-- end-user-doc -->
674 * @return the meta object for the containment reference list '<em>Outgoing Transitions</em>'.
675 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Vertex#getOutgoingTransitions()
676 * @see #getVertex()
677 * @generated
678 */
679 EReference getVertex_OutgoingTransitions();
680
681 /**
682 * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region <em>Region</em>}'.
683 * <!-- begin-user-doc -->
684 * <!-- end-user-doc -->
685 * @return the meta object for class '<em>Region</em>'.
686 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region
687 * @generated
688 */
689 EClass getRegion();
690
691 /**
692 * Returns the meta object for the containment reference list '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region#getVertices <em>Vertices</em>}'.
693 * <!-- begin-user-doc -->
694 * <!-- end-user-doc -->
695 * @return the meta object for the containment reference list '<em>Vertices</em>'.
696 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Region#getVertices()
697 * @see #getRegion()
698 * @generated
699 */
700 EReference getRegion_Vertices();
701
702 /**
703 * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition <em>Transition</em>}'.
704 * <!-- begin-user-doc -->
705 * <!-- end-user-doc -->
706 * @return the meta object for class '<em>Transition</em>'.
707 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition
708 * @generated
709 */
710 EClass getTransition();
711
712 /**
713 * Returns the meta object for the reference '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getTarget <em>Target</em>}'.
714 * <!-- begin-user-doc -->
715 * <!-- end-user-doc -->
716 * @return the meta object for the reference '<em>Target</em>'.
717 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getTarget()
718 * @see #getTransition()
719 * @generated
720 */
721 EReference getTransition_Target();
722
723 /**
724 * Returns the meta object for the container reference '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getSource <em>Source</em>}'.
725 * <!-- begin-user-doc -->
726 * <!-- end-user-doc -->
727 * @return the meta object for the container reference '<em>Source</em>'.
728 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Transition#getSource()
729 * @see #getTransition()
730 * @generated
731 */
732 EReference getTransition_Source();
733
734 /**
735 * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Statechart <em>Statechart</em>}'.
736 * <!-- begin-user-doc -->
737 * <!-- end-user-doc -->
738 * @return the meta object for class '<em>Statechart</em>'.
739 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Statechart
740 * @generated
741 */
742 EClass getStatechart();
743
744 /**
745 * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Entry <em>Entry</em>}'.
746 * <!-- begin-user-doc -->
747 * <!-- end-user-doc -->
748 * @return the meta object for class '<em>Entry</em>'.
749 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Entry
750 * @generated
751 */
752 EClass getEntry();
753
754 /**
755 * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Synchronization <em>Synchronization</em>}'.
756 * <!-- begin-user-doc -->
757 * <!-- end-user-doc -->
758 * @return the meta object for class '<em>Synchronization</em>'.
759 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Synchronization
760 * @generated
761 */
762 EClass getSynchronization();
763
764 /**
765 * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.State <em>State</em>}'.
766 * <!-- begin-user-doc -->
767 * <!-- end-user-doc -->
768 * @return the meta object for class '<em>State</em>'.
769 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.State
770 * @generated
771 */
772 EClass getState();
773
774 /**
775 * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.RegularState <em>Regular State</em>}'.
776 * <!-- begin-user-doc -->
777 * <!-- end-user-doc -->
778 * @return the meta object for class '<em>Regular State</em>'.
779 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.RegularState
780 * @generated
781 */
782 EClass getRegularState();
783
784 /**
785 * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement <em>Composite Element</em>}'.
786 * <!-- begin-user-doc -->
787 * <!-- end-user-doc -->
788 * @return the meta object for class '<em>Composite Element</em>'.
789 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement
790 * @generated
791 */
792 EClass getCompositeElement();
793
794 /**
795 * Returns the meta object for the containment reference list '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement#getRegions <em>Regions</em>}'.
796 * <!-- begin-user-doc -->
797 * <!-- end-user-doc -->
798 * @return the meta object for the containment reference list '<em>Regions</em>'.
799 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.CompositeElement#getRegions()
800 * @see #getCompositeElement()
801 * @generated
802 */
803 EReference getCompositeElement_Regions();
804
805 /**
806 * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Choice <em>Choice</em>}'.
807 * <!-- begin-user-doc -->
808 * <!-- end-user-doc -->
809 * @return the meta object for class '<em>Choice</em>'.
810 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Choice
811 * @generated
812 */
813 EClass getChoice();
814
815 /**
816 * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Exit <em>Exit</em>}'.
817 * <!-- begin-user-doc -->
818 * <!-- end-user-doc -->
819 * @return the meta object for class '<em>Exit</em>'.
820 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.Exit
821 * @generated
822 */
823 EClass getExit();
824
825 /**
826 * Returns the meta object for class '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.FinalState <em>Final State</em>}'.
827 * <!-- begin-user-doc -->
828 * <!-- end-user-doc -->
829 * @return the meta object for class '<em>Final State</em>'.
830 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.FinalState
831 * @generated
832 */
833 EClass getFinalState();
834
835 /**
836 * Returns the factory that creates the instances of the model.
837 * <!-- begin-user-doc -->
838 * <!-- end-user-doc -->
839 * @return the factory that creates the instances of the model.
840 * @generated
841 */
842 yakinduFactory getyakinduFactory();
843
844 /**
845 * <!-- begin-user-doc -->
846 * Defines literals for the meta objects that represent
847 * <ul>
848 * <li>each class,</li>
849 * <li>each feature of each class,</li>
850 * <li>each operation of each class,</li>
851 * <li>each enum,</li>
852 * <li>and each data type</li>
853 * </ul>
854 * <!-- end-user-doc -->
855 * @generated
856 */
857 interface Literals {
858 /**
859 * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.PseudostateImpl <em>Pseudostate</em>}' class.
860 * <!-- begin-user-doc -->
861 * <!-- end-user-doc -->
862 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.PseudostateImpl
863 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getPseudostate()
864 * @generated
865 */
866 EClass PSEUDOSTATE = eINSTANCE.getPseudostate();
867
868 /**
869 * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.VertexImpl <em>Vertex</em>}' class.
870 * <!-- begin-user-doc -->
871 * <!-- end-user-doc -->
872 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.VertexImpl
873 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getVertex()
874 * @generated
875 */
876 EClass VERTEX = eINSTANCE.getVertex();
877
878 /**
879 * The meta object literal for the '<em><b>Incoming Transitions</b></em>' reference list feature.
880 * <!-- begin-user-doc -->
881 * <!-- end-user-doc -->
882 * @generated
883 */
884 EReference VERTEX__INCOMING_TRANSITIONS = eINSTANCE.getVertex_IncomingTransitions();
885
886 /**
887 * The meta object literal for the '<em><b>Outgoing Transitions</b></em>' containment reference list feature.
888 * <!-- begin-user-doc -->
889 * <!-- end-user-doc -->
890 * @generated
891 */
892 EReference VERTEX__OUTGOING_TRANSITIONS = eINSTANCE.getVertex_OutgoingTransitions();
893
894 /**
895 * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.RegionImpl <em>Region</em>}' class.
896 * <!-- begin-user-doc -->
897 * <!-- end-user-doc -->
898 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.RegionImpl
899 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getRegion()
900 * @generated
901 */
902 EClass REGION = eINSTANCE.getRegion();
903
904 /**
905 * The meta object literal for the '<em><b>Vertices</b></em>' containment reference list feature.
906 * <!-- begin-user-doc -->
907 * <!-- end-user-doc -->
908 * @generated
909 */
910 EReference REGION__VERTICES = eINSTANCE.getRegion_Vertices();
911
912 /**
913 * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.TransitionImpl <em>Transition</em>}' class.
914 * <!-- begin-user-doc -->
915 * <!-- end-user-doc -->
916 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.TransitionImpl
917 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getTransition()
918 * @generated
919 */
920 EClass TRANSITION = eINSTANCE.getTransition();
921
922 /**
923 * The meta object literal for the '<em><b>Target</b></em>' reference feature.
924 * <!-- begin-user-doc -->
925 * <!-- end-user-doc -->
926 * @generated
927 */
928 EReference TRANSITION__TARGET = eINSTANCE.getTransition_Target();
929
930 /**
931 * The meta object literal for the '<em><b>Source</b></em>' container reference feature.
932 * <!-- begin-user-doc -->
933 * <!-- end-user-doc -->
934 * @generated
935 */
936 EReference TRANSITION__SOURCE = eINSTANCE.getTransition_Source();
937
938 /**
939 * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.StatechartImpl <em>Statechart</em>}' class.
940 * <!-- begin-user-doc -->
941 * <!-- end-user-doc -->
942 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.StatechartImpl
943 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getStatechart()
944 * @generated
945 */
946 EClass STATECHART = eINSTANCE.getStatechart();
947
948 /**
949 * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.EntryImpl <em>Entry</em>}' class.
950 * <!-- begin-user-doc -->
951 * <!-- end-user-doc -->
952 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.EntryImpl
953 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getEntry()
954 * @generated
955 */
956 EClass ENTRY = eINSTANCE.getEntry();
957
958 /**
959 * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.SynchronizationImpl <em>Synchronization</em>}' class.
960 * <!-- begin-user-doc -->
961 * <!-- end-user-doc -->
962 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.SynchronizationImpl
963 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getSynchronization()
964 * @generated
965 */
966 EClass SYNCHRONIZATION = eINSTANCE.getSynchronization();
967
968 /**
969 * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.StateImpl <em>State</em>}' class.
970 * <!-- begin-user-doc -->
971 * <!-- end-user-doc -->
972 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.StateImpl
973 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getState()
974 * @generated
975 */
976 EClass STATE = eINSTANCE.getState();
977
978 /**
979 * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.RegularStateImpl <em>Regular State</em>}' class.
980 * <!-- begin-user-doc -->
981 * <!-- end-user-doc -->
982 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.RegularStateImpl
983 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getRegularState()
984 * @generated
985 */
986 EClass REGULAR_STATE = eINSTANCE.getRegularState();
987
988 /**
989 * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.CompositeElementImpl <em>Composite Element</em>}' class.
990 * <!-- begin-user-doc -->
991 * <!-- end-user-doc -->
992 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.CompositeElementImpl
993 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getCompositeElement()
994 * @generated
995 */
996 EClass COMPOSITE_ELEMENT = eINSTANCE.getCompositeElement();
997
998 /**
999 * The meta object literal for the '<em><b>Regions</b></em>' containment reference list feature.
1000 * <!-- begin-user-doc -->
1001 * <!-- end-user-doc -->
1002 * @generated
1003 */
1004 EReference COMPOSITE_ELEMENT__REGIONS = eINSTANCE.getCompositeElement_Regions();
1005
1006 /**
1007 * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.ChoiceImpl <em>Choice</em>}' class.
1008 * <!-- begin-user-doc -->
1009 * <!-- end-user-doc -->
1010 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.ChoiceImpl
1011 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getChoice()
1012 * @generated
1013 */
1014 EClass CHOICE = eINSTANCE.getChoice();
1015
1016 /**
1017 * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.ExitImpl <em>Exit</em>}' class.
1018 * <!-- begin-user-doc -->
1019 * <!-- end-user-doc -->
1020 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.ExitImpl
1021 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getExit()
1022 * @generated
1023 */
1024 EClass EXIT = eINSTANCE.getExit();
1025
1026 /**
1027 * The meta object literal for the '{@link ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.FinalStateImpl <em>Final State</em>}' class.
1028 * <!-- begin-user-doc -->
1029 * <!-- end-user-doc -->
1030 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.FinalStateImpl
1031 * @see ca.mcgill.ecse.dslreasoner.standalone.test.yakindu.impl.yakinduPackageImpl#getFinalState()
1032 * @generated
1033 */
1034 EClass FINAL_STATE = eINSTANCE.getFinalState();
1035
1036 }
1037
1038} //yakinduPackage