diff options
author | 2021-06-26 21:43:55 +0200 | |
---|---|---|
committer | 2021-06-26 21:43:55 +0200 | |
commit | e92ebe4a61a106ff9c0e8f5bbbc3632f1dc60009 (patch) | |
tree | 29ae119d1e17ace16115a82eef60b5b0bd886aba /org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language | |
parent | Add initial prototype (diff) | |
download | refinery-e92ebe4a61a106ff9c0e8f5bbbc3632f1dc60009.tar.gz refinery-e92ebe4a61a106ff9c0e8f5bbbc3632f1dc60009.tar.zst refinery-e92ebe4a61a106ff9c0e8f5bbbc3632f1dc60009.zip |
FIx scoping, extend grammar
Diffstat (limited to 'org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language')
18 files changed, 956 insertions, 74 deletions
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Argument.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Argument.java new file mode 100644 index 00000000..5442f8e0 --- /dev/null +++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Argument.java | |||
@@ -0,0 +1,69 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package org.eclipse.viatra.solver.language.model.problem; | ||
4 | |||
5 | import org.eclipse.emf.ecore.EObject; | ||
6 | |||
7 | /** | ||
8 | * <!-- begin-user-doc --> | ||
9 | * A representation of the model object '<em><b>Argument</b></em>'. | ||
10 | * <!-- end-user-doc --> | ||
11 | * | ||
12 | * <p> | ||
13 | * The following features are supported: | ||
14 | * </p> | ||
15 | * <ul> | ||
16 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.Argument#getVariable <em>Variable</em>}</li> | ||
17 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.Argument#getSingletonVariable <em>Singleton Variable</em>}</li> | ||
18 | * </ul> | ||
19 | * | ||
20 | * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getArgument() | ||
21 | * @model | ||
22 | * @generated | ||
23 | */ | ||
24 | public interface Argument extends EObject { | ||
25 | /** | ||
26 | * Returns the value of the '<em><b>Variable</b></em>' reference. | ||
27 | * <!-- begin-user-doc --> | ||
28 | * <!-- end-user-doc --> | ||
29 | * @return the value of the '<em>Variable</em>' reference. | ||
30 | * @see #setVariable(Variable) | ||
31 | * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getArgument_Variable() | ||
32 | * @model | ||
33 | * @generated | ||
34 | */ | ||
35 | Variable getVariable(); | ||
36 | |||
37 | /** | ||
38 | * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.Argument#getVariable <em>Variable</em>}' reference. | ||
39 | * <!-- begin-user-doc --> | ||
40 | * <!-- end-user-doc --> | ||
41 | * @param value the new value of the '<em>Variable</em>' reference. | ||
42 | * @see #getVariable() | ||
43 | * @generated | ||
44 | */ | ||
45 | void setVariable(Variable value); | ||
46 | |||
47 | /** | ||
48 | * Returns the value of the '<em><b>Singleton Variable</b></em>' containment reference. | ||
49 | * <!-- begin-user-doc --> | ||
50 | * <!-- end-user-doc --> | ||
51 | * @return the value of the '<em>Singleton Variable</em>' containment reference. | ||
52 | * @see #setSingletonVariable(ImplicitVariable) | ||
53 | * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getArgument_SingletonVariable() | ||
54 | * @model containment="true" | ||
55 | * @generated | ||
56 | */ | ||
57 | ImplicitVariable getSingletonVariable(); | ||
58 | |||
59 | /** | ||
60 | * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.Argument#getSingletonVariable <em>Singleton Variable</em>}' containment reference. | ||
61 | * <!-- begin-user-doc --> | ||
62 | * <!-- end-user-doc --> | ||
63 | * @param value the new value of the '<em>Singleton Variable</em>' containment reference. | ||
64 | * @see #getSingletonVariable() | ||
65 | * @generated | ||
66 | */ | ||
67 | void setSingletonVariable(ImplicitVariable value); | ||
68 | |||
69 | } // Argument | ||
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Atom.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Atom.java index bee08d8d..d1b4d3fe 100644 --- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Atom.java +++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Atom.java | |||
@@ -14,8 +14,8 @@ import org.eclipse.emf.common.util.EList; | |||
14 | * </p> | 14 | * </p> |
15 | * <ul> | 15 | * <ul> |
16 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.Atom#getRelation <em>Relation</em>}</li> | 16 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.Atom#getRelation <em>Relation</em>}</li> |
17 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.Atom#getArguments <em>Arguments</em>}</li> | ||
18 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.Atom#isTransitiveClosure <em>Transitive Closure</em>}</li> | 17 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.Atom#isTransitiveClosure <em>Transitive Closure</em>}</li> |
18 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.Atom#getArguments <em>Arguments</em>}</li> | ||
19 | * </ul> | 19 | * </ul> |
20 | * | 20 | * |
21 | * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getAtom() | 21 | * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getAtom() |
@@ -46,16 +46,16 @@ public interface Atom extends Literal { | |||
46 | void setRelation(Relation value); | 46 | void setRelation(Relation value); |
47 | 47 | ||
48 | /** | 48 | /** |
49 | * Returns the value of the '<em><b>Arguments</b></em>' reference list. | 49 | * Returns the value of the '<em><b>Arguments</b></em>' containment reference list. |
50 | * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.Variable}. | 50 | * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.Argument}. |
51 | * <!-- begin-user-doc --> | 51 | * <!-- begin-user-doc --> |
52 | * <!-- end-user-doc --> | 52 | * <!-- end-user-doc --> |
53 | * @return the value of the '<em>Arguments</em>' reference list. | 53 | * @return the value of the '<em>Arguments</em>' containment reference list. |
54 | * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getAtom_Arguments() | 54 | * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getAtom_Arguments() |
55 | * @model | 55 | * @model containment="true" |
56 | * @generated | 56 | * @generated |
57 | */ | 57 | */ |
58 | EList<Variable> getArguments(); | 58 | EList<Argument> getArguments(); |
59 | 59 | ||
60 | /** | 60 | /** |
61 | * Returns the value of the '<em><b>Transitive Closure</b></em>' attribute. | 61 | * Returns the value of the '<em><b>Transitive Closure</b></em>' attribute. |
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ClassDeclaration.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ClassDeclaration.java index 7212d006..1387575a 100644 --- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ClassDeclaration.java +++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ClassDeclaration.java | |||
@@ -16,6 +16,7 @@ import org.eclipse.emf.common.util.EList; | |||
16 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#isAbstract <em>Abstract</em>}</li> | 16 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#isAbstract <em>Abstract</em>}</li> |
17 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#getSuperTypes <em>Super Types</em>}</li> | 17 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#getSuperTypes <em>Super Types</em>}</li> |
18 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#getReferenceDeclarations <em>Reference Declarations</em>}</li> | 18 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#getReferenceDeclarations <em>Reference Declarations</em>}</li> |
19 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#getNewNode <em>New Node</em>}</li> | ||
19 | * </ul> | 20 | * </ul> |
20 | * | 21 | * |
21 | * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getClassDeclaration() | 22 | * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getClassDeclaration() |
@@ -69,4 +70,26 @@ public interface ClassDeclaration extends Relation, Statement { | |||
69 | */ | 70 | */ |
70 | EList<ReferenceDeclaration> getReferenceDeclarations(); | 71 | EList<ReferenceDeclaration> getReferenceDeclarations(); |
71 | 72 | ||
73 | /** | ||
74 | * Returns the value of the '<em><b>New Node</b></em>' containment reference. | ||
75 | * <!-- begin-user-doc --> | ||
76 | * <!-- end-user-doc --> | ||
77 | * @return the value of the '<em>New Node</em>' containment reference. | ||
78 | * @see #setNewNode(Node) | ||
79 | * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getClassDeclaration_NewNode() | ||
80 | * @model containment="true" | ||
81 | * @generated | ||
82 | */ | ||
83 | Node getNewNode(); | ||
84 | |||
85 | /** | ||
86 | * Sets the value of the '{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#getNewNode <em>New Node</em>}' containment reference. | ||
87 | * <!-- begin-user-doc --> | ||
88 | * <!-- end-user-doc --> | ||
89 | * @param value the new value of the '<em>New Node</em>' containment reference. | ||
90 | * @see #getNewNode() | ||
91 | * @generated | ||
92 | */ | ||
93 | void setNewNode(Node value); | ||
94 | |||
72 | } // ClassDeclaration | 95 | } // ClassDeclaration |
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Problem.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Problem.java index 3342767d..7e19bd22 100644 --- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Problem.java +++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/Problem.java | |||
@@ -4,8 +4,6 @@ package org.eclipse.viatra.solver.language.model.problem; | |||
4 | 4 | ||
5 | import org.eclipse.emf.common.util.EList; | 5 | import org.eclipse.emf.common.util.EList; |
6 | 6 | ||
7 | import org.eclipse.emf.ecore.EObject; | ||
8 | |||
9 | /** | 7 | /** |
10 | * <!-- begin-user-doc --> | 8 | * <!-- begin-user-doc --> |
11 | * A representation of the model object '<em><b>Problem</b></em>'. | 9 | * A representation of the model object '<em><b>Problem</b></em>'. |
@@ -23,7 +21,7 @@ import org.eclipse.emf.ecore.EObject; | |||
23 | * @model | 21 | * @model |
24 | * @generated | 22 | * @generated |
25 | */ | 23 | */ |
26 | public interface Problem extends EObject { | 24 | public interface Problem extends NamedElement { |
27 | /** | 25 | /** |
28 | * Returns the value of the '<em><b>Nodes</b></em>' containment reference list. | 26 | * Returns the value of the '<em><b>Nodes</b></em>' containment reference list. |
29 | * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.Node}. | 27 | * The list contents are of type {@link org.eclipse.viatra.solver.language.model.problem.Node}. |
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemFactory.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemFactory.java index 301f7cce..bdfc326b 100644 --- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemFactory.java +++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemFactory.java | |||
@@ -157,6 +157,24 @@ public interface ProblemFactory extends EFactory { | |||
157 | ExactMultiplicity createExactMultiplicity(); | 157 | ExactMultiplicity createExactMultiplicity(); |
158 | 158 | ||
159 | /** | 159 | /** |
160 | * Returns a new object of class '<em>Unbounded Multiplicity</em>'. | ||
161 | * <!-- begin-user-doc --> | ||
162 | * <!-- end-user-doc --> | ||
163 | * @return a new object of class '<em>Unbounded Multiplicity</em>'. | ||
164 | * @generated | ||
165 | */ | ||
166 | UnboundedMultiplicity createUnboundedMultiplicity(); | ||
167 | |||
168 | /** | ||
169 | * Returns a new object of class '<em>Argument</em>'. | ||
170 | * <!-- begin-user-doc --> | ||
171 | * <!-- end-user-doc --> | ||
172 | * @return a new object of class '<em>Argument</em>'. | ||
173 | * @generated | ||
174 | */ | ||
175 | Argument createArgument(); | ||
176 | |||
177 | /** | ||
160 | * Returns the package supported by this factory. | 178 | * Returns the package supported by this factory. |
161 | * <!-- begin-user-doc --> | 179 | * <!-- begin-user-doc --> |
162 | * <!-- end-user-doc --> | 180 | * <!-- end-user-doc --> |
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemPackage.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemPackage.java index 59906b1f..1358eaeb 100644 --- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemPackage.java +++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/ProblemPackage.java | |||
@@ -58,87 +58,96 @@ public interface ProblemPackage extends EPackage { | |||
58 | ProblemPackage eINSTANCE = org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl.init(); | 58 | ProblemPackage eINSTANCE = org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl.init(); |
59 | 59 | ||
60 | /** | 60 | /** |
61 | * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ProblemImpl <em>Problem</em>}' class. | 61 | * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.NamedElementImpl <em>Named Element</em>}' class. |
62 | * <!-- begin-user-doc --> | 62 | * <!-- begin-user-doc --> |
63 | * <!-- end-user-doc --> | 63 | * <!-- end-user-doc --> |
64 | * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemImpl | 64 | * @see org.eclipse.viatra.solver.language.model.problem.impl.NamedElementImpl |
65 | * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getProblem() | 65 | * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getNamedElement() |
66 | * @generated | 66 | * @generated |
67 | */ | 67 | */ |
68 | int PROBLEM = 0; | 68 | int NAMED_ELEMENT = 4; |
69 | 69 | ||
70 | /** | 70 | /** |
71 | * The feature id for the '<em><b>Nodes</b></em>' containment reference list. | 71 | * The feature id for the '<em><b>Name</b></em>' attribute. |
72 | * <!-- begin-user-doc --> | 72 | * <!-- begin-user-doc --> |
73 | * <!-- end-user-doc --> | 73 | * <!-- end-user-doc --> |
74 | * @generated | 74 | * @generated |
75 | * @ordered | 75 | * @ordered |
76 | */ | 76 | */ |
77 | int PROBLEM__NODES = 0; | 77 | int NAMED_ELEMENT__NAME = 0; |
78 | 78 | ||
79 | /** | 79 | /** |
80 | * The feature id for the '<em><b>Statements</b></em>' containment reference list. | 80 | * The number of structural features of the '<em>Named Element</em>' class. |
81 | * <!-- begin-user-doc --> | 81 | * <!-- begin-user-doc --> |
82 | * <!-- end-user-doc --> | 82 | * <!-- end-user-doc --> |
83 | * @generated | 83 | * @generated |
84 | * @ordered | 84 | * @ordered |
85 | */ | 85 | */ |
86 | int PROBLEM__STATEMENTS = 1; | 86 | int NAMED_ELEMENT_FEATURE_COUNT = 1; |
87 | 87 | ||
88 | /** | 88 | /** |
89 | * The number of structural features of the '<em>Problem</em>' class. | 89 | * The number of operations of the '<em>Named Element</em>' class. |
90 | * <!-- begin-user-doc --> | 90 | * <!-- begin-user-doc --> |
91 | * <!-- end-user-doc --> | 91 | * <!-- end-user-doc --> |
92 | * @generated | 92 | * @generated |
93 | * @ordered | 93 | * @ordered |
94 | */ | 94 | */ |
95 | int PROBLEM_FEATURE_COUNT = 2; | 95 | int NAMED_ELEMENT_OPERATION_COUNT = 0; |
96 | 96 | ||
97 | /** | 97 | /** |
98 | * The number of operations of the '<em>Problem</em>' class. | 98 | * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ProblemImpl <em>Problem</em>}' class. |
99 | * <!-- begin-user-doc --> | ||
100 | * <!-- end-user-doc --> | ||
101 | * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemImpl | ||
102 | * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getProblem() | ||
103 | * @generated | ||
104 | */ | ||
105 | int PROBLEM = 0; | ||
106 | |||
107 | /** | ||
108 | * The feature id for the '<em><b>Name</b></em>' attribute. | ||
99 | * <!-- begin-user-doc --> | 109 | * <!-- begin-user-doc --> |
100 | * <!-- end-user-doc --> | 110 | * <!-- end-user-doc --> |
101 | * @generated | 111 | * @generated |
102 | * @ordered | 112 | * @ordered |
103 | */ | 113 | */ |
104 | int PROBLEM_OPERATION_COUNT = 0; | 114 | int PROBLEM__NAME = NAMED_ELEMENT__NAME; |
105 | 115 | ||
106 | /** | 116 | /** |
107 | * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.NamedElementImpl <em>Named Element</em>}' class. | 117 | * The feature id for the '<em><b>Nodes</b></em>' containment reference list. |
108 | * <!-- begin-user-doc --> | 118 | * <!-- begin-user-doc --> |
109 | * <!-- end-user-doc --> | 119 | * <!-- end-user-doc --> |
110 | * @see org.eclipse.viatra.solver.language.model.problem.impl.NamedElementImpl | ||
111 | * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getNamedElement() | ||
112 | * @generated | 120 | * @generated |
121 | * @ordered | ||
113 | */ | 122 | */ |
114 | int NAMED_ELEMENT = 4; | 123 | int PROBLEM__NODES = NAMED_ELEMENT_FEATURE_COUNT + 0; |
115 | 124 | ||
116 | /** | 125 | /** |
117 | * The feature id for the '<em><b>Name</b></em>' attribute. | 126 | * The feature id for the '<em><b>Statements</b></em>' containment reference list. |
118 | * <!-- begin-user-doc --> | 127 | * <!-- begin-user-doc --> |
119 | * <!-- end-user-doc --> | 128 | * <!-- end-user-doc --> |
120 | * @generated | 129 | * @generated |
121 | * @ordered | 130 | * @ordered |
122 | */ | 131 | */ |
123 | int NAMED_ELEMENT__NAME = 0; | 132 | int PROBLEM__STATEMENTS = NAMED_ELEMENT_FEATURE_COUNT + 1; |
124 | 133 | ||
125 | /** | 134 | /** |
126 | * The number of structural features of the '<em>Named Element</em>' class. | 135 | * The number of structural features of the '<em>Problem</em>' class. |
127 | * <!-- begin-user-doc --> | 136 | * <!-- begin-user-doc --> |
128 | * <!-- end-user-doc --> | 137 | * <!-- end-user-doc --> |
129 | * @generated | 138 | * @generated |
130 | * @ordered | 139 | * @ordered |
131 | */ | 140 | */ |
132 | int NAMED_ELEMENT_FEATURE_COUNT = 1; | 141 | int PROBLEM_FEATURE_COUNT = NAMED_ELEMENT_FEATURE_COUNT + 2; |
133 | 142 | ||
134 | /** | 143 | /** |
135 | * The number of operations of the '<em>Named Element</em>' class. | 144 | * The number of operations of the '<em>Problem</em>' class. |
136 | * <!-- begin-user-doc --> | 145 | * <!-- begin-user-doc --> |
137 | * <!-- end-user-doc --> | 146 | * <!-- end-user-doc --> |
138 | * @generated | 147 | * @generated |
139 | * @ordered | 148 | * @ordered |
140 | */ | 149 | */ |
141 | int NAMED_ELEMENT_OPERATION_COUNT = 0; | 150 | int PROBLEM_OPERATION_COUNT = NAMED_ELEMENT_OPERATION_COUNT + 0; |
142 | 151 | ||
143 | /** | 152 | /** |
144 | * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.RelationImpl <em>Relation</em>}' class. | 153 | * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.RelationImpl <em>Relation</em>}' class. |
@@ -224,13 +233,22 @@ public interface ProblemPackage extends EPackage { | |||
224 | int CLASS_DECLARATION__REFERENCE_DECLARATIONS = RELATION_FEATURE_COUNT + 2; | 233 | int CLASS_DECLARATION__REFERENCE_DECLARATIONS = RELATION_FEATURE_COUNT + 2; |
225 | 234 | ||
226 | /** | 235 | /** |
236 | * The feature id for the '<em><b>New Node</b></em>' containment reference. | ||
237 | * <!-- begin-user-doc --> | ||
238 | * <!-- end-user-doc --> | ||
239 | * @generated | ||
240 | * @ordered | ||
241 | */ | ||
242 | int CLASS_DECLARATION__NEW_NODE = RELATION_FEATURE_COUNT + 3; | ||
243 | |||
244 | /** | ||
227 | * The number of structural features of the '<em>Class Declaration</em>' class. | 245 | * The number of structural features of the '<em>Class Declaration</em>' class. |
228 | * <!-- begin-user-doc --> | 246 | * <!-- begin-user-doc --> |
229 | * <!-- end-user-doc --> | 247 | * <!-- end-user-doc --> |
230 | * @generated | 248 | * @generated |
231 | * @ordered | 249 | * @ordered |
232 | */ | 250 | */ |
233 | int CLASS_DECLARATION_FEATURE_COUNT = RELATION_FEATURE_COUNT + 3; | 251 | int CLASS_DECLARATION_FEATURE_COUNT = RELATION_FEATURE_COUNT + 4; |
234 | 252 | ||
235 | /** | 253 | /** |
236 | * The number of operations of the '<em>Class Declaration</em>' class. | 254 | * The number of operations of the '<em>Class Declaration</em>' class. |
@@ -592,22 +610,22 @@ public interface ProblemPackage extends EPackage { | |||
592 | int ATOM__RELATION = LITERAL_FEATURE_COUNT + 0; | 610 | int ATOM__RELATION = LITERAL_FEATURE_COUNT + 0; |
593 | 611 | ||
594 | /** | 612 | /** |
595 | * The feature id for the '<em><b>Arguments</b></em>' reference list. | 613 | * The feature id for the '<em><b>Transitive Closure</b></em>' attribute. |
596 | * <!-- begin-user-doc --> | 614 | * <!-- begin-user-doc --> |
597 | * <!-- end-user-doc --> | 615 | * <!-- end-user-doc --> |
598 | * @generated | 616 | * @generated |
599 | * @ordered | 617 | * @ordered |
600 | */ | 618 | */ |
601 | int ATOM__ARGUMENTS = LITERAL_FEATURE_COUNT + 1; | 619 | int ATOM__TRANSITIVE_CLOSURE = LITERAL_FEATURE_COUNT + 1; |
602 | 620 | ||
603 | /** | 621 | /** |
604 | * The feature id for the '<em><b>Transitive Closure</b></em>' attribute. | 622 | * The feature id for the '<em><b>Arguments</b></em>' containment reference list. |
605 | * <!-- begin-user-doc --> | 623 | * <!-- begin-user-doc --> |
606 | * <!-- end-user-doc --> | 624 | * <!-- end-user-doc --> |
607 | * @generated | 625 | * @generated |
608 | * @ordered | 626 | * @ordered |
609 | */ | 627 | */ |
610 | int ATOM__TRANSITIVE_CLOSURE = LITERAL_FEATURE_COUNT + 2; | 628 | int ATOM__ARGUMENTS = LITERAL_FEATURE_COUNT + 2; |
611 | 629 | ||
612 | /** | 630 | /** |
613 | * The number of structural features of the '<em>Atom</em>' class. | 631 | * The number of structural features of the '<em>Atom</em>' class. |
@@ -1034,6 +1052,80 @@ public interface ProblemPackage extends EPackage { | |||
1034 | int EXACT_MULTIPLICITY_OPERATION_COUNT = MULTIPLICITY_OPERATION_COUNT + 0; | 1052 | int EXACT_MULTIPLICITY_OPERATION_COUNT = MULTIPLICITY_OPERATION_COUNT + 0; |
1035 | 1053 | ||
1036 | /** | 1054 | /** |
1055 | * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.UnboundedMultiplicityImpl <em>Unbounded Multiplicity</em>}' class. | ||
1056 | * <!-- begin-user-doc --> | ||
1057 | * <!-- end-user-doc --> | ||
1058 | * @see org.eclipse.viatra.solver.language.model.problem.impl.UnboundedMultiplicityImpl | ||
1059 | * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getUnboundedMultiplicity() | ||
1060 | * @generated | ||
1061 | */ | ||
1062 | int UNBOUNDED_MULTIPLICITY = 22; | ||
1063 | |||
1064 | /** | ||
1065 | * The number of structural features of the '<em>Unbounded Multiplicity</em>' class. | ||
1066 | * <!-- begin-user-doc --> | ||
1067 | * <!-- end-user-doc --> | ||
1068 | * @generated | ||
1069 | * @ordered | ||
1070 | */ | ||
1071 | int UNBOUNDED_MULTIPLICITY_FEATURE_COUNT = MULTIPLICITY_FEATURE_COUNT + 0; | ||
1072 | |||
1073 | /** | ||
1074 | * The number of operations of the '<em>Unbounded Multiplicity</em>' class. | ||
1075 | * <!-- begin-user-doc --> | ||
1076 | * <!-- end-user-doc --> | ||
1077 | * @generated | ||
1078 | * @ordered | ||
1079 | */ | ||
1080 | int UNBOUNDED_MULTIPLICITY_OPERATION_COUNT = MULTIPLICITY_OPERATION_COUNT + 0; | ||
1081 | |||
1082 | /** | ||
1083 | * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ArgumentImpl <em>Argument</em>}' class. | ||
1084 | * <!-- begin-user-doc --> | ||
1085 | * <!-- end-user-doc --> | ||
1086 | * @see org.eclipse.viatra.solver.language.model.problem.impl.ArgumentImpl | ||
1087 | * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getArgument() | ||
1088 | * @generated | ||
1089 | */ | ||
1090 | int ARGUMENT = 23; | ||
1091 | |||
1092 | /** | ||
1093 | * The feature id for the '<em><b>Variable</b></em>' reference. | ||
1094 | * <!-- begin-user-doc --> | ||
1095 | * <!-- end-user-doc --> | ||
1096 | * @generated | ||
1097 | * @ordered | ||
1098 | */ | ||
1099 | int ARGUMENT__VARIABLE = 0; | ||
1100 | |||
1101 | /** | ||
1102 | * The feature id for the '<em><b>Singleton Variable</b></em>' containment reference. | ||
1103 | * <!-- begin-user-doc --> | ||
1104 | * <!-- end-user-doc --> | ||
1105 | * @generated | ||
1106 | * @ordered | ||
1107 | */ | ||
1108 | int ARGUMENT__SINGLETON_VARIABLE = 1; | ||
1109 | |||
1110 | /** | ||
1111 | * The number of structural features of the '<em>Argument</em>' class. | ||
1112 | * <!-- begin-user-doc --> | ||
1113 | * <!-- end-user-doc --> | ||
1114 | * @generated | ||
1115 | * @ordered | ||
1116 | */ | ||
1117 | int ARGUMENT_FEATURE_COUNT = 2; | ||
1118 | |||
1119 | /** | ||
1120 | * The number of operations of the '<em>Argument</em>' class. | ||
1121 | * <!-- begin-user-doc --> | ||
1122 | * <!-- end-user-doc --> | ||
1123 | * @generated | ||
1124 | * @ordered | ||
1125 | */ | ||
1126 | int ARGUMENT_OPERATION_COUNT = 0; | ||
1127 | |||
1128 | /** | ||
1037 | * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.LogicValue <em>Logic Value</em>}' enum. | 1129 | * The meta object id for the '{@link org.eclipse.viatra.solver.language.model.problem.LogicValue <em>Logic Value</em>}' enum. |
1038 | * <!-- begin-user-doc --> | 1130 | * <!-- begin-user-doc --> |
1039 | * <!-- end-user-doc --> | 1131 | * <!-- end-user-doc --> |
@@ -1041,7 +1133,7 @@ public interface ProblemPackage extends EPackage { | |||
1041 | * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getLogicValue() | 1133 | * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getLogicValue() |
1042 | * @generated | 1134 | * @generated |
1043 | */ | 1135 | */ |
1044 | int LOGIC_VALUE = 22; | 1136 | int LOGIC_VALUE = 24; |
1045 | 1137 | ||
1046 | /** | 1138 | /** |
1047 | * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.Problem <em>Problem</em>}'. | 1139 | * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.Problem <em>Problem</em>}'. |
@@ -1129,6 +1221,17 @@ public interface ProblemPackage extends EPackage { | |||
1129 | EReference getClassDeclaration_ReferenceDeclarations(); | 1221 | EReference getClassDeclaration_ReferenceDeclarations(); |
1130 | 1222 | ||
1131 | /** | 1223 | /** |
1224 | * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#getNewNode <em>New Node</em>}'. | ||
1225 | * <!-- begin-user-doc --> | ||
1226 | * <!-- end-user-doc --> | ||
1227 | * @return the meta object for the containment reference '<em>New Node</em>'. | ||
1228 | * @see org.eclipse.viatra.solver.language.model.problem.ClassDeclaration#getNewNode() | ||
1229 | * @see #getClassDeclaration() | ||
1230 | * @generated | ||
1231 | */ | ||
1232 | EReference getClassDeclaration_NewNode(); | ||
1233 | |||
1234 | /** | ||
1132 | * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration <em>Reference Declaration</em>}'. | 1235 | * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration <em>Reference Declaration</em>}'. |
1133 | * <!-- begin-user-doc --> | 1236 | * <!-- begin-user-doc --> |
1134 | * <!-- end-user-doc --> | 1237 | * <!-- end-user-doc --> |
@@ -1330,10 +1433,10 @@ public interface ProblemPackage extends EPackage { | |||
1330 | EReference getAtom_Relation(); | 1433 | EReference getAtom_Relation(); |
1331 | 1434 | ||
1332 | /** | 1435 | /** |
1333 | * Returns the meta object for the reference list '{@link org.eclipse.viatra.solver.language.model.problem.Atom#getArguments <em>Arguments</em>}'. | 1436 | * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.model.problem.Atom#getArguments <em>Arguments</em>}'. |
1334 | * <!-- begin-user-doc --> | 1437 | * <!-- begin-user-doc --> |
1335 | * <!-- end-user-doc --> | 1438 | * <!-- end-user-doc --> |
1336 | * @return the meta object for the reference list '<em>Arguments</em>'. | 1439 | * @return the meta object for the containment reference list '<em>Arguments</em>'. |
1337 | * @see org.eclipse.viatra.solver.language.model.problem.Atom#getArguments() | 1440 | * @see org.eclipse.viatra.solver.language.model.problem.Atom#getArguments() |
1338 | * @see #getAtom() | 1441 | * @see #getAtom() |
1339 | * @generated | 1442 | * @generated |
@@ -1594,6 +1697,48 @@ public interface ProblemPackage extends EPackage { | |||
1594 | EAttribute getExactMultiplicity_ExactValue(); | 1697 | EAttribute getExactMultiplicity_ExactValue(); |
1595 | 1698 | ||
1596 | /** | 1699 | /** |
1700 | * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.UnboundedMultiplicity <em>Unbounded Multiplicity</em>}'. | ||
1701 | * <!-- begin-user-doc --> | ||
1702 | * <!-- end-user-doc --> | ||
1703 | * @return the meta object for class '<em>Unbounded Multiplicity</em>'. | ||
1704 | * @see org.eclipse.viatra.solver.language.model.problem.UnboundedMultiplicity | ||
1705 | * @generated | ||
1706 | */ | ||
1707 | EClass getUnboundedMultiplicity(); | ||
1708 | |||
1709 | /** | ||
1710 | * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.model.problem.Argument <em>Argument</em>}'. | ||
1711 | * <!-- begin-user-doc --> | ||
1712 | * <!-- end-user-doc --> | ||
1713 | * @return the meta object for class '<em>Argument</em>'. | ||
1714 | * @see org.eclipse.viatra.solver.language.model.problem.Argument | ||
1715 | * @generated | ||
1716 | */ | ||
1717 | EClass getArgument(); | ||
1718 | |||
1719 | /** | ||
1720 | * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.model.problem.Argument#getVariable <em>Variable</em>}'. | ||
1721 | * <!-- begin-user-doc --> | ||
1722 | * <!-- end-user-doc --> | ||
1723 | * @return the meta object for the reference '<em>Variable</em>'. | ||
1724 | * @see org.eclipse.viatra.solver.language.model.problem.Argument#getVariable() | ||
1725 | * @see #getArgument() | ||
1726 | * @generated | ||
1727 | */ | ||
1728 | EReference getArgument_Variable(); | ||
1729 | |||
1730 | /** | ||
1731 | * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.model.problem.Argument#getSingletonVariable <em>Singleton Variable</em>}'. | ||
1732 | * <!-- begin-user-doc --> | ||
1733 | * <!-- end-user-doc --> | ||
1734 | * @return the meta object for the containment reference '<em>Singleton Variable</em>'. | ||
1735 | * @see org.eclipse.viatra.solver.language.model.problem.Argument#getSingletonVariable() | ||
1736 | * @see #getArgument() | ||
1737 | * @generated | ||
1738 | */ | ||
1739 | EReference getArgument_SingletonVariable(); | ||
1740 | |||
1741 | /** | ||
1597 | * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.model.problem.LogicValue <em>Logic Value</em>}'. | 1742 | * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.model.problem.LogicValue <em>Logic Value</em>}'. |
1598 | * <!-- begin-user-doc --> | 1743 | * <!-- begin-user-doc --> |
1599 | * <!-- end-user-doc --> | 1744 | * <!-- end-user-doc --> |
@@ -1697,6 +1842,14 @@ public interface ProblemPackage extends EPackage { | |||
1697 | EReference CLASS_DECLARATION__REFERENCE_DECLARATIONS = eINSTANCE.getClassDeclaration_ReferenceDeclarations(); | 1842 | EReference CLASS_DECLARATION__REFERENCE_DECLARATIONS = eINSTANCE.getClassDeclaration_ReferenceDeclarations(); |
1698 | 1843 | ||
1699 | /** | 1844 | /** |
1845 | * The meta object literal for the '<em><b>New Node</b></em>' containment reference feature. | ||
1846 | * <!-- begin-user-doc --> | ||
1847 | * <!-- end-user-doc --> | ||
1848 | * @generated | ||
1849 | */ | ||
1850 | EReference CLASS_DECLARATION__NEW_NODE = eINSTANCE.getClassDeclaration_NewNode(); | ||
1851 | |||
1852 | /** | ||
1700 | * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ReferenceDeclarationImpl <em>Reference Declaration</em>}' class. | 1853 | * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ReferenceDeclarationImpl <em>Reference Declaration</em>}' class. |
1701 | * <!-- begin-user-doc --> | 1854 | * <!-- begin-user-doc --> |
1702 | * <!-- end-user-doc --> | 1855 | * <!-- end-user-doc --> |
@@ -1865,7 +2018,7 @@ public interface ProblemPackage extends EPackage { | |||
1865 | EReference ATOM__RELATION = eINSTANCE.getAtom_Relation(); | 2018 | EReference ATOM__RELATION = eINSTANCE.getAtom_Relation(); |
1866 | 2019 | ||
1867 | /** | 2020 | /** |
1868 | * The meta object literal for the '<em><b>Arguments</b></em>' reference list feature. | 2021 | * The meta object literal for the '<em><b>Arguments</b></em>' containment reference list feature. |
1869 | * <!-- begin-user-doc --> | 2022 | * <!-- begin-user-doc --> |
1870 | * <!-- end-user-doc --> | 2023 | * <!-- end-user-doc --> |
1871 | * @generated | 2024 | * @generated |
@@ -2087,6 +2240,42 @@ public interface ProblemPackage extends EPackage { | |||
2087 | EAttribute EXACT_MULTIPLICITY__EXACT_VALUE = eINSTANCE.getExactMultiplicity_ExactValue(); | 2240 | EAttribute EXACT_MULTIPLICITY__EXACT_VALUE = eINSTANCE.getExactMultiplicity_ExactValue(); |
2088 | 2241 | ||
2089 | /** | 2242 | /** |
2243 | * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.UnboundedMultiplicityImpl <em>Unbounded Multiplicity</em>}' class. | ||
2244 | * <!-- begin-user-doc --> | ||
2245 | * <!-- end-user-doc --> | ||
2246 | * @see org.eclipse.viatra.solver.language.model.problem.impl.UnboundedMultiplicityImpl | ||
2247 | * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getUnboundedMultiplicity() | ||
2248 | * @generated | ||
2249 | */ | ||
2250 | EClass UNBOUNDED_MULTIPLICITY = eINSTANCE.getUnboundedMultiplicity(); | ||
2251 | |||
2252 | /** | ||
2253 | * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.impl.ArgumentImpl <em>Argument</em>}' class. | ||
2254 | * <!-- begin-user-doc --> | ||
2255 | * <!-- end-user-doc --> | ||
2256 | * @see org.eclipse.viatra.solver.language.model.problem.impl.ArgumentImpl | ||
2257 | * @see org.eclipse.viatra.solver.language.model.problem.impl.ProblemPackageImpl#getArgument() | ||
2258 | * @generated | ||
2259 | */ | ||
2260 | EClass ARGUMENT = eINSTANCE.getArgument(); | ||
2261 | |||
2262 | /** | ||
2263 | * The meta object literal for the '<em><b>Variable</b></em>' reference feature. | ||
2264 | * <!-- begin-user-doc --> | ||
2265 | * <!-- end-user-doc --> | ||
2266 | * @generated | ||
2267 | */ | ||
2268 | EReference ARGUMENT__VARIABLE = eINSTANCE.getArgument_Variable(); | ||
2269 | |||
2270 | /** | ||
2271 | * The meta object literal for the '<em><b>Singleton Variable</b></em>' containment reference feature. | ||
2272 | * <!-- begin-user-doc --> | ||
2273 | * <!-- end-user-doc --> | ||
2274 | * @generated | ||
2275 | */ | ||
2276 | EReference ARGUMENT__SINGLETON_VARIABLE = eINSTANCE.getArgument_SingletonVariable(); | ||
2277 | |||
2278 | /** | ||
2090 | * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.LogicValue <em>Logic Value</em>}' enum. | 2279 | * The meta object literal for the '{@link org.eclipse.viatra.solver.language.model.problem.LogicValue <em>Logic Value</em>}' enum. |
2091 | * <!-- begin-user-doc --> | 2280 | * <!-- begin-user-doc --> |
2092 | * <!-- end-user-doc --> | 2281 | * <!-- end-user-doc --> |
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/UnboundedMultiplicity.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/UnboundedMultiplicity.java new file mode 100644 index 00000000..725311a4 --- /dev/null +++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/UnboundedMultiplicity.java | |||
@@ -0,0 +1,16 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package org.eclipse.viatra.solver.language.model.problem; | ||
4 | |||
5 | /** | ||
6 | * <!-- begin-user-doc --> | ||
7 | * A representation of the model object '<em><b>Unbounded Multiplicity</b></em>'. | ||
8 | * <!-- end-user-doc --> | ||
9 | * | ||
10 | * | ||
11 | * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#getUnboundedMultiplicity() | ||
12 | * @model | ||
13 | * @generated | ||
14 | */ | ||
15 | public interface UnboundedMultiplicity extends Multiplicity { | ||
16 | } // UnboundedMultiplicity | ||
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ArgumentImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ArgumentImpl.java new file mode 100644 index 00000000..9f6bc7ae --- /dev/null +++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ArgumentImpl.java | |||
@@ -0,0 +1,247 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package org.eclipse.viatra.solver.language.model.problem.impl; | ||
4 | |||
5 | import org.eclipse.emf.common.notify.Notification; | ||
6 | import org.eclipse.emf.common.notify.NotificationChain; | ||
7 | |||
8 | import org.eclipse.emf.ecore.EClass; | ||
9 | import org.eclipse.emf.ecore.InternalEObject; | ||
10 | |||
11 | import org.eclipse.emf.ecore.impl.ENotificationImpl; | ||
12 | import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; | ||
13 | |||
14 | import org.eclipse.viatra.solver.language.model.problem.Argument; | ||
15 | import org.eclipse.viatra.solver.language.model.problem.ImplicitVariable; | ||
16 | import org.eclipse.viatra.solver.language.model.problem.ProblemPackage; | ||
17 | import org.eclipse.viatra.solver.language.model.problem.Variable; | ||
18 | |||
19 | /** | ||
20 | * <!-- begin-user-doc --> | ||
21 | * An implementation of the model object '<em><b>Argument</b></em>'. | ||
22 | * <!-- end-user-doc --> | ||
23 | * <p> | ||
24 | * The following features are implemented: | ||
25 | * </p> | ||
26 | * <ul> | ||
27 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ArgumentImpl#getVariable <em>Variable</em>}</li> | ||
28 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ArgumentImpl#getSingletonVariable <em>Singleton Variable</em>}</li> | ||
29 | * </ul> | ||
30 | * | ||
31 | * @generated | ||
32 | */ | ||
33 | public class ArgumentImpl extends MinimalEObjectImpl.Container implements Argument { | ||
34 | /** | ||
35 | * The cached value of the '{@link #getVariable() <em>Variable</em>}' reference. | ||
36 | * <!-- begin-user-doc --> | ||
37 | * <!-- end-user-doc --> | ||
38 | * @see #getVariable() | ||
39 | * @generated | ||
40 | * @ordered | ||
41 | */ | ||
42 | protected Variable variable; | ||
43 | |||
44 | /** | ||
45 | * The cached value of the '{@link #getSingletonVariable() <em>Singleton Variable</em>}' containment reference. | ||
46 | * <!-- begin-user-doc --> | ||
47 | * <!-- end-user-doc --> | ||
48 | * @see #getSingletonVariable() | ||
49 | * @generated | ||
50 | * @ordered | ||
51 | */ | ||
52 | protected ImplicitVariable singletonVariable; | ||
53 | |||
54 | /** | ||
55 | * <!-- begin-user-doc --> | ||
56 | * <!-- end-user-doc --> | ||
57 | * @generated | ||
58 | */ | ||
59 | protected ArgumentImpl() { | ||
60 | super(); | ||
61 | } | ||
62 | |||
63 | /** | ||
64 | * <!-- begin-user-doc --> | ||
65 | * <!-- end-user-doc --> | ||
66 | * @generated | ||
67 | */ | ||
68 | @Override | ||
69 | protected EClass eStaticClass() { | ||
70 | return ProblemPackage.Literals.ARGUMENT; | ||
71 | } | ||
72 | |||
73 | /** | ||
74 | * <!-- begin-user-doc --> | ||
75 | * <!-- end-user-doc --> | ||
76 | * @generated | ||
77 | */ | ||
78 | public Variable getVariable() { | ||
79 | if (variable != null && variable.eIsProxy()) { | ||
80 | InternalEObject oldVariable = (InternalEObject) variable; | ||
81 | variable = (Variable) eResolveProxy(oldVariable); | ||
82 | if (variable != oldVariable) { | ||
83 | if (eNotificationRequired()) | ||
84 | eNotify(new ENotificationImpl(this, Notification.RESOLVE, ProblemPackage.ARGUMENT__VARIABLE, | ||
85 | oldVariable, variable)); | ||
86 | } | ||
87 | } | ||
88 | return variable; | ||
89 | } | ||
90 | |||
91 | /** | ||
92 | * <!-- begin-user-doc --> | ||
93 | * <!-- end-user-doc --> | ||
94 | * @generated | ||
95 | */ | ||
96 | public Variable basicGetVariable() { | ||
97 | return variable; | ||
98 | } | ||
99 | |||
100 | /** | ||
101 | * <!-- begin-user-doc --> | ||
102 | * <!-- end-user-doc --> | ||
103 | * @generated | ||
104 | */ | ||
105 | public void setVariable(Variable newVariable) { | ||
106 | Variable oldVariable = variable; | ||
107 | variable = newVariable; | ||
108 | if (eNotificationRequired()) | ||
109 | eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.ARGUMENT__VARIABLE, oldVariable, | ||
110 | variable)); | ||
111 | } | ||
112 | |||
113 | /** | ||
114 | * <!-- begin-user-doc --> | ||
115 | * <!-- end-user-doc --> | ||
116 | * @generated | ||
117 | */ | ||
118 | public ImplicitVariable getSingletonVariable() { | ||
119 | return singletonVariable; | ||
120 | } | ||
121 | |||
122 | /** | ||
123 | * <!-- begin-user-doc --> | ||
124 | * <!-- end-user-doc --> | ||
125 | * @generated | ||
126 | */ | ||
127 | public NotificationChain basicSetSingletonVariable(ImplicitVariable newSingletonVariable, NotificationChain msgs) { | ||
128 | ImplicitVariable oldSingletonVariable = singletonVariable; | ||
129 | singletonVariable = newSingletonVariable; | ||
130 | if (eNotificationRequired()) { | ||
131 | ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, | ||
132 | ProblemPackage.ARGUMENT__SINGLETON_VARIABLE, oldSingletonVariable, newSingletonVariable); | ||
133 | if (msgs == null) | ||
134 | msgs = notification; | ||
135 | else | ||
136 | msgs.add(notification); | ||
137 | } | ||
138 | return msgs; | ||
139 | } | ||
140 | |||
141 | /** | ||
142 | * <!-- begin-user-doc --> | ||
143 | * <!-- end-user-doc --> | ||
144 | * @generated | ||
145 | */ | ||
146 | public void setSingletonVariable(ImplicitVariable newSingletonVariable) { | ||
147 | if (newSingletonVariable != singletonVariable) { | ||
148 | NotificationChain msgs = null; | ||
149 | if (singletonVariable != null) | ||
150 | msgs = ((InternalEObject) singletonVariable).eInverseRemove(this, | ||
151 | EOPPOSITE_FEATURE_BASE - ProblemPackage.ARGUMENT__SINGLETON_VARIABLE, null, msgs); | ||
152 | if (newSingletonVariable != null) | ||
153 | msgs = ((InternalEObject) newSingletonVariable).eInverseAdd(this, | ||
154 | EOPPOSITE_FEATURE_BASE - ProblemPackage.ARGUMENT__SINGLETON_VARIABLE, null, msgs); | ||
155 | msgs = basicSetSingletonVariable(newSingletonVariable, msgs); | ||
156 | if (msgs != null) | ||
157 | msgs.dispatch(); | ||
158 | } else if (eNotificationRequired()) | ||
159 | eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.ARGUMENT__SINGLETON_VARIABLE, | ||
160 | newSingletonVariable, newSingletonVariable)); | ||
161 | } | ||
162 | |||
163 | /** | ||
164 | * <!-- begin-user-doc --> | ||
165 | * <!-- end-user-doc --> | ||
166 | * @generated | ||
167 | */ | ||
168 | @Override | ||
169 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
170 | switch (featureID) { | ||
171 | case ProblemPackage.ARGUMENT__SINGLETON_VARIABLE: | ||
172 | return basicSetSingletonVariable(null, msgs); | ||
173 | } | ||
174 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
175 | } | ||
176 | |||
177 | /** | ||
178 | * <!-- begin-user-doc --> | ||
179 | * <!-- end-user-doc --> | ||
180 | * @generated | ||
181 | */ | ||
182 | @Override | ||
183 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
184 | switch (featureID) { | ||
185 | case ProblemPackage.ARGUMENT__VARIABLE: | ||
186 | if (resolve) | ||
187 | return getVariable(); | ||
188 | return basicGetVariable(); | ||
189 | case ProblemPackage.ARGUMENT__SINGLETON_VARIABLE: | ||
190 | return getSingletonVariable(); | ||
191 | } | ||
192 | return super.eGet(featureID, resolve, coreType); | ||
193 | } | ||
194 | |||
195 | /** | ||
196 | * <!-- begin-user-doc --> | ||
197 | * <!-- end-user-doc --> | ||
198 | * @generated | ||
199 | */ | ||
200 | @Override | ||
201 | public void eSet(int featureID, Object newValue) { | ||
202 | switch (featureID) { | ||
203 | case ProblemPackage.ARGUMENT__VARIABLE: | ||
204 | setVariable((Variable) newValue); | ||
205 | return; | ||
206 | case ProblemPackage.ARGUMENT__SINGLETON_VARIABLE: | ||
207 | setSingletonVariable((ImplicitVariable) newValue); | ||
208 | return; | ||
209 | } | ||
210 | super.eSet(featureID, newValue); | ||
211 | } | ||
212 | |||
213 | /** | ||
214 | * <!-- begin-user-doc --> | ||
215 | * <!-- end-user-doc --> | ||
216 | * @generated | ||
217 | */ | ||
218 | @Override | ||
219 | public void eUnset(int featureID) { | ||
220 | switch (featureID) { | ||
221 | case ProblemPackage.ARGUMENT__VARIABLE: | ||
222 | setVariable((Variable) null); | ||
223 | return; | ||
224 | case ProblemPackage.ARGUMENT__SINGLETON_VARIABLE: | ||
225 | setSingletonVariable((ImplicitVariable) null); | ||
226 | return; | ||
227 | } | ||
228 | super.eUnset(featureID); | ||
229 | } | ||
230 | |||
231 | /** | ||
232 | * <!-- begin-user-doc --> | ||
233 | * <!-- end-user-doc --> | ||
234 | * @generated | ||
235 | */ | ||
236 | @Override | ||
237 | public boolean eIsSet(int featureID) { | ||
238 | switch (featureID) { | ||
239 | case ProblemPackage.ARGUMENT__VARIABLE: | ||
240 | return variable != null; | ||
241 | case ProblemPackage.ARGUMENT__SINGLETON_VARIABLE: | ||
242 | return singletonVariable != null; | ||
243 | } | ||
244 | return super.eIsSet(featureID); | ||
245 | } | ||
246 | |||
247 | } //ArgumentImpl | ||
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/AtomImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/AtomImpl.java index 4571db14..d70fe90b 100644 --- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/AtomImpl.java +++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/AtomImpl.java | |||
@@ -6,6 +6,7 @@ import java.util.Collection; | |||
6 | 6 | ||
7 | import org.eclipse.emf.common.notify.Notification; | 7 | import org.eclipse.emf.common.notify.Notification; |
8 | 8 | ||
9 | import org.eclipse.emf.common.notify.NotificationChain; | ||
9 | import org.eclipse.emf.common.util.EList; | 10 | import org.eclipse.emf.common.util.EList; |
10 | 11 | ||
11 | import org.eclipse.emf.ecore.EClass; | 12 | import org.eclipse.emf.ecore.EClass; |
@@ -13,12 +14,12 @@ import org.eclipse.emf.ecore.InternalEObject; | |||
13 | 14 | ||
14 | import org.eclipse.emf.ecore.impl.ENotificationImpl; | 15 | import org.eclipse.emf.ecore.impl.ENotificationImpl; |
15 | 16 | ||
16 | import org.eclipse.emf.ecore.util.EObjectResolvingEList; | 17 | import org.eclipse.emf.ecore.util.EObjectContainmentEList; |
17 | 18 | import org.eclipse.emf.ecore.util.InternalEList; | |
19 | import org.eclipse.viatra.solver.language.model.problem.Argument; | ||
18 | import org.eclipse.viatra.solver.language.model.problem.Atom; | 20 | import org.eclipse.viatra.solver.language.model.problem.Atom; |
19 | import org.eclipse.viatra.solver.language.model.problem.ProblemPackage; | 21 | import org.eclipse.viatra.solver.language.model.problem.ProblemPackage; |
20 | import org.eclipse.viatra.solver.language.model.problem.Relation; | 22 | import org.eclipse.viatra.solver.language.model.problem.Relation; |
21 | import org.eclipse.viatra.solver.language.model.problem.Variable; | ||
22 | 23 | ||
23 | /** | 24 | /** |
24 | * <!-- begin-user-doc --> | 25 | * <!-- begin-user-doc --> |
@@ -29,8 +30,8 @@ import org.eclipse.viatra.solver.language.model.problem.Variable; | |||
29 | * </p> | 30 | * </p> |
30 | * <ul> | 31 | * <ul> |
31 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.AtomImpl#getRelation <em>Relation</em>}</li> | 32 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.AtomImpl#getRelation <em>Relation</em>}</li> |
32 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.AtomImpl#getArguments <em>Arguments</em>}</li> | ||
33 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.AtomImpl#isTransitiveClosure <em>Transitive Closure</em>}</li> | 33 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.AtomImpl#isTransitiveClosure <em>Transitive Closure</em>}</li> |
34 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.AtomImpl#getArguments <em>Arguments</em>}</li> | ||
34 | * </ul> | 35 | * </ul> |
35 | * | 36 | * |
36 | * @generated | 37 | * @generated |
@@ -47,34 +48,34 @@ public class AtomImpl extends LiteralImpl implements Atom { | |||
47 | protected Relation relation; | 48 | protected Relation relation; |
48 | 49 | ||
49 | /** | 50 | /** |
50 | * The cached value of the '{@link #getArguments() <em>Arguments</em>}' reference list. | 51 | * The default value of the '{@link #isTransitiveClosure() <em>Transitive Closure</em>}' attribute. |
51 | * <!-- begin-user-doc --> | 52 | * <!-- begin-user-doc --> |
52 | * <!-- end-user-doc --> | 53 | * <!-- end-user-doc --> |
53 | * @see #getArguments() | 54 | * @see #isTransitiveClosure() |
54 | * @generated | 55 | * @generated |
55 | * @ordered | 56 | * @ordered |
56 | */ | 57 | */ |
57 | protected EList<Variable> arguments; | 58 | protected static final boolean TRANSITIVE_CLOSURE_EDEFAULT = false; |
58 | 59 | ||
59 | /** | 60 | /** |
60 | * The default value of the '{@link #isTransitiveClosure() <em>Transitive Closure</em>}' attribute. | 61 | * The cached value of the '{@link #isTransitiveClosure() <em>Transitive Closure</em>}' attribute. |
61 | * <!-- begin-user-doc --> | 62 | * <!-- begin-user-doc --> |
62 | * <!-- end-user-doc --> | 63 | * <!-- end-user-doc --> |
63 | * @see #isTransitiveClosure() | 64 | * @see #isTransitiveClosure() |
64 | * @generated | 65 | * @generated |
65 | * @ordered | 66 | * @ordered |
66 | */ | 67 | */ |
67 | protected static final boolean TRANSITIVE_CLOSURE_EDEFAULT = false; | 68 | protected boolean transitiveClosure = TRANSITIVE_CLOSURE_EDEFAULT; |
68 | 69 | ||
69 | /** | 70 | /** |
70 | * The cached value of the '{@link #isTransitiveClosure() <em>Transitive Closure</em>}' attribute. | 71 | * The cached value of the '{@link #getArguments() <em>Arguments</em>}' containment reference list. |
71 | * <!-- begin-user-doc --> | 72 | * <!-- begin-user-doc --> |
72 | * <!-- end-user-doc --> | 73 | * <!-- end-user-doc --> |
73 | * @see #isTransitiveClosure() | 74 | * @see #getArguments() |
74 | * @generated | 75 | * @generated |
75 | * @ordered | 76 | * @ordered |
76 | */ | 77 | */ |
77 | protected boolean transitiveClosure = TRANSITIVE_CLOSURE_EDEFAULT; | 78 | protected EList<Argument> arguments; |
78 | 79 | ||
79 | /** | 80 | /** |
80 | * <!-- begin-user-doc --> | 81 | * <!-- begin-user-doc --> |
@@ -140,9 +141,9 @@ public class AtomImpl extends LiteralImpl implements Atom { | |||
140 | * <!-- end-user-doc --> | 141 | * <!-- end-user-doc --> |
141 | * @generated | 142 | * @generated |
142 | */ | 143 | */ |
143 | public EList<Variable> getArguments() { | 144 | public EList<Argument> getArguments() { |
144 | if (arguments == null) { | 145 | if (arguments == null) { |
145 | arguments = new EObjectResolvingEList<Variable>(Variable.class, this, ProblemPackage.ATOM__ARGUMENTS); | 146 | arguments = new EObjectContainmentEList<Argument>(Argument.class, this, ProblemPackage.ATOM__ARGUMENTS); |
146 | } | 147 | } |
147 | return arguments; | 148 | return arguments; |
148 | } | 149 | } |
@@ -175,16 +176,30 @@ public class AtomImpl extends LiteralImpl implements Atom { | |||
175 | * @generated | 176 | * @generated |
176 | */ | 177 | */ |
177 | @Override | 178 | @Override |
179 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | ||
180 | switch (featureID) { | ||
181 | case ProblemPackage.ATOM__ARGUMENTS: | ||
182 | return ((InternalEList<?>) getArguments()).basicRemove(otherEnd, msgs); | ||
183 | } | ||
184 | return super.eInverseRemove(otherEnd, featureID, msgs); | ||
185 | } | ||
186 | |||
187 | /** | ||
188 | * <!-- begin-user-doc --> | ||
189 | * <!-- end-user-doc --> | ||
190 | * @generated | ||
191 | */ | ||
192 | @Override | ||
178 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | 193 | public Object eGet(int featureID, boolean resolve, boolean coreType) { |
179 | switch (featureID) { | 194 | switch (featureID) { |
180 | case ProblemPackage.ATOM__RELATION: | 195 | case ProblemPackage.ATOM__RELATION: |
181 | if (resolve) | 196 | if (resolve) |
182 | return getRelation(); | 197 | return getRelation(); |
183 | return basicGetRelation(); | 198 | return basicGetRelation(); |
184 | case ProblemPackage.ATOM__ARGUMENTS: | ||
185 | return getArguments(); | ||
186 | case ProblemPackage.ATOM__TRANSITIVE_CLOSURE: | 199 | case ProblemPackage.ATOM__TRANSITIVE_CLOSURE: |
187 | return isTransitiveClosure(); | 200 | return isTransitiveClosure(); |
201 | case ProblemPackage.ATOM__ARGUMENTS: | ||
202 | return getArguments(); | ||
188 | } | 203 | } |
189 | return super.eGet(featureID, resolve, coreType); | 204 | return super.eGet(featureID, resolve, coreType); |
190 | } | 205 | } |
@@ -201,13 +216,13 @@ public class AtomImpl extends LiteralImpl implements Atom { | |||
201 | case ProblemPackage.ATOM__RELATION: | 216 | case ProblemPackage.ATOM__RELATION: |
202 | setRelation((Relation) newValue); | 217 | setRelation((Relation) newValue); |
203 | return; | 218 | return; |
204 | case ProblemPackage.ATOM__ARGUMENTS: | ||
205 | getArguments().clear(); | ||
206 | getArguments().addAll((Collection<? extends Variable>) newValue); | ||
207 | return; | ||
208 | case ProblemPackage.ATOM__TRANSITIVE_CLOSURE: | 219 | case ProblemPackage.ATOM__TRANSITIVE_CLOSURE: |
209 | setTransitiveClosure((Boolean) newValue); | 220 | setTransitiveClosure((Boolean) newValue); |
210 | return; | 221 | return; |
222 | case ProblemPackage.ATOM__ARGUMENTS: | ||
223 | getArguments().clear(); | ||
224 | getArguments().addAll((Collection<? extends Argument>) newValue); | ||
225 | return; | ||
211 | } | 226 | } |
212 | super.eSet(featureID, newValue); | 227 | super.eSet(featureID, newValue); |
213 | } | 228 | } |
@@ -223,12 +238,12 @@ public class AtomImpl extends LiteralImpl implements Atom { | |||
223 | case ProblemPackage.ATOM__RELATION: | 238 | case ProblemPackage.ATOM__RELATION: |
224 | setRelation((Relation) null); | 239 | setRelation((Relation) null); |
225 | return; | 240 | return; |
226 | case ProblemPackage.ATOM__ARGUMENTS: | ||
227 | getArguments().clear(); | ||
228 | return; | ||
229 | case ProblemPackage.ATOM__TRANSITIVE_CLOSURE: | 241 | case ProblemPackage.ATOM__TRANSITIVE_CLOSURE: |
230 | setTransitiveClosure(TRANSITIVE_CLOSURE_EDEFAULT); | 242 | setTransitiveClosure(TRANSITIVE_CLOSURE_EDEFAULT); |
231 | return; | 243 | return; |
244 | case ProblemPackage.ATOM__ARGUMENTS: | ||
245 | getArguments().clear(); | ||
246 | return; | ||
232 | } | 247 | } |
233 | super.eUnset(featureID); | 248 | super.eUnset(featureID); |
234 | } | 249 | } |
@@ -243,10 +258,10 @@ public class AtomImpl extends LiteralImpl implements Atom { | |||
243 | switch (featureID) { | 258 | switch (featureID) { |
244 | case ProblemPackage.ATOM__RELATION: | 259 | case ProblemPackage.ATOM__RELATION: |
245 | return relation != null; | 260 | return relation != null; |
246 | case ProblemPackage.ATOM__ARGUMENTS: | ||
247 | return arguments != null && !arguments.isEmpty(); | ||
248 | case ProblemPackage.ATOM__TRANSITIVE_CLOSURE: | 261 | case ProblemPackage.ATOM__TRANSITIVE_CLOSURE: |
249 | return transitiveClosure != TRANSITIVE_CLOSURE_EDEFAULT; | 262 | return transitiveClosure != TRANSITIVE_CLOSURE_EDEFAULT; |
263 | case ProblemPackage.ATOM__ARGUMENTS: | ||
264 | return arguments != null && !arguments.isEmpty(); | ||
250 | } | 265 | } |
251 | return super.eIsSet(featureID); | 266 | return super.eIsSet(featureID); |
252 | } | 267 | } |
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ClassDeclarationImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ClassDeclarationImpl.java index e1d07071..89de4d01 100644 --- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ClassDeclarationImpl.java +++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ClassDeclarationImpl.java | |||
@@ -19,6 +19,7 @@ import org.eclipse.emf.ecore.util.EObjectResolvingEList; | |||
19 | import org.eclipse.emf.ecore.util.InternalEList; | 19 | import org.eclipse.emf.ecore.util.InternalEList; |
20 | 20 | ||
21 | import org.eclipse.viatra.solver.language.model.problem.ClassDeclaration; | 21 | import org.eclipse.viatra.solver.language.model.problem.ClassDeclaration; |
22 | import org.eclipse.viatra.solver.language.model.problem.Node; | ||
22 | import org.eclipse.viatra.solver.language.model.problem.ProblemPackage; | 23 | import org.eclipse.viatra.solver.language.model.problem.ProblemPackage; |
23 | import org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration; | 24 | import org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration; |
24 | 25 | ||
@@ -33,6 +34,7 @@ import org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration; | |||
33 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ClassDeclarationImpl#isAbstract <em>Abstract</em>}</li> | 34 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ClassDeclarationImpl#isAbstract <em>Abstract</em>}</li> |
34 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ClassDeclarationImpl#getSuperTypes <em>Super Types</em>}</li> | 35 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ClassDeclarationImpl#getSuperTypes <em>Super Types</em>}</li> |
35 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ClassDeclarationImpl#getReferenceDeclarations <em>Reference Declarations</em>}</li> | 36 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ClassDeclarationImpl#getReferenceDeclarations <em>Reference Declarations</em>}</li> |
37 | * <li>{@link org.eclipse.viatra.solver.language.model.problem.impl.ClassDeclarationImpl#getNewNode <em>New Node</em>}</li> | ||
36 | * </ul> | 38 | * </ul> |
37 | * | 39 | * |
38 | * @generated | 40 | * @generated |
@@ -79,6 +81,16 @@ public class ClassDeclarationImpl extends RelationImpl implements ClassDeclarati | |||
79 | protected EList<ReferenceDeclaration> referenceDeclarations; | 81 | protected EList<ReferenceDeclaration> referenceDeclarations; |
80 | 82 | ||
81 | /** | 83 | /** |
84 | * The cached value of the '{@link #getNewNode() <em>New Node</em>}' containment reference. | ||
85 | * <!-- begin-user-doc --> | ||
86 | * <!-- end-user-doc --> | ||
87 | * @see #getNewNode() | ||
88 | * @generated | ||
89 | * @ordered | ||
90 | */ | ||
91 | protected Node newNode; | ||
92 | |||
93 | /** | ||
82 | * <!-- begin-user-doc --> | 94 | * <!-- begin-user-doc --> |
83 | * <!-- end-user-doc --> | 95 | * <!-- end-user-doc --> |
84 | * @generated | 96 | * @generated |
@@ -150,11 +162,63 @@ public class ClassDeclarationImpl extends RelationImpl implements ClassDeclarati | |||
150 | * <!-- end-user-doc --> | 162 | * <!-- end-user-doc --> |
151 | * @generated | 163 | * @generated |
152 | */ | 164 | */ |
165 | public Node getNewNode() { | ||
166 | return newNode; | ||
167 | } | ||
168 | |||
169 | /** | ||
170 | * <!-- begin-user-doc --> | ||
171 | * <!-- end-user-doc --> | ||
172 | * @generated | ||
173 | */ | ||
174 | public NotificationChain basicSetNewNode(Node newNewNode, NotificationChain msgs) { | ||
175 | Node oldNewNode = newNode; | ||
176 | newNode = newNewNode; | ||
177 | if (eNotificationRequired()) { | ||
178 | ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, | ||
179 | ProblemPackage.CLASS_DECLARATION__NEW_NODE, oldNewNode, newNewNode); | ||
180 | if (msgs == null) | ||
181 | msgs = notification; | ||
182 | else | ||
183 | msgs.add(notification); | ||
184 | } | ||
185 | return msgs; | ||
186 | } | ||
187 | |||
188 | /** | ||
189 | * <!-- begin-user-doc --> | ||
190 | * <!-- end-user-doc --> | ||
191 | * @generated | ||
192 | */ | ||
193 | public void setNewNode(Node newNewNode) { | ||
194 | if (newNewNode != newNode) { | ||
195 | NotificationChain msgs = null; | ||
196 | if (newNode != null) | ||
197 | msgs = ((InternalEObject) newNode).eInverseRemove(this, | ||
198 | EOPPOSITE_FEATURE_BASE - ProblemPackage.CLASS_DECLARATION__NEW_NODE, null, msgs); | ||
199 | if (newNewNode != null) | ||
200 | msgs = ((InternalEObject) newNewNode).eInverseAdd(this, | ||
201 | EOPPOSITE_FEATURE_BASE - ProblemPackage.CLASS_DECLARATION__NEW_NODE, null, msgs); | ||
202 | msgs = basicSetNewNode(newNewNode, msgs); | ||
203 | if (msgs != null) | ||
204 | msgs.dispatch(); | ||
205 | } else if (eNotificationRequired()) | ||
206 | eNotify(new ENotificationImpl(this, Notification.SET, ProblemPackage.CLASS_DECLARATION__NEW_NODE, | ||
207 | newNewNode, newNewNode)); | ||
208 | } | ||
209 | |||
210 | /** | ||
211 | * <!-- begin-user-doc --> | ||
212 | * <!-- end-user-doc --> | ||
213 | * @generated | ||
214 | */ | ||
153 | @Override | 215 | @Override |
154 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { | 216 | public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { |
155 | switch (featureID) { | 217 | switch (featureID) { |
156 | case ProblemPackage.CLASS_DECLARATION__REFERENCE_DECLARATIONS: | 218 | case ProblemPackage.CLASS_DECLARATION__REFERENCE_DECLARATIONS: |
157 | return ((InternalEList<?>) getReferenceDeclarations()).basicRemove(otherEnd, msgs); | 219 | return ((InternalEList<?>) getReferenceDeclarations()).basicRemove(otherEnd, msgs); |
220 | case ProblemPackage.CLASS_DECLARATION__NEW_NODE: | ||
221 | return basicSetNewNode(null, msgs); | ||
158 | } | 222 | } |
159 | return super.eInverseRemove(otherEnd, featureID, msgs); | 223 | return super.eInverseRemove(otherEnd, featureID, msgs); |
160 | } | 224 | } |
@@ -173,6 +237,8 @@ public class ClassDeclarationImpl extends RelationImpl implements ClassDeclarati | |||
173 | return getSuperTypes(); | 237 | return getSuperTypes(); |
174 | case ProblemPackage.CLASS_DECLARATION__REFERENCE_DECLARATIONS: | 238 | case ProblemPackage.CLASS_DECLARATION__REFERENCE_DECLARATIONS: |
175 | return getReferenceDeclarations(); | 239 | return getReferenceDeclarations(); |
240 | case ProblemPackage.CLASS_DECLARATION__NEW_NODE: | ||
241 | return getNewNode(); | ||
176 | } | 242 | } |
177 | return super.eGet(featureID, resolve, coreType); | 243 | return super.eGet(featureID, resolve, coreType); |
178 | } | 244 | } |
@@ -197,6 +263,9 @@ public class ClassDeclarationImpl extends RelationImpl implements ClassDeclarati | |||
197 | getReferenceDeclarations().clear(); | 263 | getReferenceDeclarations().clear(); |
198 | getReferenceDeclarations().addAll((Collection<? extends ReferenceDeclaration>) newValue); | 264 | getReferenceDeclarations().addAll((Collection<? extends ReferenceDeclaration>) newValue); |
199 | return; | 265 | return; |
266 | case ProblemPackage.CLASS_DECLARATION__NEW_NODE: | ||
267 | setNewNode((Node) newValue); | ||
268 | return; | ||
200 | } | 269 | } |
201 | super.eSet(featureID, newValue); | 270 | super.eSet(featureID, newValue); |
202 | } | 271 | } |
@@ -218,6 +287,9 @@ public class ClassDeclarationImpl extends RelationImpl implements ClassDeclarati | |||
218 | case ProblemPackage.CLASS_DECLARATION__REFERENCE_DECLARATIONS: | 287 | case ProblemPackage.CLASS_DECLARATION__REFERENCE_DECLARATIONS: |
219 | getReferenceDeclarations().clear(); | 288 | getReferenceDeclarations().clear(); |
220 | return; | 289 | return; |
290 | case ProblemPackage.CLASS_DECLARATION__NEW_NODE: | ||
291 | setNewNode((Node) null); | ||
292 | return; | ||
221 | } | 293 | } |
222 | super.eUnset(featureID); | 294 | super.eUnset(featureID); |
223 | } | 295 | } |
@@ -236,6 +308,8 @@ public class ClassDeclarationImpl extends RelationImpl implements ClassDeclarati | |||
236 | return superTypes != null && !superTypes.isEmpty(); | 308 | return superTypes != null && !superTypes.isEmpty(); |
237 | case ProblemPackage.CLASS_DECLARATION__REFERENCE_DECLARATIONS: | 309 | case ProblemPackage.CLASS_DECLARATION__REFERENCE_DECLARATIONS: |
238 | return referenceDeclarations != null && !referenceDeclarations.isEmpty(); | 310 | return referenceDeclarations != null && !referenceDeclarations.isEmpty(); |
311 | case ProblemPackage.CLASS_DECLARATION__NEW_NODE: | ||
312 | return newNode != null; | ||
239 | } | 313 | } |
240 | return super.eIsSet(featureID); | 314 | return super.eIsSet(featureID); |
241 | } | 315 | } |
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConjunctionImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConjunctionImpl.java index 3bdf887f..72258cc1 100644 --- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConjunctionImpl.java +++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ConjunctionImpl.java | |||
@@ -45,6 +45,7 @@ public class ConjunctionImpl extends MinimalEObjectImpl.Container implements Con | |||
45 | * @ordered | 45 | * @ordered |
46 | */ | 46 | */ |
47 | protected EList<ImplicitVariable> implicitVariables; | 47 | protected EList<ImplicitVariable> implicitVariables; |
48 | |||
48 | /** | 49 | /** |
49 | * The cached value of the '{@link #getLiterals() <em>Literals</em>}' containment reference list. | 50 | * The cached value of the '{@link #getLiterals() <em>Literals</em>}' containment reference list. |
50 | * <!-- begin-user-doc --> | 51 | * <!-- begin-user-doc --> |
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NegativeLiteralImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NegativeLiteralImpl.java index 5295406b..857a779d 100644 --- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NegativeLiteralImpl.java +++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/NegativeLiteralImpl.java | |||
@@ -47,6 +47,7 @@ public class NegativeLiteralImpl extends MinimalEObjectImpl.Container implements | |||
47 | * @ordered | 47 | * @ordered |
48 | */ | 48 | */ |
49 | protected EList<ImplicitVariable> implicitVariables; | 49 | protected EList<ImplicitVariable> implicitVariables; |
50 | |||
50 | /** | 51 | /** |
51 | * The cached value of the '{@link #getAtom() <em>Atom</em>}' containment reference. | 52 | * The cached value of the '{@link #getAtom() <em>Atom</em>}' containment reference. |
52 | * <!-- begin-user-doc --> | 53 | * <!-- begin-user-doc --> |
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemFactoryImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemFactoryImpl.java index 563f8b05..3bb50cfe 100644 --- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemFactoryImpl.java +++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemFactoryImpl.java | |||
@@ -87,6 +87,10 @@ public class ProblemFactoryImpl extends EFactoryImpl implements ProblemFactory { | |||
87 | return createRangeMultiplicity(); | 87 | return createRangeMultiplicity(); |
88 | case ProblemPackage.EXACT_MULTIPLICITY: | 88 | case ProblemPackage.EXACT_MULTIPLICITY: |
89 | return createExactMultiplicity(); | 89 | return createExactMultiplicity(); |
90 | case ProblemPackage.UNBOUNDED_MULTIPLICITY: | ||
91 | return createUnboundedMultiplicity(); | ||
92 | case ProblemPackage.ARGUMENT: | ||
93 | return createArgument(); | ||
90 | default: | 94 | default: |
91 | throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); | 95 | throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); |
92 | } | 96 | } |
@@ -277,6 +281,26 @@ public class ProblemFactoryImpl extends EFactoryImpl implements ProblemFactory { | |||
277 | * <!-- end-user-doc --> | 281 | * <!-- end-user-doc --> |
278 | * @generated | 282 | * @generated |
279 | */ | 283 | */ |
284 | public UnboundedMultiplicity createUnboundedMultiplicity() { | ||
285 | UnboundedMultiplicityImpl unboundedMultiplicity = new UnboundedMultiplicityImpl(); | ||
286 | return unboundedMultiplicity; | ||
287 | } | ||
288 | |||
289 | /** | ||
290 | * <!-- begin-user-doc --> | ||
291 | * <!-- end-user-doc --> | ||
292 | * @generated | ||
293 | */ | ||
294 | public Argument createArgument() { | ||
295 | ArgumentImpl argument = new ArgumentImpl(); | ||
296 | return argument; | ||
297 | } | ||
298 | |||
299 | /** | ||
300 | * <!-- begin-user-doc --> | ||
301 | * <!-- end-user-doc --> | ||
302 | * @generated | ||
303 | */ | ||
280 | public LogicValue createLogicValueFromString(EDataType eDataType, String initialValue) { | 304 | public LogicValue createLogicValueFromString(EDataType eDataType, String initialValue) { |
281 | LogicValue result = LogicValue.get(initialValue); | 305 | LogicValue result = LogicValue.get(initialValue); |
282 | if (result == null) | 306 | if (result == null) |
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemImpl.java index 32bba265..191021c4 100644 --- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemImpl.java +++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemImpl.java | |||
@@ -11,8 +11,6 @@ import org.eclipse.emf.common.util.EList; | |||
11 | import org.eclipse.emf.ecore.EClass; | 11 | import org.eclipse.emf.ecore.EClass; |
12 | import org.eclipse.emf.ecore.InternalEObject; | 12 | import org.eclipse.emf.ecore.InternalEObject; |
13 | 13 | ||
14 | import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; | ||
15 | |||
16 | import org.eclipse.emf.ecore.util.EObjectContainmentEList; | 14 | import org.eclipse.emf.ecore.util.EObjectContainmentEList; |
17 | import org.eclipse.emf.ecore.util.InternalEList; | 15 | import org.eclipse.emf.ecore.util.InternalEList; |
18 | 16 | ||
@@ -35,7 +33,7 @@ import org.eclipse.viatra.solver.language.model.problem.Statement; | |||
35 | * | 33 | * |
36 | * @generated | 34 | * @generated |
37 | */ | 35 | */ |
38 | public class ProblemImpl extends MinimalEObjectImpl.Container implements Problem { | 36 | public class ProblemImpl extends NamedElementImpl implements Problem { |
39 | /** | 37 | /** |
40 | * The cached value of the '{@link #getNodes() <em>Nodes</em>}' containment reference list. | 38 | * The cached value of the '{@link #getNodes() <em>Nodes</em>}' containment reference list. |
41 | * <!-- begin-user-doc --> | 39 | * <!-- begin-user-doc --> |
@@ -45,6 +43,7 @@ public class ProblemImpl extends MinimalEObjectImpl.Container implements Problem | |||
45 | * @ordered | 43 | * @ordered |
46 | */ | 44 | */ |
47 | protected EList<Node> nodes; | 45 | protected EList<Node> nodes; |
46 | |||
48 | /** | 47 | /** |
49 | * The cached value of the '{@link #getStatements() <em>Statements</em>}' containment reference list. | 48 | * The cached value of the '{@link #getStatements() <em>Statements</em>}' containment reference list. |
50 | * <!-- begin-user-doc --> | 49 | * <!-- begin-user-doc --> |
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java index de0aa595..f412addc 100644 --- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java +++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java | |||
@@ -10,6 +10,7 @@ import org.eclipse.emf.ecore.EReference; | |||
10 | 10 | ||
11 | import org.eclipse.emf.ecore.impl.EPackageImpl; | 11 | import org.eclipse.emf.ecore.impl.EPackageImpl; |
12 | 12 | ||
13 | import org.eclipse.viatra.solver.language.model.problem.Argument; | ||
13 | import org.eclipse.viatra.solver.language.model.problem.Assertion; | 14 | import org.eclipse.viatra.solver.language.model.problem.Assertion; |
14 | import org.eclipse.viatra.solver.language.model.problem.Atom; | 15 | import org.eclipse.viatra.solver.language.model.problem.Atom; |
15 | import org.eclipse.viatra.solver.language.model.problem.ClassDeclaration; | 16 | import org.eclipse.viatra.solver.language.model.problem.ClassDeclaration; |
@@ -34,6 +35,7 @@ import org.eclipse.viatra.solver.language.model.problem.Relation; | |||
34 | import org.eclipse.viatra.solver.language.model.problem.ScopeDeclaration; | 35 | import org.eclipse.viatra.solver.language.model.problem.ScopeDeclaration; |
35 | import org.eclipse.viatra.solver.language.model.problem.Statement; | 36 | import org.eclipse.viatra.solver.language.model.problem.Statement; |
36 | import org.eclipse.viatra.solver.language.model.problem.TypeScope; | 37 | import org.eclipse.viatra.solver.language.model.problem.TypeScope; |
38 | import org.eclipse.viatra.solver.language.model.problem.UnboundedMultiplicity; | ||
37 | import org.eclipse.viatra.solver.language.model.problem.Variable; | 39 | import org.eclipse.viatra.solver.language.model.problem.Variable; |
38 | 40 | ||
39 | /** | 41 | /** |
@@ -202,6 +204,20 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage { | |||
202 | * <!-- end-user-doc --> | 204 | * <!-- end-user-doc --> |
203 | * @generated | 205 | * @generated |
204 | */ | 206 | */ |
207 | private EClass unboundedMultiplicityEClass = null; | ||
208 | |||
209 | /** | ||
210 | * <!-- begin-user-doc --> | ||
211 | * <!-- end-user-doc --> | ||
212 | * @generated | ||
213 | */ | ||
214 | private EClass argumentEClass = null; | ||
215 | |||
216 | /** | ||
217 | * <!-- begin-user-doc --> | ||
218 | * <!-- end-user-doc --> | ||
219 | * @generated | ||
220 | */ | ||
205 | private EEnum logicValueEEnum = null; | 221 | private EEnum logicValueEEnum = null; |
206 | 222 | ||
207 | /** | 223 | /** |
@@ -345,6 +361,15 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage { | |||
345 | * <!-- end-user-doc --> | 361 | * <!-- end-user-doc --> |
346 | * @generated | 362 | * @generated |
347 | */ | 363 | */ |
364 | public EReference getClassDeclaration_NewNode() { | ||
365 | return (EReference) classDeclarationEClass.getEStructuralFeatures().get(3); | ||
366 | } | ||
367 | |||
368 | /** | ||
369 | * <!-- begin-user-doc --> | ||
370 | * <!-- end-user-doc --> | ||
371 | * @generated | ||
372 | */ | ||
348 | public EClass getReferenceDeclaration() { | 373 | public EClass getReferenceDeclaration() { |
349 | return referenceDeclarationEClass; | 374 | return referenceDeclarationEClass; |
350 | } | 375 | } |
@@ -517,7 +542,7 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage { | |||
517 | * @generated | 542 | * @generated |
518 | */ | 543 | */ |
519 | public EReference getAtom_Arguments() { | 544 | public EReference getAtom_Arguments() { |
520 | return (EReference) atomEClass.getEStructuralFeatures().get(1); | 545 | return (EReference) atomEClass.getEStructuralFeatures().get(2); |
521 | } | 546 | } |
522 | 547 | ||
523 | /** | 548 | /** |
@@ -526,7 +551,7 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage { | |||
526 | * @generated | 551 | * @generated |
527 | */ | 552 | */ |
528 | public EAttribute getAtom_TransitiveClosure() { | 553 | public EAttribute getAtom_TransitiveClosure() { |
529 | return (EAttribute) atomEClass.getEStructuralFeatures().get(2); | 554 | return (EAttribute) atomEClass.getEStructuralFeatures().get(1); |
530 | } | 555 | } |
531 | 556 | ||
532 | /** | 557 | /** |
@@ -741,6 +766,42 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage { | |||
741 | * <!-- end-user-doc --> | 766 | * <!-- end-user-doc --> |
742 | * @generated | 767 | * @generated |
743 | */ | 768 | */ |
769 | public EClass getUnboundedMultiplicity() { | ||
770 | return unboundedMultiplicityEClass; | ||
771 | } | ||
772 | |||
773 | /** | ||
774 | * <!-- begin-user-doc --> | ||
775 | * <!-- end-user-doc --> | ||
776 | * @generated | ||
777 | */ | ||
778 | public EClass getArgument() { | ||
779 | return argumentEClass; | ||
780 | } | ||
781 | |||
782 | /** | ||
783 | * <!-- begin-user-doc --> | ||
784 | * <!-- end-user-doc --> | ||
785 | * @generated | ||
786 | */ | ||
787 | public EReference getArgument_Variable() { | ||
788 | return (EReference) argumentEClass.getEStructuralFeatures().get(0); | ||
789 | } | ||
790 | |||
791 | /** | ||
792 | * <!-- begin-user-doc --> | ||
793 | * <!-- end-user-doc --> | ||
794 | * @generated | ||
795 | */ | ||
796 | public EReference getArgument_SingletonVariable() { | ||
797 | return (EReference) argumentEClass.getEStructuralFeatures().get(1); | ||
798 | } | ||
799 | |||
800 | /** | ||
801 | * <!-- begin-user-doc --> | ||
802 | * <!-- end-user-doc --> | ||
803 | * @generated | ||
804 | */ | ||
744 | public EEnum getLogicValue() { | 805 | public EEnum getLogicValue() { |
745 | return logicValueEEnum; | 806 | return logicValueEEnum; |
746 | } | 807 | } |
@@ -784,6 +845,7 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage { | |||
784 | createEAttribute(classDeclarationEClass, CLASS_DECLARATION__ABSTRACT); | 845 | createEAttribute(classDeclarationEClass, CLASS_DECLARATION__ABSTRACT); |
785 | createEReference(classDeclarationEClass, CLASS_DECLARATION__SUPER_TYPES); | 846 | createEReference(classDeclarationEClass, CLASS_DECLARATION__SUPER_TYPES); |
786 | createEReference(classDeclarationEClass, CLASS_DECLARATION__REFERENCE_DECLARATIONS); | 847 | createEReference(classDeclarationEClass, CLASS_DECLARATION__REFERENCE_DECLARATIONS); |
848 | createEReference(classDeclarationEClass, CLASS_DECLARATION__NEW_NODE); | ||
787 | 849 | ||
788 | referenceDeclarationEClass = createEClass(REFERENCE_DECLARATION); | 850 | referenceDeclarationEClass = createEClass(REFERENCE_DECLARATION); |
789 | createEReference(referenceDeclarationEClass, REFERENCE_DECLARATION__REFERENCE_TYPE); | 851 | createEReference(referenceDeclarationEClass, REFERENCE_DECLARATION__REFERENCE_TYPE); |
@@ -811,8 +873,8 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage { | |||
811 | 873 | ||
812 | atomEClass = createEClass(ATOM); | 874 | atomEClass = createEClass(ATOM); |
813 | createEReference(atomEClass, ATOM__RELATION); | 875 | createEReference(atomEClass, ATOM__RELATION); |
814 | createEReference(atomEClass, ATOM__ARGUMENTS); | ||
815 | createEAttribute(atomEClass, ATOM__TRANSITIVE_CLOSURE); | 876 | createEAttribute(atomEClass, ATOM__TRANSITIVE_CLOSURE); |
877 | createEReference(atomEClass, ATOM__ARGUMENTS); | ||
816 | 878 | ||
817 | implicitVariableEClass = createEClass(IMPLICIT_VARIABLE); | 879 | implicitVariableEClass = createEClass(IMPLICIT_VARIABLE); |
818 | 880 | ||
@@ -848,6 +910,12 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage { | |||
848 | exactMultiplicityEClass = createEClass(EXACT_MULTIPLICITY); | 910 | exactMultiplicityEClass = createEClass(EXACT_MULTIPLICITY); |
849 | createEAttribute(exactMultiplicityEClass, EXACT_MULTIPLICITY__EXACT_VALUE); | 911 | createEAttribute(exactMultiplicityEClass, EXACT_MULTIPLICITY__EXACT_VALUE); |
850 | 912 | ||
913 | unboundedMultiplicityEClass = createEClass(UNBOUNDED_MULTIPLICITY); | ||
914 | |||
915 | argumentEClass = createEClass(ARGUMENT); | ||
916 | createEReference(argumentEClass, ARGUMENT__VARIABLE); | ||
917 | createEReference(argumentEClass, ARGUMENT__SINGLETON_VARIABLE); | ||
918 | |||
851 | // Create enums | 919 | // Create enums |
852 | logicValueEEnum = createEEnum(LOGIC_VALUE); | 920 | logicValueEEnum = createEEnum(LOGIC_VALUE); |
853 | } | 921 | } |
@@ -881,6 +949,7 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage { | |||
881 | // Set bounds for type parameters | 949 | // Set bounds for type parameters |
882 | 950 | ||
883 | // Add supertypes to classes | 951 | // Add supertypes to classes |
952 | problemEClass.getESuperTypes().add(this.getNamedElement()); | ||
884 | relationEClass.getESuperTypes().add(this.getNamedElement()); | 953 | relationEClass.getESuperTypes().add(this.getNamedElement()); |
885 | classDeclarationEClass.getESuperTypes().add(this.getRelation()); | 954 | classDeclarationEClass.getESuperTypes().add(this.getRelation()); |
886 | classDeclarationEClass.getESuperTypes().add(this.getStatement()); | 955 | classDeclarationEClass.getESuperTypes().add(this.getStatement()); |
@@ -899,6 +968,7 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage { | |||
899 | scopeDeclarationEClass.getESuperTypes().add(this.getStatement()); | 968 | scopeDeclarationEClass.getESuperTypes().add(this.getStatement()); |
900 | rangeMultiplicityEClass.getESuperTypes().add(this.getMultiplicity()); | 969 | rangeMultiplicityEClass.getESuperTypes().add(this.getMultiplicity()); |
901 | exactMultiplicityEClass.getESuperTypes().add(this.getMultiplicity()); | 970 | exactMultiplicityEClass.getESuperTypes().add(this.getMultiplicity()); |
971 | unboundedMultiplicityEClass.getESuperTypes().add(this.getMultiplicity()); | ||
902 | 972 | ||
903 | // Initialize classes, features, and operations; add parameters | 973 | // Initialize classes, features, and operations; add parameters |
904 | initEClass(problemEClass, Problem.class, "Problem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | 974 | initEClass(problemEClass, Problem.class, "Problem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
@@ -922,6 +992,9 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage { | |||
922 | initEReference(getClassDeclaration_ReferenceDeclarations(), this.getReferenceDeclaration(), null, | 992 | initEReference(getClassDeclaration_ReferenceDeclarations(), this.getReferenceDeclaration(), null, |
923 | "referenceDeclarations", null, 0, -1, ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, | 993 | "referenceDeclarations", null, 0, -1, ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, |
924 | IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | 994 | IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); |
995 | initEReference(getClassDeclaration_NewNode(), this.getNode(), null, "newNode", null, 0, 1, | ||
996 | ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, | ||
997 | !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
925 | 998 | ||
926 | initEClass(referenceDeclarationEClass, ReferenceDeclaration.class, "ReferenceDeclaration", !IS_ABSTRACT, | 999 | initEClass(referenceDeclarationEClass, ReferenceDeclaration.class, "ReferenceDeclaration", !IS_ABSTRACT, |
927 | !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | 1000 | !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); |
@@ -975,12 +1048,12 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage { | |||
975 | initEReference(getAtom_Relation(), this.getRelation(), null, "relation", null, 0, 1, Atom.class, !IS_TRANSIENT, | 1048 | initEReference(getAtom_Relation(), this.getRelation(), null, "relation", null, 0, 1, Atom.class, !IS_TRANSIENT, |
976 | !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, | 1049 | !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, |
977 | IS_ORDERED); | 1050 | IS_ORDERED); |
978 | initEReference(getAtom_Arguments(), this.getVariable(), null, "arguments", null, 0, -1, Atom.class, | ||
979 | !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, | ||
980 | IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
981 | initEAttribute(getAtom_TransitiveClosure(), ecorePackage.getEBoolean(), "transitiveClosure", null, 0, 1, | 1051 | initEAttribute(getAtom_TransitiveClosure(), ecorePackage.getEBoolean(), "transitiveClosure", null, 0, 1, |
982 | Atom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, | 1052 | Atom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, |
983 | IS_ORDERED); | 1053 | IS_ORDERED); |
1054 | initEReference(getAtom_Arguments(), this.getArgument(), null, "arguments", null, 0, -1, Atom.class, | ||
1055 | !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, | ||
1056 | IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
984 | 1057 | ||
985 | initEClass(implicitVariableEClass, ImplicitVariable.class, "ImplicitVariable", !IS_ABSTRACT, !IS_INTERFACE, | 1058 | initEClass(implicitVariableEClass, ImplicitVariable.class, "ImplicitVariable", !IS_ABSTRACT, !IS_INTERFACE, |
986 | IS_GENERATED_INSTANCE_CLASS); | 1059 | IS_GENERATED_INSTANCE_CLASS); |
@@ -1048,6 +1121,18 @@ public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage { | |||
1048 | ExactMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, | 1121 | ExactMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, |
1049 | !IS_DERIVED, IS_ORDERED); | 1122 | !IS_DERIVED, IS_ORDERED); |
1050 | 1123 | ||
1124 | initEClass(unboundedMultiplicityEClass, UnboundedMultiplicity.class, "UnboundedMultiplicity", !IS_ABSTRACT, | ||
1125 | !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
1126 | |||
1127 | initEClass(argumentEClass, Argument.class, "Argument", !IS_ABSTRACT, !IS_INTERFACE, | ||
1128 | IS_GENERATED_INSTANCE_CLASS); | ||
1129 | initEReference(getArgument_Variable(), this.getVariable(), null, "variable", null, 0, 1, Argument.class, | ||
1130 | !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, | ||
1131 | IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
1132 | initEReference(getArgument_SingletonVariable(), this.getImplicitVariable(), null, "singletonVariable", null, 0, | ||
1133 | 1, Argument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, | ||
1134 | !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
1135 | |||
1051 | // Initialize enums and add enum literals | 1136 | // Initialize enums and add enum literals |
1052 | initEEnum(logicValueEEnum, LogicValue.class, "LogicValue"); | 1137 | initEEnum(logicValueEEnum, LogicValue.class, "LogicValue"); |
1053 | addEEnumLiteral(logicValueEEnum, LogicValue.TRUE); | 1138 | addEEnumLiteral(logicValueEEnum, LogicValue.TRUE); |
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/UnboundedMultiplicityImpl.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/UnboundedMultiplicityImpl.java new file mode 100644 index 00000000..34283189 --- /dev/null +++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/UnboundedMultiplicityImpl.java | |||
@@ -0,0 +1,37 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package org.eclipse.viatra.solver.language.model.problem.impl; | ||
4 | |||
5 | import org.eclipse.emf.ecore.EClass; | ||
6 | |||
7 | import org.eclipse.viatra.solver.language.model.problem.ProblemPackage; | ||
8 | import org.eclipse.viatra.solver.language.model.problem.UnboundedMultiplicity; | ||
9 | |||
10 | /** | ||
11 | * <!-- begin-user-doc --> | ||
12 | * An implementation of the model object '<em><b>Unbounded Multiplicity</b></em>'. | ||
13 | * <!-- end-user-doc --> | ||
14 | * | ||
15 | * @generated | ||
16 | */ | ||
17 | public class UnboundedMultiplicityImpl extends MultiplicityImpl implements UnboundedMultiplicity { | ||
18 | /** | ||
19 | * <!-- begin-user-doc --> | ||
20 | * <!-- end-user-doc --> | ||
21 | * @generated | ||
22 | */ | ||
23 | protected UnboundedMultiplicityImpl() { | ||
24 | super(); | ||
25 | } | ||
26 | |||
27 | /** | ||
28 | * <!-- begin-user-doc --> | ||
29 | * <!-- end-user-doc --> | ||
30 | * @generated | ||
31 | */ | ||
32 | @Override | ||
33 | protected EClass eStaticClass() { | ||
34 | return ProblemPackage.Literals.UNBOUNDED_MULTIPLICITY; | ||
35 | } | ||
36 | |||
37 | } //UnboundedMultiplicityImpl | ||
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemAdapterFactory.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemAdapterFactory.java index f228f54a..c41a4034 100644 --- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemAdapterFactory.java +++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemAdapterFactory.java | |||
@@ -177,6 +177,16 @@ public class ProblemAdapterFactory extends AdapterFactoryImpl { | |||
177 | } | 177 | } |
178 | 178 | ||
179 | @Override | 179 | @Override |
180 | public Adapter caseUnboundedMultiplicity(UnboundedMultiplicity object) { | ||
181 | return createUnboundedMultiplicityAdapter(); | ||
182 | } | ||
183 | |||
184 | @Override | ||
185 | public Adapter caseArgument(Argument object) { | ||
186 | return createArgumentAdapter(); | ||
187 | } | ||
188 | |||
189 | @Override | ||
180 | public Adapter defaultCase(EObject object) { | 190 | public Adapter defaultCase(EObject object) { |
181 | return createEObjectAdapter(); | 191 | return createEObjectAdapter(); |
182 | } | 192 | } |
@@ -504,6 +514,34 @@ public class ProblemAdapterFactory extends AdapterFactoryImpl { | |||
504 | } | 514 | } |
505 | 515 | ||
506 | /** | 516 | /** |
517 | * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.UnboundedMultiplicity <em>Unbounded Multiplicity</em>}'. | ||
518 | * <!-- begin-user-doc --> | ||
519 | * This default implementation returns null so that we can easily ignore cases; | ||
520 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
521 | * <!-- end-user-doc --> | ||
522 | * @return the new adapter. | ||
523 | * @see org.eclipse.viatra.solver.language.model.problem.UnboundedMultiplicity | ||
524 | * @generated | ||
525 | */ | ||
526 | public Adapter createUnboundedMultiplicityAdapter() { | ||
527 | return null; | ||
528 | } | ||
529 | |||
530 | /** | ||
531 | * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.model.problem.Argument <em>Argument</em>}'. | ||
532 | * <!-- begin-user-doc --> | ||
533 | * This default implementation returns null so that we can easily ignore cases; | ||
534 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
535 | * <!-- end-user-doc --> | ||
536 | * @return the new adapter. | ||
537 | * @see org.eclipse.viatra.solver.language.model.problem.Argument | ||
538 | * @generated | ||
539 | */ | ||
540 | public Adapter createArgumentAdapter() { | ||
541 | return null; | ||
542 | } | ||
543 | |||
544 | /** | ||
507 | * Creates a new adapter for the default case. | 545 | * Creates a new adapter for the default case. |
508 | * <!-- begin-user-doc --> | 546 | * <!-- begin-user-doc --> |
509 | * This default implementation returns null. | 547 | * This default implementation returns null. |
diff --git a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemSwitch.java b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemSwitch.java index a9e1455b..361b663c 100644 --- a/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemSwitch.java +++ b/org.eclipse.viatra.solver.language.parent/org.eclipse.viatra.solver.language.model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/util/ProblemSwitch.java | |||
@@ -70,6 +70,8 @@ public class ProblemSwitch<T> extends Switch<T> { | |||
70 | Problem problem = (Problem) theEObject; | 70 | Problem problem = (Problem) theEObject; |
71 | T result = caseProblem(problem); | 71 | T result = caseProblem(problem); |
72 | if (result == null) | 72 | if (result == null) |
73 | result = caseNamedElement(problem); | ||
74 | if (result == null) | ||
73 | result = defaultCase(theEObject); | 75 | result = defaultCase(theEObject); |
74 | return result; | 76 | return result; |
75 | } | 77 | } |
@@ -266,6 +268,22 @@ public class ProblemSwitch<T> extends Switch<T> { | |||
266 | result = defaultCase(theEObject); | 268 | result = defaultCase(theEObject); |
267 | return result; | 269 | return result; |
268 | } | 270 | } |
271 | case ProblemPackage.UNBOUNDED_MULTIPLICITY: { | ||
272 | UnboundedMultiplicity unboundedMultiplicity = (UnboundedMultiplicity) theEObject; | ||
273 | T result = caseUnboundedMultiplicity(unboundedMultiplicity); | ||
274 | if (result == null) | ||
275 | result = caseMultiplicity(unboundedMultiplicity); | ||
276 | if (result == null) | ||
277 | result = defaultCase(theEObject); | ||
278 | return result; | ||
279 | } | ||
280 | case ProblemPackage.ARGUMENT: { | ||
281 | Argument argument = (Argument) theEObject; | ||
282 | T result = caseArgument(argument); | ||
283 | if (result == null) | ||
284 | result = defaultCase(theEObject); | ||
285 | return result; | ||
286 | } | ||
269 | default: | 287 | default: |
270 | return defaultCase(theEObject); | 288 | return defaultCase(theEObject); |
271 | } | 289 | } |
@@ -602,6 +620,36 @@ public class ProblemSwitch<T> extends Switch<T> { | |||
602 | } | 620 | } |
603 | 621 | ||
604 | /** | 622 | /** |
623 | * Returns the result of interpreting the object as an instance of '<em>Unbounded Multiplicity</em>'. | ||
624 | * <!-- begin-user-doc --> | ||
625 | * This implementation returns null; | ||
626 | * returning a non-null result will terminate the switch. | ||
627 | * <!-- end-user-doc --> | ||
628 | * @param object the target of the switch. | ||
629 | * @return the result of interpreting the object as an instance of '<em>Unbounded Multiplicity</em>'. | ||
630 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
631 | * @generated | ||
632 | */ | ||
633 | public T caseUnboundedMultiplicity(UnboundedMultiplicity object) { | ||
634 | return null; | ||
635 | } | ||
636 | |||
637 | /** | ||
638 | * Returns the result of interpreting the object as an instance of '<em>Argument</em>'. | ||
639 | * <!-- begin-user-doc --> | ||
640 | * This implementation returns null; | ||
641 | * returning a non-null result will terminate the switch. | ||
642 | * <!-- end-user-doc --> | ||
643 | * @param object the target of the switch. | ||
644 | * @return the result of interpreting the object as an instance of '<em>Argument</em>'. | ||
645 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
646 | * @generated | ||
647 | */ | ||
648 | public T caseArgument(Argument object) { | ||
649 | return null; | ||
650 | } | ||
651 | |||
652 | /** | ||
605 | * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. | 653 | * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. |
606 | * <!-- begin-user-doc --> | 654 | * <!-- begin-user-doc --> |
607 | * This implementation returns null; | 655 | * This implementation returns null; |