diff options
author | 2020-06-23 15:17:00 +0200 | |
---|---|---|
committer | 2020-06-23 15:17:00 +0200 | |
commit | 42c58bbeead1dae09c51f47abc8e10dfbb9c3f9f (patch) | |
tree | 21d49c3a1dadc54dda399a4b8cfe8dc028563f51 /Application/org.eclipse.viatra.solver.language/model | |
parent | Measurements framework fixes (diff) | |
download | VIATRA-Generator-42c58bbeead1dae09c51f47abc8e10dfbb9c3f9f.tar.gz VIATRA-Generator-42c58bbeead1dae09c51f47abc8e10dfbb9c3f9f.tar.zst VIATRA-Generator-42c58bbeead1dae09c51f47abc8e10dfbb9c3f9f.zip |
New configuration language parser WIP
Diffstat (limited to 'Application/org.eclipse.viatra.solver.language/model')
-rw-r--r-- | Application/org.eclipse.viatra.solver.language/model/SolverLanguage.ecore | 291 | ||||
-rw-r--r-- | Application/org.eclipse.viatra.solver.language/model/SolverLanguage.genmodel | 249 |
2 files changed, 0 insertions, 540 deletions
diff --git a/Application/org.eclipse.viatra.solver.language/model/SolverLanguage.ecore b/Application/org.eclipse.viatra.solver.language/model/SolverLanguage.ecore deleted file mode 100644 index 905e5a90..00000000 --- a/Application/org.eclipse.viatra.solver.language/model/SolverLanguage.ecore +++ /dev/null | |||
@@ -1,291 +0,0 @@ | |||
1 | <?xml version="1.0" encoding="UTF-8"?> | ||
2 | <ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
3 | xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="solverLanguage" nsURI="http://www.eclipse.org/viatra/solver/language/SolverLanguage" | ||
4 | nsPrefix="solverLanguage"> | ||
5 | <eClassifiers xsi:type="ecore:EClass" name="Problem"> | ||
6 | <eStructuralFeatures xsi:type="ecore:EReference" name="statements" upperBound="-1" | ||
7 | eType="#//Statement" containment="true"/> | ||
8 | </eClassifiers> | ||
9 | <eClassifiers xsi:type="ecore:EClass" name="Statement"/> | ||
10 | <eClassifiers xsi:type="ecore:EClass" name="PredicateDefinition" eSuperTypes="#//Statement"> | ||
11 | <eStructuralFeatures xsi:type="ecore:EReference" name="head" eType="#//Expression" | ||
12 | containment="true"/> | ||
13 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" | ||
14 | containment="true"/> | ||
15 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="functional" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> | ||
16 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="error" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> | ||
17 | </eClassifiers> | ||
18 | <eClassifiers xsi:type="ecore:EClass" name="UnnamedErrorPrediateDefinition" eSuperTypes="#//Statement"> | ||
19 | <eStructuralFeatures xsi:type="ecore:EReference" name="argumentList" eType="#//ArgumentList" | ||
20 | containment="true"/> | ||
21 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" | ||
22 | containment="true"/> | ||
23 | </eClassifiers> | ||
24 | <eClassifiers xsi:type="ecore:EClass" name="DefaultDefinition" eSuperTypes="#//Statement"> | ||
25 | <eStructuralFeatures xsi:type="ecore:EReference" name="head" eType="#//Call" containment="true"/> | ||
26 | <eStructuralFeatures xsi:type="ecore:EReference" name="range" eType="#//Expression" | ||
27 | containment="true"/> | ||
28 | </eClassifiers> | ||
29 | <eClassifiers xsi:type="ecore:EClass" name="MetricDefinition" eSuperTypes="#//Statement"> | ||
30 | <eStructuralFeatures xsi:type="ecore:EReference" name="head" eType="#//Expression" | ||
31 | containment="true"/> | ||
32 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" | ||
33 | containment="true"/> | ||
34 | <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//NamedElement"/> | ||
35 | </eClassifiers> | ||
36 | <eClassifiers xsi:type="ecore:EClass" name="ExternPredicateDefinition" eSuperTypes="#//Statement"> | ||
37 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> | ||
38 | <eStructuralFeatures xsi:type="ecore:EReference" name="argumentList" eType="#//ArgumentList" | ||
39 | containment="true"/> | ||
40 | </eClassifiers> | ||
41 | <eClassifiers xsi:type="ecore:EClass" name="ExternMetricDefinition" eSuperTypes="#//Statement"> | ||
42 | <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//NamedElement"/> | ||
43 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> | ||
44 | <eStructuralFeatures xsi:type="ecore:EReference" name="argumentList" eType="#//ArgumentList" | ||
45 | containment="true"/> | ||
46 | </eClassifiers> | ||
47 | <eClassifiers xsi:type="ecore:EClass" name="ExternAggregatorDefinition" eSuperTypes="#//Statement"> | ||
48 | <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//NamedElement"/> | ||
49 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> | ||
50 | <eStructuralFeatures xsi:type="ecore:EReference" name="inputType" eType="#//NamedElement"/> | ||
51 | </eClassifiers> | ||
52 | <eClassifiers xsi:type="ecore:EClass" name="ExternDatatypeDefinition" eSuperTypes="#//Statement"> | ||
53 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> | ||
54 | <eStructuralFeatures xsi:type="ecore:EReference" name="supertypes" unique="false" | ||
55 | upperBound="-1" eType="#//NamedElement"/> | ||
56 | </eClassifiers> | ||
57 | <eClassifiers xsi:type="ecore:EClass" name="NamedElement"> | ||
58 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> | ||
59 | </eClassifiers> | ||
60 | <eClassifiers xsi:type="ecore:EClass" name="Expression" abstract="true" eSuperTypes="#//Statement"/> | ||
61 | <eClassifiers xsi:type="ecore:EClass" name="IfElse" eSuperTypes="#//Expression"> | ||
62 | <eStructuralFeatures xsi:type="ecore:EReference" name="then" eType="#//Expression" | ||
63 | containment="true"/> | ||
64 | <eStructuralFeatures xsi:type="ecore:EReference" name="else" eType="#//Expression" | ||
65 | containment="true"/> | ||
66 | <eStructuralFeatures xsi:type="ecore:EReference" name="condition" eType="#//Expression" | ||
67 | containment="true"/> | ||
68 | </eClassifiers> | ||
69 | <eClassifiers xsi:type="ecore:EClass" name="Let" eSuperTypes="#//Expression"> | ||
70 | <eStructuralFeatures xsi:type="ecore:EReference" name="bindings" upperBound="-1" | ||
71 | eType="#//LetBinding" containment="true"/> | ||
72 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" | ||
73 | containment="true"/> | ||
74 | </eClassifiers> | ||
75 | <eClassifiers xsi:type="ecore:EClass" name="LetBinding"> | ||
76 | <eStructuralFeatures xsi:type="ecore:EReference" name="variable" eType="#//NamedElement" | ||
77 | containment="true"/> | ||
78 | <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="#//Expression" | ||
79 | containment="true"/> | ||
80 | </eClassifiers> | ||
81 | <eClassifiers xsi:type="ecore:EClass" name="Case" eSuperTypes="#//Expression"> | ||
82 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" | ||
83 | containment="true"/> | ||
84 | <eStructuralFeatures xsi:type="ecore:EReference" name="condition" eType="#//Expression" | ||
85 | containment="true"/> | ||
86 | </eClassifiers> | ||
87 | <eClassifiers xsi:type="ecore:EEnum" name="BinaryOperator"> | ||
88 | <eLiterals name="EQ" literal="EQ"/> | ||
89 | <eLiterals name="NOT_EQ" value="1" literal="NOT_EQ"/> | ||
90 | <eLiterals name="LESS" value="2" literal="LESS"/> | ||
91 | <eLiterals name="LESS_EQ" value="3" literal="LESS_EQ"/> | ||
92 | <eLiterals name="GREATER" value="4" literal="GREATER"/> | ||
93 | <eLiterals name="GREATER_EQ" value="5" literal="GREATER_EQ"/> | ||
94 | <eLiterals name="IN" value="6" literal="IN"/> | ||
95 | <eLiterals name="ADD" value="7" literal="ADD"/> | ||
96 | <eLiterals name="SUB" value="8" literal="SUB"/> | ||
97 | <eLiterals name="MUL" value="9" literal="MUL"/> | ||
98 | <eLiterals name="DIV" value="10" literal="DIV"/> | ||
99 | <eLiterals name="POW" value="11" literal="POW"/> | ||
100 | <eLiterals name="IMPLIES" value="12"/> | ||
101 | </eClassifiers> | ||
102 | <eClassifiers xsi:type="ecore:EEnum" name="UnaryOp"> | ||
103 | <eLiterals name="NEG" literal="!"/> | ||
104 | <eLiterals name="PLUS" value="1" literal="+"/> | ||
105 | <eLiterals name="MINUS" value="2" literal="-"/> | ||
106 | <eLiterals name="MAY" value="3" literal="may"/> | ||
107 | <eLiterals name="MUST" value="4" literal="must"/> | ||
108 | <eLiterals name="CURRENT" value="5" literal="current"/> | ||
109 | </eClassifiers> | ||
110 | <eClassifiers xsi:type="ecore:EClass" name="LocalVariables"> | ||
111 | <eStructuralFeatures xsi:type="ecore:EReference" name="variables" upperBound="-1" | ||
112 | eType="#//NamedElement" containment="true"/> | ||
113 | </eClassifiers> | ||
114 | <eClassifiers xsi:type="ecore:EClass" name="QuantifiedExpression" eSuperTypes="#//Expression"> | ||
115 | <eStructuralFeatures xsi:type="ecore:EReference" name="localVariables" eType="#//LocalVariables" | ||
116 | containment="true"/> | ||
117 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" | ||
118 | containment="true"/> | ||
119 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="quantifier" eType="#//Quantifier"/> | ||
120 | </eClassifiers> | ||
121 | <eClassifiers xsi:type="ecore:EClass" name="Aggregation" eSuperTypes="#//Expression"> | ||
122 | <eStructuralFeatures xsi:type="ecore:EReference" name="op" eType="#//NamedElement"/> | ||
123 | <eStructuralFeatures xsi:type="ecore:EReference" name="localVariables" eType="#//LocalVariables" | ||
124 | containment="true"/> | ||
125 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" | ||
126 | containment="true"/> | ||
127 | <eStructuralFeatures xsi:type="ecore:EReference" name="condition" eType="#//Expression" | ||
128 | containment="true"/> | ||
129 | </eClassifiers> | ||
130 | <eClassifiers xsi:type="ecore:EClass" name="Call" eSuperTypes="#//Expression"> | ||
131 | <eStructuralFeatures xsi:type="ecore:EReference" name="functor" eType="#//Reference" | ||
132 | containment="true"/> | ||
133 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="transitiveClosure" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> | ||
134 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="reflexiveTransitiveClosure" | ||
135 | eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> | ||
136 | <eStructuralFeatures xsi:type="ecore:EReference" name="argumentList" eType="#//ArgumentList" | ||
137 | containment="true"/> | ||
138 | </eClassifiers> | ||
139 | <eClassifiers xsi:type="ecore:EClass" name="ArgumentList"> | ||
140 | <eStructuralFeatures xsi:type="ecore:EReference" name="arguments" upperBound="-1" | ||
141 | eType="#//Argument" containment="true"/> | ||
142 | </eClassifiers> | ||
143 | <eClassifiers xsi:type="ecore:EClass" name="Argument"/> | ||
144 | <eClassifiers xsi:type="ecore:EClass" name="ExpressionArgument" eSuperTypes="#//Argument"> | ||
145 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" | ||
146 | containment="true"/> | ||
147 | </eClassifiers> | ||
148 | <eClassifiers xsi:type="ecore:EClass" name="StarArgument" eSuperTypes="#//Argument"/> | ||
149 | <eClassifiers xsi:type="ecore:EClass" name="TypedArgument" eSuperTypes="#//Argument"> | ||
150 | <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//NamedElement"/> | ||
151 | <eStructuralFeatures xsi:type="ecore:EReference" name="variable" eType="#//NamedElement"/> | ||
152 | </eClassifiers> | ||
153 | <eClassifiers xsi:type="ecore:EClass" name="TypedStarArgument" eSuperTypes="#//Argument"> | ||
154 | <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//NamedElement"/> | ||
155 | </eClassifiers> | ||
156 | <eClassifiers xsi:type="ecore:EClass" name="Reference" eSuperTypes="#//Expression"> | ||
157 | <eStructuralFeatures xsi:type="ecore:EReference" name="referred" eType="#//NamedElement"/> | ||
158 | </eClassifiers> | ||
159 | <eClassifiers xsi:type="ecore:EClass" name="Interval" eSuperTypes="#//Expression"> | ||
160 | <eStructuralFeatures xsi:type="ecore:EReference" name="lowerBound" eType="#//Expression" | ||
161 | containment="true"/> | ||
162 | <eStructuralFeatures xsi:type="ecore:EReference" name="upperBound" eType="#//Expression" | ||
163 | containment="true"/> | ||
164 | </eClassifiers> | ||
165 | <eClassifiers xsi:type="ecore:EClass" name="Literal" eSuperTypes="#//Expression"/> | ||
166 | <eClassifiers xsi:type="ecore:EEnum" name="LogicValue"> | ||
167 | <eLiterals name="TRUE" literal="true"/> | ||
168 | <eLiterals name="FALSE" value="1" literal="false"/> | ||
169 | <eLiterals name="UNKNOWN" value="2" literal="unknown"/> | ||
170 | <eLiterals name="ERROR" value="3" literal="error"/> | ||
171 | </eClassifiers> | ||
172 | <eClassifiers xsi:type="ecore:EClass" name="LogicLiteral" eSuperTypes="#//Literal"> | ||
173 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="#//LogicValue"/> | ||
174 | </eClassifiers> | ||
175 | <eClassifiers xsi:type="ecore:EClass" name="NumericLiteral" eSuperTypes="#//Literal"> | ||
176 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBigDecimal"/> | ||
177 | </eClassifiers> | ||
178 | <eClassifiers xsi:type="ecore:EClass" name="InfinityLiteral" eSuperTypes="#//Literal"/> | ||
179 | <eClassifiers xsi:type="ecore:EClass" name="EmptyIntervalLiteral" eSuperTypes="#//Literal"/> | ||
180 | <eClassifiers xsi:type="ecore:EClass" name="StringLiteral" eSuperTypes="#//Literal"> | ||
181 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> | ||
182 | </eClassifiers> | ||
183 | <eClassifiers xsi:type="ecore:EClass" name="ClassDefinition" eSuperTypes="#//Statement"> | ||
184 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="abstract" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> | ||
185 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> | ||
186 | <eStructuralFeatures xsi:type="ecore:EReference" name="superclasses" unique="false" | ||
187 | upperBound="-1" eType="#//NamedElement"/> | ||
188 | <eStructuralFeatures xsi:type="ecore:EReference" name="members" upperBound="-1" | ||
189 | eType="#//MemberDefinition" containment="true"/> | ||
190 | </eClassifiers> | ||
191 | <eClassifiers xsi:type="ecore:EClass" name="MemberDefinition"> | ||
192 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="containment" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> | ||
193 | <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//NamedElement"/> | ||
194 | <eStructuralFeatures xsi:type="ecore:EReference" name="multiplicity" eType="#//Multiplicity" | ||
195 | containment="true"/> | ||
196 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> | ||
197 | <eStructuralFeatures xsi:type="ecore:EReference" name="opposite" eType="#//NamedElement"/> | ||
198 | </eClassifiers> | ||
199 | <eClassifiers xsi:type="ecore:EClass" name="Multiplicity"/> | ||
200 | <eClassifiers xsi:type="ecore:EClass" name="ManyMultiplicity" eSuperTypes="#//Multiplicity"/> | ||
201 | <eClassifiers xsi:type="ecore:EClass" name="ExactMultiplicity" eSuperTypes="#//Multiplicity"> | ||
202 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> | ||
203 | </eClassifiers> | ||
204 | <eClassifiers xsi:type="ecore:EClass" name="BoundedMultiplicity" eSuperTypes="#//Multiplicity"> | ||
205 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="lowerBound" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> | ||
206 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="upperBound" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> | ||
207 | </eClassifiers> | ||
208 | <eClassifiers xsi:type="ecore:EClass" name="ScopeDefinition" eSuperTypes="#//Statement"> | ||
209 | <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//NamedElement"/> | ||
210 | </eClassifiers> | ||
211 | <eClassifiers xsi:type="ecore:EClass" name="ExactScopeDefinition" eSuperTypes="#//ScopeDefinition"> | ||
212 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="exactScope" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> | ||
213 | </eClassifiers> | ||
214 | <eClassifiers xsi:type="ecore:EClass" name="BoundedScopeDefinition" eSuperTypes="#//ScopeDefinition"> | ||
215 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="lowerBound" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> | ||
216 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="upperBound" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> | ||
217 | </eClassifiers> | ||
218 | <eClassifiers xsi:type="ecore:EClass" name="LowerBoundedScopeDefinition" eSuperTypes="#//ScopeDefinition"> | ||
219 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="lowerBound" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> | ||
220 | </eClassifiers> | ||
221 | <eClassifiers xsi:type="ecore:EEnum" name="ObjectiveKind"> | ||
222 | <eLiterals name="MINIMIZE" literal="minimize"/> | ||
223 | <eLiterals name="MAXIMIZE" value="1" literal="maximize"/> | ||
224 | </eClassifiers> | ||
225 | <eClassifiers xsi:type="ecore:EClass" name="ObjectiveDefinition" eSuperTypes="#//Statement"> | ||
226 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="#//ObjectiveKind"/> | ||
227 | <eStructuralFeatures xsi:type="ecore:EReference" name="objective" eType="#//Expression" | ||
228 | containment="true"/> | ||
229 | </eClassifiers> | ||
230 | <eClassifiers xsi:type="ecore:EClass" name="Interpretation" eSuperTypes="#//Statement"> | ||
231 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" | ||
232 | containment="true"/> | ||
233 | <eStructuralFeatures xsi:type="ecore:EReference" name="range" eType="#//Expression" | ||
234 | containment="true"/> | ||
235 | </eClassifiers> | ||
236 | <eClassifiers xsi:type="ecore:EClass" name="Variable" eSuperTypes="#//NamedElement"> | ||
237 | <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//NamedElement"/> | ||
238 | </eClassifiers> | ||
239 | <eClassifiers xsi:type="ecore:EClass" name="Disjunction" eSuperTypes="#//Expression"> | ||
240 | <eStructuralFeatures xsi:type="ecore:EReference" name="children" upperBound="-1" | ||
241 | eType="#//Expression" containment="true"/> | ||
242 | </eClassifiers> | ||
243 | <eClassifiers xsi:type="ecore:EClass" name="Switch" eSuperTypes="#//Expression"> | ||
244 | <eStructuralFeatures xsi:type="ecore:EReference" name="cases" upperBound="-1" | ||
245 | eType="#//Case" containment="true"/> | ||
246 | </eClassifiers> | ||
247 | <eClassifiers xsi:type="ecore:EClass" name="Conjunction" eSuperTypes="#//Expression"> | ||
248 | <eStructuralFeatures xsi:type="ecore:EReference" name="children" upperBound="-1" | ||
249 | eType="#//Expression" containment="true"/> | ||
250 | </eClassifiers> | ||
251 | <eClassifiers xsi:type="ecore:EClass" name="Comparison" eSuperTypes="#//Expression"> | ||
252 | <eStructuralFeatures xsi:type="ecore:EReference" name="left" eType="#//Expression" | ||
253 | containment="true"/> | ||
254 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="op" eType="#//BinaryOperator"/> | ||
255 | <eStructuralFeatures xsi:type="ecore:EReference" name="right" eType="#//Expression" | ||
256 | containment="true"/> | ||
257 | </eClassifiers> | ||
258 | <eClassifiers xsi:type="ecore:EClass" name="BinaryExpression" eSuperTypes="#//Expression"> | ||
259 | <eStructuralFeatures xsi:type="ecore:EReference" name="left" eType="#//Expression" | ||
260 | containment="true"/> | ||
261 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="op" eType="#//BinaryOperator"/> | ||
262 | <eStructuralFeatures xsi:type="ecore:EReference" name="right" eType="#//Expression" | ||
263 | containment="true"/> | ||
264 | </eClassifiers> | ||
265 | <eClassifiers xsi:type="ecore:EClass" name="CastExpression" eSuperTypes="#//Expression"> | ||
266 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" | ||
267 | containment="true"/> | ||
268 | <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//NamedElement"/> | ||
269 | </eClassifiers> | ||
270 | <eClassifiers xsi:type="ecore:EClass" name="UnaryExpression" eSuperTypes="#//Expression"> | ||
271 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="op" eType="#//UnaryOp"/> | ||
272 | <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//Expression" | ||
273 | containment="true"/> | ||
274 | </eClassifiers> | ||
275 | <eClassifiers xsi:type="ecore:EClass" name="Node" eSuperTypes="#//NamedElement"> | ||
276 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="withId" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> | ||
277 | </eClassifiers> | ||
278 | <eClassifiers xsi:type="ecore:EClass" name="Functor" abstract="true" eSuperTypes="#//NamedElement"> | ||
279 | <eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1" | ||
280 | eType="#//Variable"/> | ||
281 | </eClassifiers> | ||
282 | <eClassifiers xsi:type="ecore:EClass" name="Predicate" eSuperTypes="#//Functor"/> | ||
283 | <eClassifiers xsi:type="ecore:EClass" name="Metric" eSuperTypes="#//Functor"> | ||
284 | <eStructuralFeatures xsi:type="ecore:EReference" name="returnType" eType="#//NamedElement"/> | ||
285 | </eClassifiers> | ||
286 | <eClassifiers xsi:type="ecore:EEnum" name="Quantifier"> | ||
287 | <eLiterals name="EXISTS"/> | ||
288 | <eLiterals name="FORALL" value="1"/> | ||
289 | <eLiterals name="COUNT" value="2"/> | ||
290 | </eClassifiers> | ||
291 | </ecore:EPackage> | ||
diff --git a/Application/org.eclipse.viatra.solver.language/model/SolverLanguage.genmodel b/Application/org.eclipse.viatra.solver.language/model/SolverLanguage.genmodel deleted file mode 100644 index 2325d668..00000000 --- a/Application/org.eclipse.viatra.solver.language/model/SolverLanguage.genmodel +++ /dev/null | |||
@@ -1,249 +0,0 @@ | |||
1 | <?xml version="1.0" encoding="UTF-8"?> | ||
2 | <genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" | ||
3 | xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="generated by Xtext 2.21.0" modelDirectory="/org.eclipse.viatra.solver.language/ecore-gen" | ||
4 | modelPluginID="org.eclipse.viatra.solver.language" forceOverwrite="true" modelName="SolverLanguage" | ||
5 | updateClasspath="false" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" | ||
6 | importerID="org.eclipse.emf.importer.ecore" complianceLevel="8.0" copyrightFields="false" | ||
7 | runtimeVersion="2.20"> | ||
8 | <foreignModel>SolverLanguage.ecore</foreignModel> | ||
9 | <genPackages prefix="SolverLanguage" basePackage="org.eclipse.viatra.solver.language" | ||
10 | disposableProviderFactory="true" fileExtensions="vsc" ecorePackage="SolverLanguage.ecore#/"> | ||
11 | <genEnums typeSafeEnumCompatible="false" ecoreEnum="SolverLanguage.ecore#//BinaryOperator"> | ||
12 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//BinaryOperator/EQ"/> | ||
13 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//BinaryOperator/NOT_EQ"/> | ||
14 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//BinaryOperator/LESS"/> | ||
15 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//BinaryOperator/LESS_EQ"/> | ||
16 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//BinaryOperator/GREATER"/> | ||
17 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//BinaryOperator/GREATER_EQ"/> | ||
18 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//BinaryOperator/IN"/> | ||
19 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//BinaryOperator/ADD"/> | ||
20 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//BinaryOperator/SUB"/> | ||
21 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//BinaryOperator/MUL"/> | ||
22 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//BinaryOperator/DIV"/> | ||
23 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//BinaryOperator/POW"/> | ||
24 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//BinaryOperator/IMPLIES"/> | ||
25 | </genEnums> | ||
26 | <genEnums typeSafeEnumCompatible="false" ecoreEnum="SolverLanguage.ecore#//UnaryOp"> | ||
27 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//UnaryOp/NEG"/> | ||
28 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//UnaryOp/PLUS"/> | ||
29 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//UnaryOp/MINUS"/> | ||
30 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//UnaryOp/MAY"/> | ||
31 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//UnaryOp/MUST"/> | ||
32 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//UnaryOp/CURRENT"/> | ||
33 | </genEnums> | ||
34 | <genEnums typeSafeEnumCompatible="false" ecoreEnum="SolverLanguage.ecore#//LogicValue"> | ||
35 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//LogicValue/TRUE"/> | ||
36 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//LogicValue/FALSE"/> | ||
37 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//LogicValue/UNKNOWN"/> | ||
38 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//LogicValue/ERROR"/> | ||
39 | </genEnums> | ||
40 | <genEnums typeSafeEnumCompatible="false" ecoreEnum="SolverLanguage.ecore#//ObjectiveKind"> | ||
41 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//ObjectiveKind/MINIMIZE"/> | ||
42 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//ObjectiveKind/MAXIMIZE"/> | ||
43 | </genEnums> | ||
44 | <genEnums typeSafeEnumCompatible="false" ecoreEnum="SolverLanguage.ecore#//Quantifier"> | ||
45 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//Quantifier/EXISTS"/> | ||
46 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//Quantifier/FORALL"/> | ||
47 | <genEnumLiterals ecoreEnumLiteral="SolverLanguage.ecore#//Quantifier/COUNT"/> | ||
48 | </genEnums> | ||
49 | <genClasses ecoreClass="SolverLanguage.ecore#//Problem"> | ||
50 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Problem/statements"/> | ||
51 | </genClasses> | ||
52 | <genClasses ecoreClass="SolverLanguage.ecore#//Statement"/> | ||
53 | <genClasses ecoreClass="SolverLanguage.ecore#//PredicateDefinition"> | ||
54 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//PredicateDefinition/head"/> | ||
55 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//PredicateDefinition/body"/> | ||
56 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//PredicateDefinition/functional"/> | ||
57 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//PredicateDefinition/error"/> | ||
58 | </genClasses> | ||
59 | <genClasses ecoreClass="SolverLanguage.ecore#//UnnamedErrorPrediateDefinition"> | ||
60 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//UnnamedErrorPrediateDefinition/argumentList"/> | ||
61 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//UnnamedErrorPrediateDefinition/body"/> | ||
62 | </genClasses> | ||
63 | <genClasses ecoreClass="SolverLanguage.ecore#//DefaultDefinition"> | ||
64 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//DefaultDefinition/head"/> | ||
65 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//DefaultDefinition/range"/> | ||
66 | </genClasses> | ||
67 | <genClasses ecoreClass="SolverLanguage.ecore#//MetricDefinition"> | ||
68 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//MetricDefinition/head"/> | ||
69 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//MetricDefinition/body"/> | ||
70 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//MetricDefinition/type"/> | ||
71 | </genClasses> | ||
72 | <genClasses ecoreClass="SolverLanguage.ecore#//ExternPredicateDefinition"> | ||
73 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//ExternPredicateDefinition/name"/> | ||
74 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//ExternPredicateDefinition/argumentList"/> | ||
75 | </genClasses> | ||
76 | <genClasses ecoreClass="SolverLanguage.ecore#//ExternMetricDefinition"> | ||
77 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//ExternMetricDefinition/type"/> | ||
78 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//ExternMetricDefinition/name"/> | ||
79 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//ExternMetricDefinition/argumentList"/> | ||
80 | </genClasses> | ||
81 | <genClasses ecoreClass="SolverLanguage.ecore#//ExternAggregatorDefinition"> | ||
82 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//ExternAggregatorDefinition/type"/> | ||
83 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//ExternAggregatorDefinition/name"/> | ||
84 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//ExternAggregatorDefinition/inputType"/> | ||
85 | </genClasses> | ||
86 | <genClasses ecoreClass="SolverLanguage.ecore#//ExternDatatypeDefinition"> | ||
87 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//ExternDatatypeDefinition/name"/> | ||
88 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//ExternDatatypeDefinition/supertypes"/> | ||
89 | </genClasses> | ||
90 | <genClasses ecoreClass="SolverLanguage.ecore#//NamedElement"> | ||
91 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//NamedElement/name"/> | ||
92 | </genClasses> | ||
93 | <genClasses ecoreClass="SolverLanguage.ecore#//Expression"/> | ||
94 | <genClasses ecoreClass="SolverLanguage.ecore#//IfElse"> | ||
95 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//IfElse/then"/> | ||
96 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//IfElse/else"/> | ||
97 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//IfElse/condition"/> | ||
98 | </genClasses> | ||
99 | <genClasses ecoreClass="SolverLanguage.ecore#//Let"> | ||
100 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Let/bindings"/> | ||
101 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Let/body"/> | ||
102 | </genClasses> | ||
103 | <genClasses ecoreClass="SolverLanguage.ecore#//LetBinding"> | ||
104 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//LetBinding/variable"/> | ||
105 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//LetBinding/value"/> | ||
106 | </genClasses> | ||
107 | <genClasses ecoreClass="SolverLanguage.ecore#//Case"> | ||
108 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Case/body"/> | ||
109 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Case/condition"/> | ||
110 | </genClasses> | ||
111 | <genClasses ecoreClass="SolverLanguage.ecore#//LocalVariables"> | ||
112 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//LocalVariables/variables"/> | ||
113 | </genClasses> | ||
114 | <genClasses ecoreClass="SolverLanguage.ecore#//QuantifiedExpression"> | ||
115 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//QuantifiedExpression/localVariables"/> | ||
116 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//QuantifiedExpression/body"/> | ||
117 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//QuantifiedExpression/quantifier"/> | ||
118 | </genClasses> | ||
119 | <genClasses ecoreClass="SolverLanguage.ecore#//Aggregation"> | ||
120 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Aggregation/op"/> | ||
121 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Aggregation/localVariables"/> | ||
122 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Aggregation/body"/> | ||
123 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Aggregation/condition"/> | ||
124 | </genClasses> | ||
125 | <genClasses ecoreClass="SolverLanguage.ecore#//Call"> | ||
126 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Call/functor"/> | ||
127 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//Call/transitiveClosure"/> | ||
128 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//Call/reflexiveTransitiveClosure"/> | ||
129 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Call/argumentList"/> | ||
130 | </genClasses> | ||
131 | <genClasses ecoreClass="SolverLanguage.ecore#//ArgumentList"> | ||
132 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//ArgumentList/arguments"/> | ||
133 | </genClasses> | ||
134 | <genClasses ecoreClass="SolverLanguage.ecore#//Argument"/> | ||
135 | <genClasses ecoreClass="SolverLanguage.ecore#//ExpressionArgument"> | ||
136 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//ExpressionArgument/body"/> | ||
137 | </genClasses> | ||
138 | <genClasses ecoreClass="SolverLanguage.ecore#//StarArgument"/> | ||
139 | <genClasses ecoreClass="SolverLanguage.ecore#//TypedArgument"> | ||
140 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//TypedArgument/type"/> | ||
141 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//TypedArgument/variable"/> | ||
142 | </genClasses> | ||
143 | <genClasses ecoreClass="SolverLanguage.ecore#//TypedStarArgument"> | ||
144 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//TypedStarArgument/type"/> | ||
145 | </genClasses> | ||
146 | <genClasses ecoreClass="SolverLanguage.ecore#//Reference"> | ||
147 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Reference/referred"/> | ||
148 | </genClasses> | ||
149 | <genClasses ecoreClass="SolverLanguage.ecore#//Interval"> | ||
150 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Interval/lowerBound"/> | ||
151 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Interval/upperBound"/> | ||
152 | </genClasses> | ||
153 | <genClasses ecoreClass="SolverLanguage.ecore#//Literal"/> | ||
154 | <genClasses ecoreClass="SolverLanguage.ecore#//LogicLiteral"> | ||
155 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//LogicLiteral/value"/> | ||
156 | </genClasses> | ||
157 | <genClasses ecoreClass="SolverLanguage.ecore#//NumericLiteral"> | ||
158 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//NumericLiteral/value"/> | ||
159 | </genClasses> | ||
160 | <genClasses ecoreClass="SolverLanguage.ecore#//InfinityLiteral"/> | ||
161 | <genClasses ecoreClass="SolverLanguage.ecore#//EmptyIntervalLiteral"/> | ||
162 | <genClasses ecoreClass="SolverLanguage.ecore#//StringLiteral"> | ||
163 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//StringLiteral/value"/> | ||
164 | </genClasses> | ||
165 | <genClasses ecoreClass="SolverLanguage.ecore#//ClassDefinition"> | ||
166 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//ClassDefinition/abstract"/> | ||
167 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//ClassDefinition/name"/> | ||
168 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//ClassDefinition/superclasses"/> | ||
169 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//ClassDefinition/members"/> | ||
170 | </genClasses> | ||
171 | <genClasses ecoreClass="SolverLanguage.ecore#//MemberDefinition"> | ||
172 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//MemberDefinition/containment"/> | ||
173 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//MemberDefinition/type"/> | ||
174 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//MemberDefinition/multiplicity"/> | ||
175 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//MemberDefinition/name"/> | ||
176 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//MemberDefinition/opposite"/> | ||
177 | </genClasses> | ||
178 | <genClasses ecoreClass="SolverLanguage.ecore#//Multiplicity"/> | ||
179 | <genClasses ecoreClass="SolverLanguage.ecore#//ManyMultiplicity"/> | ||
180 | <genClasses ecoreClass="SolverLanguage.ecore#//ExactMultiplicity"> | ||
181 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//ExactMultiplicity/multiplicity"/> | ||
182 | </genClasses> | ||
183 | <genClasses ecoreClass="SolverLanguage.ecore#//BoundedMultiplicity"> | ||
184 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//BoundedMultiplicity/lowerBound"/> | ||
185 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//BoundedMultiplicity/upperBound"/> | ||
186 | </genClasses> | ||
187 | <genClasses ecoreClass="SolverLanguage.ecore#//ScopeDefinition"> | ||
188 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//ScopeDefinition/type"/> | ||
189 | </genClasses> | ||
190 | <genClasses ecoreClass="SolverLanguage.ecore#//ExactScopeDefinition"> | ||
191 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//ExactScopeDefinition/exactScope"/> | ||
192 | </genClasses> | ||
193 | <genClasses ecoreClass="SolverLanguage.ecore#//BoundedScopeDefinition"> | ||
194 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//BoundedScopeDefinition/lowerBound"/> | ||
195 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//BoundedScopeDefinition/upperBound"/> | ||
196 | </genClasses> | ||
197 | <genClasses ecoreClass="SolverLanguage.ecore#//LowerBoundedScopeDefinition"> | ||
198 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//LowerBoundedScopeDefinition/lowerBound"/> | ||
199 | </genClasses> | ||
200 | <genClasses ecoreClass="SolverLanguage.ecore#//ObjectiveDefinition"> | ||
201 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//ObjectiveDefinition/kind"/> | ||
202 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//ObjectiveDefinition/objective"/> | ||
203 | </genClasses> | ||
204 | <genClasses ecoreClass="SolverLanguage.ecore#//Interpretation"> | ||
205 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Interpretation/body"/> | ||
206 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Interpretation/range"/> | ||
207 | </genClasses> | ||
208 | <genClasses ecoreClass="SolverLanguage.ecore#//Variable"> | ||
209 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Variable/type"/> | ||
210 | </genClasses> | ||
211 | <genClasses ecoreClass="SolverLanguage.ecore#//Disjunction"> | ||
212 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Disjunction/children"/> | ||
213 | </genClasses> | ||
214 | <genClasses ecoreClass="SolverLanguage.ecore#//Switch"> | ||
215 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Switch/cases"/> | ||
216 | </genClasses> | ||
217 | <genClasses ecoreClass="SolverLanguage.ecore#//Conjunction"> | ||
218 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Conjunction/children"/> | ||
219 | </genClasses> | ||
220 | <genClasses ecoreClass="SolverLanguage.ecore#//Comparison"> | ||
221 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Comparison/left"/> | ||
222 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//Comparison/op"/> | ||
223 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Comparison/right"/> | ||
224 | </genClasses> | ||
225 | <genClasses ecoreClass="SolverLanguage.ecore#//BinaryExpression"> | ||
226 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//BinaryExpression/left"/> | ||
227 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//BinaryExpression/op"/> | ||
228 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//BinaryExpression/right"/> | ||
229 | </genClasses> | ||
230 | <genClasses ecoreClass="SolverLanguage.ecore#//CastExpression"> | ||
231 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//CastExpression/body"/> | ||
232 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//CastExpression/type"/> | ||
233 | </genClasses> | ||
234 | <genClasses ecoreClass="SolverLanguage.ecore#//UnaryExpression"> | ||
235 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//UnaryExpression/op"/> | ||
236 | <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//UnaryExpression/body"/> | ||
237 | </genClasses> | ||
238 | <genClasses ecoreClass="SolverLanguage.ecore#//Node"> | ||
239 | <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SolverLanguage.ecore#//Node/withId"/> | ||
240 | </genClasses> | ||
241 | <genClasses image="false" ecoreClass="SolverLanguage.ecore#//Functor"> | ||
242 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Functor/parameters"/> | ||
243 | </genClasses> | ||
244 | <genClasses ecoreClass="SolverLanguage.ecore#//Predicate"/> | ||
245 | <genClasses ecoreClass="SolverLanguage.ecore#//Metric"> | ||
246 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference SolverLanguage.ecore#//Metric/returnType"/> | ||
247 | </genClasses> | ||
248 | </genPackages> | ||
249 | </genmodel:GenModel> | ||