aboutsummaryrefslogtreecommitdiffstats
path: root/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSemanticSequencer.java
diff options
context:
space:
mode:
Diffstat (limited to 'Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSemanticSequencer.java')
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSemanticSequencer.java511
1 files changed, 392 insertions, 119 deletions
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSemanticSequencer.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSemanticSequencer.java
index 5cb73796..dc93975f 100644
--- a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSemanticSequencer.java
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSemanticSequencer.java
@@ -10,37 +10,42 @@ import org.eclipse.emf.ecore.EPackage;
10import org.eclipse.viatra.solver.language.services.SolverLanguageGrammarAccess; 10import org.eclipse.viatra.solver.language.services.SolverLanguageGrammarAccess;
11import org.eclipse.viatra.solver.language.solverLanguage.Aggregation; 11import org.eclipse.viatra.solver.language.solverLanguage.Aggregation;
12import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList; 12import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList;
13import org.eclipse.viatra.solver.language.solverLanguage.Assertion;
14import org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression; 13import org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression;
15import org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity; 14import org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity;
16import org.eclipse.viatra.solver.language.solverLanguage.BoundedScopeDefinition; 15import org.eclipse.viatra.solver.language.solverLanguage.BoundedScopeDefinition;
17import org.eclipse.viatra.solver.language.solverLanguage.Call; 16import org.eclipse.viatra.solver.language.solverLanguage.Call;
18import org.eclipse.viatra.solver.language.solverLanguage.Case; 17import org.eclipse.viatra.solver.language.solverLanguage.Case;
18import org.eclipse.viatra.solver.language.solverLanguage.CastExpression;
19import org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition; 19import org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition;
20import org.eclipse.viatra.solver.language.solverLanguage.Comparison; 20import org.eclipse.viatra.solver.language.solverLanguage.Comparison;
21import org.eclipse.viatra.solver.language.solverLanguage.Conjunction; 21import org.eclipse.viatra.solver.language.solverLanguage.Conjunction;
22import org.eclipse.viatra.solver.language.solverLanguage.Count;
23import org.eclipse.viatra.solver.language.solverLanguage.DefaultDefinition; 22import org.eclipse.viatra.solver.language.solverLanguage.DefaultDefinition;
24import org.eclipse.viatra.solver.language.solverLanguage.Disjunction; 23import org.eclipse.viatra.solver.language.solverLanguage.Disjunction;
25import org.eclipse.viatra.solver.language.solverLanguage.EmptyIntervalLiteral; 24import org.eclipse.viatra.solver.language.solverLanguage.EmptyIntervalLiteral;
26import org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity; 25import org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity;
27import org.eclipse.viatra.solver.language.solverLanguage.ExactScopeDefinition; 26import org.eclipse.viatra.solver.language.solverLanguage.ExactScopeDefinition;
28import org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument; 27import org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument;
28import org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition;
29import org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDefinition;
29import org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition; 30import org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition;
30import org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDefinition; 31import org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDefinition;
31import org.eclipse.viatra.solver.language.solverLanguage.IfElse; 32import org.eclipse.viatra.solver.language.solverLanguage.IfElse;
32import org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral; 33import org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral;
34import org.eclipse.viatra.solver.language.solverLanguage.Interpretation;
33import org.eclipse.viatra.solver.language.solverLanguage.Interval; 35import org.eclipse.viatra.solver.language.solverLanguage.Interval;
36import org.eclipse.viatra.solver.language.solverLanguage.Let;
37import org.eclipse.viatra.solver.language.solverLanguage.LetBinding;
38import org.eclipse.viatra.solver.language.solverLanguage.LocalVariables;
34import org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral; 39import org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral;
35import org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScopeDefinition; 40import org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScopeDefinition;
36import org.eclipse.viatra.solver.language.solverLanguage.ManyMultiplicity; 41import org.eclipse.viatra.solver.language.solverLanguage.ManyMultiplicity;
37import org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition; 42import org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition;
38import org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition; 43import org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition;
39import org.eclipse.viatra.solver.language.solverLanguage.NamedElement;
40import org.eclipse.viatra.solver.language.solverLanguage.NumericLiteral; 44import org.eclipse.viatra.solver.language.solverLanguage.NumericLiteral;
41import org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDefinition; 45import org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDefinition;
42import org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition; 46import org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition;
43import org.eclipse.viatra.solver.language.solverLanguage.Problem; 47import org.eclipse.viatra.solver.language.solverLanguage.Problem;
48import org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression;
44import org.eclipse.viatra.solver.language.solverLanguage.Reference; 49import org.eclipse.viatra.solver.language.solverLanguage.Reference;
45import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; 50import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
46import org.eclipse.viatra.solver.language.solverLanguage.StarArgument; 51import org.eclipse.viatra.solver.language.solverLanguage.StarArgument;
@@ -50,6 +55,7 @@ import org.eclipse.viatra.solver.language.solverLanguage.TypedArgument;
50import org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument; 55import org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument;
51import org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression; 56import org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression;
52import org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPrediateDefinition; 57import org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPrediateDefinition;
58import org.eclipse.viatra.solver.language.solverLanguage.Variable;
53import org.eclipse.xtext.Action; 59import org.eclipse.xtext.Action;
54import org.eclipse.xtext.Parameter; 60import org.eclipse.xtext.Parameter;
55import org.eclipse.xtext.ParserRule; 61import org.eclipse.xtext.ParserRule;
@@ -78,11 +84,8 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
78 case SolverLanguagePackage.ARGUMENT_LIST: 84 case SolverLanguagePackage.ARGUMENT_LIST:
79 sequence_ArgumentList(context, (ArgumentList) semanticObject); 85 sequence_ArgumentList(context, (ArgumentList) semanticObject);
80 return; 86 return;
81 case SolverLanguagePackage.ASSERTION:
82 sequence_AssertionOrDefinition(context, (Assertion) semanticObject);
83 return;
84 case SolverLanguagePackage.BINARY_EXPRESSION: 87 case SolverLanguagePackage.BINARY_EXPRESSION:
85 sequence_AdditiveExpression_ExponentialExpression_MultiplicativeExpression(context, (BinaryExpression) semanticObject); 88 sequence_AdditiveExpression_ExponentialExpression_ImplicationExpression_MultiplicativeExpression(context, (BinaryExpression) semanticObject);
86 return; 89 return;
87 case SolverLanguagePackage.BOUNDED_MULTIPLICITY: 90 case SolverLanguagePackage.BOUNDED_MULTIPLICITY:
88 sequence_BoundedMultiplicity(context, (BoundedMultiplicity) semanticObject); 91 sequence_BoundedMultiplicity(context, (BoundedMultiplicity) semanticObject);
@@ -103,6 +106,9 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
103 return; 106 return;
104 } 107 }
105 else break; 108 else break;
109 case SolverLanguagePackage.CAST_EXPRESSION:
110 sequence_CastExpression(context, (CastExpression) semanticObject);
111 return;
106 case SolverLanguagePackage.CLASS_DEFINITION: 112 case SolverLanguagePackage.CLASS_DEFINITION:
107 sequence_ClassDefinition(context, (ClassDefinition) semanticObject); 113 sequence_ClassDefinition(context, (ClassDefinition) semanticObject);
108 return; 114 return;
@@ -112,9 +118,6 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
112 case SolverLanguagePackage.CONJUNCTION: 118 case SolverLanguagePackage.CONJUNCTION:
113 sequence_ConjunctiveExpression(context, (Conjunction) semanticObject); 119 sequence_ConjunctiveExpression(context, (Conjunction) semanticObject);
114 return; 120 return;
115 case SolverLanguagePackage.COUNT:
116 sequence_Count(context, (Count) semanticObject);
117 return;
118 case SolverLanguagePackage.DEFAULT_DEFINITION: 121 case SolverLanguagePackage.DEFAULT_DEFINITION:
119 sequence_DefaultDefinition(context, (DefaultDefinition) semanticObject); 122 sequence_DefaultDefinition(context, (DefaultDefinition) semanticObject);
120 return; 123 return;
@@ -133,6 +136,12 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
133 case SolverLanguagePackage.EXPRESSION_ARGUMENT: 136 case SolverLanguagePackage.EXPRESSION_ARGUMENT:
134 sequence_ExpressionArgument(context, (ExpressionArgument) semanticObject); 137 sequence_ExpressionArgument(context, (ExpressionArgument) semanticObject);
135 return; 138 return;
139 case SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION:
140 sequence_ExternAggregatorDefinition(context, (ExternAggregatorDefinition) semanticObject);
141 return;
142 case SolverLanguagePackage.EXTERN_DATATYPE_DEFINITION:
143 sequence_ExternDatatypeDefinition(context, (ExternDatatypeDefinition) semanticObject);
144 return;
136 case SolverLanguagePackage.EXTERN_METRIC_DEFINITION: 145 case SolverLanguagePackage.EXTERN_METRIC_DEFINITION:
137 sequence_ExternMetricDefinition(context, (ExternMetricDefinition) semanticObject); 146 sequence_ExternMetricDefinition(context, (ExternMetricDefinition) semanticObject);
138 return; 147 return;
@@ -145,9 +154,21 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
145 case SolverLanguagePackage.INFINITY_LITERAL: 154 case SolverLanguagePackage.INFINITY_LITERAL:
146 sequence_InfinityLiteral(context, (InfinityLiteral) semanticObject); 155 sequence_InfinityLiteral(context, (InfinityLiteral) semanticObject);
147 return; 156 return;
157 case SolverLanguagePackage.INTERPRETATION:
158 sequence_AssertionOrDefinition(context, (Interpretation) semanticObject);
159 return;
148 case SolverLanguagePackage.INTERVAL: 160 case SolverLanguagePackage.INTERVAL:
149 sequence_Interval(context, (Interval) semanticObject); 161 sequence_Interval(context, (Interval) semanticObject);
150 return; 162 return;
163 case SolverLanguagePackage.LET:
164 sequence_Let(context, (Let) semanticObject);
165 return;
166 case SolverLanguagePackage.LET_BINDING:
167 sequence_LetBinding(context, (LetBinding) semanticObject);
168 return;
169 case SolverLanguagePackage.LOCAL_VARIABLES:
170 sequence_LocalVariables(context, (LocalVariables) semanticObject);
171 return;
151 case SolverLanguagePackage.LOGIC_LITERAL: 172 case SolverLanguagePackage.LOGIC_LITERAL:
152 sequence_LogicLiteral(context, (LogicLiteral) semanticObject); 173 sequence_LogicLiteral(context, (LogicLiteral) semanticObject);
153 return; 174 return;
@@ -174,9 +195,6 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
174 return; 195 return;
175 } 196 }
176 else break; 197 else break;
177 case SolverLanguagePackage.NAMED_ELEMENT:
178 sequence_NamedElement(context, (NamedElement) semanticObject);
179 return;
180 case SolverLanguagePackage.NUMERIC_LITERAL: 198 case SolverLanguagePackage.NUMERIC_LITERAL:
181 sequence_NumericLiteral(context, (NumericLiteral) semanticObject); 199 sequence_NumericLiteral(context, (NumericLiteral) semanticObject);
182 return; 200 return;
@@ -200,6 +218,9 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
200 case SolverLanguagePackage.PROBLEM: 218 case SolverLanguagePackage.PROBLEM:
201 sequence_Problem(context, (Problem) semanticObject); 219 sequence_Problem(context, (Problem) semanticObject);
202 return; 220 return;
221 case SolverLanguagePackage.QUANTIFIED_EXPRESSION:
222 sequence_QuantifiedExpression(context, (QuantifiedExpression) semanticObject);
223 return;
203 case SolverLanguagePackage.REFERENCE: 224 case SolverLanguagePackage.REFERENCE:
204 sequence_Reference(context, (Reference) semanticObject); 225 sequence_Reference(context, (Reference) semanticObject);
205 return; 226 return;
@@ -224,6 +245,9 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
224 case SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION: 245 case SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION:
225 sequence_UnnamedErrorPrediateDefinition(context, (UnnamedErrorPrediateDefinition) semanticObject); 246 sequence_UnnamedErrorPrediateDefinition(context, (UnnamedErrorPrediateDefinition) semanticObject);
226 return; 247 return;
248 case SolverLanguagePackage.VARIABLE:
249 sequence_Variable(context, (Variable) semanticObject);
250 return;
227 } 251 }
228 if (errorAcceptor != null) 252 if (errorAcceptor != null)
229 errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context)); 253 errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context));
@@ -231,10 +255,14 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
231 255
232 /** 256 /**
233 * Contexts: 257 * Contexts:
234 * AssertionOrDefinition.Assertion_1_0_0 returns BinaryExpression 258 * Statement returns BinaryExpression
259 * AssertionOrDefinition returns BinaryExpression
260 * AssertionOrDefinition.Interpretation_1_0_0 returns BinaryExpression
235 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns BinaryExpression 261 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns BinaryExpression
236 * AssertionOrDefinition.MetricDefinition_1_2_0 returns BinaryExpression 262 * AssertionOrDefinition.MetricDefinition_1_2_0 returns BinaryExpression
237 * Expression returns BinaryExpression 263 * Expression returns BinaryExpression
264 * ImplicationExpression returns BinaryExpression
265 * ImplicationExpression.BinaryExpression_1_0 returns BinaryExpression
238 * DisjunctiveExpression returns BinaryExpression 266 * DisjunctiveExpression returns BinaryExpression
239 * DisjunctiveExpression.Disjunction_1_0_0 returns BinaryExpression 267 * DisjunctiveExpression.Disjunction_1_0_0 returns BinaryExpression
240 * DisjunctiveExpression.Case_1_1_0 returns BinaryExpression 268 * DisjunctiveExpression.Case_1_1_0 returns BinaryExpression
@@ -248,28 +276,35 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
248 * MultiplicativeExpression.BinaryExpression_1_0 returns BinaryExpression 276 * MultiplicativeExpression.BinaryExpression_1_0 returns BinaryExpression
249 * ExponentialExpression returns BinaryExpression 277 * ExponentialExpression returns BinaryExpression
250 * ExponentialExpression.BinaryExpression_1_0 returns BinaryExpression 278 * ExponentialExpression.BinaryExpression_1_0 returns BinaryExpression
279 * CastExpression returns BinaryExpression
280 * CastExpression.CastExpression_1_0 returns BinaryExpression
251 * UnaryExpression returns BinaryExpression 281 * UnaryExpression returns BinaryExpression
252 * AggregationExpression returns BinaryExpression 282 * AggregationExpression returns BinaryExpression
253 * AtomicExpression returns BinaryExpression 283 * AtomicExpression returns BinaryExpression
254 * 284 *
255 * Constraint: 285 * Constraint:
256 * ( 286 * (
287 * (left=ImplicationExpression_BinaryExpression_1_0 op=ImplicationOperator right=ImplicationExpression) |
257 * (left=AdditiveExpression_BinaryExpression_1_0 op=AdditiveBinaryOperator right=MultiplicativeExpression) | 288 * (left=AdditiveExpression_BinaryExpression_1_0 op=AdditiveBinaryOperator right=MultiplicativeExpression) |
258 * (left=MultiplicativeExpression_BinaryExpression_1_0 op=MultiplicativeBinaryOperator right=ExponentialExpression) | 289 * (left=MultiplicativeExpression_BinaryExpression_1_0 op=MultiplicativeBinaryOperator right=ExponentialExpression) |
259 * (left=ExponentialExpression_BinaryExpression_1_0 op=ExponentialOp right=ExponentialExpression) 290 * (left=ExponentialExpression_BinaryExpression_1_0 op=ExponentialOp right=CastExpression)
260 * ) 291 * )
261 */ 292 */
262 protected void sequence_AdditiveExpression_ExponentialExpression_MultiplicativeExpression(ISerializationContext context, BinaryExpression semanticObject) { 293 protected void sequence_AdditiveExpression_ExponentialExpression_ImplicationExpression_MultiplicativeExpression(ISerializationContext context, BinaryExpression semanticObject) {
263 genericSequencer.createSequence(context, semanticObject); 294 genericSequencer.createSequence(context, semanticObject);
264 } 295 }
265 296
266 297
267 /** 298 /**
268 * Contexts: 299 * Contexts:
269 * AssertionOrDefinition.Assertion_1_0_0 returns Aggregation 300 * Statement returns Aggregation
301 * AssertionOrDefinition returns Aggregation
302 * AssertionOrDefinition.Interpretation_1_0_0 returns Aggregation
270 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Aggregation 303 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Aggregation
271 * AssertionOrDefinition.MetricDefinition_1_2_0 returns Aggregation 304 * AssertionOrDefinition.MetricDefinition_1_2_0 returns Aggregation
272 * Expression returns Aggregation 305 * Expression returns Aggregation
306 * ImplicationExpression returns Aggregation
307 * ImplicationExpression.BinaryExpression_1_0 returns Aggregation
273 * DisjunctiveExpression returns Aggregation 308 * DisjunctiveExpression returns Aggregation
274 * DisjunctiveExpression.Disjunction_1_0_0 returns Aggregation 309 * DisjunctiveExpression.Disjunction_1_0_0 returns Aggregation
275 * DisjunctiveExpression.Case_1_1_0 returns Aggregation 310 * DisjunctiveExpression.Case_1_1_0 returns Aggregation
@@ -283,28 +318,18 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
283 * MultiplicativeExpression.BinaryExpression_1_0 returns Aggregation 318 * MultiplicativeExpression.BinaryExpression_1_0 returns Aggregation
284 * ExponentialExpression returns Aggregation 319 * ExponentialExpression returns Aggregation
285 * ExponentialExpression.BinaryExpression_1_0 returns Aggregation 320 * ExponentialExpression.BinaryExpression_1_0 returns Aggregation
321 * CastExpression returns Aggregation
322 * CastExpression.CastExpression_1_0 returns Aggregation
286 * UnaryExpression returns Aggregation 323 * UnaryExpression returns Aggregation
287 * AggregationExpression returns Aggregation 324 * AggregationExpression returns Aggregation
288 * Aggregation returns Aggregation 325 * Aggregation returns Aggregation
289 * AtomicExpression returns Aggregation 326 * AtomicExpression returns Aggregation
290 * 327 *
291 * Constraint: 328 * Constraint:
292 * (op=AggregationOp body=Expression condition=Expression) 329 * (op=[NamedElement|QualifiedName] localVariables=LocalVariables? body=Expression condition=Expression?)
293 */ 330 */
294 protected void sequence_Aggregation(ISerializationContext context, Aggregation semanticObject) { 331 protected void sequence_Aggregation(ISerializationContext context, Aggregation semanticObject) {
295 if (errorAcceptor != null) { 332 genericSequencer.createSequence(context, semanticObject);
296 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.AGGREGATION__OP) == ValueTransient.YES)
297 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.AGGREGATION__OP));
298 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.AGGREGATION__BODY) == ValueTransient.YES)
299 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.AGGREGATION__BODY));
300 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.AGGREGATION__CONDITION) == ValueTransient.YES)
301 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.AGGREGATION__CONDITION));
302 }
303 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
304 feeder.accept(grammarAccess.getAggregationAccess().getOpAggregationOpEnumRuleCall_0_0(), semanticObject.getOp());
305 feeder.accept(grammarAccess.getAggregationAccess().getBodyExpressionParserRuleCall_2_0(), semanticObject.getBody());
306 feeder.accept(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_0(), semanticObject.getCondition());
307 feeder.finish();
308 } 333 }
309 334
310 335
@@ -322,14 +347,23 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
322 347
323 /** 348 /**
324 * Contexts: 349 * Contexts:
325 * Statement returns Assertion 350 * Statement returns Interpretation
326 * AssertionOrDefinition returns Assertion 351 * AssertionOrDefinition returns Interpretation
327 * 352 *
328 * Constraint: 353 * Constraint:
329 * (body=AssertionOrDefinition_Assertion_1_0_0 range=Expression?) 354 * (body=AssertionOrDefinition_Interpretation_1_0_0 range=Expression)
330 */ 355 */
331 protected void sequence_AssertionOrDefinition(ISerializationContext context, Assertion semanticObject) { 356 protected void sequence_AssertionOrDefinition(ISerializationContext context, Interpretation semanticObject) {
332 genericSequencer.createSequence(context, semanticObject); 357 if (errorAcceptor != null) {
358 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.INTERPRETATION__BODY) == ValueTransient.YES)
359 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.INTERPRETATION__BODY));
360 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.INTERPRETATION__RANGE) == ValueTransient.YES)
361 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.INTERPRETATION__RANGE));
362 }
363 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
364 feeder.accept(grammarAccess.getAssertionOrDefinitionAccess().getInterpretationBodyAction_1_0_0(), semanticObject.getBody());
365 feeder.accept(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_2_0(), semanticObject.getRange());
366 feeder.finish();
333 } 367 }
334 368
335 369
@@ -359,7 +393,7 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
359 * Statement returns MetricDefinition 393 * Statement returns MetricDefinition
360 * 394 *
361 * Constraint: 395 * Constraint:
362 * ((head=AssertionOrDefinition_MetricDefinition_1_2_0 body=Expression) | (type=MetricType head=Expression body=Expression)) 396 * ((head=AssertionOrDefinition_MetricDefinition_1_2_0 body=Expression) | (type=[NamedElement|QualifiedName] head=Call body=Expression))
363 */ 397 */
364 protected void sequence_AssertionOrDefinition_MetricDefinition(ISerializationContext context, MetricDefinition semanticObject) { 398 protected void sequence_AssertionOrDefinition_MetricDefinition(ISerializationContext context, MetricDefinition semanticObject) {
365 genericSequencer.createSequence(context, semanticObject); 399 genericSequencer.createSequence(context, semanticObject);
@@ -440,10 +474,14 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
440 474
441 /** 475 /**
442 * Contexts: 476 * Contexts:
443 * AssertionOrDefinition.Assertion_1_0_0 returns Call 477 * Statement returns Call
478 * AssertionOrDefinition returns Call
479 * AssertionOrDefinition.Interpretation_1_0_0 returns Call
444 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Call 480 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Call
445 * AssertionOrDefinition.MetricDefinition_1_2_0 returns Call 481 * AssertionOrDefinition.MetricDefinition_1_2_0 returns Call
446 * Expression returns Call 482 * Expression returns Call
483 * ImplicationExpression returns Call
484 * ImplicationExpression.BinaryExpression_1_0 returns Call
447 * DisjunctiveExpression returns Call 485 * DisjunctiveExpression returns Call
448 * DisjunctiveExpression.Disjunction_1_0_0 returns Call 486 * DisjunctiveExpression.Disjunction_1_0_0 returns Call
449 * DisjunctiveExpression.Case_1_1_0 returns Call 487 * DisjunctiveExpression.Case_1_1_0 returns Call
@@ -457,6 +495,8 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
457 * MultiplicativeExpression.BinaryExpression_1_0 returns Call 495 * MultiplicativeExpression.BinaryExpression_1_0 returns Call
458 * ExponentialExpression returns Call 496 * ExponentialExpression returns Call
459 * ExponentialExpression.BinaryExpression_1_0 returns Call 497 * ExponentialExpression.BinaryExpression_1_0 returns Call
498 * CastExpression returns Call
499 * CastExpression.CastExpression_1_0 returns Call
460 * UnaryExpression returns Call 500 * UnaryExpression returns Call
461 * AggregationExpression returns Call 501 * AggregationExpression returns Call
462 * AtomicExpression returns Call 502 * AtomicExpression returns Call
@@ -497,6 +537,52 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
497 537
498 /** 538 /**
499 * Contexts: 539 * Contexts:
540 * Statement returns CastExpression
541 * AssertionOrDefinition returns CastExpression
542 * AssertionOrDefinition.Interpretation_1_0_0 returns CastExpression
543 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns CastExpression
544 * AssertionOrDefinition.MetricDefinition_1_2_0 returns CastExpression
545 * Expression returns CastExpression
546 * ImplicationExpression returns CastExpression
547 * ImplicationExpression.BinaryExpression_1_0 returns CastExpression
548 * DisjunctiveExpression returns CastExpression
549 * DisjunctiveExpression.Disjunction_1_0_0 returns CastExpression
550 * DisjunctiveExpression.Case_1_1_0 returns CastExpression
551 * ConjunctiveExpression returns CastExpression
552 * ConjunctiveExpression.Conjunction_1_0 returns CastExpression
553 * ComparisonExpression returns CastExpression
554 * ComparisonExpression.Comparison_1_0 returns CastExpression
555 * AdditiveExpression returns CastExpression
556 * AdditiveExpression.BinaryExpression_1_0 returns CastExpression
557 * MultiplicativeExpression returns CastExpression
558 * MultiplicativeExpression.BinaryExpression_1_0 returns CastExpression
559 * ExponentialExpression returns CastExpression
560 * ExponentialExpression.BinaryExpression_1_0 returns CastExpression
561 * CastExpression returns CastExpression
562 * CastExpression.CastExpression_1_0 returns CastExpression
563 * UnaryExpression returns CastExpression
564 * AggregationExpression returns CastExpression
565 * AtomicExpression returns CastExpression
566 *
567 * Constraint:
568 * (body=CastExpression_CastExpression_1_0 type=[NamedElement|QualifiedName])
569 */
570 protected void sequence_CastExpression(ISerializationContext context, CastExpression semanticObject) {
571 if (errorAcceptor != null) {
572 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.CAST_EXPRESSION__BODY) == ValueTransient.YES)
573 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.CAST_EXPRESSION__BODY));
574 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.CAST_EXPRESSION__TYPE) == ValueTransient.YES)
575 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.CAST_EXPRESSION__TYPE));
576 }
577 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
578 feeder.accept(grammarAccess.getCastExpressionAccess().getCastExpressionBodyAction_1_0(), semanticObject.getBody());
579 feeder.accept(grammarAccess.getCastExpressionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_2_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.CAST_EXPRESSION__TYPE, false));
580 feeder.finish();
581 }
582
583
584 /**
585 * Contexts:
500 * Statement returns ClassDefinition 586 * Statement returns ClassDefinition
501 * ClassDefinition returns ClassDefinition 587 * ClassDefinition returns ClassDefinition
502 * 588 *
@@ -515,10 +601,14 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
515 601
516 /** 602 /**
517 * Contexts: 603 * Contexts:
518 * AssertionOrDefinition.Assertion_1_0_0 returns Comparison 604 * Statement returns Comparison
605 * AssertionOrDefinition returns Comparison
606 * AssertionOrDefinition.Interpretation_1_0_0 returns Comparison
519 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Comparison 607 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Comparison
520 * AssertionOrDefinition.MetricDefinition_1_2_0 returns Comparison 608 * AssertionOrDefinition.MetricDefinition_1_2_0 returns Comparison
521 * Expression returns Comparison 609 * Expression returns Comparison
610 * ImplicationExpression returns Comparison
611 * ImplicationExpression.BinaryExpression_1_0 returns Comparison
522 * DisjunctiveExpression returns Comparison 612 * DisjunctiveExpression returns Comparison
523 * DisjunctiveExpression.Disjunction_1_0_0 returns Comparison 613 * DisjunctiveExpression.Disjunction_1_0_0 returns Comparison
524 * DisjunctiveExpression.Case_1_1_0 returns Comparison 614 * DisjunctiveExpression.Case_1_1_0 returns Comparison
@@ -532,6 +622,8 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
532 * MultiplicativeExpression.BinaryExpression_1_0 returns Comparison 622 * MultiplicativeExpression.BinaryExpression_1_0 returns Comparison
533 * ExponentialExpression returns Comparison 623 * ExponentialExpression returns Comparison
534 * ExponentialExpression.BinaryExpression_1_0 returns Comparison 624 * ExponentialExpression.BinaryExpression_1_0 returns Comparison
625 * CastExpression returns Comparison
626 * CastExpression.CastExpression_1_0 returns Comparison
535 * UnaryExpression returns Comparison 627 * UnaryExpression returns Comparison
536 * AggregationExpression returns Comparison 628 * AggregationExpression returns Comparison
537 * AtomicExpression returns Comparison 629 * AtomicExpression returns Comparison
@@ -558,10 +650,14 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
558 650
559 /** 651 /**
560 * Contexts: 652 * Contexts:
561 * AssertionOrDefinition.Assertion_1_0_0 returns Conjunction 653 * Statement returns Conjunction
654 * AssertionOrDefinition returns Conjunction
655 * AssertionOrDefinition.Interpretation_1_0_0 returns Conjunction
562 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Conjunction 656 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Conjunction
563 * AssertionOrDefinition.MetricDefinition_1_2_0 returns Conjunction 657 * AssertionOrDefinition.MetricDefinition_1_2_0 returns Conjunction
564 * Expression returns Conjunction 658 * Expression returns Conjunction
659 * ImplicationExpression returns Conjunction
660 * ImplicationExpression.BinaryExpression_1_0 returns Conjunction
565 * DisjunctiveExpression returns Conjunction 661 * DisjunctiveExpression returns Conjunction
566 * DisjunctiveExpression.Disjunction_1_0_0 returns Conjunction 662 * DisjunctiveExpression.Disjunction_1_0_0 returns Conjunction
567 * DisjunctiveExpression.Case_1_1_0 returns Conjunction 663 * DisjunctiveExpression.Case_1_1_0 returns Conjunction
@@ -575,6 +671,8 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
575 * MultiplicativeExpression.BinaryExpression_1_0 returns Conjunction 671 * MultiplicativeExpression.BinaryExpression_1_0 returns Conjunction
576 * ExponentialExpression returns Conjunction 672 * ExponentialExpression returns Conjunction
577 * ExponentialExpression.BinaryExpression_1_0 returns Conjunction 673 * ExponentialExpression.BinaryExpression_1_0 returns Conjunction
674 * CastExpression returns Conjunction
675 * CastExpression.CastExpression_1_0 returns Conjunction
578 * UnaryExpression returns Conjunction 676 * UnaryExpression returns Conjunction
579 * AggregationExpression returns Conjunction 677 * AggregationExpression returns Conjunction
580 * AtomicExpression returns Conjunction 678 * AtomicExpression returns Conjunction
@@ -589,44 +687,6 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
589 687
590 /** 688 /**
591 * Contexts: 689 * Contexts:
592 * AssertionOrDefinition.Assertion_1_0_0 returns Count
593 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Count
594 * AssertionOrDefinition.MetricDefinition_1_2_0 returns Count
595 * Expression returns Count
596 * DisjunctiveExpression returns Count
597 * DisjunctiveExpression.Disjunction_1_0_0 returns Count
598 * DisjunctiveExpression.Case_1_1_0 returns Count
599 * ConjunctiveExpression returns Count
600 * ConjunctiveExpression.Conjunction_1_0 returns Count
601 * ComparisonExpression returns Count
602 * ComparisonExpression.Comparison_1_0 returns Count
603 * AdditiveExpression returns Count
604 * AdditiveExpression.BinaryExpression_1_0 returns Count
605 * MultiplicativeExpression returns Count
606 * MultiplicativeExpression.BinaryExpression_1_0 returns Count
607 * ExponentialExpression returns Count
608 * ExponentialExpression.BinaryExpression_1_0 returns Count
609 * UnaryExpression returns Count
610 * AggregationExpression returns Count
611 * Count returns Count
612 * AtomicExpression returns Count
613 *
614 * Constraint:
615 * body=Expression
616 */
617 protected void sequence_Count(ISerializationContext context, Count semanticObject) {
618 if (errorAcceptor != null) {
619 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.COUNT__BODY) == ValueTransient.YES)
620 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.COUNT__BODY));
621 }
622 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
623 feeder.accept(grammarAccess.getCountAccess().getBodyExpressionParserRuleCall_2_0(), semanticObject.getBody());
624 feeder.finish();
625 }
626
627
628 /**
629 * Contexts:
630 * Statement returns DefaultDefinition 690 * Statement returns DefaultDefinition
631 * DefaultDefinition returns DefaultDefinition 691 * DefaultDefinition returns DefaultDefinition
632 * 692 *
@@ -649,10 +709,14 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
649 709
650 /** 710 /**
651 * Contexts: 711 * Contexts:
652 * AssertionOrDefinition.Assertion_1_0_0 returns Disjunction 712 * Statement returns Disjunction
713 * AssertionOrDefinition returns Disjunction
714 * AssertionOrDefinition.Interpretation_1_0_0 returns Disjunction
653 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Disjunction 715 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Disjunction
654 * AssertionOrDefinition.MetricDefinition_1_2_0 returns Disjunction 716 * AssertionOrDefinition.MetricDefinition_1_2_0 returns Disjunction
655 * Expression returns Disjunction 717 * Expression returns Disjunction
718 * ImplicationExpression returns Disjunction
719 * ImplicationExpression.BinaryExpression_1_0 returns Disjunction
656 * DisjunctiveExpression returns Disjunction 720 * DisjunctiveExpression returns Disjunction
657 * DisjunctiveExpression.Disjunction_1_0_0 returns Disjunction 721 * DisjunctiveExpression.Disjunction_1_0_0 returns Disjunction
658 * DisjunctiveExpression.Case_1_1_0 returns Disjunction 722 * DisjunctiveExpression.Case_1_1_0 returns Disjunction
@@ -666,6 +730,8 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
666 * MultiplicativeExpression.BinaryExpression_1_0 returns Disjunction 730 * MultiplicativeExpression.BinaryExpression_1_0 returns Disjunction
667 * ExponentialExpression returns Disjunction 731 * ExponentialExpression returns Disjunction
668 * ExponentialExpression.BinaryExpression_1_0 returns Disjunction 732 * ExponentialExpression.BinaryExpression_1_0 returns Disjunction
733 * CastExpression returns Disjunction
734 * CastExpression.CastExpression_1_0 returns Disjunction
669 * UnaryExpression returns Disjunction 735 * UnaryExpression returns Disjunction
670 * AggregationExpression returns Disjunction 736 * AggregationExpression returns Disjunction
671 * AtomicExpression returns Disjunction 737 * AtomicExpression returns Disjunction
@@ -680,10 +746,14 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
680 746
681 /** 747 /**
682 * Contexts: 748 * Contexts:
683 * AssertionOrDefinition.Assertion_1_0_0 returns Switch 749 * Statement returns Switch
750 * AssertionOrDefinition returns Switch
751 * AssertionOrDefinition.Interpretation_1_0_0 returns Switch
684 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Switch 752 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Switch
685 * AssertionOrDefinition.MetricDefinition_1_2_0 returns Switch 753 * AssertionOrDefinition.MetricDefinition_1_2_0 returns Switch
686 * Expression returns Switch 754 * Expression returns Switch
755 * ImplicationExpression returns Switch
756 * ImplicationExpression.BinaryExpression_1_0 returns Switch
687 * DisjunctiveExpression returns Switch 757 * DisjunctiveExpression returns Switch
688 * DisjunctiveExpression.Disjunction_1_0_0 returns Switch 758 * DisjunctiveExpression.Disjunction_1_0_0 returns Switch
689 * DisjunctiveExpression.Case_1_1_0 returns Switch 759 * DisjunctiveExpression.Case_1_1_0 returns Switch
@@ -697,6 +767,8 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
697 * MultiplicativeExpression.BinaryExpression_1_0 returns Switch 767 * MultiplicativeExpression.BinaryExpression_1_0 returns Switch
698 * ExponentialExpression returns Switch 768 * ExponentialExpression returns Switch
699 * ExponentialExpression.BinaryExpression_1_0 returns Switch 769 * ExponentialExpression.BinaryExpression_1_0 returns Switch
770 * CastExpression returns Switch
771 * CastExpression.CastExpression_1_0 returns Switch
700 * UnaryExpression returns Switch 772 * UnaryExpression returns Switch
701 * AggregationExpression returns Switch 773 * AggregationExpression returns Switch
702 * AtomicExpression returns Switch 774 * AtomicExpression returns Switch
@@ -732,10 +804,14 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
732 804
733 /** 805 /**
734 * Contexts: 806 * Contexts:
735 * AssertionOrDefinition.Assertion_1_0_0 returns EmptyIntervalLiteral 807 * Statement returns EmptyIntervalLiteral
808 * AssertionOrDefinition returns EmptyIntervalLiteral
809 * AssertionOrDefinition.Interpretation_1_0_0 returns EmptyIntervalLiteral
736 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns EmptyIntervalLiteral 810 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns EmptyIntervalLiteral
737 * AssertionOrDefinition.MetricDefinition_1_2_0 returns EmptyIntervalLiteral 811 * AssertionOrDefinition.MetricDefinition_1_2_0 returns EmptyIntervalLiteral
738 * Expression returns EmptyIntervalLiteral 812 * Expression returns EmptyIntervalLiteral
813 * ImplicationExpression returns EmptyIntervalLiteral
814 * ImplicationExpression.BinaryExpression_1_0 returns EmptyIntervalLiteral
739 * DisjunctiveExpression returns EmptyIntervalLiteral 815 * DisjunctiveExpression returns EmptyIntervalLiteral
740 * DisjunctiveExpression.Disjunction_1_0_0 returns EmptyIntervalLiteral 816 * DisjunctiveExpression.Disjunction_1_0_0 returns EmptyIntervalLiteral
741 * DisjunctiveExpression.Case_1_1_0 returns EmptyIntervalLiteral 817 * DisjunctiveExpression.Case_1_1_0 returns EmptyIntervalLiteral
@@ -749,6 +825,8 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
749 * MultiplicativeExpression.BinaryExpression_1_0 returns EmptyIntervalLiteral 825 * MultiplicativeExpression.BinaryExpression_1_0 returns EmptyIntervalLiteral
750 * ExponentialExpression returns EmptyIntervalLiteral 826 * ExponentialExpression returns EmptyIntervalLiteral
751 * ExponentialExpression.BinaryExpression_1_0 returns EmptyIntervalLiteral 827 * ExponentialExpression.BinaryExpression_1_0 returns EmptyIntervalLiteral
828 * CastExpression returns EmptyIntervalLiteral
829 * CastExpression.CastExpression_1_0 returns EmptyIntervalLiteral
752 * UnaryExpression returns EmptyIntervalLiteral 830 * UnaryExpression returns EmptyIntervalLiteral
753 * AggregationExpression returns EmptyIntervalLiteral 831 * AggregationExpression returns EmptyIntervalLiteral
754 * AtomicExpression returns EmptyIntervalLiteral 832 * AtomicExpression returns EmptyIntervalLiteral
@@ -826,22 +904,63 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
826 904
827 /** 905 /**
828 * Contexts: 906 * Contexts:
907 * Statement returns ExternAggregatorDefinition
908 * ExternAggregatorDefinition returns ExternAggregatorDefinition
909 *
910 * Constraint:
911 * (type=[NamedElement|QualifiedName] name=QualifiedName inputType=[NamedElement|QualifiedName])
912 */
913 protected void sequence_ExternAggregatorDefinition(ISerializationContext context, ExternAggregatorDefinition semanticObject) {
914 if (errorAcceptor != null) {
915 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_AGGREGATOR_DEFINITION__TYPE) == ValueTransient.YES)
916 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_AGGREGATOR_DEFINITION__TYPE));
917 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_AGGREGATOR_DEFINITION__NAME) == ValueTransient.YES)
918 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_AGGREGATOR_DEFINITION__NAME));
919 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_AGGREGATOR_DEFINITION__INPUT_TYPE) == ValueTransient.YES)
920 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_AGGREGATOR_DEFINITION__INPUT_TYPE));
921 }
922 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
923 feeder.accept(grammarAccess.getExternAggregatorDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.EXTERN_AGGREGATOR_DEFINITION__TYPE, false));
924 feeder.accept(grammarAccess.getExternAggregatorDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0(), semanticObject.getName());
925 feeder.accept(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeNamedElementQualifiedNameParserRuleCall_4_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.EXTERN_AGGREGATOR_DEFINITION__INPUT_TYPE, false));
926 feeder.finish();
927 }
928
929
930 /**
931 * Contexts:
932 * Statement returns ExternDatatypeDefinition
933 * ExternDatatypeDefinition returns ExternDatatypeDefinition
934 *
935 * Constraint:
936 * (name=QualifiedName supertypes+=[NamedElement|QualifiedName] supertypes+=[NamedElement|QualifiedName]*)
937 */
938 protected void sequence_ExternDatatypeDefinition(ISerializationContext context, ExternDatatypeDefinition semanticObject) {
939 genericSequencer.createSequence(context, semanticObject);
940 }
941
942
943 /**
944 * Contexts:
829 * Statement returns ExternMetricDefinition 945 * Statement returns ExternMetricDefinition
830 * ExternMetricDefinition returns ExternMetricDefinition 946 * ExternMetricDefinition returns ExternMetricDefinition
831 * 947 *
832 * Constraint: 948 * Constraint:
833 * (type=MetricType head=Call) 949 * (type=[NamedElement|QualifiedName] name=QualifiedName argumentList=ArgumentList)
834 */ 950 */
835 protected void sequence_ExternMetricDefinition(ISerializationContext context, ExternMetricDefinition semanticObject) { 951 protected void sequence_ExternMetricDefinition(ISerializationContext context, ExternMetricDefinition semanticObject) {
836 if (errorAcceptor != null) { 952 if (errorAcceptor != null) {
837 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION__TYPE) == ValueTransient.YES) 953 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION__TYPE) == ValueTransient.YES)
838 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION__TYPE)); 954 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION__TYPE));
839 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION__HEAD) == ValueTransient.YES) 955 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION__NAME) == ValueTransient.YES)
840 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION__HEAD)); 956 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION__NAME));
957 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION__ARGUMENT_LIST) == ValueTransient.YES)
958 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION__ARGUMENT_LIST));
841 } 959 }
842 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); 960 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
843 feeder.accept(grammarAccess.getExternMetricDefinitionAccess().getTypeMetricTypeEnumRuleCall_1_0(), semanticObject.getType()); 961 feeder.accept(grammarAccess.getExternMetricDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION__TYPE, false));
844 feeder.accept(grammarAccess.getExternMetricDefinitionAccess().getHeadCallParserRuleCall_2_0(), semanticObject.getHead()); 962 feeder.accept(grammarAccess.getExternMetricDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0(), semanticObject.getName());
963 feeder.accept(grammarAccess.getExternMetricDefinitionAccess().getArgumentListArgumentListParserRuleCall_3_0(), semanticObject.getArgumentList());
845 feeder.finish(); 964 feeder.finish();
846 } 965 }
847 966
@@ -852,26 +971,33 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
852 * ExternPredicateDefinition returns ExternPredicateDefinition 971 * ExternPredicateDefinition returns ExternPredicateDefinition
853 * 972 *
854 * Constraint: 973 * Constraint:
855 * head=Call 974 * (name=QualifiedName argumentList=ArgumentList)
856 */ 975 */
857 protected void sequence_ExternPredicateDefinition(ISerializationContext context, ExternPredicateDefinition semanticObject) { 976 protected void sequence_ExternPredicateDefinition(ISerializationContext context, ExternPredicateDefinition semanticObject) {
858 if (errorAcceptor != null) { 977 if (errorAcceptor != null) {
859 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_PREDICATE_DEFINITION__HEAD) == ValueTransient.YES) 978 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_PREDICATE_DEFINITION__NAME) == ValueTransient.YES)
860 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_PREDICATE_DEFINITION__HEAD)); 979 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_PREDICATE_DEFINITION__NAME));
980 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_PREDICATE_DEFINITION__ARGUMENT_LIST) == ValueTransient.YES)
981 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_PREDICATE_DEFINITION__ARGUMENT_LIST));
861 } 982 }
862 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); 983 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
863 feeder.accept(grammarAccess.getExternPredicateDefinitionAccess().getHeadCallParserRuleCall_1_0(), semanticObject.getHead()); 984 feeder.accept(grammarAccess.getExternPredicateDefinitionAccess().getNameQualifiedNameParserRuleCall_1_0(), semanticObject.getName());
985 feeder.accept(grammarAccess.getExternPredicateDefinitionAccess().getArgumentListArgumentListParserRuleCall_2_0(), semanticObject.getArgumentList());
864 feeder.finish(); 986 feeder.finish();
865 } 987 }
866 988
867 989
868 /** 990 /**
869 * Contexts: 991 * Contexts:
870 * AssertionOrDefinition.Assertion_1_0_0 returns IfElse 992 * Statement returns IfElse
993 * AssertionOrDefinition returns IfElse
994 * AssertionOrDefinition.Interpretation_1_0_0 returns IfElse
871 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns IfElse 995 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns IfElse
872 * AssertionOrDefinition.MetricDefinition_1_2_0 returns IfElse 996 * AssertionOrDefinition.MetricDefinition_1_2_0 returns IfElse
873 * Expression returns IfElse 997 * Expression returns IfElse
874 * IfElse returns IfElse 998 * IfElse returns IfElse
999 * ImplicationExpression returns IfElse
1000 * ImplicationExpression.BinaryExpression_1_0 returns IfElse
875 * DisjunctiveExpression returns IfElse 1001 * DisjunctiveExpression returns IfElse
876 * DisjunctiveExpression.Disjunction_1_0_0 returns IfElse 1002 * DisjunctiveExpression.Disjunction_1_0_0 returns IfElse
877 * DisjunctiveExpression.Case_1_1_0 returns IfElse 1003 * DisjunctiveExpression.Case_1_1_0 returns IfElse
@@ -885,6 +1011,8 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
885 * MultiplicativeExpression.BinaryExpression_1_0 returns IfElse 1011 * MultiplicativeExpression.BinaryExpression_1_0 returns IfElse
886 * ExponentialExpression returns IfElse 1012 * ExponentialExpression returns IfElse
887 * ExponentialExpression.BinaryExpression_1_0 returns IfElse 1013 * ExponentialExpression.BinaryExpression_1_0 returns IfElse
1014 * CastExpression returns IfElse
1015 * CastExpression.CastExpression_1_0 returns IfElse
888 * UnaryExpression returns IfElse 1016 * UnaryExpression returns IfElse
889 * AggregationExpression returns IfElse 1017 * AggregationExpression returns IfElse
890 * AtomicExpression returns IfElse 1018 * AtomicExpression returns IfElse
@@ -911,10 +1039,14 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
911 1039
912 /** 1040 /**
913 * Contexts: 1041 * Contexts:
914 * AssertionOrDefinition.Assertion_1_0_0 returns InfinityLiteral 1042 * Statement returns InfinityLiteral
1043 * AssertionOrDefinition returns InfinityLiteral
1044 * AssertionOrDefinition.Interpretation_1_0_0 returns InfinityLiteral
915 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns InfinityLiteral 1045 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns InfinityLiteral
916 * AssertionOrDefinition.MetricDefinition_1_2_0 returns InfinityLiteral 1046 * AssertionOrDefinition.MetricDefinition_1_2_0 returns InfinityLiteral
917 * Expression returns InfinityLiteral 1047 * Expression returns InfinityLiteral
1048 * ImplicationExpression returns InfinityLiteral
1049 * ImplicationExpression.BinaryExpression_1_0 returns InfinityLiteral
918 * DisjunctiveExpression returns InfinityLiteral 1050 * DisjunctiveExpression returns InfinityLiteral
919 * DisjunctiveExpression.Disjunction_1_0_0 returns InfinityLiteral 1051 * DisjunctiveExpression.Disjunction_1_0_0 returns InfinityLiteral
920 * DisjunctiveExpression.Case_1_1_0 returns InfinityLiteral 1052 * DisjunctiveExpression.Case_1_1_0 returns InfinityLiteral
@@ -928,6 +1060,8 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
928 * MultiplicativeExpression.BinaryExpression_1_0 returns InfinityLiteral 1060 * MultiplicativeExpression.BinaryExpression_1_0 returns InfinityLiteral
929 * ExponentialExpression returns InfinityLiteral 1061 * ExponentialExpression returns InfinityLiteral
930 * ExponentialExpression.BinaryExpression_1_0 returns InfinityLiteral 1062 * ExponentialExpression.BinaryExpression_1_0 returns InfinityLiteral
1063 * CastExpression returns InfinityLiteral
1064 * CastExpression.CastExpression_1_0 returns InfinityLiteral
931 * UnaryExpression returns InfinityLiteral 1065 * UnaryExpression returns InfinityLiteral
932 * AggregationExpression returns InfinityLiteral 1066 * AggregationExpression returns InfinityLiteral
933 * AtomicExpression returns InfinityLiteral 1067 * AtomicExpression returns InfinityLiteral
@@ -944,10 +1078,14 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
944 1078
945 /** 1079 /**
946 * Contexts: 1080 * Contexts:
947 * AssertionOrDefinition.Assertion_1_0_0 returns Interval 1081 * Statement returns Interval
1082 * AssertionOrDefinition returns Interval
1083 * AssertionOrDefinition.Interpretation_1_0_0 returns Interval
948 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Interval 1084 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Interval
949 * AssertionOrDefinition.MetricDefinition_1_2_0 returns Interval 1085 * AssertionOrDefinition.MetricDefinition_1_2_0 returns Interval
950 * Expression returns Interval 1086 * Expression returns Interval
1087 * ImplicationExpression returns Interval
1088 * ImplicationExpression.BinaryExpression_1_0 returns Interval
951 * DisjunctiveExpression returns Interval 1089 * DisjunctiveExpression returns Interval
952 * DisjunctiveExpression.Disjunction_1_0_0 returns Interval 1090 * DisjunctiveExpression.Disjunction_1_0_0 returns Interval
953 * DisjunctiveExpression.Case_1_1_0 returns Interval 1091 * DisjunctiveExpression.Case_1_1_0 returns Interval
@@ -961,6 +1099,8 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
961 * MultiplicativeExpression.BinaryExpression_1_0 returns Interval 1099 * MultiplicativeExpression.BinaryExpression_1_0 returns Interval
962 * ExponentialExpression returns Interval 1100 * ExponentialExpression returns Interval
963 * ExponentialExpression.BinaryExpression_1_0 returns Interval 1101 * ExponentialExpression.BinaryExpression_1_0 returns Interval
1102 * CastExpression returns Interval
1103 * CastExpression.CastExpression_1_0 returns Interval
964 * UnaryExpression returns Interval 1104 * UnaryExpression returns Interval
965 * AggregationExpression returns Interval 1105 * AggregationExpression returns Interval
966 * AtomicExpression returns Interval 1106 * AtomicExpression returns Interval
@@ -985,10 +1125,85 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
985 1125
986 /** 1126 /**
987 * Contexts: 1127 * Contexts:
988 * AssertionOrDefinition.Assertion_1_0_0 returns LogicLiteral 1128 * LetBinding returns LetBinding
1129 *
1130 * Constraint:
1131 * (variable=Variable value=AdditiveExpression)
1132 */
1133 protected void sequence_LetBinding(ISerializationContext context, LetBinding semanticObject) {
1134 if (errorAcceptor != null) {
1135 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.LET_BINDING__VARIABLE) == ValueTransient.YES)
1136 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.LET_BINDING__VARIABLE));
1137 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.LET_BINDING__VALUE) == ValueTransient.YES)
1138 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.LET_BINDING__VALUE));
1139 }
1140 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
1141 feeder.accept(grammarAccess.getLetBindingAccess().getVariableVariableParserRuleCall_0_0(), semanticObject.getVariable());
1142 feeder.accept(grammarAccess.getLetBindingAccess().getValueAdditiveExpressionParserRuleCall_2_0(), semanticObject.getValue());
1143 feeder.finish();
1144 }
1145
1146
1147 /**
1148 * Contexts:
1149 * Statement returns Let
1150 * AssertionOrDefinition returns Let
1151 * AssertionOrDefinition.Interpretation_1_0_0 returns Let
1152 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Let
1153 * AssertionOrDefinition.MetricDefinition_1_2_0 returns Let
1154 * Expression returns Let
1155 * Let returns Let
1156 * ImplicationExpression returns Let
1157 * ImplicationExpression.BinaryExpression_1_0 returns Let
1158 * DisjunctiveExpression returns Let
1159 * DisjunctiveExpression.Disjunction_1_0_0 returns Let
1160 * DisjunctiveExpression.Case_1_1_0 returns Let
1161 * ConjunctiveExpression returns Let
1162 * ConjunctiveExpression.Conjunction_1_0 returns Let
1163 * ComparisonExpression returns Let
1164 * ComparisonExpression.Comparison_1_0 returns Let
1165 * AdditiveExpression returns Let
1166 * AdditiveExpression.BinaryExpression_1_0 returns Let
1167 * MultiplicativeExpression returns Let
1168 * MultiplicativeExpression.BinaryExpression_1_0 returns Let
1169 * ExponentialExpression returns Let
1170 * ExponentialExpression.BinaryExpression_1_0 returns Let
1171 * CastExpression returns Let
1172 * CastExpression.CastExpression_1_0 returns Let
1173 * UnaryExpression returns Let
1174 * AggregationExpression returns Let
1175 * AtomicExpression returns Let
1176 *
1177 * Constraint:
1178 * (bindings+=LetBinding bindings+=LetBinding* body=Expression)
1179 */
1180 protected void sequence_Let(ISerializationContext context, Let semanticObject) {
1181 genericSequencer.createSequence(context, semanticObject);
1182 }
1183
1184
1185 /**
1186 * Contexts:
1187 * LocalVariables returns LocalVariables
1188 *
1189 * Constraint:
1190 * (variables+=Variable variables+=Variable*)?
1191 */
1192 protected void sequence_LocalVariables(ISerializationContext context, LocalVariables semanticObject) {
1193 genericSequencer.createSequence(context, semanticObject);
1194 }
1195
1196
1197 /**
1198 * Contexts:
1199 * Statement returns LogicLiteral
1200 * AssertionOrDefinition returns LogicLiteral
1201 * AssertionOrDefinition.Interpretation_1_0_0 returns LogicLiteral
989 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns LogicLiteral 1202 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns LogicLiteral
990 * AssertionOrDefinition.MetricDefinition_1_2_0 returns LogicLiteral 1203 * AssertionOrDefinition.MetricDefinition_1_2_0 returns LogicLiteral
991 * Expression returns LogicLiteral 1204 * Expression returns LogicLiteral
1205 * ImplicationExpression returns LogicLiteral
1206 * ImplicationExpression.BinaryExpression_1_0 returns LogicLiteral
992 * DisjunctiveExpression returns LogicLiteral 1207 * DisjunctiveExpression returns LogicLiteral
993 * DisjunctiveExpression.Disjunction_1_0_0 returns LogicLiteral 1208 * DisjunctiveExpression.Disjunction_1_0_0 returns LogicLiteral
994 * DisjunctiveExpression.Case_1_1_0 returns LogicLiteral 1209 * DisjunctiveExpression.Case_1_1_0 returns LogicLiteral
@@ -1002,6 +1217,8 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
1002 * MultiplicativeExpression.BinaryExpression_1_0 returns LogicLiteral 1217 * MultiplicativeExpression.BinaryExpression_1_0 returns LogicLiteral
1003 * ExponentialExpression returns LogicLiteral 1218 * ExponentialExpression returns LogicLiteral
1004 * ExponentialExpression.BinaryExpression_1_0 returns LogicLiteral 1219 * ExponentialExpression.BinaryExpression_1_0 returns LogicLiteral
1220 * CastExpression returns LogicLiteral
1221 * CastExpression.CastExpression_1_0 returns LogicLiteral
1005 * UnaryExpression returns LogicLiteral 1222 * UnaryExpression returns LogicLiteral
1006 * AggregationExpression returns LogicLiteral 1223 * AggregationExpression returns LogicLiteral
1007 * AtomicExpression returns LogicLiteral 1224 * AtomicExpression returns LogicLiteral
@@ -1066,7 +1283,7 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
1066 * MetricDefinition returns MetricDefinition 1283 * MetricDefinition returns MetricDefinition
1067 * 1284 *
1068 * Constraint: 1285 * Constraint:
1069 * (type=MetricType head=Expression body=Expression) 1286 * (type=[NamedElement|QualifiedName] head=Call body=Expression)
1070 */ 1287 */
1071 protected void sequence_MetricDefinition(ISerializationContext context, MetricDefinition semanticObject) { 1288 protected void sequence_MetricDefinition(ISerializationContext context, MetricDefinition semanticObject) {
1072 if (errorAcceptor != null) { 1289 if (errorAcceptor != null) {
@@ -1078,8 +1295,8 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
1078 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.METRIC_DEFINITION__BODY)); 1295 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.METRIC_DEFINITION__BODY));
1079 } 1296 }
1080 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); 1297 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
1081 feeder.accept(grammarAccess.getMetricDefinitionAccess().getTypeMetricTypeEnumRuleCall_0_0(), semanticObject.getType()); 1298 feeder.accept(grammarAccess.getMetricDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.METRIC_DEFINITION__TYPE, false));
1082 feeder.accept(grammarAccess.getMetricDefinitionAccess().getHeadExpressionParserRuleCall_1_0(), semanticObject.getHead()); 1299 feeder.accept(grammarAccess.getMetricDefinitionAccess().getHeadCallParserRuleCall_1_0(), semanticObject.getHead());
1083 feeder.accept(grammarAccess.getMetricDefinitionAccess().getBodyExpressionParserRuleCall_3_0(), semanticObject.getBody()); 1300 feeder.accept(grammarAccess.getMetricDefinitionAccess().getBodyExpressionParserRuleCall_3_0(), semanticObject.getBody());
1084 feeder.finish(); 1301 feeder.finish();
1085 } 1302 }
@@ -1087,28 +1304,14 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
1087 1304
1088 /** 1305 /**
1089 * Contexts: 1306 * Contexts:
1090 * NamedElement returns NamedElement 1307 * Statement returns NumericLiteral
1091 * 1308 * AssertionOrDefinition returns NumericLiteral
1092 * Constraint: 1309 * AssertionOrDefinition.Interpretation_1_0_0 returns NumericLiteral
1093 * name=QualifiedName
1094 */
1095 protected void sequence_NamedElement(ISerializationContext context, NamedElement semanticObject) {
1096 if (errorAcceptor != null) {
1097 if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.NAMED_ELEMENT__NAME) == ValueTransient.YES)
1098 errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.NAMED_ELEMENT__NAME));
1099 }
1100 SequenceFeeder feeder = createSequencerFeeder(context, semanticObject);
1101 feeder.accept(grammarAccess.getNamedElementAccess().getNameQualifiedNameParserRuleCall_0(), semanticObject.getName());
1102 feeder.finish();
1103 }
1104
1105
1106 /**
1107 * Contexts:
1108 * AssertionOrDefinition.Assertion_1_0_0 returns NumericLiteral
1109 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns NumericLiteral 1310 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns NumericLiteral
1110 * AssertionOrDefinition.MetricDefinition_1_2_0 returns NumericLiteral 1311 * AssertionOrDefinition.MetricDefinition_1_2_0 returns NumericLiteral
1111 * Expression returns NumericLiteral 1312 * Expression returns NumericLiteral
1313 * ImplicationExpression returns NumericLiteral
1314 * ImplicationExpression.BinaryExpression_1_0 returns NumericLiteral
1112 * DisjunctiveExpression returns NumericLiteral 1315 * DisjunctiveExpression returns NumericLiteral
1113 * DisjunctiveExpression.Disjunction_1_0_0 returns NumericLiteral 1316 * DisjunctiveExpression.Disjunction_1_0_0 returns NumericLiteral
1114 * DisjunctiveExpression.Case_1_1_0 returns NumericLiteral 1317 * DisjunctiveExpression.Case_1_1_0 returns NumericLiteral
@@ -1122,6 +1325,8 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
1122 * MultiplicativeExpression.BinaryExpression_1_0 returns NumericLiteral 1325 * MultiplicativeExpression.BinaryExpression_1_0 returns NumericLiteral
1123 * ExponentialExpression returns NumericLiteral 1326 * ExponentialExpression returns NumericLiteral
1124 * ExponentialExpression.BinaryExpression_1_0 returns NumericLiteral 1327 * ExponentialExpression.BinaryExpression_1_0 returns NumericLiteral
1328 * CastExpression returns NumericLiteral
1329 * CastExpression.CastExpression_1_0 returns NumericLiteral
1125 * UnaryExpression returns NumericLiteral 1330 * UnaryExpression returns NumericLiteral
1126 * AggregationExpression returns NumericLiteral 1331 * AggregationExpression returns NumericLiteral
1127 * AtomicExpression returns NumericLiteral 1332 * AtomicExpression returns NumericLiteral
@@ -1190,10 +1395,52 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
1190 1395
1191 /** 1396 /**
1192 * Contexts: 1397 * Contexts:
1193 * AssertionOrDefinition.Assertion_1_0_0 returns Reference 1398 * Statement returns QuantifiedExpression
1399 * AssertionOrDefinition returns QuantifiedExpression
1400 * AssertionOrDefinition.Interpretation_1_0_0 returns QuantifiedExpression
1401 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns QuantifiedExpression
1402 * AssertionOrDefinition.MetricDefinition_1_2_0 returns QuantifiedExpression
1403 * Expression returns QuantifiedExpression
1404 * ImplicationExpression returns QuantifiedExpression
1405 * ImplicationExpression.BinaryExpression_1_0 returns QuantifiedExpression
1406 * DisjunctiveExpression returns QuantifiedExpression
1407 * DisjunctiveExpression.Disjunction_1_0_0 returns QuantifiedExpression
1408 * DisjunctiveExpression.Case_1_1_0 returns QuantifiedExpression
1409 * ConjunctiveExpression returns QuantifiedExpression
1410 * ConjunctiveExpression.Conjunction_1_0 returns QuantifiedExpression
1411 * ComparisonExpression returns QuantifiedExpression
1412 * ComparisonExpression.Comparison_1_0 returns QuantifiedExpression
1413 * AdditiveExpression returns QuantifiedExpression
1414 * AdditiveExpression.BinaryExpression_1_0 returns QuantifiedExpression
1415 * MultiplicativeExpression returns QuantifiedExpression
1416 * MultiplicativeExpression.BinaryExpression_1_0 returns QuantifiedExpression
1417 * ExponentialExpression returns QuantifiedExpression
1418 * ExponentialExpression.BinaryExpression_1_0 returns QuantifiedExpression
1419 * CastExpression returns QuantifiedExpression
1420 * CastExpression.CastExpression_1_0 returns QuantifiedExpression
1421 * UnaryExpression returns QuantifiedExpression
1422 * AggregationExpression returns QuantifiedExpression
1423 * QuantifiedExpression returns QuantifiedExpression
1424 * AtomicExpression returns QuantifiedExpression
1425 *
1426 * Constraint:
1427 * (quantifier=Quantifier localVariables=LocalVariables? body=Expression)
1428 */
1429 protected void sequence_QuantifiedExpression(ISerializationContext context, QuantifiedExpression semanticObject) {
1430 genericSequencer.createSequence(context, semanticObject);
1431 }
1432
1433
1434 /**
1435 * Contexts:
1436 * Statement returns Reference
1437 * AssertionOrDefinition returns Reference
1438 * AssertionOrDefinition.Interpretation_1_0_0 returns Reference
1194 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Reference 1439 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Reference
1195 * AssertionOrDefinition.MetricDefinition_1_2_0 returns Reference 1440 * AssertionOrDefinition.MetricDefinition_1_2_0 returns Reference
1196 * Expression returns Reference 1441 * Expression returns Reference
1442 * ImplicationExpression returns Reference
1443 * ImplicationExpression.BinaryExpression_1_0 returns Reference
1197 * DisjunctiveExpression returns Reference 1444 * DisjunctiveExpression returns Reference
1198 * DisjunctiveExpression.Disjunction_1_0_0 returns Reference 1445 * DisjunctiveExpression.Disjunction_1_0_0 returns Reference
1199 * DisjunctiveExpression.Case_1_1_0 returns Reference 1446 * DisjunctiveExpression.Case_1_1_0 returns Reference
@@ -1207,6 +1454,8 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
1207 * MultiplicativeExpression.BinaryExpression_1_0 returns Reference 1454 * MultiplicativeExpression.BinaryExpression_1_0 returns Reference
1208 * ExponentialExpression returns Reference 1455 * ExponentialExpression returns Reference
1209 * ExponentialExpression.BinaryExpression_1_0 returns Reference 1456 * ExponentialExpression.BinaryExpression_1_0 returns Reference
1457 * CastExpression returns Reference
1458 * CastExpression.CastExpression_1_0 returns Reference
1210 * UnaryExpression returns Reference 1459 * UnaryExpression returns Reference
1211 * AggregationExpression returns Reference 1460 * AggregationExpression returns Reference
1212 * AtomicExpression returns Reference 1461 * AtomicExpression returns Reference
@@ -1241,10 +1490,14 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
1241 1490
1242 /** 1491 /**
1243 * Contexts: 1492 * Contexts:
1244 * AssertionOrDefinition.Assertion_1_0_0 returns StringLiteral 1493 * Statement returns StringLiteral
1494 * AssertionOrDefinition returns StringLiteral
1495 * AssertionOrDefinition.Interpretation_1_0_0 returns StringLiteral
1245 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns StringLiteral 1496 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns StringLiteral
1246 * AssertionOrDefinition.MetricDefinition_1_2_0 returns StringLiteral 1497 * AssertionOrDefinition.MetricDefinition_1_2_0 returns StringLiteral
1247 * Expression returns StringLiteral 1498 * Expression returns StringLiteral
1499 * ImplicationExpression returns StringLiteral
1500 * ImplicationExpression.BinaryExpression_1_0 returns StringLiteral
1248 * DisjunctiveExpression returns StringLiteral 1501 * DisjunctiveExpression returns StringLiteral
1249 * DisjunctiveExpression.Disjunction_1_0_0 returns StringLiteral 1502 * DisjunctiveExpression.Disjunction_1_0_0 returns StringLiteral
1250 * DisjunctiveExpression.Case_1_1_0 returns StringLiteral 1503 * DisjunctiveExpression.Case_1_1_0 returns StringLiteral
@@ -1258,6 +1511,8 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
1258 * MultiplicativeExpression.BinaryExpression_1_0 returns StringLiteral 1511 * MultiplicativeExpression.BinaryExpression_1_0 returns StringLiteral
1259 * ExponentialExpression returns StringLiteral 1512 * ExponentialExpression returns StringLiteral
1260 * ExponentialExpression.BinaryExpression_1_0 returns StringLiteral 1513 * ExponentialExpression.BinaryExpression_1_0 returns StringLiteral
1514 * CastExpression returns StringLiteral
1515 * CastExpression.CastExpression_1_0 returns StringLiteral
1261 * UnaryExpression returns StringLiteral 1516 * UnaryExpression returns StringLiteral
1262 * AggregationExpression returns StringLiteral 1517 * AggregationExpression returns StringLiteral
1263 * AtomicExpression returns StringLiteral 1518 * AtomicExpression returns StringLiteral
@@ -1321,10 +1576,14 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
1321 1576
1322 /** 1577 /**
1323 * Contexts: 1578 * Contexts:
1324 * AssertionOrDefinition.Assertion_1_0_0 returns UnaryExpression 1579 * Statement returns UnaryExpression
1580 * AssertionOrDefinition returns UnaryExpression
1581 * AssertionOrDefinition.Interpretation_1_0_0 returns UnaryExpression
1325 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns UnaryExpression 1582 * AssertionOrDefinition.PredicateDefinition_1_1_0 returns UnaryExpression
1326 * AssertionOrDefinition.MetricDefinition_1_2_0 returns UnaryExpression 1583 * AssertionOrDefinition.MetricDefinition_1_2_0 returns UnaryExpression
1327 * Expression returns UnaryExpression 1584 * Expression returns UnaryExpression
1585 * ImplicationExpression returns UnaryExpression
1586 * ImplicationExpression.BinaryExpression_1_0 returns UnaryExpression
1328 * DisjunctiveExpression returns UnaryExpression 1587 * DisjunctiveExpression returns UnaryExpression
1329 * DisjunctiveExpression.Disjunction_1_0_0 returns UnaryExpression 1588 * DisjunctiveExpression.Disjunction_1_0_0 returns UnaryExpression
1330 * DisjunctiveExpression.Case_1_1_0 returns UnaryExpression 1589 * DisjunctiveExpression.Case_1_1_0 returns UnaryExpression
@@ -1338,6 +1597,8 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
1338 * MultiplicativeExpression.BinaryExpression_1_0 returns UnaryExpression 1597 * MultiplicativeExpression.BinaryExpression_1_0 returns UnaryExpression
1339 * ExponentialExpression returns UnaryExpression 1598 * ExponentialExpression returns UnaryExpression
1340 * ExponentialExpression.BinaryExpression_1_0 returns UnaryExpression 1599 * ExponentialExpression.BinaryExpression_1_0 returns UnaryExpression
1600 * CastExpression returns UnaryExpression
1601 * CastExpression.CastExpression_1_0 returns UnaryExpression
1341 * UnaryExpression returns UnaryExpression 1602 * UnaryExpression returns UnaryExpression
1342 * AggregationExpression returns UnaryExpression 1603 * AggregationExpression returns UnaryExpression
1343 * AtomicExpression returns UnaryExpression 1604 * AtomicExpression returns UnaryExpression
@@ -1381,4 +1642,16 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS
1381 } 1642 }
1382 1643
1383 1644
1645 /**
1646 * Contexts:
1647 * Variable returns Variable
1648 *
1649 * Constraint:
1650 * (type=[NamedElement|QualifiedName]? name=ID)
1651 */
1652 protected void sequence_Variable(ISerializationContext context, Variable semanticObject) {
1653 genericSequencer.createSequence(context, semanticObject);
1654 }
1655
1656
1384} 1657}