aboutsummaryrefslogtreecommitdiffstats
path: root/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.java
diff options
context:
space:
mode:
Diffstat (limited to 'Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.java')
-rw-r--r--Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.java5598
1 files changed, 3593 insertions, 2005 deletions
diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.java
index 7dbfa002..3e25746c 100644
--- a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.java
+++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.java
@@ -22,92 +22,79 @@ import java.util.ArrayList;
22@SuppressWarnings("all") 22@SuppressWarnings("all")
23public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { 23public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
24 public static final String[] tokenNames = new String[] { 24 public static final String[] tokenNames = new String[] {
25 "<invalid>", "<EOR>", "<DOWN>", "<UP>", "GREATER_EQ", "Functional", "Abstract", "Contains", "Maximize", "Minimize", "Opposite", "GREATER", "LESS_EQ", "Current", "Default", "Extends", "Unknown", "NOT_EQ", "Extern", "Class", "Count", "Empty", "Error", "False", "Scope", "LESS", "Else", "Must", "Only", "Prod", "Real", "Then", "True", "ADD", "DIV", "MUL", "POW", "SUB", "Avg", "Inf", "Int", "Max", "May", "Min", "Sum", "ExclamationMarkEqualsSign", "HyphenMinusGreaterThanSign", "FullStopFullStop", "ColonHyphenMinus", "LessThanSignEqualsSign", "EqualsSignEqualsSign", "GreaterThanSignEqualsSign", "EQ", "IN", "If", "In", "ExclamationMark", "LeftParenthesis", "RightParenthesis", "Asterisk", "PlusSign", "Comma", "HyphenMinus", "FullStop", "Solidus", "Colon", "Semicolon", "LessThanSign", "EqualsSign", "GreaterThanSign", "LeftSquareBracket", "RightSquareBracket", "CircumflexAccent", "LeftCurlyBracket", "VerticalLine", "RightCurlyBracket", "RULE_STRING", "RULE_QUOTED_ID", "RULE_SL_COMMENT", "RULE_TRANSITIVE_CLOSURE", "RULE_REFLEXIVE_TRANSITIVE_CLOSURE", "RULE_FULL_STOP", "RULE_ID", "RULE_INT", "RULE_ML_COMMENT", "RULE_WS", "RULE_ANY_OTHER" 25 "<invalid>", "<EOR>", "<DOWN>", "<UP>", "Functional", "Abstract", "Contains", "Datatype", "Maximize", "Minimize", "Opposite", "Current", "Default", "Extends", "Unknown", "Exists", "Extern", "Forall", "Class", "Count", "Empty", "Error", "False", "Scope", "Else", "Must", "Then", "True", "FullStopFullStopFullStop", "Inf", "Let", "May", "ExclamationMarkEqualsSign", "HyphenMinusGreaterThanSign", "FullStopFullStop", "ColonHyphenMinus", "LessThanSignEqualsSign", "EqualsSignEqualsSign", "EqualsSignGreaterThanSign", "GreaterThanSignEqualsSign", "As", "If", "In", "ExclamationMark", "LeftParenthesis", "RightParenthesis", "Asterisk", "PlusSign", "Comma", "HyphenMinus", "FullStop", "Solidus", "Colon", "Semicolon", "LessThanSign", "EqualsSign", "GreaterThanSign", "LeftSquareBracket", "RightSquareBracket", "CircumflexAccent", "LeftCurlyBracket", "VerticalLine", "RightCurlyBracket", "RULE_STRING", "RULE_QUOTED_ID", "RULE_SL_COMMENT", "RULE_TRANSITIVE_CLOSURE", "RULE_REFLEXIVE_TRANSITIVE_CLOSURE", "RULE_FULL_STOP", "RULE_ID", "RULE_INT", "RULE_ML_COMMENT", "RULE_WS", "RULE_ANY_OTHER"
26 }; 26 };
27 public static final int ADD=33; 27 public static final int EqualsSignGreaterThanSign=38;
28 public static final int True=32; 28 public static final int True=27;
29 public static final int GREATER_EQ=4; 29 public static final int Count=19;
30 public static final int Count=20; 30 public static final int False=22;
31 public static final int False=23; 31 public static final int Must=25;
32 public static final int Must=27; 32 public static final int FullStopFullStopFullStop=28;
33 public static final int LessThanSign=67; 33 public static final int LessThanSign=54;
34 public static final int LeftParenthesis=57; 34 public static final int Datatype=7;
35 public static final int Unknown=16; 35 public static final int LeftParenthesis=44;
36 public static final int RULE_REFLEXIVE_TRANSITIVE_CLOSURE=80; 36 public static final int Unknown=14;
37 public static final int FullStopFullStop=47; 37 public static final int RULE_REFLEXIVE_TRANSITIVE_CLOSURE=67;
38 public static final int Real=30; 38 public static final int FullStopFullStop=34;
39 public static final int Then=31; 39 public static final int Then=26;
40 public static final int Extends=15; 40 public static final int Extends=13;
41 public static final int RightSquareBracket=71; 41 public static final int Forall=17;
42 public static final int ExclamationMark=56; 42 public static final int RightSquareBracket=58;
43 public static final int ExclamationMark=43;
43 public static final int Opposite=10; 44 public static final int Opposite=10;
44 public static final int SUB=37; 45 public static final int GreaterThanSign=56;
45 public static final int GreaterThanSign=69; 46 public static final int RULE_ID=69;
46 public static final int NOT_EQ=17; 47 public static final int RULE_QUOTED_ID=64;
47 public static final int RULE_ID=82; 48 public static final int RightParenthesis=45;
48 public static final int MUL=35; 49 public static final int GreaterThanSignEqualsSign=39;
49 public static final int IN=53; 50 public static final int Functional=4;
50 public static final int RULE_QUOTED_ID=77; 51 public static final int EqualsSignEqualsSign=37;
51 public static final int RightParenthesis=58; 52 public static final int VerticalLine=61;
52 public static final int Sum=44; 53 public static final int PlusSign=47;
53 public static final int EQ=52; 54 public static final int RULE_INT=70;
54 public static final int GreaterThanSignEqualsSign=51; 55 public static final int Contains=6;
55 public static final int Functional=5; 56 public static final int RULE_ML_COMMENT=71;
56 public static final int EqualsSignEqualsSign=50; 57 public static final int RULE_TRANSITIVE_CLOSURE=66;
57 public static final int Avg=38; 58 public static final int Class=18;
58 public static final int Min=43; 59 public static final int LeftSquareBracket=57;
59 public static final int VerticalLine=74; 60 public static final int RULE_FULL_STOP=68;
60 public static final int PlusSign=60; 61 public static final int Current=11;
61 public static final int RULE_INT=83; 62 public static final int If=41;
62 public static final int Contains=7; 63 public static final int Inf=29;
63 public static final int RULE_ML_COMMENT=84; 64 public static final int May=31;
64 public static final int POW=36; 65 public static final int In=42;
65 public static final int RULE_TRANSITIVE_CLOSURE=79; 66 public static final int RULE_STRING=63;
66 public static final int Class=19; 67 public static final int Extern=16;
67 public static final int LESS=25; 68 public static final int RULE_SL_COMMENT=65;
68 public static final int LeftSquareBracket=70; 69 public static final int Comma=48;
69 public static final int RULE_FULL_STOP=81; 70 public static final int EqualsSign=55;
70 public static final int Current=13; 71 public static final int Empty=20;
71 public static final int If=54; 72 public static final int As=40;
72 public static final int Inf=39; 73 public static final int HyphenMinus=49;
73 public static final int LESS_EQ=12;
74 public static final int May=42;
75 public static final int Max=41;
76 public static final int In=55;
77 public static final int RULE_STRING=76;
78 public static final int Int=40;
79 public static final int Extern=18;
80 public static final int RULE_SL_COMMENT=78;
81 public static final int Prod=29;
82 public static final int Comma=61;
83 public static final int EqualsSign=68;
84 public static final int Empty=21;
85 public static final int HyphenMinus=62;
86 public static final int Maximize=8; 74 public static final int Maximize=8;
87 public static final int LessThanSignEqualsSign=49; 75 public static final int LessThanSignEqualsSign=36;
88 public static final int Solidus=64; 76 public static final int Solidus=51;
89 public static final int Colon=65; 77 public static final int Colon=52;
90 public static final int RightCurlyBracket=75; 78 public static final int RightCurlyBracket=62;
91 public static final int EOF=-1; 79 public static final int EOF=-1;
92 public static final int Asterisk=59; 80 public static final int Asterisk=46;
93 public static final int FullStop=63; 81 public static final int FullStop=50;
94 public static final int RULE_WS=85; 82 public static final int RULE_WS=72;
95 public static final int Abstract=6; 83 public static final int Abstract=5;
96 public static final int Minimize=9; 84 public static final int Minimize=9;
97 public static final int GREATER=11; 85 public static final int LeftCurlyBracket=60;
98 public static final int LeftCurlyBracket=73; 86 public static final int Error=21;
99 public static final int Error=22; 87 public static final int RULE_ANY_OTHER=73;
100 public static final int Only=28; 88 public static final int Default=12;
101 public static final int RULE_ANY_OTHER=86; 89 public static final int ColonHyphenMinus=35;
102 public static final int Default=14; 90 public static final int CircumflexAccent=59;
103 public static final int ColonHyphenMinus=48; 91 public static final int Semicolon=53;
104 public static final int CircumflexAccent=72; 92 public static final int Scope=23;
105 public static final int DIV=34; 93 public static final int Exists=15;
106 public static final int Semicolon=66; 94 public static final int Else=24;
107 public static final int Scope=24; 95 public static final int Let=30;
108 public static final int Else=26; 96 public static final int ExclamationMarkEqualsSign=32;
109 public static final int ExclamationMarkEqualsSign=45; 97 public static final int HyphenMinusGreaterThanSign=33;
110 public static final int HyphenMinusGreaterThanSign=46;
111 98
112 // delegates 99 // delegates
113 // delegators 100 // delegators
@@ -205,7 +192,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
205 int alt1=2; 192 int alt1=2;
206 int LA1_0 = input.LA(1); 193 int LA1_0 = input.LA(1);
207 194
208 if ( ((LA1_0>=Functional && LA1_0<=Abstract)||(LA1_0>=Maximize && LA1_0<=Minimize)||(LA1_0>=Current && LA1_0<=Default)||LA1_0==Unknown||(LA1_0>=Extern && LA1_0<=False)||LA1_0==Scope||(LA1_0>=Must && LA1_0<=Real)||LA1_0==True||(LA1_0>=Avg && LA1_0<=Sum)||LA1_0==If||(LA1_0>=ExclamationMark && LA1_0<=LeftParenthesis)||LA1_0==PlusSign||LA1_0==HyphenMinus||LA1_0==LeftSquareBracket||(LA1_0>=RULE_STRING && LA1_0<=RULE_QUOTED_ID)||(LA1_0>=RULE_ID && LA1_0<=RULE_INT)) ) { 195 if ( ((LA1_0>=Functional && LA1_0<=Abstract)||(LA1_0>=Maximize && LA1_0<=Minimize)||(LA1_0>=Current && LA1_0<=Default)||(LA1_0>=Unknown && LA1_0<=False)||LA1_0==Scope||LA1_0==Must||LA1_0==True||(LA1_0>=Inf && LA1_0<=May)||LA1_0==If||(LA1_0>=ExclamationMark && LA1_0<=LeftParenthesis)||LA1_0==PlusSign||LA1_0==HyphenMinus||LA1_0==LeftSquareBracket||(LA1_0>=RULE_STRING && LA1_0<=RULE_QUOTED_ID)||(LA1_0>=RULE_ID && LA1_0<=RULE_INT)) ) {
209 alt1=1; 196 alt1=1;
210 } 197 }
211 198
@@ -304,11 +291,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
304 291
305 292
306 // $ANTLR start "ruleStatement" 293 // $ANTLR start "ruleStatement"
307 // InternalSolverLanguageParser.g:101:1: ruleStatement returns [EObject current=null] : ( (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_ExternPredicateDefinition_4= ruleExternPredicateDefinition | this_MetricDefinition_5= ruleMetricDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ClassDefinition_7= ruleClassDefinition | this_ScopeDefinition_8= ruleScopeDefinition | this_ObjectiveDefinition_9= ruleObjectiveDefinition ) this_FULL_STOP_10= RULE_FULL_STOP ) ; 294 // InternalSolverLanguageParser.g:101:1: ruleStatement returns [EObject current=null] : ( (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_MetricDefinition_4= ruleMetricDefinition | this_ExternPredicateDefinition_5= ruleExternPredicateDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ExternAggregatorDefinition_7= ruleExternAggregatorDefinition | this_ExternDatatypeDefinition_8= ruleExternDatatypeDefinition | this_ClassDefinition_9= ruleClassDefinition | this_ScopeDefinition_10= ruleScopeDefinition | this_ObjectiveDefinition_11= ruleObjectiveDefinition ) this_FULL_STOP_12= RULE_FULL_STOP ) ;
308 public final EObject ruleStatement() throws RecognitionException { 295 public final EObject ruleStatement() throws RecognitionException {
309 EObject current = null; 296 EObject current = null;
310 297
311 Token this_FULL_STOP_10=null; 298 Token this_FULL_STOP_12=null;
312 EObject this_AssertionOrDefinition_0 = null; 299 EObject this_AssertionOrDefinition_0 = null;
313 300
314 EObject this_PredicateDefinition_1 = null; 301 EObject this_PredicateDefinition_1 = null;
@@ -317,31 +304,35 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
317 304
318 EObject this_DefaultDefinition_3 = null; 305 EObject this_DefaultDefinition_3 = null;
319 306
320 EObject this_ExternPredicateDefinition_4 = null; 307 EObject this_MetricDefinition_4 = null;
321 308
322 EObject this_MetricDefinition_5 = null; 309 EObject this_ExternPredicateDefinition_5 = null;
323 310
324 EObject this_ExternMetricDefinition_6 = null; 311 EObject this_ExternMetricDefinition_6 = null;
325 312
326 EObject this_ClassDefinition_7 = null; 313 EObject this_ExternAggregatorDefinition_7 = null;
327 314
328 EObject this_ScopeDefinition_8 = null; 315 EObject this_ExternDatatypeDefinition_8 = null;
329 316
330 EObject this_ObjectiveDefinition_9 = null; 317 EObject this_ClassDefinition_9 = null;
318
319 EObject this_ScopeDefinition_10 = null;
320
321 EObject this_ObjectiveDefinition_11 = null;
331 322
332 323
333 324
334 enterRule(); 325 enterRule();
335 326
336 try { 327 try {
337 // InternalSolverLanguageParser.g:107:2: ( ( (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_ExternPredicateDefinition_4= ruleExternPredicateDefinition | this_MetricDefinition_5= ruleMetricDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ClassDefinition_7= ruleClassDefinition | this_ScopeDefinition_8= ruleScopeDefinition | this_ObjectiveDefinition_9= ruleObjectiveDefinition ) this_FULL_STOP_10= RULE_FULL_STOP ) ) 328 // InternalSolverLanguageParser.g:107:2: ( ( (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_MetricDefinition_4= ruleMetricDefinition | this_ExternPredicateDefinition_5= ruleExternPredicateDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ExternAggregatorDefinition_7= ruleExternAggregatorDefinition | this_ExternDatatypeDefinition_8= ruleExternDatatypeDefinition | this_ClassDefinition_9= ruleClassDefinition | this_ScopeDefinition_10= ruleScopeDefinition | this_ObjectiveDefinition_11= ruleObjectiveDefinition ) this_FULL_STOP_12= RULE_FULL_STOP ) )
338 // InternalSolverLanguageParser.g:108:2: ( (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_ExternPredicateDefinition_4= ruleExternPredicateDefinition | this_MetricDefinition_5= ruleMetricDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ClassDefinition_7= ruleClassDefinition | this_ScopeDefinition_8= ruleScopeDefinition | this_ObjectiveDefinition_9= ruleObjectiveDefinition ) this_FULL_STOP_10= RULE_FULL_STOP ) 329 // InternalSolverLanguageParser.g:108:2: ( (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_MetricDefinition_4= ruleMetricDefinition | this_ExternPredicateDefinition_5= ruleExternPredicateDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ExternAggregatorDefinition_7= ruleExternAggregatorDefinition | this_ExternDatatypeDefinition_8= ruleExternDatatypeDefinition | this_ClassDefinition_9= ruleClassDefinition | this_ScopeDefinition_10= ruleScopeDefinition | this_ObjectiveDefinition_11= ruleObjectiveDefinition ) this_FULL_STOP_12= RULE_FULL_STOP )
339 { 330 {
340 // InternalSolverLanguageParser.g:108:2: ( (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_ExternPredicateDefinition_4= ruleExternPredicateDefinition | this_MetricDefinition_5= ruleMetricDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ClassDefinition_7= ruleClassDefinition | this_ScopeDefinition_8= ruleScopeDefinition | this_ObjectiveDefinition_9= ruleObjectiveDefinition ) this_FULL_STOP_10= RULE_FULL_STOP ) 331 // InternalSolverLanguageParser.g:108:2: ( (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_MetricDefinition_4= ruleMetricDefinition | this_ExternPredicateDefinition_5= ruleExternPredicateDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ExternAggregatorDefinition_7= ruleExternAggregatorDefinition | this_ExternDatatypeDefinition_8= ruleExternDatatypeDefinition | this_ClassDefinition_9= ruleClassDefinition | this_ScopeDefinition_10= ruleScopeDefinition | this_ObjectiveDefinition_11= ruleObjectiveDefinition ) this_FULL_STOP_12= RULE_FULL_STOP )
341 // InternalSolverLanguageParser.g:109:3: (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_ExternPredicateDefinition_4= ruleExternPredicateDefinition | this_MetricDefinition_5= ruleMetricDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ClassDefinition_7= ruleClassDefinition | this_ScopeDefinition_8= ruleScopeDefinition | this_ObjectiveDefinition_9= ruleObjectiveDefinition ) this_FULL_STOP_10= RULE_FULL_STOP 332 // InternalSolverLanguageParser.g:109:3: (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_MetricDefinition_4= ruleMetricDefinition | this_ExternPredicateDefinition_5= ruleExternPredicateDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ExternAggregatorDefinition_7= ruleExternAggregatorDefinition | this_ExternDatatypeDefinition_8= ruleExternDatatypeDefinition | this_ClassDefinition_9= ruleClassDefinition | this_ScopeDefinition_10= ruleScopeDefinition | this_ObjectiveDefinition_11= ruleObjectiveDefinition ) this_FULL_STOP_12= RULE_FULL_STOP
342 { 333 {
343 // InternalSolverLanguageParser.g:109:3: (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_ExternPredicateDefinition_4= ruleExternPredicateDefinition | this_MetricDefinition_5= ruleMetricDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ClassDefinition_7= ruleClassDefinition | this_ScopeDefinition_8= ruleScopeDefinition | this_ObjectiveDefinition_9= ruleObjectiveDefinition ) 334 // InternalSolverLanguageParser.g:109:3: (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_MetricDefinition_4= ruleMetricDefinition | this_ExternPredicateDefinition_5= ruleExternPredicateDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ExternAggregatorDefinition_7= ruleExternAggregatorDefinition | this_ExternDatatypeDefinition_8= ruleExternDatatypeDefinition | this_ClassDefinition_9= ruleClassDefinition | this_ScopeDefinition_10= ruleScopeDefinition | this_ObjectiveDefinition_11= ruleObjectiveDefinition )
344 int alt2=10; 335 int alt2=12;
345 alt2 = dfa2.predict(input); 336 alt2 = dfa2.predict(input);
346 switch (alt2) { 337 switch (alt2) {
347 case 1 : 338 case 1 :
@@ -417,36 +408,36 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
417 } 408 }
418 break; 409 break;
419 case 5 : 410 case 5 :
420 // InternalSolverLanguageParser.g:146:4: this_ExternPredicateDefinition_4= ruleExternPredicateDefinition 411 // InternalSolverLanguageParser.g:146:4: this_MetricDefinition_4= ruleMetricDefinition
421 { 412 {
422 413
423 newCompositeNode(grammarAccess.getStatementAccess().getExternPredicateDefinitionParserRuleCall_0_4()); 414 newCompositeNode(grammarAccess.getStatementAccess().getMetricDefinitionParserRuleCall_0_4());
424 415
425 pushFollow(FOLLOW_4); 416 pushFollow(FOLLOW_4);
426 this_ExternPredicateDefinition_4=ruleExternPredicateDefinition(); 417 this_MetricDefinition_4=ruleMetricDefinition();
427 418
428 state._fsp--; 419 state._fsp--;
429 420
430 421
431 current = this_ExternPredicateDefinition_4; 422 current = this_MetricDefinition_4;
432 afterParserOrEnumRuleCall(); 423 afterParserOrEnumRuleCall();
433 424
434 425
435 } 426 }
436 break; 427 break;
437 case 6 : 428 case 6 :
438 // InternalSolverLanguageParser.g:155:4: this_MetricDefinition_5= ruleMetricDefinition 429 // InternalSolverLanguageParser.g:155:4: this_ExternPredicateDefinition_5= ruleExternPredicateDefinition
439 { 430 {
440 431
441 newCompositeNode(grammarAccess.getStatementAccess().getMetricDefinitionParserRuleCall_0_5()); 432 newCompositeNode(grammarAccess.getStatementAccess().getExternPredicateDefinitionParserRuleCall_0_5());
442 433
443 pushFollow(FOLLOW_4); 434 pushFollow(FOLLOW_4);
444 this_MetricDefinition_5=ruleMetricDefinition(); 435 this_ExternPredicateDefinition_5=ruleExternPredicateDefinition();
445 436
446 state._fsp--; 437 state._fsp--;
447 438
448 439
449 current = this_MetricDefinition_5; 440 current = this_ExternPredicateDefinition_5;
450 afterParserOrEnumRuleCall(); 441 afterParserOrEnumRuleCall();
451 442
452 443
@@ -471,54 +462,90 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
471 } 462 }
472 break; 463 break;
473 case 8 : 464 case 8 :
474 // InternalSolverLanguageParser.g:173:4: this_ClassDefinition_7= ruleClassDefinition 465 // InternalSolverLanguageParser.g:173:4: this_ExternAggregatorDefinition_7= ruleExternAggregatorDefinition
475 { 466 {
476 467
477 newCompositeNode(grammarAccess.getStatementAccess().getClassDefinitionParserRuleCall_0_7()); 468 newCompositeNode(grammarAccess.getStatementAccess().getExternAggregatorDefinitionParserRuleCall_0_7());
478 469
479 pushFollow(FOLLOW_4); 470 pushFollow(FOLLOW_4);
480 this_ClassDefinition_7=ruleClassDefinition(); 471 this_ExternAggregatorDefinition_7=ruleExternAggregatorDefinition();
481 472
482 state._fsp--; 473 state._fsp--;
483 474
484 475
485 current = this_ClassDefinition_7; 476 current = this_ExternAggregatorDefinition_7;
486 afterParserOrEnumRuleCall(); 477 afterParserOrEnumRuleCall();
487 478
488 479
489 } 480 }
490 break; 481 break;
491 case 9 : 482 case 9 :
492 // InternalSolverLanguageParser.g:182:4: this_ScopeDefinition_8= ruleScopeDefinition 483 // InternalSolverLanguageParser.g:182:4: this_ExternDatatypeDefinition_8= ruleExternDatatypeDefinition
493 { 484 {
494 485
495 newCompositeNode(grammarAccess.getStatementAccess().getScopeDefinitionParserRuleCall_0_8()); 486 newCompositeNode(grammarAccess.getStatementAccess().getExternDatatypeDefinitionParserRuleCall_0_8());
496 487
497 pushFollow(FOLLOW_4); 488 pushFollow(FOLLOW_4);
498 this_ScopeDefinition_8=ruleScopeDefinition(); 489 this_ExternDatatypeDefinition_8=ruleExternDatatypeDefinition();
499 490
500 state._fsp--; 491 state._fsp--;
501 492
502 493
503 current = this_ScopeDefinition_8; 494 current = this_ExternDatatypeDefinition_8;
504 afterParserOrEnumRuleCall(); 495 afterParserOrEnumRuleCall();
505 496
506 497
507 } 498 }
508 break; 499 break;
509 case 10 : 500 case 10 :
510 // InternalSolverLanguageParser.g:191:4: this_ObjectiveDefinition_9= ruleObjectiveDefinition 501 // InternalSolverLanguageParser.g:191:4: this_ClassDefinition_9= ruleClassDefinition
502 {
503
504 newCompositeNode(grammarAccess.getStatementAccess().getClassDefinitionParserRuleCall_0_9());
505
506 pushFollow(FOLLOW_4);
507 this_ClassDefinition_9=ruleClassDefinition();
508
509 state._fsp--;
510
511
512 current = this_ClassDefinition_9;
513 afterParserOrEnumRuleCall();
514
515
516 }
517 break;
518 case 11 :
519 // InternalSolverLanguageParser.g:200:4: this_ScopeDefinition_10= ruleScopeDefinition
520 {
521
522 newCompositeNode(grammarAccess.getStatementAccess().getScopeDefinitionParserRuleCall_0_10());
523
524 pushFollow(FOLLOW_4);
525 this_ScopeDefinition_10=ruleScopeDefinition();
526
527 state._fsp--;
528
529
530 current = this_ScopeDefinition_10;
531 afterParserOrEnumRuleCall();
532
533
534 }
535 break;
536 case 12 :
537 // InternalSolverLanguageParser.g:209:4: this_ObjectiveDefinition_11= ruleObjectiveDefinition
511 { 538 {
512 539
513 newCompositeNode(grammarAccess.getStatementAccess().getObjectiveDefinitionParserRuleCall_0_9()); 540 newCompositeNode(grammarAccess.getStatementAccess().getObjectiveDefinitionParserRuleCall_0_11());
514 541
515 pushFollow(FOLLOW_4); 542 pushFollow(FOLLOW_4);
516 this_ObjectiveDefinition_9=ruleObjectiveDefinition(); 543 this_ObjectiveDefinition_11=ruleObjectiveDefinition();
517 544
518 state._fsp--; 545 state._fsp--;
519 546
520 547
521 current = this_ObjectiveDefinition_9; 548 current = this_ObjectiveDefinition_11;
522 afterParserOrEnumRuleCall(); 549 afterParserOrEnumRuleCall();
523 550
524 551
@@ -527,9 +554,9 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
527 554
528 } 555 }
529 556
530 this_FULL_STOP_10=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); 557 this_FULL_STOP_12=(Token)match(input,RULE_FULL_STOP,FOLLOW_2);
531 558
532 newLeafNode(this_FULL_STOP_10, grammarAccess.getStatementAccess().getFULL_STOPTerminalRuleCall_1()); 559 newLeafNode(this_FULL_STOP_12, grammarAccess.getStatementAccess().getFULL_STOPTerminalRuleCall_1());
533 560
534 561
535 } 562 }
@@ -554,7 +581,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
554 581
555 582
556 // $ANTLR start "entryRuleAssertionOrDefinition" 583 // $ANTLR start "entryRuleAssertionOrDefinition"
557 // InternalSolverLanguageParser.g:208:1: entryRuleAssertionOrDefinition returns [EObject current=null] : iv_ruleAssertionOrDefinition= ruleAssertionOrDefinition EOF ; 584 // InternalSolverLanguageParser.g:226:1: entryRuleAssertionOrDefinition returns [EObject current=null] : iv_ruleAssertionOrDefinition= ruleAssertionOrDefinition EOF ;
558 public final EObject entryRuleAssertionOrDefinition() throws RecognitionException { 585 public final EObject entryRuleAssertionOrDefinition() throws RecognitionException {
559 EObject current = null; 586 EObject current = null;
560 587
@@ -562,8 +589,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
562 589
563 590
564 try { 591 try {
565 // InternalSolverLanguageParser.g:208:62: (iv_ruleAssertionOrDefinition= ruleAssertionOrDefinition EOF ) 592 // InternalSolverLanguageParser.g:226:62: (iv_ruleAssertionOrDefinition= ruleAssertionOrDefinition EOF )
566 // InternalSolverLanguageParser.g:209:2: iv_ruleAssertionOrDefinition= ruleAssertionOrDefinition EOF 593 // InternalSolverLanguageParser.g:227:2: iv_ruleAssertionOrDefinition= ruleAssertionOrDefinition EOF
567 { 594 {
568 newCompositeNode(grammarAccess.getAssertionOrDefinitionRule()); 595 newCompositeNode(grammarAccess.getAssertionOrDefinitionRule());
569 pushFollow(FOLLOW_1); 596 pushFollow(FOLLOW_1);
@@ -590,7 +617,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
590 617
591 618
592 // $ANTLR start "ruleAssertionOrDefinition" 619 // $ANTLR start "ruleAssertionOrDefinition"
593 // InternalSolverLanguageParser.g:215:1: ruleAssertionOrDefinition returns [EObject current=null] : (this_Expression_0= ruleExpression ( ( () (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) ) ) ; 620 // InternalSolverLanguageParser.g:233:1: ruleAssertionOrDefinition returns [EObject current=null] : (this_Expression_0= ruleExpression ( ( () otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) )? ) ;
594 public final EObject ruleAssertionOrDefinition() throws RecognitionException { 621 public final EObject ruleAssertionOrDefinition() throws RecognitionException {
595 EObject current = null; 622 EObject current = null;
596 623
@@ -610,11 +637,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
610 enterRule(); 637 enterRule();
611 638
612 try { 639 try {
613 // InternalSolverLanguageParser.g:221:2: ( (this_Expression_0= ruleExpression ( ( () (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) ) ) ) 640 // InternalSolverLanguageParser.g:239:2: ( (this_Expression_0= ruleExpression ( ( () otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) )? ) )
614 // InternalSolverLanguageParser.g:222:2: (this_Expression_0= ruleExpression ( ( () (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) ) ) 641 // InternalSolverLanguageParser.g:240:2: (this_Expression_0= ruleExpression ( ( () otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) )? )
615 { 642 {
616 // InternalSolverLanguageParser.g:222:2: (this_Expression_0= ruleExpression ( ( () (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) ) ) 643 // InternalSolverLanguageParser.g:240:2: (this_Expression_0= ruleExpression ( ( () otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) )? )
617 // InternalSolverLanguageParser.g:223:3: this_Expression_0= ruleExpression ( ( () (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) ) 644 // InternalSolverLanguageParser.g:241:3: this_Expression_0= ruleExpression ( ( () otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) )?
618 { 645 {
619 646
620 newCompositeNode(grammarAccess.getAssertionOrDefinitionAccess().getExpressionParserRuleCall_0()); 647 newCompositeNode(grammarAccess.getAssertionOrDefinitionAccess().getExpressionParserRuleCall_0());
@@ -628,100 +655,76 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
628 current = this_Expression_0; 655 current = this_Expression_0;
629 afterParserOrEnumRuleCall(); 656 afterParserOrEnumRuleCall();
630 657
631 // InternalSolverLanguageParser.g:231:3: ( ( () (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) ) 658 // InternalSolverLanguageParser.g:249:3: ( ( () otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) )?
632 int alt4=3; 659 int alt3=4;
633 switch ( input.LA(1) ) { 660 switch ( input.LA(1) ) {
634 case EOF: 661 case Colon:
635 case Colon: 662 {
636 case RULE_FULL_STOP: 663 alt3=1;
637 { 664 }
638 alt4=1; 665 break;
639 } 666 case ColonHyphenMinus:
640 break; 667 {
641 case ColonHyphenMinus: 668 alt3=2;
642 { 669 }
643 alt4=2; 670 break;
644 } 671 case EqualsSign:
645 break; 672 {
646 case EqualsSign: 673 alt3=3;
647 { 674 }
648 alt4=3; 675 break;
649 }
650 break;
651 default:
652 NoViableAltException nvae =
653 new NoViableAltException("", 4, 0, input);
654
655 throw nvae;
656 } 676 }
657 677
658 switch (alt4) { 678 switch (alt3) {
659 case 1 : 679 case 1 :
660 // InternalSolverLanguageParser.g:232:4: ( () (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? ) 680 // InternalSolverLanguageParser.g:250:4: ( () otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )
661 { 681 {
662 // InternalSolverLanguageParser.g:232:4: ( () (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? ) 682 // InternalSolverLanguageParser.g:250:4: ( () otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )
663 // InternalSolverLanguageParser.g:233:5: () (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? 683 // InternalSolverLanguageParser.g:251:5: () otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) )
664 { 684 {
665 // InternalSolverLanguageParser.g:233:5: () 685 // InternalSolverLanguageParser.g:251:5: ()
666 // InternalSolverLanguageParser.g:234:6: 686 // InternalSolverLanguageParser.g:252:6:
667 { 687 {
668 688
669 current = forceCreateModelElementAndSet( 689 current = forceCreateModelElementAndSet(
670 grammarAccess.getAssertionOrDefinitionAccess().getAssertionBodyAction_1_0_0(), 690 grammarAccess.getAssertionOrDefinitionAccess().getInterpretationBodyAction_1_0_0(),
671 current); 691 current);
672 692
673 693
674 } 694 }
675 695
676 // InternalSolverLanguageParser.g:240:5: (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? 696 otherlv_2=(Token)match(input,Colon,FOLLOW_6);
677 int alt3=2;
678 int LA3_0 = input.LA(1);
679
680 if ( (LA3_0==Colon) ) {
681 alt3=1;
682 }
683 switch (alt3) {
684 case 1 :
685 // InternalSolverLanguageParser.g:241:6: otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) )
686 {
687 otherlv_2=(Token)match(input,Colon,FOLLOW_6);
688
689 newLeafNode(otherlv_2, grammarAccess.getAssertionOrDefinitionAccess().getColonKeyword_1_0_1_0());
690
691 // InternalSolverLanguageParser.g:245:6: ( (lv_range_3_0= ruleExpression ) )
692 // InternalSolverLanguageParser.g:246:7: (lv_range_3_0= ruleExpression )
693 {
694 // InternalSolverLanguageParser.g:246:7: (lv_range_3_0= ruleExpression )
695 // InternalSolverLanguageParser.g:247:8: lv_range_3_0= ruleExpression
696 {
697
698 newCompositeNode(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_1_1_0());
699
700 pushFollow(FOLLOW_2);
701 lv_range_3_0=ruleExpression();
702
703 state._fsp--;
704 697
698 newLeafNode(otherlv_2, grammarAccess.getAssertionOrDefinitionAccess().getColonKeyword_1_0_1());
699
700 // InternalSolverLanguageParser.g:262:5: ( (lv_range_3_0= ruleExpression ) )
701 // InternalSolverLanguageParser.g:263:6: (lv_range_3_0= ruleExpression )
702 {
703 // InternalSolverLanguageParser.g:263:6: (lv_range_3_0= ruleExpression )
704 // InternalSolverLanguageParser.g:264:7: lv_range_3_0= ruleExpression
705 {
705 706
706 if (current==null) { 707 newCompositeNode(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_2_0());
707 current = createModelElementForParent(grammarAccess.getAssertionOrDefinitionRule()); 708
708 } 709 pushFollow(FOLLOW_2);
709 set( 710 lv_range_3_0=ruleExpression();
710 current,
711 "range",
712 lv_range_3_0,
713 "org.eclipse.viatra.solver.language.SolverLanguage.Expression");
714 afterParserOrEnumRuleCall();
715
716 711
717 } 712 state._fsp--;
718 713
719 714
720 } 715 if (current==null) {
716 current = createModelElementForParent(grammarAccess.getAssertionOrDefinitionRule());
717 }
718 set(
719 current,
720 "range",
721 lv_range_3_0,
722 "org.eclipse.viatra.solver.language.SolverLanguage.Expression");
723 afterParserOrEnumRuleCall();
724
721 725
726 }
722 727
723 }
724 break;
725 728
726 } 729 }
727 730
@@ -732,13 +735,13 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
732 } 735 }
733 break; 736 break;
734 case 2 : 737 case 2 :
735 // InternalSolverLanguageParser.g:267:4: ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) 738 // InternalSolverLanguageParser.g:283:4: ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) )
736 { 739 {
737 // InternalSolverLanguageParser.g:267:4: ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) 740 // InternalSolverLanguageParser.g:283:4: ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) )
738 // InternalSolverLanguageParser.g:268:5: () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) 741 // InternalSolverLanguageParser.g:284:5: () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) )
739 { 742 {
740 // InternalSolverLanguageParser.g:268:5: () 743 // InternalSolverLanguageParser.g:284:5: ()
741 // InternalSolverLanguageParser.g:269:6: 744 // InternalSolverLanguageParser.g:285:6:
742 { 745 {
743 746
744 current = forceCreateModelElementAndSet( 747 current = forceCreateModelElementAndSet(
@@ -752,11 +755,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
752 755
753 newLeafNode(otherlv_5, grammarAccess.getAssertionOrDefinitionAccess().getColonHyphenMinusKeyword_1_1_1()); 756 newLeafNode(otherlv_5, grammarAccess.getAssertionOrDefinitionAccess().getColonHyphenMinusKeyword_1_1_1());
754 757
755 // InternalSolverLanguageParser.g:279:5: ( (lv_body_6_0= ruleExpression ) ) 758 // InternalSolverLanguageParser.g:295:5: ( (lv_body_6_0= ruleExpression ) )
756 // InternalSolverLanguageParser.g:280:6: (lv_body_6_0= ruleExpression ) 759 // InternalSolverLanguageParser.g:296:6: (lv_body_6_0= ruleExpression )
757 { 760 {
758 // InternalSolverLanguageParser.g:280:6: (lv_body_6_0= ruleExpression ) 761 // InternalSolverLanguageParser.g:296:6: (lv_body_6_0= ruleExpression )
759 // InternalSolverLanguageParser.g:281:7: lv_body_6_0= ruleExpression 762 // InternalSolverLanguageParser.g:297:7: lv_body_6_0= ruleExpression
760 { 763 {
761 764
762 newCompositeNode(grammarAccess.getAssertionOrDefinitionAccess().getBodyExpressionParserRuleCall_1_1_2_0()); 765 newCompositeNode(grammarAccess.getAssertionOrDefinitionAccess().getBodyExpressionParserRuleCall_1_1_2_0());
@@ -790,13 +793,13 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
790 } 793 }
791 break; 794 break;
792 case 3 : 795 case 3 :
793 // InternalSolverLanguageParser.g:300:4: ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) 796 // InternalSolverLanguageParser.g:316:4: ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) )
794 { 797 {
795 // InternalSolverLanguageParser.g:300:4: ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) 798 // InternalSolverLanguageParser.g:316:4: ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) )
796 // InternalSolverLanguageParser.g:301:5: () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) 799 // InternalSolverLanguageParser.g:317:5: () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) )
797 { 800 {
798 // InternalSolverLanguageParser.g:301:5: () 801 // InternalSolverLanguageParser.g:317:5: ()
799 // InternalSolverLanguageParser.g:302:6: 802 // InternalSolverLanguageParser.g:318:6:
800 { 803 {
801 804
802 current = forceCreateModelElementAndSet( 805 current = forceCreateModelElementAndSet(
@@ -810,11 +813,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
810 813
811 newLeafNode(otherlv_8, grammarAccess.getAssertionOrDefinitionAccess().getEqualsSignKeyword_1_2_1()); 814 newLeafNode(otherlv_8, grammarAccess.getAssertionOrDefinitionAccess().getEqualsSignKeyword_1_2_1());
812 815
813 // InternalSolverLanguageParser.g:312:5: ( (lv_body_9_0= ruleExpression ) ) 816 // InternalSolverLanguageParser.g:328:5: ( (lv_body_9_0= ruleExpression ) )
814 // InternalSolverLanguageParser.g:313:6: (lv_body_9_0= ruleExpression ) 817 // InternalSolverLanguageParser.g:329:6: (lv_body_9_0= ruleExpression )
815 { 818 {
816 // InternalSolverLanguageParser.g:313:6: (lv_body_9_0= ruleExpression ) 819 // InternalSolverLanguageParser.g:329:6: (lv_body_9_0= ruleExpression )
817 // InternalSolverLanguageParser.g:314:7: lv_body_9_0= ruleExpression 820 // InternalSolverLanguageParser.g:330:7: lv_body_9_0= ruleExpression
818 { 821 {
819 822
820 newCompositeNode(grammarAccess.getAssertionOrDefinitionAccess().getBodyExpressionParserRuleCall_1_2_2_0()); 823 newCompositeNode(grammarAccess.getAssertionOrDefinitionAccess().getBodyExpressionParserRuleCall_1_2_2_0());
@@ -873,7 +876,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
873 876
874 877
875 // $ANTLR start "entryRulePredicateDefinition" 878 // $ANTLR start "entryRulePredicateDefinition"
876 // InternalSolverLanguageParser.g:337:1: entryRulePredicateDefinition returns [EObject current=null] : iv_rulePredicateDefinition= rulePredicateDefinition EOF ; 879 // InternalSolverLanguageParser.g:353:1: entryRulePredicateDefinition returns [EObject current=null] : iv_rulePredicateDefinition= rulePredicateDefinition EOF ;
877 public final EObject entryRulePredicateDefinition() throws RecognitionException { 880 public final EObject entryRulePredicateDefinition() throws RecognitionException {
878 EObject current = null; 881 EObject current = null;
879 882
@@ -881,8 +884,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
881 884
882 885
883 try { 886 try {
884 // InternalSolverLanguageParser.g:337:60: (iv_rulePredicateDefinition= rulePredicateDefinition EOF ) 887 // InternalSolverLanguageParser.g:353:60: (iv_rulePredicateDefinition= rulePredicateDefinition EOF )
885 // InternalSolverLanguageParser.g:338:2: iv_rulePredicateDefinition= rulePredicateDefinition EOF 888 // InternalSolverLanguageParser.g:354:2: iv_rulePredicateDefinition= rulePredicateDefinition EOF
886 { 889 {
887 newCompositeNode(grammarAccess.getPredicateDefinitionRule()); 890 newCompositeNode(grammarAccess.getPredicateDefinitionRule());
888 pushFollow(FOLLOW_1); 891 pushFollow(FOLLOW_1);
@@ -909,7 +912,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
909 912
910 913
911 // $ANTLR start "rulePredicateDefinition" 914 // $ANTLR start "rulePredicateDefinition"
912 // InternalSolverLanguageParser.g:344:1: rulePredicateDefinition returns [EObject current=null] : ( ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) ; 915 // InternalSolverLanguageParser.g:360:1: rulePredicateDefinition returns [EObject current=null] : ( ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) ;
913 public final EObject rulePredicateDefinition() throws RecognitionException { 916 public final EObject rulePredicateDefinition() throws RecognitionException {
914 EObject current = null; 917 EObject current = null;
915 918
@@ -927,40 +930,40 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
927 enterRule(); 930 enterRule();
928 931
929 try { 932 try {
930 // InternalSolverLanguageParser.g:350:2: ( ( ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) ) 933 // InternalSolverLanguageParser.g:366:2: ( ( ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) )
931 // InternalSolverLanguageParser.g:351:2: ( ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) 934 // InternalSolverLanguageParser.g:367:2: ( ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) )
932 { 935 {
933 // InternalSolverLanguageParser.g:351:2: ( ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) 936 // InternalSolverLanguageParser.g:367:2: ( ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) )
934 // InternalSolverLanguageParser.g:352:3: ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) 937 // InternalSolverLanguageParser.g:368:3: ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) )
935 { 938 {
936 // InternalSolverLanguageParser.g:352:3: ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) 939 // InternalSolverLanguageParser.g:368:3: ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) )
937 int alt7=2; 940 int alt6=2;
938 int LA7_0 = input.LA(1); 941 int LA6_0 = input.LA(1);
939 942
940 if ( (LA7_0==Functional) ) { 943 if ( (LA6_0==Functional) ) {
941 alt7=1; 944 alt6=1;
942 } 945 }
943 else if ( (LA7_0==Error) ) { 946 else if ( (LA6_0==Error) ) {
944 alt7=2; 947 alt6=2;
945 } 948 }
946 else { 949 else {
947 NoViableAltException nvae = 950 NoViableAltException nvae =
948 new NoViableAltException("", 7, 0, input); 951 new NoViableAltException("", 6, 0, input);
949 952
950 throw nvae; 953 throw nvae;
951 } 954 }
952 switch (alt7) { 955 switch (alt6) {
953 case 1 : 956 case 1 :
954 // InternalSolverLanguageParser.g:353:4: ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) 957 // InternalSolverLanguageParser.g:369:4: ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? )
955 { 958 {
956 // InternalSolverLanguageParser.g:353:4: ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) 959 // InternalSolverLanguageParser.g:369:4: ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? )
957 // InternalSolverLanguageParser.g:354:5: ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? 960 // InternalSolverLanguageParser.g:370:5: ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )?
958 { 961 {
959 // InternalSolverLanguageParser.g:354:5: ( (lv_functional_0_0= Functional ) ) 962 // InternalSolverLanguageParser.g:370:5: ( (lv_functional_0_0= Functional ) )
960 // InternalSolverLanguageParser.g:355:6: (lv_functional_0_0= Functional ) 963 // InternalSolverLanguageParser.g:371:6: (lv_functional_0_0= Functional )
961 { 964 {
962 // InternalSolverLanguageParser.g:355:6: (lv_functional_0_0= Functional ) 965 // InternalSolverLanguageParser.g:371:6: (lv_functional_0_0= Functional )
963 // InternalSolverLanguageParser.g:356:7: lv_functional_0_0= Functional 966 // InternalSolverLanguageParser.g:372:7: lv_functional_0_0= Functional
964 { 967 {
965 lv_functional_0_0=(Token)match(input,Functional,FOLLOW_7); 968 lv_functional_0_0=(Token)match(input,Functional,FOLLOW_7);
966 969
@@ -978,19 +981,19 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
978 981
979 } 982 }
980 983
981 // InternalSolverLanguageParser.g:368:5: ( (lv_error_1_0= Error ) )? 984 // InternalSolverLanguageParser.g:384:5: ( (lv_error_1_0= Error ) )?
982 int alt5=2; 985 int alt4=2;
983 int LA5_0 = input.LA(1); 986 int LA4_0 = input.LA(1);
984 987
985 if ( (LA5_0==Error) ) { 988 if ( (LA4_0==Error) ) {
986 alt5=1; 989 alt4=1;
987 } 990 }
988 switch (alt5) { 991 switch (alt4) {
989 case 1 : 992 case 1 :
990 // InternalSolverLanguageParser.g:369:6: (lv_error_1_0= Error ) 993 // InternalSolverLanguageParser.g:385:6: (lv_error_1_0= Error )
991 { 994 {
992 // InternalSolverLanguageParser.g:369:6: (lv_error_1_0= Error ) 995 // InternalSolverLanguageParser.g:385:6: (lv_error_1_0= Error )
993 // InternalSolverLanguageParser.g:370:7: lv_error_1_0= Error 996 // InternalSolverLanguageParser.g:386:7: lv_error_1_0= Error
994 { 997 {
995 lv_error_1_0=(Token)match(input,Error,FOLLOW_8); 998 lv_error_1_0=(Token)match(input,Error,FOLLOW_8);
996 999
@@ -1018,16 +1021,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1018 } 1021 }
1019 break; 1022 break;
1020 case 2 : 1023 case 2 :
1021 // InternalSolverLanguageParser.g:384:4: ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) 1024 // InternalSolverLanguageParser.g:400:4: ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? )
1022 { 1025 {
1023 // InternalSolverLanguageParser.g:384:4: ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) 1026 // InternalSolverLanguageParser.g:400:4: ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? )
1024 // InternalSolverLanguageParser.g:385:5: ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? 1027 // InternalSolverLanguageParser.g:401:5: ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )?
1025 { 1028 {
1026 // InternalSolverLanguageParser.g:385:5: ( (lv_error_2_0= Error ) ) 1029 // InternalSolverLanguageParser.g:401:5: ( (lv_error_2_0= Error ) )
1027 // InternalSolverLanguageParser.g:386:6: (lv_error_2_0= Error ) 1030 // InternalSolverLanguageParser.g:402:6: (lv_error_2_0= Error )
1028 { 1031 {
1029 // InternalSolverLanguageParser.g:386:6: (lv_error_2_0= Error ) 1032 // InternalSolverLanguageParser.g:402:6: (lv_error_2_0= Error )
1030 // InternalSolverLanguageParser.g:387:7: lv_error_2_0= Error 1033 // InternalSolverLanguageParser.g:403:7: lv_error_2_0= Error
1031 { 1034 {
1032 lv_error_2_0=(Token)match(input,Error,FOLLOW_9); 1035 lv_error_2_0=(Token)match(input,Error,FOLLOW_9);
1033 1036
@@ -1045,19 +1048,19 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1045 1048
1046 } 1049 }
1047 1050
1048 // InternalSolverLanguageParser.g:399:5: ( (lv_functional_3_0= Functional ) )? 1051 // InternalSolverLanguageParser.g:415:5: ( (lv_functional_3_0= Functional ) )?
1049 int alt6=2; 1052 int alt5=2;
1050 int LA6_0 = input.LA(1); 1053 int LA5_0 = input.LA(1);
1051 1054
1052 if ( (LA6_0==Functional) ) { 1055 if ( (LA5_0==Functional) ) {
1053 alt6=1; 1056 alt5=1;
1054 } 1057 }
1055 switch (alt6) { 1058 switch (alt5) {
1056 case 1 : 1059 case 1 :
1057 // InternalSolverLanguageParser.g:400:6: (lv_functional_3_0= Functional ) 1060 // InternalSolverLanguageParser.g:416:6: (lv_functional_3_0= Functional )
1058 { 1061 {
1059 // InternalSolverLanguageParser.g:400:6: (lv_functional_3_0= Functional ) 1062 // InternalSolverLanguageParser.g:416:6: (lv_functional_3_0= Functional )
1060 // InternalSolverLanguageParser.g:401:7: lv_functional_3_0= Functional 1063 // InternalSolverLanguageParser.g:417:7: lv_functional_3_0= Functional
1061 { 1064 {
1062 lv_functional_3_0=(Token)match(input,Functional,FOLLOW_8); 1065 lv_functional_3_0=(Token)match(input,Functional,FOLLOW_8);
1063 1066
@@ -1087,11 +1090,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1087 1090
1088 } 1091 }
1089 1092
1090 // InternalSolverLanguageParser.g:415:3: ( (lv_head_4_0= ruleCall ) ) 1093 // InternalSolverLanguageParser.g:431:3: ( (lv_head_4_0= ruleCall ) )
1091 // InternalSolverLanguageParser.g:416:4: (lv_head_4_0= ruleCall ) 1094 // InternalSolverLanguageParser.g:432:4: (lv_head_4_0= ruleCall )
1092 { 1095 {
1093 // InternalSolverLanguageParser.g:416:4: (lv_head_4_0= ruleCall ) 1096 // InternalSolverLanguageParser.g:432:4: (lv_head_4_0= ruleCall )
1094 // InternalSolverLanguageParser.g:417:5: lv_head_4_0= ruleCall 1097 // InternalSolverLanguageParser.g:433:5: lv_head_4_0= ruleCall
1095 { 1098 {
1096 1099
1097 newCompositeNode(grammarAccess.getPredicateDefinitionAccess().getHeadCallParserRuleCall_1_0()); 1100 newCompositeNode(grammarAccess.getPredicateDefinitionAccess().getHeadCallParserRuleCall_1_0());
@@ -1122,11 +1125,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1122 1125
1123 newLeafNode(otherlv_5, grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_2()); 1126 newLeafNode(otherlv_5, grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_2());
1124 1127
1125 // InternalSolverLanguageParser.g:438:3: ( (lv_body_6_0= ruleExpression ) ) 1128 // InternalSolverLanguageParser.g:454:3: ( (lv_body_6_0= ruleExpression ) )
1126 // InternalSolverLanguageParser.g:439:4: (lv_body_6_0= ruleExpression ) 1129 // InternalSolverLanguageParser.g:455:4: (lv_body_6_0= ruleExpression )
1127 { 1130 {
1128 // InternalSolverLanguageParser.g:439:4: (lv_body_6_0= ruleExpression ) 1131 // InternalSolverLanguageParser.g:455:4: (lv_body_6_0= ruleExpression )
1129 // InternalSolverLanguageParser.g:440:5: lv_body_6_0= ruleExpression 1132 // InternalSolverLanguageParser.g:456:5: lv_body_6_0= ruleExpression
1130 { 1133 {
1131 1134
1132 newCompositeNode(grammarAccess.getPredicateDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); 1135 newCompositeNode(grammarAccess.getPredicateDefinitionAccess().getBodyExpressionParserRuleCall_3_0());
@@ -1176,7 +1179,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1176 1179
1177 1180
1178 // $ANTLR start "entryRuleUnnamedErrorPrediateDefinition" 1181 // $ANTLR start "entryRuleUnnamedErrorPrediateDefinition"
1179 // InternalSolverLanguageParser.g:461:1: entryRuleUnnamedErrorPrediateDefinition returns [EObject current=null] : iv_ruleUnnamedErrorPrediateDefinition= ruleUnnamedErrorPrediateDefinition EOF ; 1182 // InternalSolverLanguageParser.g:477:1: entryRuleUnnamedErrorPrediateDefinition returns [EObject current=null] : iv_ruleUnnamedErrorPrediateDefinition= ruleUnnamedErrorPrediateDefinition EOF ;
1180 public final EObject entryRuleUnnamedErrorPrediateDefinition() throws RecognitionException { 1183 public final EObject entryRuleUnnamedErrorPrediateDefinition() throws RecognitionException {
1181 EObject current = null; 1184 EObject current = null;
1182 1185
@@ -1184,8 +1187,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1184 1187
1185 1188
1186 try { 1189 try {
1187 // InternalSolverLanguageParser.g:461:71: (iv_ruleUnnamedErrorPrediateDefinition= ruleUnnamedErrorPrediateDefinition EOF ) 1190 // InternalSolverLanguageParser.g:477:71: (iv_ruleUnnamedErrorPrediateDefinition= ruleUnnamedErrorPrediateDefinition EOF )
1188 // InternalSolverLanguageParser.g:462:2: iv_ruleUnnamedErrorPrediateDefinition= ruleUnnamedErrorPrediateDefinition EOF 1191 // InternalSolverLanguageParser.g:478:2: iv_ruleUnnamedErrorPrediateDefinition= ruleUnnamedErrorPrediateDefinition EOF
1189 { 1192 {
1190 newCompositeNode(grammarAccess.getUnnamedErrorPrediateDefinitionRule()); 1193 newCompositeNode(grammarAccess.getUnnamedErrorPrediateDefinitionRule());
1191 pushFollow(FOLLOW_1); 1194 pushFollow(FOLLOW_1);
@@ -1212,7 +1215,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1212 1215
1213 1216
1214 // $ANTLR start "ruleUnnamedErrorPrediateDefinition" 1217 // $ANTLR start "ruleUnnamedErrorPrediateDefinition"
1215 // InternalSolverLanguageParser.g:468:1: ruleUnnamedErrorPrediateDefinition returns [EObject current=null] : (otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) ) ; 1218 // InternalSolverLanguageParser.g:484:1: ruleUnnamedErrorPrediateDefinition returns [EObject current=null] : (otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) ) ;
1216 public final EObject ruleUnnamedErrorPrediateDefinition() throws RecognitionException { 1219 public final EObject ruleUnnamedErrorPrediateDefinition() throws RecognitionException {
1217 EObject current = null; 1220 EObject current = null;
1218 1221
@@ -1227,21 +1230,21 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1227 enterRule(); 1230 enterRule();
1228 1231
1229 try { 1232 try {
1230 // InternalSolverLanguageParser.g:474:2: ( (otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) ) ) 1233 // InternalSolverLanguageParser.g:490:2: ( (otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) ) )
1231 // InternalSolverLanguageParser.g:475:2: (otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) ) 1234 // InternalSolverLanguageParser.g:491:2: (otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) )
1232 { 1235 {
1233 // InternalSolverLanguageParser.g:475:2: (otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) ) 1236 // InternalSolverLanguageParser.g:491:2: (otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) )
1234 // InternalSolverLanguageParser.g:476:3: otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) 1237 // InternalSolverLanguageParser.g:492:3: otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) )
1235 { 1238 {
1236 otherlv_0=(Token)match(input,Error,FOLLOW_11); 1239 otherlv_0=(Token)match(input,Error,FOLLOW_11);
1237 1240
1238 newLeafNode(otherlv_0, grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getErrorKeyword_0()); 1241 newLeafNode(otherlv_0, grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getErrorKeyword_0());
1239 1242
1240 // InternalSolverLanguageParser.g:480:3: ( (lv_argumentList_1_0= ruleArgumentList ) ) 1243 // InternalSolverLanguageParser.g:496:3: ( (lv_argumentList_1_0= ruleArgumentList ) )
1241 // InternalSolverLanguageParser.g:481:4: (lv_argumentList_1_0= ruleArgumentList ) 1244 // InternalSolverLanguageParser.g:497:4: (lv_argumentList_1_0= ruleArgumentList )
1242 { 1245 {
1243 // InternalSolverLanguageParser.g:481:4: (lv_argumentList_1_0= ruleArgumentList ) 1246 // InternalSolverLanguageParser.g:497:4: (lv_argumentList_1_0= ruleArgumentList )
1244 // InternalSolverLanguageParser.g:482:5: lv_argumentList_1_0= ruleArgumentList 1247 // InternalSolverLanguageParser.g:498:5: lv_argumentList_1_0= ruleArgumentList
1245 { 1248 {
1246 1249
1247 newCompositeNode(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getArgumentListArgumentListParserRuleCall_1_0()); 1250 newCompositeNode(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getArgumentListArgumentListParserRuleCall_1_0());
@@ -1272,11 +1275,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1272 1275
1273 newLeafNode(otherlv_2, grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getColonHyphenMinusKeyword_2()); 1276 newLeafNode(otherlv_2, grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getColonHyphenMinusKeyword_2());
1274 1277
1275 // InternalSolverLanguageParser.g:503:3: ( (lv_body_3_0= ruleExpression ) ) 1278 // InternalSolverLanguageParser.g:519:3: ( (lv_body_3_0= ruleExpression ) )
1276 // InternalSolverLanguageParser.g:504:4: (lv_body_3_0= ruleExpression ) 1279 // InternalSolverLanguageParser.g:520:4: (lv_body_3_0= ruleExpression )
1277 { 1280 {
1278 // InternalSolverLanguageParser.g:504:4: (lv_body_3_0= ruleExpression ) 1281 // InternalSolverLanguageParser.g:520:4: (lv_body_3_0= ruleExpression )
1279 // InternalSolverLanguageParser.g:505:5: lv_body_3_0= ruleExpression 1282 // InternalSolverLanguageParser.g:521:5: lv_body_3_0= ruleExpression
1280 { 1283 {
1281 1284
1282 newCompositeNode(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); 1285 newCompositeNode(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getBodyExpressionParserRuleCall_3_0());
@@ -1326,7 +1329,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1326 1329
1327 1330
1328 // $ANTLR start "entryRuleDefaultDefinition" 1331 // $ANTLR start "entryRuleDefaultDefinition"
1329 // InternalSolverLanguageParser.g:526:1: entryRuleDefaultDefinition returns [EObject current=null] : iv_ruleDefaultDefinition= ruleDefaultDefinition EOF ; 1332 // InternalSolverLanguageParser.g:542:1: entryRuleDefaultDefinition returns [EObject current=null] : iv_ruleDefaultDefinition= ruleDefaultDefinition EOF ;
1330 public final EObject entryRuleDefaultDefinition() throws RecognitionException { 1333 public final EObject entryRuleDefaultDefinition() throws RecognitionException {
1331 EObject current = null; 1334 EObject current = null;
1332 1335
@@ -1334,8 +1337,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1334 1337
1335 1338
1336 try { 1339 try {
1337 // InternalSolverLanguageParser.g:526:58: (iv_ruleDefaultDefinition= ruleDefaultDefinition EOF ) 1340 // InternalSolverLanguageParser.g:542:58: (iv_ruleDefaultDefinition= ruleDefaultDefinition EOF )
1338 // InternalSolverLanguageParser.g:527:2: iv_ruleDefaultDefinition= ruleDefaultDefinition EOF 1341 // InternalSolverLanguageParser.g:543:2: iv_ruleDefaultDefinition= ruleDefaultDefinition EOF
1339 { 1342 {
1340 newCompositeNode(grammarAccess.getDefaultDefinitionRule()); 1343 newCompositeNode(grammarAccess.getDefaultDefinitionRule());
1341 pushFollow(FOLLOW_1); 1344 pushFollow(FOLLOW_1);
@@ -1362,7 +1365,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1362 1365
1363 1366
1364 // $ANTLR start "ruleDefaultDefinition" 1367 // $ANTLR start "ruleDefaultDefinition"
1365 // InternalSolverLanguageParser.g:533:1: ruleDefaultDefinition returns [EObject current=null] : (otherlv_0= Default ( (lv_head_1_0= ruleCall ) ) otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) ; 1368 // InternalSolverLanguageParser.g:549:1: ruleDefaultDefinition returns [EObject current=null] : (otherlv_0= Default ( (lv_head_1_0= ruleCall ) ) otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) ;
1366 public final EObject ruleDefaultDefinition() throws RecognitionException { 1369 public final EObject ruleDefaultDefinition() throws RecognitionException {
1367 EObject current = null; 1370 EObject current = null;
1368 1371
@@ -1377,21 +1380,21 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1377 enterRule(); 1380 enterRule();
1378 1381
1379 try { 1382 try {
1380 // InternalSolverLanguageParser.g:539:2: ( (otherlv_0= Default ( (lv_head_1_0= ruleCall ) ) otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) ) 1383 // InternalSolverLanguageParser.g:555:2: ( (otherlv_0= Default ( (lv_head_1_0= ruleCall ) ) otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) )
1381 // InternalSolverLanguageParser.g:540:2: (otherlv_0= Default ( (lv_head_1_0= ruleCall ) ) otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) 1384 // InternalSolverLanguageParser.g:556:2: (otherlv_0= Default ( (lv_head_1_0= ruleCall ) ) otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )
1382 { 1385 {
1383 // InternalSolverLanguageParser.g:540:2: (otherlv_0= Default ( (lv_head_1_0= ruleCall ) ) otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) 1386 // InternalSolverLanguageParser.g:556:2: (otherlv_0= Default ( (lv_head_1_0= ruleCall ) ) otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )
1384 // InternalSolverLanguageParser.g:541:3: otherlv_0= Default ( (lv_head_1_0= ruleCall ) ) otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) 1387 // InternalSolverLanguageParser.g:557:3: otherlv_0= Default ( (lv_head_1_0= ruleCall ) ) otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) )
1385 { 1388 {
1386 otherlv_0=(Token)match(input,Default,FOLLOW_8); 1389 otherlv_0=(Token)match(input,Default,FOLLOW_8);
1387 1390
1388 newLeafNode(otherlv_0, grammarAccess.getDefaultDefinitionAccess().getDefaultKeyword_0()); 1391 newLeafNode(otherlv_0, grammarAccess.getDefaultDefinitionAccess().getDefaultKeyword_0());
1389 1392
1390 // InternalSolverLanguageParser.g:545:3: ( (lv_head_1_0= ruleCall ) ) 1393 // InternalSolverLanguageParser.g:561:3: ( (lv_head_1_0= ruleCall ) )
1391 // InternalSolverLanguageParser.g:546:4: (lv_head_1_0= ruleCall ) 1394 // InternalSolverLanguageParser.g:562:4: (lv_head_1_0= ruleCall )
1392 { 1395 {
1393 // InternalSolverLanguageParser.g:546:4: (lv_head_1_0= ruleCall ) 1396 // InternalSolverLanguageParser.g:562:4: (lv_head_1_0= ruleCall )
1394 // InternalSolverLanguageParser.g:547:5: lv_head_1_0= ruleCall 1397 // InternalSolverLanguageParser.g:563:5: lv_head_1_0= ruleCall
1395 { 1398 {
1396 1399
1397 newCompositeNode(grammarAccess.getDefaultDefinitionAccess().getHeadCallParserRuleCall_1_0()); 1400 newCompositeNode(grammarAccess.getDefaultDefinitionAccess().getHeadCallParserRuleCall_1_0());
@@ -1422,11 +1425,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1422 1425
1423 newLeafNode(otherlv_2, grammarAccess.getDefaultDefinitionAccess().getColonKeyword_2()); 1426 newLeafNode(otherlv_2, grammarAccess.getDefaultDefinitionAccess().getColonKeyword_2());
1424 1427
1425 // InternalSolverLanguageParser.g:568:3: ( (lv_range_3_0= ruleExpression ) ) 1428 // InternalSolverLanguageParser.g:584:3: ( (lv_range_3_0= ruleExpression ) )
1426 // InternalSolverLanguageParser.g:569:4: (lv_range_3_0= ruleExpression ) 1429 // InternalSolverLanguageParser.g:585:4: (lv_range_3_0= ruleExpression )
1427 { 1430 {
1428 // InternalSolverLanguageParser.g:569:4: (lv_range_3_0= ruleExpression ) 1431 // InternalSolverLanguageParser.g:585:4: (lv_range_3_0= ruleExpression )
1429 // InternalSolverLanguageParser.g:570:5: lv_range_3_0= ruleExpression 1432 // InternalSolverLanguageParser.g:586:5: lv_range_3_0= ruleExpression
1430 { 1433 {
1431 1434
1432 newCompositeNode(grammarAccess.getDefaultDefinitionAccess().getRangeExpressionParserRuleCall_3_0()); 1435 newCompositeNode(grammarAccess.getDefaultDefinitionAccess().getRangeExpressionParserRuleCall_3_0());
@@ -1475,8 +1478,181 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1475 // $ANTLR end "ruleDefaultDefinition" 1478 // $ANTLR end "ruleDefaultDefinition"
1476 1479
1477 1480
1481 // $ANTLR start "entryRuleMetricDefinition"
1482 // InternalSolverLanguageParser.g:607:1: entryRuleMetricDefinition returns [EObject current=null] : iv_ruleMetricDefinition= ruleMetricDefinition EOF ;
1483 public final EObject entryRuleMetricDefinition() throws RecognitionException {
1484 EObject current = null;
1485
1486 EObject iv_ruleMetricDefinition = null;
1487
1488
1489 try {
1490 // InternalSolverLanguageParser.g:607:57: (iv_ruleMetricDefinition= ruleMetricDefinition EOF )
1491 // InternalSolverLanguageParser.g:608:2: iv_ruleMetricDefinition= ruleMetricDefinition EOF
1492 {
1493 newCompositeNode(grammarAccess.getMetricDefinitionRule());
1494 pushFollow(FOLLOW_1);
1495 iv_ruleMetricDefinition=ruleMetricDefinition();
1496
1497 state._fsp--;
1498
1499 current =iv_ruleMetricDefinition;
1500 match(input,EOF,FOLLOW_2);
1501
1502 }
1503
1504 }
1505
1506 catch (RecognitionException re) {
1507 recover(input,re);
1508 appendSkippedTokens();
1509 }
1510 finally {
1511 }
1512 return current;
1513 }
1514 // $ANTLR end "entryRuleMetricDefinition"
1515
1516
1517 // $ANTLR start "ruleMetricDefinition"
1518 // InternalSolverLanguageParser.g:614:1: ruleMetricDefinition returns [EObject current=null] : ( ( ( ruleQualifiedName ) ) ( (lv_head_1_0= ruleCall ) ) otherlv_2= EqualsSign ( (lv_body_3_0= ruleExpression ) ) ) ;
1519 public final EObject ruleMetricDefinition() throws RecognitionException {
1520 EObject current = null;
1521
1522 Token otherlv_2=null;
1523 EObject lv_head_1_0 = null;
1524
1525 EObject lv_body_3_0 = null;
1526
1527
1528
1529 enterRule();
1530
1531 try {
1532 // InternalSolverLanguageParser.g:620:2: ( ( ( ( ruleQualifiedName ) ) ( (lv_head_1_0= ruleCall ) ) otherlv_2= EqualsSign ( (lv_body_3_0= ruleExpression ) ) ) )
1533 // InternalSolverLanguageParser.g:621:2: ( ( ( ruleQualifiedName ) ) ( (lv_head_1_0= ruleCall ) ) otherlv_2= EqualsSign ( (lv_body_3_0= ruleExpression ) ) )
1534 {
1535 // InternalSolverLanguageParser.g:621:2: ( ( ( ruleQualifiedName ) ) ( (lv_head_1_0= ruleCall ) ) otherlv_2= EqualsSign ( (lv_body_3_0= ruleExpression ) ) )
1536 // InternalSolverLanguageParser.g:622:3: ( ( ruleQualifiedName ) ) ( (lv_head_1_0= ruleCall ) ) otherlv_2= EqualsSign ( (lv_body_3_0= ruleExpression ) )
1537 {
1538 // InternalSolverLanguageParser.g:622:3: ( ( ruleQualifiedName ) )
1539 // InternalSolverLanguageParser.g:623:4: ( ruleQualifiedName )
1540 {
1541 // InternalSolverLanguageParser.g:623:4: ( ruleQualifiedName )
1542 // InternalSolverLanguageParser.g:624:5: ruleQualifiedName
1543 {
1544
1545 if (current==null) {
1546 current = createModelElement(grammarAccess.getMetricDefinitionRule());
1547 }
1548
1549
1550 newCompositeNode(grammarAccess.getMetricDefinitionAccess().getTypeNamedElementCrossReference_0_0());
1551
1552 pushFollow(FOLLOW_8);
1553 ruleQualifiedName();
1554
1555 state._fsp--;
1556
1557
1558 afterParserOrEnumRuleCall();
1559
1560
1561 }
1562
1563
1564 }
1565
1566 // InternalSolverLanguageParser.g:638:3: ( (lv_head_1_0= ruleCall ) )
1567 // InternalSolverLanguageParser.g:639:4: (lv_head_1_0= ruleCall )
1568 {
1569 // InternalSolverLanguageParser.g:639:4: (lv_head_1_0= ruleCall )
1570 // InternalSolverLanguageParser.g:640:5: lv_head_1_0= ruleCall
1571 {
1572
1573 newCompositeNode(grammarAccess.getMetricDefinitionAccess().getHeadCallParserRuleCall_1_0());
1574
1575 pushFollow(FOLLOW_13);
1576 lv_head_1_0=ruleCall();
1577
1578 state._fsp--;
1579
1580
1581 if (current==null) {
1582 current = createModelElementForParent(grammarAccess.getMetricDefinitionRule());
1583 }
1584 set(
1585 current,
1586 "head",
1587 lv_head_1_0,
1588 "org.eclipse.viatra.solver.language.SolverLanguage.Call");
1589 afterParserOrEnumRuleCall();
1590
1591
1592 }
1593
1594
1595 }
1596
1597 otherlv_2=(Token)match(input,EqualsSign,FOLLOW_6);
1598
1599 newLeafNode(otherlv_2, grammarAccess.getMetricDefinitionAccess().getEqualsSignKeyword_2());
1600
1601 // InternalSolverLanguageParser.g:661:3: ( (lv_body_3_0= ruleExpression ) )
1602 // InternalSolverLanguageParser.g:662:4: (lv_body_3_0= ruleExpression )
1603 {
1604 // InternalSolverLanguageParser.g:662:4: (lv_body_3_0= ruleExpression )
1605 // InternalSolverLanguageParser.g:663:5: lv_body_3_0= ruleExpression
1606 {
1607
1608 newCompositeNode(grammarAccess.getMetricDefinitionAccess().getBodyExpressionParserRuleCall_3_0());
1609
1610 pushFollow(FOLLOW_2);
1611 lv_body_3_0=ruleExpression();
1612
1613 state._fsp--;
1614
1615
1616 if (current==null) {
1617 current = createModelElementForParent(grammarAccess.getMetricDefinitionRule());
1618 }
1619 set(
1620 current,
1621 "body",
1622 lv_body_3_0,
1623 "org.eclipse.viatra.solver.language.SolverLanguage.Expression");
1624 afterParserOrEnumRuleCall();
1625
1626
1627 }
1628
1629
1630 }
1631
1632
1633 }
1634
1635
1636 }
1637
1638
1639 leaveRule();
1640
1641 }
1642
1643 catch (RecognitionException re) {
1644 recover(input,re);
1645 appendSkippedTokens();
1646 }
1647 finally {
1648 }
1649 return current;
1650 }
1651 // $ANTLR end "ruleMetricDefinition"
1652
1653
1478 // $ANTLR start "entryRuleExternPredicateDefinition" 1654 // $ANTLR start "entryRuleExternPredicateDefinition"
1479 // InternalSolverLanguageParser.g:591:1: entryRuleExternPredicateDefinition returns [EObject current=null] : iv_ruleExternPredicateDefinition= ruleExternPredicateDefinition EOF ; 1655 // InternalSolverLanguageParser.g:684:1: entryRuleExternPredicateDefinition returns [EObject current=null] : iv_ruleExternPredicateDefinition= ruleExternPredicateDefinition EOF ;
1480 public final EObject entryRuleExternPredicateDefinition() throws RecognitionException { 1656 public final EObject entryRuleExternPredicateDefinition() throws RecognitionException {
1481 EObject current = null; 1657 EObject current = null;
1482 1658
@@ -1484,8 +1660,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1484 1660
1485 1661
1486 try { 1662 try {
1487 // InternalSolverLanguageParser.g:591:66: (iv_ruleExternPredicateDefinition= ruleExternPredicateDefinition EOF ) 1663 // InternalSolverLanguageParser.g:684:66: (iv_ruleExternPredicateDefinition= ruleExternPredicateDefinition EOF )
1488 // InternalSolverLanguageParser.g:592:2: iv_ruleExternPredicateDefinition= ruleExternPredicateDefinition EOF 1664 // InternalSolverLanguageParser.g:685:2: iv_ruleExternPredicateDefinition= ruleExternPredicateDefinition EOF
1489 { 1665 {
1490 newCompositeNode(grammarAccess.getExternPredicateDefinitionRule()); 1666 newCompositeNode(grammarAccess.getExternPredicateDefinitionRule());
1491 pushFollow(FOLLOW_1); 1667 pushFollow(FOLLOW_1);
@@ -1512,39 +1688,72 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1512 1688
1513 1689
1514 // $ANTLR start "ruleExternPredicateDefinition" 1690 // $ANTLR start "ruleExternPredicateDefinition"
1515 // InternalSolverLanguageParser.g:598:1: ruleExternPredicateDefinition returns [EObject current=null] : (otherlv_0= Extern ( (lv_head_1_0= ruleCall ) ) ) ; 1691 // InternalSolverLanguageParser.g:691:1: ruleExternPredicateDefinition returns [EObject current=null] : (otherlv_0= Extern ( (lv_name_1_0= ruleQualifiedName ) ) ( (lv_argumentList_2_0= ruleArgumentList ) ) ) ;
1516 public final EObject ruleExternPredicateDefinition() throws RecognitionException { 1692 public final EObject ruleExternPredicateDefinition() throws RecognitionException {
1517 EObject current = null; 1693 EObject current = null;
1518 1694
1519 Token otherlv_0=null; 1695 Token otherlv_0=null;
1520 EObject lv_head_1_0 = null; 1696 AntlrDatatypeRuleToken lv_name_1_0 = null;
1697
1698 EObject lv_argumentList_2_0 = null;
1521 1699
1522 1700
1523 1701
1524 enterRule(); 1702 enterRule();
1525 1703
1526 try { 1704 try {
1527 // InternalSolverLanguageParser.g:604:2: ( (otherlv_0= Extern ( (lv_head_1_0= ruleCall ) ) ) ) 1705 // InternalSolverLanguageParser.g:697:2: ( (otherlv_0= Extern ( (lv_name_1_0= ruleQualifiedName ) ) ( (lv_argumentList_2_0= ruleArgumentList ) ) ) )
1528 // InternalSolverLanguageParser.g:605:2: (otherlv_0= Extern ( (lv_head_1_0= ruleCall ) ) ) 1706 // InternalSolverLanguageParser.g:698:2: (otherlv_0= Extern ( (lv_name_1_0= ruleQualifiedName ) ) ( (lv_argumentList_2_0= ruleArgumentList ) ) )
1529 { 1707 {
1530 // InternalSolverLanguageParser.g:605:2: (otherlv_0= Extern ( (lv_head_1_0= ruleCall ) ) ) 1708 // InternalSolverLanguageParser.g:698:2: (otherlv_0= Extern ( (lv_name_1_0= ruleQualifiedName ) ) ( (lv_argumentList_2_0= ruleArgumentList ) ) )
1531 // InternalSolverLanguageParser.g:606:3: otherlv_0= Extern ( (lv_head_1_0= ruleCall ) ) 1709 // InternalSolverLanguageParser.g:699:3: otherlv_0= Extern ( (lv_name_1_0= ruleQualifiedName ) ) ( (lv_argumentList_2_0= ruleArgumentList ) )
1532 { 1710 {
1533 otherlv_0=(Token)match(input,Extern,FOLLOW_8); 1711 otherlv_0=(Token)match(input,Extern,FOLLOW_8);
1534 1712
1535 newLeafNode(otherlv_0, grammarAccess.getExternPredicateDefinitionAccess().getExternKeyword_0()); 1713 newLeafNode(otherlv_0, grammarAccess.getExternPredicateDefinitionAccess().getExternKeyword_0());
1536 1714
1537 // InternalSolverLanguageParser.g:610:3: ( (lv_head_1_0= ruleCall ) ) 1715 // InternalSolverLanguageParser.g:703:3: ( (lv_name_1_0= ruleQualifiedName ) )
1538 // InternalSolverLanguageParser.g:611:4: (lv_head_1_0= ruleCall ) 1716 // InternalSolverLanguageParser.g:704:4: (lv_name_1_0= ruleQualifiedName )
1717 {
1718 // InternalSolverLanguageParser.g:704:4: (lv_name_1_0= ruleQualifiedName )
1719 // InternalSolverLanguageParser.g:705:5: lv_name_1_0= ruleQualifiedName
1720 {
1721
1722 newCompositeNode(grammarAccess.getExternPredicateDefinitionAccess().getNameQualifiedNameParserRuleCall_1_0());
1723
1724 pushFollow(FOLLOW_11);
1725 lv_name_1_0=ruleQualifiedName();
1726
1727 state._fsp--;
1728
1729
1730 if (current==null) {
1731 current = createModelElementForParent(grammarAccess.getExternPredicateDefinitionRule());
1732 }
1733 set(
1734 current,
1735 "name",
1736 lv_name_1_0,
1737 "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName");
1738 afterParserOrEnumRuleCall();
1739
1740
1741 }
1742
1743
1744 }
1745
1746 // InternalSolverLanguageParser.g:722:3: ( (lv_argumentList_2_0= ruleArgumentList ) )
1747 // InternalSolverLanguageParser.g:723:4: (lv_argumentList_2_0= ruleArgumentList )
1539 { 1748 {
1540 // InternalSolverLanguageParser.g:611:4: (lv_head_1_0= ruleCall ) 1749 // InternalSolverLanguageParser.g:723:4: (lv_argumentList_2_0= ruleArgumentList )
1541 // InternalSolverLanguageParser.g:612:5: lv_head_1_0= ruleCall 1750 // InternalSolverLanguageParser.g:724:5: lv_argumentList_2_0= ruleArgumentList
1542 { 1751 {
1543 1752
1544 newCompositeNode(grammarAccess.getExternPredicateDefinitionAccess().getHeadCallParserRuleCall_1_0()); 1753 newCompositeNode(grammarAccess.getExternPredicateDefinitionAccess().getArgumentListArgumentListParserRuleCall_2_0());
1545 1754
1546 pushFollow(FOLLOW_2); 1755 pushFollow(FOLLOW_2);
1547 lv_head_1_0=ruleCall(); 1756 lv_argumentList_2_0=ruleArgumentList();
1548 1757
1549 state._fsp--; 1758 state._fsp--;
1550 1759
@@ -1554,9 +1763,9 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1554 } 1763 }
1555 set( 1764 set(
1556 current, 1765 current,
1557 "head", 1766 "argumentList",
1558 lv_head_1_0, 1767 lv_argumentList_2_0,
1559 "org.eclipse.viatra.solver.language.SolverLanguage.Call"); 1768 "org.eclipse.viatra.solver.language.SolverLanguage.ArgumentList");
1560 afterParserOrEnumRuleCall(); 1769 afterParserOrEnumRuleCall();
1561 1770
1562 1771
@@ -1587,25 +1796,25 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1587 // $ANTLR end "ruleExternPredicateDefinition" 1796 // $ANTLR end "ruleExternPredicateDefinition"
1588 1797
1589 1798
1590 // $ANTLR start "entryRuleMetricDefinition" 1799 // $ANTLR start "entryRuleExternMetricDefinition"
1591 // InternalSolverLanguageParser.g:633:1: entryRuleMetricDefinition returns [EObject current=null] : iv_ruleMetricDefinition= ruleMetricDefinition EOF ; 1800 // InternalSolverLanguageParser.g:745:1: entryRuleExternMetricDefinition returns [EObject current=null] : iv_ruleExternMetricDefinition= ruleExternMetricDefinition EOF ;
1592 public final EObject entryRuleMetricDefinition() throws RecognitionException { 1801 public final EObject entryRuleExternMetricDefinition() throws RecognitionException {
1593 EObject current = null; 1802 EObject current = null;
1594 1803
1595 EObject iv_ruleMetricDefinition = null; 1804 EObject iv_ruleExternMetricDefinition = null;
1596 1805
1597 1806
1598 try { 1807 try {
1599 // InternalSolverLanguageParser.g:633:57: (iv_ruleMetricDefinition= ruleMetricDefinition EOF ) 1808 // InternalSolverLanguageParser.g:745:63: (iv_ruleExternMetricDefinition= ruleExternMetricDefinition EOF )
1600 // InternalSolverLanguageParser.g:634:2: iv_ruleMetricDefinition= ruleMetricDefinition EOF 1809 // InternalSolverLanguageParser.g:746:2: iv_ruleExternMetricDefinition= ruleExternMetricDefinition EOF
1601 { 1810 {
1602 newCompositeNode(grammarAccess.getMetricDefinitionRule()); 1811 newCompositeNode(grammarAccess.getExternMetricDefinitionRule());
1603 pushFollow(FOLLOW_1); 1812 pushFollow(FOLLOW_1);
1604 iv_ruleMetricDefinition=ruleMetricDefinition(); 1813 iv_ruleExternMetricDefinition=ruleExternMetricDefinition();
1605 1814
1606 state._fsp--; 1815 state._fsp--;
1607 1816
1608 current =iv_ruleMetricDefinition; 1817 current =iv_ruleExternMetricDefinition;
1609 match(input,EOF,FOLLOW_2); 1818 match(input,EOF,FOLLOW_2);
1610 1819
1611 } 1820 }
@@ -1620,55 +1829,85 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1620 } 1829 }
1621 return current; 1830 return current;
1622 } 1831 }
1623 // $ANTLR end "entryRuleMetricDefinition" 1832 // $ANTLR end "entryRuleExternMetricDefinition"
1624 1833
1625 1834
1626 // $ANTLR start "ruleMetricDefinition" 1835 // $ANTLR start "ruleExternMetricDefinition"
1627 // InternalSolverLanguageParser.g:640:1: ruleMetricDefinition returns [EObject current=null] : ( ( (lv_type_0_0= ruleMetricType ) ) ( (lv_head_1_0= ruleExpression ) ) otherlv_2= EqualsSign ( (lv_body_3_0= ruleExpression ) ) ) ; 1836 // InternalSolverLanguageParser.g:752:1: ruleExternMetricDefinition returns [EObject current=null] : (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) ( (lv_argumentList_3_0= ruleArgumentList ) ) ) ;
1628 public final EObject ruleMetricDefinition() throws RecognitionException { 1837 public final EObject ruleExternMetricDefinition() throws RecognitionException {
1629 EObject current = null; 1838 EObject current = null;
1630 1839
1631 Token otherlv_2=null; 1840 Token otherlv_0=null;
1632 Enumerator lv_type_0_0 = null; 1841 AntlrDatatypeRuleToken lv_name_2_0 = null;
1633
1634 EObject lv_head_1_0 = null;
1635 1842
1636 EObject lv_body_3_0 = null; 1843 EObject lv_argumentList_3_0 = null;
1637 1844
1638 1845
1639 1846
1640 enterRule(); 1847 enterRule();
1641 1848
1642 try { 1849 try {
1643 // InternalSolverLanguageParser.g:646:2: ( ( ( (lv_type_0_0= ruleMetricType ) ) ( (lv_head_1_0= ruleExpression ) ) otherlv_2= EqualsSign ( (lv_body_3_0= ruleExpression ) ) ) ) 1850 // InternalSolverLanguageParser.g:758:2: ( (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) ( (lv_argumentList_3_0= ruleArgumentList ) ) ) )
1644 // InternalSolverLanguageParser.g:647:2: ( ( (lv_type_0_0= ruleMetricType ) ) ( (lv_head_1_0= ruleExpression ) ) otherlv_2= EqualsSign ( (lv_body_3_0= ruleExpression ) ) ) 1851 // InternalSolverLanguageParser.g:759:2: (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) ( (lv_argumentList_3_0= ruleArgumentList ) ) )
1645 { 1852 {
1646 // InternalSolverLanguageParser.g:647:2: ( ( (lv_type_0_0= ruleMetricType ) ) ( (lv_head_1_0= ruleExpression ) ) otherlv_2= EqualsSign ( (lv_body_3_0= ruleExpression ) ) ) 1853 // InternalSolverLanguageParser.g:759:2: (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) ( (lv_argumentList_3_0= ruleArgumentList ) ) )
1647 // InternalSolverLanguageParser.g:648:3: ( (lv_type_0_0= ruleMetricType ) ) ( (lv_head_1_0= ruleExpression ) ) otherlv_2= EqualsSign ( (lv_body_3_0= ruleExpression ) ) 1854 // InternalSolverLanguageParser.g:760:3: otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) ( (lv_argumentList_3_0= ruleArgumentList ) )
1648 { 1855 {
1649 // InternalSolverLanguageParser.g:648:3: ( (lv_type_0_0= ruleMetricType ) ) 1856 otherlv_0=(Token)match(input,Extern,FOLLOW_8);
1650 // InternalSolverLanguageParser.g:649:4: (lv_type_0_0= ruleMetricType ) 1857
1858 newLeafNode(otherlv_0, grammarAccess.getExternMetricDefinitionAccess().getExternKeyword_0());
1859
1860 // InternalSolverLanguageParser.g:764:3: ( ( ruleQualifiedName ) )
1861 // InternalSolverLanguageParser.g:765:4: ( ruleQualifiedName )
1651 { 1862 {
1652 // InternalSolverLanguageParser.g:649:4: (lv_type_0_0= ruleMetricType ) 1863 // InternalSolverLanguageParser.g:765:4: ( ruleQualifiedName )
1653 // InternalSolverLanguageParser.g:650:5: lv_type_0_0= ruleMetricType 1864 // InternalSolverLanguageParser.g:766:5: ruleQualifiedName
1654 { 1865 {
1655 1866
1656 newCompositeNode(grammarAccess.getMetricDefinitionAccess().getTypeMetricTypeEnumRuleCall_0_0()); 1867 if (current==null) {
1868 current = createModelElement(grammarAccess.getExternMetricDefinitionRule());
1869 }
1870
1871
1872 newCompositeNode(grammarAccess.getExternMetricDefinitionAccess().getTypeNamedElementCrossReference_1_0());
1657 1873
1658 pushFollow(FOLLOW_6); 1874 pushFollow(FOLLOW_8);
1659 lv_type_0_0=ruleMetricType(); 1875 ruleQualifiedName();
1876
1877 state._fsp--;
1878
1879
1880 afterParserOrEnumRuleCall();
1881
1882
1883 }
1884
1885
1886 }
1887
1888 // InternalSolverLanguageParser.g:780:3: ( (lv_name_2_0= ruleQualifiedName ) )
1889 // InternalSolverLanguageParser.g:781:4: (lv_name_2_0= ruleQualifiedName )
1890 {
1891 // InternalSolverLanguageParser.g:781:4: (lv_name_2_0= ruleQualifiedName )
1892 // InternalSolverLanguageParser.g:782:5: lv_name_2_0= ruleQualifiedName
1893 {
1894
1895 newCompositeNode(grammarAccess.getExternMetricDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0());
1896
1897 pushFollow(FOLLOW_11);
1898 lv_name_2_0=ruleQualifiedName();
1660 1899
1661 state._fsp--; 1900 state._fsp--;
1662 1901
1663 1902
1664 if (current==null) { 1903 if (current==null) {
1665 current = createModelElementForParent(grammarAccess.getMetricDefinitionRule()); 1904 current = createModelElementForParent(grammarAccess.getExternMetricDefinitionRule());
1666 } 1905 }
1667 set( 1906 set(
1668 current, 1907 current,
1669 "type", 1908 "name",
1670 lv_type_0_0, 1909 lv_name_2_0,
1671 "org.eclipse.viatra.solver.language.SolverLanguage.MetricType"); 1910 "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName");
1672 afterParserOrEnumRuleCall(); 1911 afterParserOrEnumRuleCall();
1673 1912
1674 1913
@@ -1677,29 +1916,29 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1677 1916
1678 } 1917 }
1679 1918
1680 // InternalSolverLanguageParser.g:667:3: ( (lv_head_1_0= ruleExpression ) ) 1919 // InternalSolverLanguageParser.g:799:3: ( (lv_argumentList_3_0= ruleArgumentList ) )
1681 // InternalSolverLanguageParser.g:668:4: (lv_head_1_0= ruleExpression ) 1920 // InternalSolverLanguageParser.g:800:4: (lv_argumentList_3_0= ruleArgumentList )
1682 { 1921 {
1683 // InternalSolverLanguageParser.g:668:4: (lv_head_1_0= ruleExpression ) 1922 // InternalSolverLanguageParser.g:800:4: (lv_argumentList_3_0= ruleArgumentList )
1684 // InternalSolverLanguageParser.g:669:5: lv_head_1_0= ruleExpression 1923 // InternalSolverLanguageParser.g:801:5: lv_argumentList_3_0= ruleArgumentList
1685 { 1924 {
1686 1925
1687 newCompositeNode(grammarAccess.getMetricDefinitionAccess().getHeadExpressionParserRuleCall_1_0()); 1926 newCompositeNode(grammarAccess.getExternMetricDefinitionAccess().getArgumentListArgumentListParserRuleCall_3_0());
1688 1927
1689 pushFollow(FOLLOW_13); 1928 pushFollow(FOLLOW_2);
1690 lv_head_1_0=ruleExpression(); 1929 lv_argumentList_3_0=ruleArgumentList();
1691 1930
1692 state._fsp--; 1931 state._fsp--;
1693 1932
1694 1933
1695 if (current==null) { 1934 if (current==null) {
1696 current = createModelElementForParent(grammarAccess.getMetricDefinitionRule()); 1935 current = createModelElementForParent(grammarAccess.getExternMetricDefinitionRule());
1697 } 1936 }
1698 set( 1937 set(
1699 current, 1938 current,
1700 "head", 1939 "argumentList",
1701 lv_head_1_0, 1940 lv_argumentList_3_0,
1702 "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); 1941 "org.eclipse.viatra.solver.language.SolverLanguage.ArgumentList");
1703 afterParserOrEnumRuleCall(); 1942 afterParserOrEnumRuleCall();
1704 1943
1705 1944
@@ -1708,33 +1947,141 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1708 1947
1709 } 1948 }
1710 1949
1711 otherlv_2=(Token)match(input,EqualsSign,FOLLOW_6);
1712 1950
1713 newLeafNode(otherlv_2, grammarAccess.getMetricDefinitionAccess().getEqualsSignKeyword_2()); 1951 }
1952
1953
1954 }
1955
1956
1957 leaveRule();
1958
1959 }
1960
1961 catch (RecognitionException re) {
1962 recover(input,re);
1963 appendSkippedTokens();
1964 }
1965 finally {
1966 }
1967 return current;
1968 }
1969 // $ANTLR end "ruleExternMetricDefinition"
1970
1971
1972 // $ANTLR start "entryRuleExternAggregatorDefinition"
1973 // InternalSolverLanguageParser.g:822:1: entryRuleExternAggregatorDefinition returns [EObject current=null] : iv_ruleExternAggregatorDefinition= ruleExternAggregatorDefinition EOF ;
1974 public final EObject entryRuleExternAggregatorDefinition() throws RecognitionException {
1975 EObject current = null;
1976
1977 EObject iv_ruleExternAggregatorDefinition = null;
1978
1979
1980 try {
1981 // InternalSolverLanguageParser.g:822:67: (iv_ruleExternAggregatorDefinition= ruleExternAggregatorDefinition EOF )
1982 // InternalSolverLanguageParser.g:823:2: iv_ruleExternAggregatorDefinition= ruleExternAggregatorDefinition EOF
1983 {
1984 newCompositeNode(grammarAccess.getExternAggregatorDefinitionRule());
1985 pushFollow(FOLLOW_1);
1986 iv_ruleExternAggregatorDefinition=ruleExternAggregatorDefinition();
1987
1988 state._fsp--;
1989
1990 current =iv_ruleExternAggregatorDefinition;
1991 match(input,EOF,FOLLOW_2);
1992
1993 }
1994
1995 }
1996
1997 catch (RecognitionException re) {
1998 recover(input,re);
1999 appendSkippedTokens();
2000 }
2001 finally {
2002 }
2003 return current;
2004 }
2005 // $ANTLR end "entryRuleExternAggregatorDefinition"
2006
2007
2008 // $ANTLR start "ruleExternAggregatorDefinition"
2009 // InternalSolverLanguageParser.g:829:1: ruleExternAggregatorDefinition returns [EObject current=null] : (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) otherlv_3= LeftCurlyBracket ( ( ruleQualifiedName ) ) otherlv_5= FullStopFullStopFullStop otherlv_6= RightCurlyBracket ) ;
2010 public final EObject ruleExternAggregatorDefinition() throws RecognitionException {
2011 EObject current = null;
2012
2013 Token otherlv_0=null;
2014 Token otherlv_3=null;
2015 Token otherlv_5=null;
2016 Token otherlv_6=null;
2017 AntlrDatatypeRuleToken lv_name_2_0 = null;
2018
2019
2020
2021 enterRule();
2022
2023 try {
2024 // InternalSolverLanguageParser.g:835:2: ( (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) otherlv_3= LeftCurlyBracket ( ( ruleQualifiedName ) ) otherlv_5= FullStopFullStopFullStop otherlv_6= RightCurlyBracket ) )
2025 // InternalSolverLanguageParser.g:836:2: (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) otherlv_3= LeftCurlyBracket ( ( ruleQualifiedName ) ) otherlv_5= FullStopFullStopFullStop otherlv_6= RightCurlyBracket )
2026 {
2027 // InternalSolverLanguageParser.g:836:2: (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) otherlv_3= LeftCurlyBracket ( ( ruleQualifiedName ) ) otherlv_5= FullStopFullStopFullStop otherlv_6= RightCurlyBracket )
2028 // InternalSolverLanguageParser.g:837:3: otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) otherlv_3= LeftCurlyBracket ( ( ruleQualifiedName ) ) otherlv_5= FullStopFullStopFullStop otherlv_6= RightCurlyBracket
2029 {
2030 otherlv_0=(Token)match(input,Extern,FOLLOW_8);
2031
2032 newLeafNode(otherlv_0, grammarAccess.getExternAggregatorDefinitionAccess().getExternKeyword_0());
1714 2033
1715 // InternalSolverLanguageParser.g:690:3: ( (lv_body_3_0= ruleExpression ) ) 2034 // InternalSolverLanguageParser.g:841:3: ( ( ruleQualifiedName ) )
1716 // InternalSolverLanguageParser.g:691:4: (lv_body_3_0= ruleExpression ) 2035 // InternalSolverLanguageParser.g:842:4: ( ruleQualifiedName )
1717 { 2036 {
1718 // InternalSolverLanguageParser.g:691:4: (lv_body_3_0= ruleExpression ) 2037 // InternalSolverLanguageParser.g:842:4: ( ruleQualifiedName )
1719 // InternalSolverLanguageParser.g:692:5: lv_body_3_0= ruleExpression 2038 // InternalSolverLanguageParser.g:843:5: ruleQualifiedName
1720 { 2039 {
1721 2040
1722 newCompositeNode(grammarAccess.getMetricDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); 2041 if (current==null) {
2042 current = createModelElement(grammarAccess.getExternAggregatorDefinitionRule());
2043 }
1723 2044
1724 pushFollow(FOLLOW_2); 2045
1725 lv_body_3_0=ruleExpression(); 2046 newCompositeNode(grammarAccess.getExternAggregatorDefinitionAccess().getTypeNamedElementCrossReference_1_0());
2047
2048 pushFollow(FOLLOW_8);
2049 ruleQualifiedName();
2050
2051 state._fsp--;
2052
2053
2054 afterParserOrEnumRuleCall();
2055
2056
2057 }
2058
2059
2060 }
2061
2062 // InternalSolverLanguageParser.g:857:3: ( (lv_name_2_0= ruleQualifiedName ) )
2063 // InternalSolverLanguageParser.g:858:4: (lv_name_2_0= ruleQualifiedName )
2064 {
2065 // InternalSolverLanguageParser.g:858:4: (lv_name_2_0= ruleQualifiedName )
2066 // InternalSolverLanguageParser.g:859:5: lv_name_2_0= ruleQualifiedName
2067 {
2068
2069 newCompositeNode(grammarAccess.getExternAggregatorDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0());
2070
2071 pushFollow(FOLLOW_14);
2072 lv_name_2_0=ruleQualifiedName();
1726 2073
1727 state._fsp--; 2074 state._fsp--;
1728 2075
1729 2076
1730 if (current==null) { 2077 if (current==null) {
1731 current = createModelElementForParent(grammarAccess.getMetricDefinitionRule()); 2078 current = createModelElementForParent(grammarAccess.getExternAggregatorDefinitionRule());
1732 } 2079 }
1733 set( 2080 set(
1734 current, 2081 current,
1735 "body", 2082 "name",
1736 lv_body_3_0, 2083 lv_name_2_0,
1737 "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); 2084 "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName");
1738 afterParserOrEnumRuleCall(); 2085 afterParserOrEnumRuleCall();
1739 2086
1740 2087
@@ -1743,6 +2090,46 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1743 2090
1744 } 2091 }
1745 2092
2093 otherlv_3=(Token)match(input,LeftCurlyBracket,FOLLOW_8);
2094
2095 newLeafNode(otherlv_3, grammarAccess.getExternAggregatorDefinitionAccess().getLeftCurlyBracketKeyword_3());
2096
2097 // InternalSolverLanguageParser.g:880:3: ( ( ruleQualifiedName ) )
2098 // InternalSolverLanguageParser.g:881:4: ( ruleQualifiedName )
2099 {
2100 // InternalSolverLanguageParser.g:881:4: ( ruleQualifiedName )
2101 // InternalSolverLanguageParser.g:882:5: ruleQualifiedName
2102 {
2103
2104 if (current==null) {
2105 current = createModelElement(grammarAccess.getExternAggregatorDefinitionRule());
2106 }
2107
2108
2109 newCompositeNode(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeNamedElementCrossReference_4_0());
2110
2111 pushFollow(FOLLOW_15);
2112 ruleQualifiedName();
2113
2114 state._fsp--;
2115
2116
2117 afterParserOrEnumRuleCall();
2118
2119
2120 }
2121
2122
2123 }
2124
2125 otherlv_5=(Token)match(input,FullStopFullStopFullStop,FOLLOW_16);
2126
2127 newLeafNode(otherlv_5, grammarAccess.getExternAggregatorDefinitionAccess().getFullStopFullStopFullStopKeyword_5());
2128
2129 otherlv_6=(Token)match(input,RightCurlyBracket,FOLLOW_2);
2130
2131 newLeafNode(otherlv_6, grammarAccess.getExternAggregatorDefinitionAccess().getRightCurlyBracketKeyword_6());
2132
1746 2133
1747 } 2134 }
1748 2135
@@ -1762,28 +2149,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1762 } 2149 }
1763 return current; 2150 return current;
1764 } 2151 }
1765 // $ANTLR end "ruleMetricDefinition" 2152 // $ANTLR end "ruleExternAggregatorDefinition"
1766 2153
1767 2154
1768 // $ANTLR start "entryRuleExternMetricDefinition" 2155 // $ANTLR start "entryRuleExternDatatypeDefinition"
1769 // InternalSolverLanguageParser.g:713:1: entryRuleExternMetricDefinition returns [EObject current=null] : iv_ruleExternMetricDefinition= ruleExternMetricDefinition EOF ; 2156 // InternalSolverLanguageParser.g:908:1: entryRuleExternDatatypeDefinition returns [EObject current=null] : iv_ruleExternDatatypeDefinition= ruleExternDatatypeDefinition EOF ;
1770 public final EObject entryRuleExternMetricDefinition() throws RecognitionException { 2157 public final EObject entryRuleExternDatatypeDefinition() throws RecognitionException {
1771 EObject current = null; 2158 EObject current = null;
1772 2159
1773 EObject iv_ruleExternMetricDefinition = null; 2160 EObject iv_ruleExternDatatypeDefinition = null;
1774 2161
1775 2162
1776 try { 2163 try {
1777 // InternalSolverLanguageParser.g:713:63: (iv_ruleExternMetricDefinition= ruleExternMetricDefinition EOF ) 2164 // InternalSolverLanguageParser.g:908:65: (iv_ruleExternDatatypeDefinition= ruleExternDatatypeDefinition EOF )
1778 // InternalSolverLanguageParser.g:714:2: iv_ruleExternMetricDefinition= ruleExternMetricDefinition EOF 2165 // InternalSolverLanguageParser.g:909:2: iv_ruleExternDatatypeDefinition= ruleExternDatatypeDefinition EOF
1779 { 2166 {
1780 newCompositeNode(grammarAccess.getExternMetricDefinitionRule()); 2167 newCompositeNode(grammarAccess.getExternDatatypeDefinitionRule());
1781 pushFollow(FOLLOW_1); 2168 pushFollow(FOLLOW_1);
1782 iv_ruleExternMetricDefinition=ruleExternMetricDefinition(); 2169 iv_ruleExternDatatypeDefinition=ruleExternDatatypeDefinition();
1783 2170
1784 state._fsp--; 2171 state._fsp--;
1785 2172
1786 current =iv_ruleExternMetricDefinition; 2173 current =iv_ruleExternDatatypeDefinition;
1787 match(input,EOF,FOLLOW_2); 2174 match(input,EOF,FOLLOW_2);
1788 2175
1789 } 2176 }
@@ -1798,57 +2185,62 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1798 } 2185 }
1799 return current; 2186 return current;
1800 } 2187 }
1801 // $ANTLR end "entryRuleExternMetricDefinition" 2188 // $ANTLR end "entryRuleExternDatatypeDefinition"
1802 2189
1803 2190
1804 // $ANTLR start "ruleExternMetricDefinition" 2191 // $ANTLR start "ruleExternDatatypeDefinition"
1805 // InternalSolverLanguageParser.g:720:1: ruleExternMetricDefinition returns [EObject current=null] : (otherlv_0= Extern ( (lv_type_1_0= ruleMetricType ) ) ( (lv_head_2_0= ruleCall ) ) ) ; 2192 // InternalSolverLanguageParser.g:915:1: ruleExternDatatypeDefinition returns [EObject current=null] : (otherlv_0= Extern otherlv_1= Datatype ( (lv_name_2_0= ruleQualifiedName ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* ) ) ;
1806 public final EObject ruleExternMetricDefinition() throws RecognitionException { 2193 public final EObject ruleExternDatatypeDefinition() throws RecognitionException {
1807 EObject current = null; 2194 EObject current = null;
1808 2195
1809 Token otherlv_0=null; 2196 Token otherlv_0=null;
1810 Enumerator lv_type_1_0 = null; 2197 Token otherlv_1=null;
1811 2198 Token otherlv_3=null;
1812 EObject lv_head_2_0 = null; 2199 Token otherlv_5=null;
2200 AntlrDatatypeRuleToken lv_name_2_0 = null;
1813 2201
1814 2202
1815 2203
1816 enterRule(); 2204 enterRule();
1817 2205
1818 try { 2206 try {
1819 // InternalSolverLanguageParser.g:726:2: ( (otherlv_0= Extern ( (lv_type_1_0= ruleMetricType ) ) ( (lv_head_2_0= ruleCall ) ) ) ) 2207 // InternalSolverLanguageParser.g:921:2: ( (otherlv_0= Extern otherlv_1= Datatype ( (lv_name_2_0= ruleQualifiedName ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* ) ) )
1820 // InternalSolverLanguageParser.g:727:2: (otherlv_0= Extern ( (lv_type_1_0= ruleMetricType ) ) ( (lv_head_2_0= ruleCall ) ) ) 2208 // InternalSolverLanguageParser.g:922:2: (otherlv_0= Extern otherlv_1= Datatype ( (lv_name_2_0= ruleQualifiedName ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* ) )
1821 { 2209 {
1822 // InternalSolverLanguageParser.g:727:2: (otherlv_0= Extern ( (lv_type_1_0= ruleMetricType ) ) ( (lv_head_2_0= ruleCall ) ) ) 2210 // InternalSolverLanguageParser.g:922:2: (otherlv_0= Extern otherlv_1= Datatype ( (lv_name_2_0= ruleQualifiedName ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* ) )
1823 // InternalSolverLanguageParser.g:728:3: otherlv_0= Extern ( (lv_type_1_0= ruleMetricType ) ) ( (lv_head_2_0= ruleCall ) ) 2211 // InternalSolverLanguageParser.g:923:3: otherlv_0= Extern otherlv_1= Datatype ( (lv_name_2_0= ruleQualifiedName ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )
1824 { 2212 {
1825 otherlv_0=(Token)match(input,Extern,FOLLOW_14); 2213 otherlv_0=(Token)match(input,Extern,FOLLOW_17);
1826 2214
1827 newLeafNode(otherlv_0, grammarAccess.getExternMetricDefinitionAccess().getExternKeyword_0()); 2215 newLeafNode(otherlv_0, grammarAccess.getExternDatatypeDefinitionAccess().getExternKeyword_0());
2216
2217 otherlv_1=(Token)match(input,Datatype,FOLLOW_8);
2218
2219 newLeafNode(otherlv_1, grammarAccess.getExternDatatypeDefinitionAccess().getDatatypeKeyword_1());
1828 2220
1829 // InternalSolverLanguageParser.g:732:3: ( (lv_type_1_0= ruleMetricType ) ) 2221 // InternalSolverLanguageParser.g:931:3: ( (lv_name_2_0= ruleQualifiedName ) )
1830 // InternalSolverLanguageParser.g:733:4: (lv_type_1_0= ruleMetricType ) 2222 // InternalSolverLanguageParser.g:932:4: (lv_name_2_0= ruleQualifiedName )
1831 { 2223 {
1832 // InternalSolverLanguageParser.g:733:4: (lv_type_1_0= ruleMetricType ) 2224 // InternalSolverLanguageParser.g:932:4: (lv_name_2_0= ruleQualifiedName )
1833 // InternalSolverLanguageParser.g:734:5: lv_type_1_0= ruleMetricType 2225 // InternalSolverLanguageParser.g:933:5: lv_name_2_0= ruleQualifiedName
1834 { 2226 {
1835 2227
1836 newCompositeNode(grammarAccess.getExternMetricDefinitionAccess().getTypeMetricTypeEnumRuleCall_1_0()); 2228 newCompositeNode(grammarAccess.getExternDatatypeDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0());
1837 2229
1838 pushFollow(FOLLOW_8); 2230 pushFollow(FOLLOW_18);
1839 lv_type_1_0=ruleMetricType(); 2231 lv_name_2_0=ruleQualifiedName();
1840 2232
1841 state._fsp--; 2233 state._fsp--;
1842 2234
1843 2235
1844 if (current==null) { 2236 if (current==null) {
1845 current = createModelElementForParent(grammarAccess.getExternMetricDefinitionRule()); 2237 current = createModelElementForParent(grammarAccess.getExternDatatypeDefinitionRule());
1846 } 2238 }
1847 set( 2239 set(
1848 current, 2240 current,
1849 "type", 2241 "name",
1850 lv_type_1_0, 2242 lv_name_2_0,
1851 "org.eclipse.viatra.solver.language.SolverLanguage.MetricType"); 2243 "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName");
1852 afterParserOrEnumRuleCall(); 2244 afterParserOrEnumRuleCall();
1853 2245
1854 2246
@@ -1857,30 +2249,240 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1857 2249
1858 } 2250 }
1859 2251
1860 // InternalSolverLanguageParser.g:751:3: ( (lv_head_2_0= ruleCall ) ) 2252 // InternalSolverLanguageParser.g:950:3: (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )
1861 // InternalSolverLanguageParser.g:752:4: (lv_head_2_0= ruleCall ) 2253 // InternalSolverLanguageParser.g:951:4: otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )*
1862 { 2254 {
1863 // InternalSolverLanguageParser.g:752:4: (lv_head_2_0= ruleCall ) 2255 otherlv_3=(Token)match(input,Extends,FOLLOW_8);
1864 // InternalSolverLanguageParser.g:753:5: lv_head_2_0= ruleCall 2256
2257 newLeafNode(otherlv_3, grammarAccess.getExternDatatypeDefinitionAccess().getExtendsKeyword_3_0());
2258
2259 // InternalSolverLanguageParser.g:955:4: ( ( ruleQualifiedName ) )
2260 // InternalSolverLanguageParser.g:956:5: ( ruleQualifiedName )
2261 {
2262 // InternalSolverLanguageParser.g:956:5: ( ruleQualifiedName )
2263 // InternalSolverLanguageParser.g:957:6: ruleQualifiedName
1865 { 2264 {
1866 2265
1867 newCompositeNode(grammarAccess.getExternMetricDefinitionAccess().getHeadCallParserRuleCall_2_0()); 2266 if (current==null) {
1868 2267 current = createModelElement(grammarAccess.getExternDatatypeDefinitionRule());
1869 pushFollow(FOLLOW_2); 2268 }
1870 lv_head_2_0=ruleCall(); 2269
2270
2271 newCompositeNode(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementCrossReference_3_1_0());
2272
2273 pushFollow(FOLLOW_19);
2274 ruleQualifiedName();
2275
2276 state._fsp--;
2277
2278
2279 afterParserOrEnumRuleCall();
2280
2281
2282 }
2283
2284
2285 }
2286
2287 // InternalSolverLanguageParser.g:971:4: (otherlv_5= Comma ( ( ruleQualifiedName ) ) )*
2288 loop7:
2289 do {
2290 int alt7=2;
2291 int LA7_0 = input.LA(1);
2292
2293 if ( (LA7_0==Comma) ) {
2294 alt7=1;
2295 }
2296
2297
2298 switch (alt7) {
2299 case 1 :
2300 // InternalSolverLanguageParser.g:972:5: otherlv_5= Comma ( ( ruleQualifiedName ) )
2301 {
2302 otherlv_5=(Token)match(input,Comma,FOLLOW_8);
2303
2304 newLeafNode(otherlv_5, grammarAccess.getExternDatatypeDefinitionAccess().getCommaKeyword_3_2_0());
2305
2306 // InternalSolverLanguageParser.g:976:5: ( ( ruleQualifiedName ) )
2307 // InternalSolverLanguageParser.g:977:6: ( ruleQualifiedName )
2308 {
2309 // InternalSolverLanguageParser.g:977:6: ( ruleQualifiedName )
2310 // InternalSolverLanguageParser.g:978:7: ruleQualifiedName
2311 {
2312
2313 if (current==null) {
2314 current = createModelElement(grammarAccess.getExternDatatypeDefinitionRule());
2315 }
2316
2317
2318 newCompositeNode(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementCrossReference_3_2_1_0());
2319
2320 pushFollow(FOLLOW_19);
2321 ruleQualifiedName();
2322
2323 state._fsp--;
2324
2325
2326 afterParserOrEnumRuleCall();
2327
2328
2329 }
2330
2331
2332 }
2333
2334
2335 }
2336 break;
2337
2338 default :
2339 break loop7;
2340 }
2341 } while (true);
2342
2343
2344 }
2345
2346
2347 }
2348
2349
2350 }
2351
2352
2353 leaveRule();
2354
2355 }
2356
2357 catch (RecognitionException re) {
2358 recover(input,re);
2359 appendSkippedTokens();
2360 }
2361 finally {
2362 }
2363 return current;
2364 }
2365 // $ANTLR end "ruleExternDatatypeDefinition"
2366
2367
2368 // $ANTLR start "entryRuleVariable"
2369 // InternalSolverLanguageParser.g:998:1: entryRuleVariable returns [EObject current=null] : iv_ruleVariable= ruleVariable EOF ;
2370 public final EObject entryRuleVariable() throws RecognitionException {
2371 EObject current = null;
2372
2373 EObject iv_ruleVariable = null;
2374
2375
2376 try {
2377 // InternalSolverLanguageParser.g:998:49: (iv_ruleVariable= ruleVariable EOF )
2378 // InternalSolverLanguageParser.g:999:2: iv_ruleVariable= ruleVariable EOF
2379 {
2380 newCompositeNode(grammarAccess.getVariableRule());
2381 pushFollow(FOLLOW_1);
2382 iv_ruleVariable=ruleVariable();
1871 2383
1872 state._fsp--; 2384 state._fsp--;
1873 2385
2386 current =iv_ruleVariable;
2387 match(input,EOF,FOLLOW_2);
2388
2389 }
2390
2391 }
2392
2393 catch (RecognitionException re) {
2394 recover(input,re);
2395 appendSkippedTokens();
2396 }
2397 finally {
2398 }
2399 return current;
2400 }
2401 // $ANTLR end "entryRuleVariable"
2402
2403
2404 // $ANTLR start "ruleVariable"
2405 // InternalSolverLanguageParser.g:1005:1: ruleVariable returns [EObject current=null] : ( ( ( ruleQualifiedName ) )? ( (lv_name_1_0= RULE_ID ) ) ) ;
2406 public final EObject ruleVariable() throws RecognitionException {
2407 EObject current = null;
2408
2409 Token lv_name_1_0=null;
2410
2411
2412 enterRule();
2413
2414 try {
2415 // InternalSolverLanguageParser.g:1011:2: ( ( ( ( ruleQualifiedName ) )? ( (lv_name_1_0= RULE_ID ) ) ) )
2416 // InternalSolverLanguageParser.g:1012:2: ( ( ( ruleQualifiedName ) )? ( (lv_name_1_0= RULE_ID ) ) )
2417 {
2418 // InternalSolverLanguageParser.g:1012:2: ( ( ( ruleQualifiedName ) )? ( (lv_name_1_0= RULE_ID ) ) )
2419 // InternalSolverLanguageParser.g:1013:3: ( ( ruleQualifiedName ) )? ( (lv_name_1_0= RULE_ID ) )
2420 {
2421 // InternalSolverLanguageParser.g:1013:3: ( ( ruleQualifiedName ) )?
2422 int alt8=2;
2423 int LA8_0 = input.LA(1);
2424
2425 if ( (LA8_0==RULE_ID) ) {
2426 int LA8_1 = input.LA(2);
2427
2428 if ( (LA8_1==FullStop||LA8_1==RULE_ID) ) {
2429 alt8=1;
2430 }
2431 }
2432 else if ( (LA8_0==RULE_QUOTED_ID) ) {
2433 alt8=1;
2434 }
2435 switch (alt8) {
2436 case 1 :
2437 // InternalSolverLanguageParser.g:1014:4: ( ruleQualifiedName )
2438 {
2439 // InternalSolverLanguageParser.g:1014:4: ( ruleQualifiedName )
2440 // InternalSolverLanguageParser.g:1015:5: ruleQualifiedName
2441 {
2442
2443 if (current==null) {
2444 current = createModelElement(grammarAccess.getVariableRule());
2445 }
2446
2447
2448 newCompositeNode(grammarAccess.getVariableAccess().getTypeNamedElementCrossReference_0_0());
2449
2450 pushFollow(FOLLOW_20);
2451 ruleQualifiedName();
2452
2453 state._fsp--;
2454
2455
2456 afterParserOrEnumRuleCall();
2457
2458
2459 }
2460
2461
2462 }
2463 break;
2464
2465 }
2466
2467 // InternalSolverLanguageParser.g:1029:3: ( (lv_name_1_0= RULE_ID ) )
2468 // InternalSolverLanguageParser.g:1030:4: (lv_name_1_0= RULE_ID )
2469 {
2470 // InternalSolverLanguageParser.g:1030:4: (lv_name_1_0= RULE_ID )
2471 // InternalSolverLanguageParser.g:1031:5: lv_name_1_0= RULE_ID
2472 {
2473 lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_2);
2474
2475 newLeafNode(lv_name_1_0, grammarAccess.getVariableAccess().getNameIDTerminalRuleCall_1_0());
2476
1874 2477
1875 if (current==null) { 2478 if (current==null) {
1876 current = createModelElementForParent(grammarAccess.getExternMetricDefinitionRule()); 2479 current = createModelElement(grammarAccess.getVariableRule());
1877 } 2480 }
1878 set( 2481 setWithLastConsumed(
1879 current, 2482 current,
1880 "head", 2483 "name",
1881 lv_head_2_0, 2484 lv_name_1_0,
1882 "org.eclipse.viatra.solver.language.SolverLanguage.Call"); 2485 "org.eclipse.xtext.common.Terminals.ID");
1883 afterParserOrEnumRuleCall();
1884 2486
1885 2487
1886 } 2488 }
@@ -1907,11 +2509,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1907 } 2509 }
1908 return current; 2510 return current;
1909 } 2511 }
1910 // $ANTLR end "ruleExternMetricDefinition" 2512 // $ANTLR end "ruleVariable"
1911 2513
1912 2514
1913 // $ANTLR start "entryRuleExpression" 2515 // $ANTLR start "entryRuleExpression"
1914 // InternalSolverLanguageParser.g:774:1: entryRuleExpression returns [EObject current=null] : iv_ruleExpression= ruleExpression EOF ; 2516 // InternalSolverLanguageParser.g:1051:1: entryRuleExpression returns [EObject current=null] : iv_ruleExpression= ruleExpression EOF ;
1915 public final EObject entryRuleExpression() throws RecognitionException { 2517 public final EObject entryRuleExpression() throws RecognitionException {
1916 EObject current = null; 2518 EObject current = null;
1917 2519
@@ -1919,8 +2521,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1919 2521
1920 2522
1921 try { 2523 try {
1922 // InternalSolverLanguageParser.g:774:51: (iv_ruleExpression= ruleExpression EOF ) 2524 // InternalSolverLanguageParser.g:1051:51: (iv_ruleExpression= ruleExpression EOF )
1923 // InternalSolverLanguageParser.g:775:2: iv_ruleExpression= ruleExpression EOF 2525 // InternalSolverLanguageParser.g:1052:2: iv_ruleExpression= ruleExpression EOF
1924 { 2526 {
1925 newCompositeNode(grammarAccess.getExpressionRule()); 2527 newCompositeNode(grammarAccess.getExpressionRule());
1926 pushFollow(FOLLOW_1); 2528 pushFollow(FOLLOW_1);
@@ -1947,41 +2549,72 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1947 2549
1948 2550
1949 // $ANTLR start "ruleExpression" 2551 // $ANTLR start "ruleExpression"
1950 // InternalSolverLanguageParser.g:781:1: ruleExpression returns [EObject current=null] : (this_IfElse_0= ruleIfElse | this_DisjunctiveExpression_1= ruleDisjunctiveExpression ) ; 2552 // InternalSolverLanguageParser.g:1058:1: ruleExpression returns [EObject current=null] : (this_IfElse_0= ruleIfElse | this_Let_1= ruleLet | this_ImplicationExpression_2= ruleImplicationExpression ) ;
1951 public final EObject ruleExpression() throws RecognitionException { 2553 public final EObject ruleExpression() throws RecognitionException {
1952 EObject current = null; 2554 EObject current = null;
1953 2555
1954 EObject this_IfElse_0 = null; 2556 EObject this_IfElse_0 = null;
1955 2557
1956 EObject this_DisjunctiveExpression_1 = null; 2558 EObject this_Let_1 = null;
2559
2560 EObject this_ImplicationExpression_2 = null;
1957 2561
1958 2562
1959 2563
1960 enterRule(); 2564 enterRule();
1961 2565
1962 try { 2566 try {
1963 // InternalSolverLanguageParser.g:787:2: ( (this_IfElse_0= ruleIfElse | this_DisjunctiveExpression_1= ruleDisjunctiveExpression ) ) 2567 // InternalSolverLanguageParser.g:1064:2: ( (this_IfElse_0= ruleIfElse | this_Let_1= ruleLet | this_ImplicationExpression_2= ruleImplicationExpression ) )
1964 // InternalSolverLanguageParser.g:788:2: (this_IfElse_0= ruleIfElse | this_DisjunctiveExpression_1= ruleDisjunctiveExpression ) 2568 // InternalSolverLanguageParser.g:1065:2: (this_IfElse_0= ruleIfElse | this_Let_1= ruleLet | this_ImplicationExpression_2= ruleImplicationExpression )
1965 { 2569 {
1966 // InternalSolverLanguageParser.g:788:2: (this_IfElse_0= ruleIfElse | this_DisjunctiveExpression_1= ruleDisjunctiveExpression ) 2570 // InternalSolverLanguageParser.g:1065:2: (this_IfElse_0= ruleIfElse | this_Let_1= ruleLet | this_ImplicationExpression_2= ruleImplicationExpression )
1967 int alt8=2; 2571 int alt9=3;
1968 int LA8_0 = input.LA(1); 2572 switch ( input.LA(1) ) {
1969 2573 case If:
1970 if ( (LA8_0==If) ) { 2574 {
1971 alt8=1; 2575 alt9=1;
1972 } 2576 }
1973 else if ( (LA8_0==Current||LA8_0==Unknown||(LA8_0>=Count && LA8_0<=False)||(LA8_0>=Must && LA8_0<=Prod)||LA8_0==True||(LA8_0>=Avg && LA8_0<=Inf)||(LA8_0>=Max && LA8_0<=Sum)||(LA8_0>=ExclamationMark && LA8_0<=LeftParenthesis)||LA8_0==PlusSign||LA8_0==HyphenMinus||LA8_0==LeftSquareBracket||(LA8_0>=RULE_STRING && LA8_0<=RULE_QUOTED_ID)||(LA8_0>=RULE_ID && LA8_0<=RULE_INT)) ) { 2577 break;
1974 alt8=2; 2578 case Let:
1975 } 2579 {
1976 else { 2580 alt9=2;
2581 }
2582 break;
2583 case Current:
2584 case Unknown:
2585 case Exists:
2586 case Forall:
2587 case Count:
2588 case Empty:
2589 case Error:
2590 case False:
2591 case Must:
2592 case True:
2593 case Inf:
2594 case May:
2595 case ExclamationMark:
2596 case LeftParenthesis:
2597 case PlusSign:
2598 case HyphenMinus:
2599 case LeftSquareBracket:
2600 case RULE_STRING:
2601 case RULE_QUOTED_ID:
2602 case RULE_ID:
2603 case RULE_INT:
2604 {
2605 alt9=3;
2606 }
2607 break;
2608 default:
1977 NoViableAltException nvae = 2609 NoViableAltException nvae =
1978 new NoViableAltException("", 8, 0, input); 2610 new NoViableAltException("", 9, 0, input);
1979 2611
1980 throw nvae; 2612 throw nvae;
1981 } 2613 }
1982 switch (alt8) { 2614
2615 switch (alt9) {
1983 case 1 : 2616 case 1 :
1984 // InternalSolverLanguageParser.g:789:3: this_IfElse_0= ruleIfElse 2617 // InternalSolverLanguageParser.g:1066:3: this_IfElse_0= ruleIfElse
1985 { 2618 {
1986 2619
1987 newCompositeNode(grammarAccess.getExpressionAccess().getIfElseParserRuleCall_0()); 2620 newCompositeNode(grammarAccess.getExpressionAccess().getIfElseParserRuleCall_0());
@@ -1999,18 +2632,36 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
1999 } 2632 }
2000 break; 2633 break;
2001 case 2 : 2634 case 2 :
2002 // InternalSolverLanguageParser.g:798:3: this_DisjunctiveExpression_1= ruleDisjunctiveExpression 2635 // InternalSolverLanguageParser.g:1075:3: this_Let_1= ruleLet
2636 {
2637
2638 newCompositeNode(grammarAccess.getExpressionAccess().getLetParserRuleCall_1());
2639
2640 pushFollow(FOLLOW_2);
2641 this_Let_1=ruleLet();
2642
2643 state._fsp--;
2644
2645
2646 current = this_Let_1;
2647 afterParserOrEnumRuleCall();
2648
2649
2650 }
2651 break;
2652 case 3 :
2653 // InternalSolverLanguageParser.g:1084:3: this_ImplicationExpression_2= ruleImplicationExpression
2003 { 2654 {
2004 2655
2005 newCompositeNode(grammarAccess.getExpressionAccess().getDisjunctiveExpressionParserRuleCall_1()); 2656 newCompositeNode(grammarAccess.getExpressionAccess().getImplicationExpressionParserRuleCall_2());
2006 2657
2007 pushFollow(FOLLOW_2); 2658 pushFollow(FOLLOW_2);
2008 this_DisjunctiveExpression_1=ruleDisjunctiveExpression(); 2659 this_ImplicationExpression_2=ruleImplicationExpression();
2009 2660
2010 state._fsp--; 2661 state._fsp--;
2011 2662
2012 2663
2013 current = this_DisjunctiveExpression_1; 2664 current = this_ImplicationExpression_2;
2014 afterParserOrEnumRuleCall(); 2665 afterParserOrEnumRuleCall();
2015 2666
2016 2667
@@ -2039,7 +2690,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2039 2690
2040 2691
2041 // $ANTLR start "entryRuleIfElse" 2692 // $ANTLR start "entryRuleIfElse"
2042 // InternalSolverLanguageParser.g:810:1: entryRuleIfElse returns [EObject current=null] : iv_ruleIfElse= ruleIfElse EOF ; 2693 // InternalSolverLanguageParser.g:1096:1: entryRuleIfElse returns [EObject current=null] : iv_ruleIfElse= ruleIfElse EOF ;
2043 public final EObject entryRuleIfElse() throws RecognitionException { 2694 public final EObject entryRuleIfElse() throws RecognitionException {
2044 EObject current = null; 2695 EObject current = null;
2045 2696
@@ -2047,8 +2698,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2047 2698
2048 2699
2049 try { 2700 try {
2050 // InternalSolverLanguageParser.g:810:47: (iv_ruleIfElse= ruleIfElse EOF ) 2701 // InternalSolverLanguageParser.g:1096:47: (iv_ruleIfElse= ruleIfElse EOF )
2051 // InternalSolverLanguageParser.g:811:2: iv_ruleIfElse= ruleIfElse EOF 2702 // InternalSolverLanguageParser.g:1097:2: iv_ruleIfElse= ruleIfElse EOF
2052 { 2703 {
2053 newCompositeNode(grammarAccess.getIfElseRule()); 2704 newCompositeNode(grammarAccess.getIfElseRule());
2054 pushFollow(FOLLOW_1); 2705 pushFollow(FOLLOW_1);
@@ -2075,7 +2726,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2075 2726
2076 2727
2077 // $ANTLR start "ruleIfElse" 2728 // $ANTLR start "ruleIfElse"
2078 // InternalSolverLanguageParser.g:817:1: ruleIfElse returns [EObject current=null] : (otherlv_0= If ( (lv_condition_1_0= ruleExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) ) ; 2729 // InternalSolverLanguageParser.g:1103:1: ruleIfElse returns [EObject current=null] : (otherlv_0= If ( (lv_condition_1_0= ruleExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) ) ;
2079 public final EObject ruleIfElse() throws RecognitionException { 2730 public final EObject ruleIfElse() throws RecognitionException {
2080 EObject current = null; 2731 EObject current = null;
2081 2732
@@ -2093,26 +2744,26 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2093 enterRule(); 2744 enterRule();
2094 2745
2095 try { 2746 try {
2096 // InternalSolverLanguageParser.g:823:2: ( (otherlv_0= If ( (lv_condition_1_0= ruleExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) ) ) 2747 // InternalSolverLanguageParser.g:1109:2: ( (otherlv_0= If ( (lv_condition_1_0= ruleExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) ) )
2097 // InternalSolverLanguageParser.g:824:2: (otherlv_0= If ( (lv_condition_1_0= ruleExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) ) 2748 // InternalSolverLanguageParser.g:1110:2: (otherlv_0= If ( (lv_condition_1_0= ruleExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) )
2098 { 2749 {
2099 // InternalSolverLanguageParser.g:824:2: (otherlv_0= If ( (lv_condition_1_0= ruleExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) ) 2750 // InternalSolverLanguageParser.g:1110:2: (otherlv_0= If ( (lv_condition_1_0= ruleExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) )
2100 // InternalSolverLanguageParser.g:825:3: otherlv_0= If ( (lv_condition_1_0= ruleExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) 2751 // InternalSolverLanguageParser.g:1111:3: otherlv_0= If ( (lv_condition_1_0= ruleExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) )
2101 { 2752 {
2102 otherlv_0=(Token)match(input,If,FOLLOW_6); 2753 otherlv_0=(Token)match(input,If,FOLLOW_6);
2103 2754
2104 newLeafNode(otherlv_0, grammarAccess.getIfElseAccess().getIfKeyword_0()); 2755 newLeafNode(otherlv_0, grammarAccess.getIfElseAccess().getIfKeyword_0());
2105 2756
2106 // InternalSolverLanguageParser.g:829:3: ( (lv_condition_1_0= ruleExpression ) ) 2757 // InternalSolverLanguageParser.g:1115:3: ( (lv_condition_1_0= ruleExpression ) )
2107 // InternalSolverLanguageParser.g:830:4: (lv_condition_1_0= ruleExpression ) 2758 // InternalSolverLanguageParser.g:1116:4: (lv_condition_1_0= ruleExpression )
2108 { 2759 {
2109 // InternalSolverLanguageParser.g:830:4: (lv_condition_1_0= ruleExpression ) 2760 // InternalSolverLanguageParser.g:1116:4: (lv_condition_1_0= ruleExpression )
2110 // InternalSolverLanguageParser.g:831:5: lv_condition_1_0= ruleExpression 2761 // InternalSolverLanguageParser.g:1117:5: lv_condition_1_0= ruleExpression
2111 { 2762 {
2112 2763
2113 newCompositeNode(grammarAccess.getIfElseAccess().getConditionExpressionParserRuleCall_1_0()); 2764 newCompositeNode(grammarAccess.getIfElseAccess().getConditionExpressionParserRuleCall_1_0());
2114 2765
2115 pushFollow(FOLLOW_15); 2766 pushFollow(FOLLOW_21);
2116 lv_condition_1_0=ruleExpression(); 2767 lv_condition_1_0=ruleExpression();
2117 2768
2118 state._fsp--; 2769 state._fsp--;
@@ -2138,16 +2789,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2138 2789
2139 newLeafNode(otherlv_2, grammarAccess.getIfElseAccess().getThenKeyword_2()); 2790 newLeafNode(otherlv_2, grammarAccess.getIfElseAccess().getThenKeyword_2());
2140 2791
2141 // InternalSolverLanguageParser.g:852:3: ( (lv_then_3_0= ruleExpression ) ) 2792 // InternalSolverLanguageParser.g:1138:3: ( (lv_then_3_0= ruleExpression ) )
2142 // InternalSolverLanguageParser.g:853:4: (lv_then_3_0= ruleExpression ) 2793 // InternalSolverLanguageParser.g:1139:4: (lv_then_3_0= ruleExpression )
2143 { 2794 {
2144 // InternalSolverLanguageParser.g:853:4: (lv_then_3_0= ruleExpression ) 2795 // InternalSolverLanguageParser.g:1139:4: (lv_then_3_0= ruleExpression )
2145 // InternalSolverLanguageParser.g:854:5: lv_then_3_0= ruleExpression 2796 // InternalSolverLanguageParser.g:1140:5: lv_then_3_0= ruleExpression
2146 { 2797 {
2147 2798
2148 newCompositeNode(grammarAccess.getIfElseAccess().getThenExpressionParserRuleCall_3_0()); 2799 newCompositeNode(grammarAccess.getIfElseAccess().getThenExpressionParserRuleCall_3_0());
2149 2800
2150 pushFollow(FOLLOW_16); 2801 pushFollow(FOLLOW_22);
2151 lv_then_3_0=ruleExpression(); 2802 lv_then_3_0=ruleExpression();
2152 2803
2153 state._fsp--; 2804 state._fsp--;
@@ -2173,11 +2824,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2173 2824
2174 newLeafNode(otherlv_4, grammarAccess.getIfElseAccess().getElseKeyword_4()); 2825 newLeafNode(otherlv_4, grammarAccess.getIfElseAccess().getElseKeyword_4());
2175 2826
2176 // InternalSolverLanguageParser.g:875:3: ( (lv_else_5_0= ruleExpression ) ) 2827 // InternalSolverLanguageParser.g:1161:3: ( (lv_else_5_0= ruleExpression ) )
2177 // InternalSolverLanguageParser.g:876:4: (lv_else_5_0= ruleExpression ) 2828 // InternalSolverLanguageParser.g:1162:4: (lv_else_5_0= ruleExpression )
2178 { 2829 {
2179 // InternalSolverLanguageParser.g:876:4: (lv_else_5_0= ruleExpression ) 2830 // InternalSolverLanguageParser.g:1162:4: (lv_else_5_0= ruleExpression )
2180 // InternalSolverLanguageParser.g:877:5: lv_else_5_0= ruleExpression 2831 // InternalSolverLanguageParser.g:1163:5: lv_else_5_0= ruleExpression
2181 { 2832 {
2182 2833
2183 newCompositeNode(grammarAccess.getIfElseAccess().getElseExpressionParserRuleCall_5_0()); 2834 newCompositeNode(grammarAccess.getIfElseAccess().getElseExpressionParserRuleCall_5_0());
@@ -2226,8 +2877,547 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2226 // $ANTLR end "ruleIfElse" 2877 // $ANTLR end "ruleIfElse"
2227 2878
2228 2879
2880 // $ANTLR start "entryRuleLet"
2881 // InternalSolverLanguageParser.g:1184:1: entryRuleLet returns [EObject current=null] : iv_ruleLet= ruleLet EOF ;
2882 public final EObject entryRuleLet() throws RecognitionException {
2883 EObject current = null;
2884
2885 EObject iv_ruleLet = null;
2886
2887
2888 try {
2889 // InternalSolverLanguageParser.g:1184:44: (iv_ruleLet= ruleLet EOF )
2890 // InternalSolverLanguageParser.g:1185:2: iv_ruleLet= ruleLet EOF
2891 {
2892 newCompositeNode(grammarAccess.getLetRule());
2893 pushFollow(FOLLOW_1);
2894 iv_ruleLet=ruleLet();
2895
2896 state._fsp--;
2897
2898 current =iv_ruleLet;
2899 match(input,EOF,FOLLOW_2);
2900
2901 }
2902
2903 }
2904
2905 catch (RecognitionException re) {
2906 recover(input,re);
2907 appendSkippedTokens();
2908 }
2909 finally {
2910 }
2911 return current;
2912 }
2913 // $ANTLR end "entryRuleLet"
2914
2915
2916 // $ANTLR start "ruleLet"
2917 // InternalSolverLanguageParser.g:1191:1: ruleLet returns [EObject current=null] : (otherlv_0= Let ( (lv_bindings_1_0= ruleLetBinding ) ) (otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) )* otherlv_4= In ( (lv_body_5_0= ruleExpression ) ) ) ;
2918 public final EObject ruleLet() throws RecognitionException {
2919 EObject current = null;
2920
2921 Token otherlv_0=null;
2922 Token otherlv_2=null;
2923 Token otherlv_4=null;
2924 EObject lv_bindings_1_0 = null;
2925
2926 EObject lv_bindings_3_0 = null;
2927
2928 EObject lv_body_5_0 = null;
2929
2930
2931
2932 enterRule();
2933
2934 try {
2935 // InternalSolverLanguageParser.g:1197:2: ( (otherlv_0= Let ( (lv_bindings_1_0= ruleLetBinding ) ) (otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) )* otherlv_4= In ( (lv_body_5_0= ruleExpression ) ) ) )
2936 // InternalSolverLanguageParser.g:1198:2: (otherlv_0= Let ( (lv_bindings_1_0= ruleLetBinding ) ) (otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) )* otherlv_4= In ( (lv_body_5_0= ruleExpression ) ) )
2937 {
2938 // InternalSolverLanguageParser.g:1198:2: (otherlv_0= Let ( (lv_bindings_1_0= ruleLetBinding ) ) (otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) )* otherlv_4= In ( (lv_body_5_0= ruleExpression ) ) )
2939 // InternalSolverLanguageParser.g:1199:3: otherlv_0= Let ( (lv_bindings_1_0= ruleLetBinding ) ) (otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) )* otherlv_4= In ( (lv_body_5_0= ruleExpression ) )
2940 {
2941 otherlv_0=(Token)match(input,Let,FOLLOW_8);
2942
2943 newLeafNode(otherlv_0, grammarAccess.getLetAccess().getLetKeyword_0());
2944
2945 // InternalSolverLanguageParser.g:1203:3: ( (lv_bindings_1_0= ruleLetBinding ) )
2946 // InternalSolverLanguageParser.g:1204:4: (lv_bindings_1_0= ruleLetBinding )
2947 {
2948 // InternalSolverLanguageParser.g:1204:4: (lv_bindings_1_0= ruleLetBinding )
2949 // InternalSolverLanguageParser.g:1205:5: lv_bindings_1_0= ruleLetBinding
2950 {
2951
2952 newCompositeNode(grammarAccess.getLetAccess().getBindingsLetBindingParserRuleCall_1_0());
2953
2954 pushFollow(FOLLOW_23);
2955 lv_bindings_1_0=ruleLetBinding();
2956
2957 state._fsp--;
2958
2959
2960 if (current==null) {
2961 current = createModelElementForParent(grammarAccess.getLetRule());
2962 }
2963 add(
2964 current,
2965 "bindings",
2966 lv_bindings_1_0,
2967 "org.eclipse.viatra.solver.language.SolverLanguage.LetBinding");
2968 afterParserOrEnumRuleCall();
2969
2970
2971 }
2972
2973
2974 }
2975
2976 // InternalSolverLanguageParser.g:1222:3: (otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) )*
2977 loop10:
2978 do {
2979 int alt10=2;
2980 int LA10_0 = input.LA(1);
2981
2982 if ( (LA10_0==Comma) ) {
2983 alt10=1;
2984 }
2985
2986
2987 switch (alt10) {
2988 case 1 :
2989 // InternalSolverLanguageParser.g:1223:4: otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) )
2990 {
2991 otherlv_2=(Token)match(input,Comma,FOLLOW_8);
2992
2993 newLeafNode(otherlv_2, grammarAccess.getLetAccess().getCommaKeyword_2_0());
2994
2995 // InternalSolverLanguageParser.g:1227:4: ( (lv_bindings_3_0= ruleLetBinding ) )
2996 // InternalSolverLanguageParser.g:1228:5: (lv_bindings_3_0= ruleLetBinding )
2997 {
2998 // InternalSolverLanguageParser.g:1228:5: (lv_bindings_3_0= ruleLetBinding )
2999 // InternalSolverLanguageParser.g:1229:6: lv_bindings_3_0= ruleLetBinding
3000 {
3001
3002 newCompositeNode(grammarAccess.getLetAccess().getBindingsLetBindingParserRuleCall_2_1_0());
3003
3004 pushFollow(FOLLOW_23);
3005 lv_bindings_3_0=ruleLetBinding();
3006
3007 state._fsp--;
3008
3009
3010 if (current==null) {
3011 current = createModelElementForParent(grammarAccess.getLetRule());
3012 }
3013 add(
3014 current,
3015 "bindings",
3016 lv_bindings_3_0,
3017 "org.eclipse.viatra.solver.language.SolverLanguage.LetBinding");
3018 afterParserOrEnumRuleCall();
3019
3020
3021 }
3022
3023
3024 }
3025
3026
3027 }
3028 break;
3029
3030 default :
3031 break loop10;
3032 }
3033 } while (true);
3034
3035 otherlv_4=(Token)match(input,In,FOLLOW_6);
3036
3037 newLeafNode(otherlv_4, grammarAccess.getLetAccess().getInKeyword_3());
3038
3039 // InternalSolverLanguageParser.g:1251:3: ( (lv_body_5_0= ruleExpression ) )
3040 // InternalSolverLanguageParser.g:1252:4: (lv_body_5_0= ruleExpression )
3041 {
3042 // InternalSolverLanguageParser.g:1252:4: (lv_body_5_0= ruleExpression )
3043 // InternalSolverLanguageParser.g:1253:5: lv_body_5_0= ruleExpression
3044 {
3045
3046 newCompositeNode(grammarAccess.getLetAccess().getBodyExpressionParserRuleCall_4_0());
3047
3048 pushFollow(FOLLOW_2);
3049 lv_body_5_0=ruleExpression();
3050
3051 state._fsp--;
3052
3053
3054 if (current==null) {
3055 current = createModelElementForParent(grammarAccess.getLetRule());
3056 }
3057 set(
3058 current,
3059 "body",
3060 lv_body_5_0,
3061 "org.eclipse.viatra.solver.language.SolverLanguage.Expression");
3062 afterParserOrEnumRuleCall();
3063
3064
3065 }
3066
3067
3068 }
3069
3070
3071 }
3072
3073
3074 }
3075
3076
3077 leaveRule();
3078
3079 }
3080
3081 catch (RecognitionException re) {
3082 recover(input,re);
3083 appendSkippedTokens();
3084 }
3085 finally {
3086 }
3087 return current;
3088 }
3089 // $ANTLR end "ruleLet"
3090
3091
3092 // $ANTLR start "entryRuleLetBinding"
3093 // InternalSolverLanguageParser.g:1274:1: entryRuleLetBinding returns [EObject current=null] : iv_ruleLetBinding= ruleLetBinding EOF ;
3094 public final EObject entryRuleLetBinding() throws RecognitionException {
3095 EObject current = null;
3096
3097 EObject iv_ruleLetBinding = null;
3098
3099
3100 try {
3101 // InternalSolverLanguageParser.g:1274:51: (iv_ruleLetBinding= ruleLetBinding EOF )
3102 // InternalSolverLanguageParser.g:1275:2: iv_ruleLetBinding= ruleLetBinding EOF
3103 {
3104 newCompositeNode(grammarAccess.getLetBindingRule());
3105 pushFollow(FOLLOW_1);
3106 iv_ruleLetBinding=ruleLetBinding();
3107
3108 state._fsp--;
3109
3110 current =iv_ruleLetBinding;
3111 match(input,EOF,FOLLOW_2);
3112
3113 }
3114
3115 }
3116
3117 catch (RecognitionException re) {
3118 recover(input,re);
3119 appendSkippedTokens();
3120 }
3121 finally {
3122 }
3123 return current;
3124 }
3125 // $ANTLR end "entryRuleLetBinding"
3126
3127
3128 // $ANTLR start "ruleLetBinding"
3129 // InternalSolverLanguageParser.g:1281:1: ruleLetBinding returns [EObject current=null] : ( ( (lv_variable_0_0= ruleVariable ) ) otherlv_1= EqualsSign ( (lv_value_2_0= ruleAdditiveExpression ) ) ) ;
3130 public final EObject ruleLetBinding() throws RecognitionException {
3131 EObject current = null;
3132
3133 Token otherlv_1=null;
3134 EObject lv_variable_0_0 = null;
3135
3136 EObject lv_value_2_0 = null;
3137
3138
3139
3140 enterRule();
3141
3142 try {
3143 // InternalSolverLanguageParser.g:1287:2: ( ( ( (lv_variable_0_0= ruleVariable ) ) otherlv_1= EqualsSign ( (lv_value_2_0= ruleAdditiveExpression ) ) ) )
3144 // InternalSolverLanguageParser.g:1288:2: ( ( (lv_variable_0_0= ruleVariable ) ) otherlv_1= EqualsSign ( (lv_value_2_0= ruleAdditiveExpression ) ) )
3145 {
3146 // InternalSolverLanguageParser.g:1288:2: ( ( (lv_variable_0_0= ruleVariable ) ) otherlv_1= EqualsSign ( (lv_value_2_0= ruleAdditiveExpression ) ) )
3147 // InternalSolverLanguageParser.g:1289:3: ( (lv_variable_0_0= ruleVariable ) ) otherlv_1= EqualsSign ( (lv_value_2_0= ruleAdditiveExpression ) )
3148 {
3149 // InternalSolverLanguageParser.g:1289:3: ( (lv_variable_0_0= ruleVariable ) )
3150 // InternalSolverLanguageParser.g:1290:4: (lv_variable_0_0= ruleVariable )
3151 {
3152 // InternalSolverLanguageParser.g:1290:4: (lv_variable_0_0= ruleVariable )
3153 // InternalSolverLanguageParser.g:1291:5: lv_variable_0_0= ruleVariable
3154 {
3155
3156 newCompositeNode(grammarAccess.getLetBindingAccess().getVariableVariableParserRuleCall_0_0());
3157
3158 pushFollow(FOLLOW_13);
3159 lv_variable_0_0=ruleVariable();
3160
3161 state._fsp--;
3162
3163
3164 if (current==null) {
3165 current = createModelElementForParent(grammarAccess.getLetBindingRule());
3166 }
3167 set(
3168 current,
3169 "variable",
3170 lv_variable_0_0,
3171 "org.eclipse.viatra.solver.language.SolverLanguage.Variable");
3172 afterParserOrEnumRuleCall();
3173
3174
3175 }
3176
3177
3178 }
3179
3180 otherlv_1=(Token)match(input,EqualsSign,FOLLOW_6);
3181
3182 newLeafNode(otherlv_1, grammarAccess.getLetBindingAccess().getEqualsSignKeyword_1());
3183
3184 // InternalSolverLanguageParser.g:1312:3: ( (lv_value_2_0= ruleAdditiveExpression ) )
3185 // InternalSolverLanguageParser.g:1313:4: (lv_value_2_0= ruleAdditiveExpression )
3186 {
3187 // InternalSolverLanguageParser.g:1313:4: (lv_value_2_0= ruleAdditiveExpression )
3188 // InternalSolverLanguageParser.g:1314:5: lv_value_2_0= ruleAdditiveExpression
3189 {
3190
3191 newCompositeNode(grammarAccess.getLetBindingAccess().getValueAdditiveExpressionParserRuleCall_2_0());
3192
3193 pushFollow(FOLLOW_2);
3194 lv_value_2_0=ruleAdditiveExpression();
3195
3196 state._fsp--;
3197
3198
3199 if (current==null) {
3200 current = createModelElementForParent(grammarAccess.getLetBindingRule());
3201 }
3202 set(
3203 current,
3204 "value",
3205 lv_value_2_0,
3206 "org.eclipse.viatra.solver.language.SolverLanguage.AdditiveExpression");
3207 afterParserOrEnumRuleCall();
3208
3209
3210 }
3211
3212
3213 }
3214
3215
3216 }
3217
3218
3219 }
3220
3221
3222 leaveRule();
3223
3224 }
3225
3226 catch (RecognitionException re) {
3227 recover(input,re);
3228 appendSkippedTokens();
3229 }
3230 finally {
3231 }
3232 return current;
3233 }
3234 // $ANTLR end "ruleLetBinding"
3235
3236
3237 // $ANTLR start "entryRuleImplicationExpression"
3238 // InternalSolverLanguageParser.g:1335:1: entryRuleImplicationExpression returns [EObject current=null] : iv_ruleImplicationExpression= ruleImplicationExpression EOF ;
3239 public final EObject entryRuleImplicationExpression() throws RecognitionException {
3240 EObject current = null;
3241
3242 EObject iv_ruleImplicationExpression = null;
3243
3244
3245 try {
3246 // InternalSolverLanguageParser.g:1335:62: (iv_ruleImplicationExpression= ruleImplicationExpression EOF )
3247 // InternalSolverLanguageParser.g:1336:2: iv_ruleImplicationExpression= ruleImplicationExpression EOF
3248 {
3249 newCompositeNode(grammarAccess.getImplicationExpressionRule());
3250 pushFollow(FOLLOW_1);
3251 iv_ruleImplicationExpression=ruleImplicationExpression();
3252
3253 state._fsp--;
3254
3255 current =iv_ruleImplicationExpression;
3256 match(input,EOF,FOLLOW_2);
3257
3258 }
3259
3260 }
3261
3262 catch (RecognitionException re) {
3263 recover(input,re);
3264 appendSkippedTokens();
3265 }
3266 finally {
3267 }
3268 return current;
3269 }
3270 // $ANTLR end "entryRuleImplicationExpression"
3271
3272
3273 // $ANTLR start "ruleImplicationExpression"
3274 // InternalSolverLanguageParser.g:1342:1: ruleImplicationExpression returns [EObject current=null] : (this_DisjunctiveExpression_0= ruleDisjunctiveExpression ( () ( (lv_op_2_0= ruleImplicationOperator ) ) ( (lv_right_3_0= ruleImplicationExpression ) ) )? ) ;
3275 public final EObject ruleImplicationExpression() throws RecognitionException {
3276 EObject current = null;
3277
3278 EObject this_DisjunctiveExpression_0 = null;
3279
3280 Enumerator lv_op_2_0 = null;
3281
3282 EObject lv_right_3_0 = null;
3283
3284
3285
3286 enterRule();
3287
3288 try {
3289 // InternalSolverLanguageParser.g:1348:2: ( (this_DisjunctiveExpression_0= ruleDisjunctiveExpression ( () ( (lv_op_2_0= ruleImplicationOperator ) ) ( (lv_right_3_0= ruleImplicationExpression ) ) )? ) )
3290 // InternalSolverLanguageParser.g:1349:2: (this_DisjunctiveExpression_0= ruleDisjunctiveExpression ( () ( (lv_op_2_0= ruleImplicationOperator ) ) ( (lv_right_3_0= ruleImplicationExpression ) ) )? )
3291 {
3292 // InternalSolverLanguageParser.g:1349:2: (this_DisjunctiveExpression_0= ruleDisjunctiveExpression ( () ( (lv_op_2_0= ruleImplicationOperator ) ) ( (lv_right_3_0= ruleImplicationExpression ) ) )? )
3293 // InternalSolverLanguageParser.g:1350:3: this_DisjunctiveExpression_0= ruleDisjunctiveExpression ( () ( (lv_op_2_0= ruleImplicationOperator ) ) ( (lv_right_3_0= ruleImplicationExpression ) ) )?
3294 {
3295
3296 newCompositeNode(grammarAccess.getImplicationExpressionAccess().getDisjunctiveExpressionParserRuleCall_0());
3297
3298 pushFollow(FOLLOW_24);
3299 this_DisjunctiveExpression_0=ruleDisjunctiveExpression();
3300
3301 state._fsp--;
3302
3303
3304 current = this_DisjunctiveExpression_0;
3305 afterParserOrEnumRuleCall();
3306
3307 // InternalSolverLanguageParser.g:1358:3: ( () ( (lv_op_2_0= ruleImplicationOperator ) ) ( (lv_right_3_0= ruleImplicationExpression ) ) )?
3308 int alt11=2;
3309 int LA11_0 = input.LA(1);
3310
3311 if ( (LA11_0==EqualsSignGreaterThanSign) ) {
3312 alt11=1;
3313 }
3314 switch (alt11) {
3315 case 1 :
3316 // InternalSolverLanguageParser.g:1359:4: () ( (lv_op_2_0= ruleImplicationOperator ) ) ( (lv_right_3_0= ruleImplicationExpression ) )
3317 {
3318 // InternalSolverLanguageParser.g:1359:4: ()
3319 // InternalSolverLanguageParser.g:1360:5:
3320 {
3321
3322 current = forceCreateModelElementAndSet(
3323 grammarAccess.getImplicationExpressionAccess().getBinaryExpressionLeftAction_1_0(),
3324 current);
3325
3326
3327 }
3328
3329 // InternalSolverLanguageParser.g:1366:4: ( (lv_op_2_0= ruleImplicationOperator ) )
3330 // InternalSolverLanguageParser.g:1367:5: (lv_op_2_0= ruleImplicationOperator )
3331 {
3332 // InternalSolverLanguageParser.g:1367:5: (lv_op_2_0= ruleImplicationOperator )
3333 // InternalSolverLanguageParser.g:1368:6: lv_op_2_0= ruleImplicationOperator
3334 {
3335
3336 newCompositeNode(grammarAccess.getImplicationExpressionAccess().getOpImplicationOperatorEnumRuleCall_1_1_0());
3337
3338 pushFollow(FOLLOW_6);
3339 lv_op_2_0=ruleImplicationOperator();
3340
3341 state._fsp--;
3342
3343
3344 if (current==null) {
3345 current = createModelElementForParent(grammarAccess.getImplicationExpressionRule());
3346 }
3347 set(
3348 current,
3349 "op",
3350 lv_op_2_0,
3351 "org.eclipse.viatra.solver.language.SolverLanguage.ImplicationOperator");
3352 afterParserOrEnumRuleCall();
3353
3354
3355 }
3356
3357
3358 }
3359
3360 // InternalSolverLanguageParser.g:1385:4: ( (lv_right_3_0= ruleImplicationExpression ) )
3361 // InternalSolverLanguageParser.g:1386:5: (lv_right_3_0= ruleImplicationExpression )
3362 {
3363 // InternalSolverLanguageParser.g:1386:5: (lv_right_3_0= ruleImplicationExpression )
3364 // InternalSolverLanguageParser.g:1387:6: lv_right_3_0= ruleImplicationExpression
3365 {
3366
3367 newCompositeNode(grammarAccess.getImplicationExpressionAccess().getRightImplicationExpressionParserRuleCall_1_2_0());
3368
3369 pushFollow(FOLLOW_2);
3370 lv_right_3_0=ruleImplicationExpression();
3371
3372 state._fsp--;
3373
3374
3375 if (current==null) {
3376 current = createModelElementForParent(grammarAccess.getImplicationExpressionRule());
3377 }
3378 set(
3379 current,
3380 "right",
3381 lv_right_3_0,
3382 "org.eclipse.viatra.solver.language.SolverLanguage.ImplicationExpression");
3383 afterParserOrEnumRuleCall();
3384
3385
3386 }
3387
3388
3389 }
3390
3391
3392 }
3393 break;
3394
3395 }
3396
3397
3398 }
3399
3400
3401 }
3402
3403
3404 leaveRule();
3405
3406 }
3407
3408 catch (RecognitionException re) {
3409 recover(input,re);
3410 appendSkippedTokens();
3411 }
3412 finally {
3413 }
3414 return current;
3415 }
3416 // $ANTLR end "ruleImplicationExpression"
3417
3418
2229 // $ANTLR start "entryRuleDisjunctiveExpression" 3419 // $ANTLR start "entryRuleDisjunctiveExpression"
2230 // InternalSolverLanguageParser.g:898:1: entryRuleDisjunctiveExpression returns [EObject current=null] : iv_ruleDisjunctiveExpression= ruleDisjunctiveExpression EOF ; 3420 // InternalSolverLanguageParser.g:1409:1: entryRuleDisjunctiveExpression returns [EObject current=null] : iv_ruleDisjunctiveExpression= ruleDisjunctiveExpression EOF ;
2231 public final EObject entryRuleDisjunctiveExpression() throws RecognitionException { 3421 public final EObject entryRuleDisjunctiveExpression() throws RecognitionException {
2232 EObject current = null; 3422 EObject current = null;
2233 3423
@@ -2235,8 +3425,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2235 3425
2236 3426
2237 try { 3427 try {
2238 // InternalSolverLanguageParser.g:898:62: (iv_ruleDisjunctiveExpression= ruleDisjunctiveExpression EOF ) 3428 // InternalSolverLanguageParser.g:1409:62: (iv_ruleDisjunctiveExpression= ruleDisjunctiveExpression EOF )
2239 // InternalSolverLanguageParser.g:899:2: iv_ruleDisjunctiveExpression= ruleDisjunctiveExpression EOF 3429 // InternalSolverLanguageParser.g:1410:2: iv_ruleDisjunctiveExpression= ruleDisjunctiveExpression EOF
2240 { 3430 {
2241 newCompositeNode(grammarAccess.getDisjunctiveExpressionRule()); 3431 newCompositeNode(grammarAccess.getDisjunctiveExpressionRule());
2242 pushFollow(FOLLOW_1); 3432 pushFollow(FOLLOW_1);
@@ -2263,7 +3453,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2263 3453
2264 3454
2265 // $ANTLR start "ruleDisjunctiveExpression" 3455 // $ANTLR start "ruleDisjunctiveExpression"
2266 // InternalSolverLanguageParser.g:905:1: ruleDisjunctiveExpression returns [EObject current=null] : (this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? ) ; 3456 // InternalSolverLanguageParser.g:1416:1: ruleDisjunctiveExpression returns [EObject current=null] : (this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? ) ;
2267 public final EObject ruleDisjunctiveExpression() throws RecognitionException { 3457 public final EObject ruleDisjunctiveExpression() throws RecognitionException {
2268 EObject current = null; 3458 EObject current = null;
2269 3459
@@ -2283,16 +3473,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2283 enterRule(); 3473 enterRule();
2284 3474
2285 try { 3475 try {
2286 // InternalSolverLanguageParser.g:911:2: ( (this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? ) ) 3476 // InternalSolverLanguageParser.g:1422:2: ( (this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? ) )
2287 // InternalSolverLanguageParser.g:912:2: (this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? ) 3477 // InternalSolverLanguageParser.g:1423:2: (this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? )
2288 { 3478 {
2289 // InternalSolverLanguageParser.g:912:2: (this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? ) 3479 // InternalSolverLanguageParser.g:1423:2: (this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? )
2290 // InternalSolverLanguageParser.g:913:3: this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? 3480 // InternalSolverLanguageParser.g:1424:3: this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )?
2291 { 3481 {
2292 3482
2293 newCompositeNode(grammarAccess.getDisjunctiveExpressionAccess().getConjunctiveExpressionParserRuleCall_0()); 3483 newCompositeNode(grammarAccess.getDisjunctiveExpressionAccess().getConjunctiveExpressionParserRuleCall_0());
2294 3484
2295 pushFollow(FOLLOW_17); 3485 pushFollow(FOLLOW_25);
2296 this_ConjunctiveExpression_0=ruleConjunctiveExpression(); 3486 this_ConjunctiveExpression_0=ruleConjunctiveExpression();
2297 3487
2298 state._fsp--; 3488 state._fsp--;
@@ -2301,25 +3491,25 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2301 current = this_ConjunctiveExpression_0; 3491 current = this_ConjunctiveExpression_0;
2302 afterParserOrEnumRuleCall(); 3492 afterParserOrEnumRuleCall();
2303 3493
2304 // InternalSolverLanguageParser.g:921:3: ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? 3494 // InternalSolverLanguageParser.g:1432:3: ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )?
2305 int alt11=3; 3495 int alt14=3;
2306 int LA11_0 = input.LA(1); 3496 int LA14_0 = input.LA(1);
2307 3497
2308 if ( (LA11_0==Semicolon) ) { 3498 if ( (LA14_0==Semicolon) ) {
2309 alt11=1; 3499 alt14=1;
2310 } 3500 }
2311 else if ( (LA11_0==HyphenMinusGreaterThanSign) ) { 3501 else if ( (LA14_0==HyphenMinusGreaterThanSign) ) {
2312 alt11=2; 3502 alt14=2;
2313 } 3503 }
2314 switch (alt11) { 3504 switch (alt14) {
2315 case 1 : 3505 case 1 :
2316 // InternalSolverLanguageParser.g:922:4: ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) 3506 // InternalSolverLanguageParser.g:1433:4: ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ )
2317 { 3507 {
2318 // InternalSolverLanguageParser.g:922:4: ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) 3508 // InternalSolverLanguageParser.g:1433:4: ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ )
2319 // InternalSolverLanguageParser.g:923:5: () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ 3509 // InternalSolverLanguageParser.g:1434:5: () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+
2320 { 3510 {
2321 // InternalSolverLanguageParser.g:923:5: () 3511 // InternalSolverLanguageParser.g:1434:5: ()
2322 // InternalSolverLanguageParser.g:924:6: 3512 // InternalSolverLanguageParser.g:1435:6:
2323 { 3513 {
2324 3514
2325 current = forceCreateModelElementAndAdd( 3515 current = forceCreateModelElementAndAdd(
@@ -2329,36 +3519,36 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2329 3519
2330 } 3520 }
2331 3521
2332 // InternalSolverLanguageParser.g:930:5: (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ 3522 // InternalSolverLanguageParser.g:1441:5: (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+
2333 int cnt9=0; 3523 int cnt12=0;
2334 loop9: 3524 loop12:
2335 do { 3525 do {
2336 int alt9=2; 3526 int alt12=2;
2337 int LA9_0 = input.LA(1); 3527 int LA12_0 = input.LA(1);
2338 3528
2339 if ( (LA9_0==Semicolon) ) { 3529 if ( (LA12_0==Semicolon) ) {
2340 alt9=1; 3530 alt12=1;
2341 } 3531 }
2342 3532
2343 3533
2344 switch (alt9) { 3534 switch (alt12) {
2345 case 1 : 3535 case 1 :
2346 // InternalSolverLanguageParser.g:931:6: otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) 3536 // InternalSolverLanguageParser.g:1442:6: otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) )
2347 { 3537 {
2348 otherlv_2=(Token)match(input,Semicolon,FOLLOW_6); 3538 otherlv_2=(Token)match(input,Semicolon,FOLLOW_6);
2349 3539
2350 newLeafNode(otherlv_2, grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_0_1_0()); 3540 newLeafNode(otherlv_2, grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_0_1_0());
2351 3541
2352 // InternalSolverLanguageParser.g:935:6: ( (lv_children_3_0= ruleConjunctiveExpression ) ) 3542 // InternalSolverLanguageParser.g:1446:6: ( (lv_children_3_0= ruleConjunctiveExpression ) )
2353 // InternalSolverLanguageParser.g:936:7: (lv_children_3_0= ruleConjunctiveExpression ) 3543 // InternalSolverLanguageParser.g:1447:7: (lv_children_3_0= ruleConjunctiveExpression )
2354 { 3544 {
2355 // InternalSolverLanguageParser.g:936:7: (lv_children_3_0= ruleConjunctiveExpression ) 3545 // InternalSolverLanguageParser.g:1447:7: (lv_children_3_0= ruleConjunctiveExpression )
2356 // InternalSolverLanguageParser.g:937:8: lv_children_3_0= ruleConjunctiveExpression 3546 // InternalSolverLanguageParser.g:1448:8: lv_children_3_0= ruleConjunctiveExpression
2357 { 3547 {
2358 3548
2359 newCompositeNode(grammarAccess.getDisjunctiveExpressionAccess().getChildrenConjunctiveExpressionParserRuleCall_1_0_1_1_0()); 3549 newCompositeNode(grammarAccess.getDisjunctiveExpressionAccess().getChildrenConjunctiveExpressionParserRuleCall_1_0_1_1_0());
2360 3550
2361 pushFollow(FOLLOW_18); 3551 pushFollow(FOLLOW_26);
2362 lv_children_3_0=ruleConjunctiveExpression(); 3552 lv_children_3_0=ruleConjunctiveExpression();
2363 3553
2364 state._fsp--; 3554 state._fsp--;
@@ -2385,12 +3575,12 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2385 break; 3575 break;
2386 3576
2387 default : 3577 default :
2388 if ( cnt9 >= 1 ) break loop9; 3578 if ( cnt12 >= 1 ) break loop12;
2389 EarlyExitException eee = 3579 EarlyExitException eee =
2390 new EarlyExitException(9, input); 3580 new EarlyExitException(12, input);
2391 throw eee; 3581 throw eee;
2392 } 3582 }
2393 cnt9++; 3583 cnt12++;
2394 } while (true); 3584 } while (true);
2395 3585
2396 3586
@@ -2400,13 +3590,13 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2400 } 3590 }
2401 break; 3591 break;
2402 case 2 : 3592 case 2 :
2403 // InternalSolverLanguageParser.g:957:4: ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) 3593 // InternalSolverLanguageParser.g:1468:4: ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* )
2404 { 3594 {
2405 // InternalSolverLanguageParser.g:957:4: ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) 3595 // InternalSolverLanguageParser.g:1468:4: ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* )
2406 // InternalSolverLanguageParser.g:958:5: () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* 3596 // InternalSolverLanguageParser.g:1469:5: () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )*
2407 { 3597 {
2408 // InternalSolverLanguageParser.g:958:5: () 3598 // InternalSolverLanguageParser.g:1469:5: ()
2409 // InternalSolverLanguageParser.g:959:6: 3599 // InternalSolverLanguageParser.g:1470:6:
2410 { 3600 {
2411 3601
2412 current = forceCreateModelElementAndSet( 3602 current = forceCreateModelElementAndSet(
@@ -2420,16 +3610,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2420 3610
2421 newLeafNode(otherlv_5, grammarAccess.getDisjunctiveExpressionAccess().getHyphenMinusGreaterThanSignKeyword_1_1_1()); 3611 newLeafNode(otherlv_5, grammarAccess.getDisjunctiveExpressionAccess().getHyphenMinusGreaterThanSignKeyword_1_1_1());
2422 3612
2423 // InternalSolverLanguageParser.g:969:5: ( (lv_body_6_0= ruleConjunctiveExpression ) ) 3613 // InternalSolverLanguageParser.g:1480:5: ( (lv_body_6_0= ruleConjunctiveExpression ) )
2424 // InternalSolverLanguageParser.g:970:6: (lv_body_6_0= ruleConjunctiveExpression ) 3614 // InternalSolverLanguageParser.g:1481:6: (lv_body_6_0= ruleConjunctiveExpression )
2425 { 3615 {
2426 // InternalSolverLanguageParser.g:970:6: (lv_body_6_0= ruleConjunctiveExpression ) 3616 // InternalSolverLanguageParser.g:1481:6: (lv_body_6_0= ruleConjunctiveExpression )
2427 // InternalSolverLanguageParser.g:971:7: lv_body_6_0= ruleConjunctiveExpression 3617 // InternalSolverLanguageParser.g:1482:7: lv_body_6_0= ruleConjunctiveExpression
2428 { 3618 {
2429 3619
2430 newCompositeNode(grammarAccess.getDisjunctiveExpressionAccess().getBodyConjunctiveExpressionParserRuleCall_1_1_2_0()); 3620 newCompositeNode(grammarAccess.getDisjunctiveExpressionAccess().getBodyConjunctiveExpressionParserRuleCall_1_1_2_0());
2431 3621
2432 pushFollow(FOLLOW_18); 3622 pushFollow(FOLLOW_26);
2433 lv_body_6_0=ruleConjunctiveExpression(); 3623 lv_body_6_0=ruleConjunctiveExpression();
2434 3624
2435 state._fsp--; 3625 state._fsp--;
@@ -2451,8 +3641,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2451 3641
2452 } 3642 }
2453 3643
2454 // InternalSolverLanguageParser.g:988:5: () 3644 // InternalSolverLanguageParser.g:1499:5: ()
2455 // InternalSolverLanguageParser.g:989:6: 3645 // InternalSolverLanguageParser.g:1500:6:
2456 { 3646 {
2457 3647
2458 current = forceCreateModelElementAndAdd( 3648 current = forceCreateModelElementAndAdd(
@@ -2462,35 +3652,35 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2462 3652
2463 } 3653 }
2464 3654
2465 // InternalSolverLanguageParser.g:995:5: (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* 3655 // InternalSolverLanguageParser.g:1506:5: (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )*
2466 loop10: 3656 loop13:
2467 do { 3657 do {
2468 int alt10=2; 3658 int alt13=2;
2469 int LA10_0 = input.LA(1); 3659 int LA13_0 = input.LA(1);
2470 3660
2471 if ( (LA10_0==Semicolon) ) { 3661 if ( (LA13_0==Semicolon) ) {
2472 alt10=1; 3662 alt13=1;
2473 } 3663 }
2474 3664
2475 3665
2476 switch (alt10) { 3666 switch (alt13) {
2477 case 1 : 3667 case 1 :
2478 // InternalSolverLanguageParser.g:996:6: otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) 3668 // InternalSolverLanguageParser.g:1507:6: otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) )
2479 { 3669 {
2480 otherlv_8=(Token)match(input,Semicolon,FOLLOW_6); 3670 otherlv_8=(Token)match(input,Semicolon,FOLLOW_6);
2481 3671
2482 newLeafNode(otherlv_8, grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_1_4_0()); 3672 newLeafNode(otherlv_8, grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_1_4_0());
2483 3673
2484 // InternalSolverLanguageParser.g:1000:6: ( (lv_cases_9_0= ruleCase ) ) 3674 // InternalSolverLanguageParser.g:1511:6: ( (lv_cases_9_0= ruleCase ) )
2485 // InternalSolverLanguageParser.g:1001:7: (lv_cases_9_0= ruleCase ) 3675 // InternalSolverLanguageParser.g:1512:7: (lv_cases_9_0= ruleCase )
2486 { 3676 {
2487 // InternalSolverLanguageParser.g:1001:7: (lv_cases_9_0= ruleCase ) 3677 // InternalSolverLanguageParser.g:1512:7: (lv_cases_9_0= ruleCase )
2488 // InternalSolverLanguageParser.g:1002:8: lv_cases_9_0= ruleCase 3678 // InternalSolverLanguageParser.g:1513:8: lv_cases_9_0= ruleCase
2489 { 3679 {
2490 3680
2491 newCompositeNode(grammarAccess.getDisjunctiveExpressionAccess().getCasesCaseParserRuleCall_1_1_4_1_0()); 3681 newCompositeNode(grammarAccess.getDisjunctiveExpressionAccess().getCasesCaseParserRuleCall_1_1_4_1_0());
2492 3682
2493 pushFollow(FOLLOW_18); 3683 pushFollow(FOLLOW_26);
2494 lv_cases_9_0=ruleCase(); 3684 lv_cases_9_0=ruleCase();
2495 3685
2496 state._fsp--; 3686 state._fsp--;
@@ -2517,7 +3707,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2517 break; 3707 break;
2518 3708
2519 default : 3709 default :
2520 break loop10; 3710 break loop13;
2521 } 3711 }
2522 } while (true); 3712 } while (true);
2523 3713
@@ -2553,7 +3743,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2553 3743
2554 3744
2555 // $ANTLR start "entryRuleCase" 3745 // $ANTLR start "entryRuleCase"
2556 // InternalSolverLanguageParser.g:1026:1: entryRuleCase returns [EObject current=null] : iv_ruleCase= ruleCase EOF ; 3746 // InternalSolverLanguageParser.g:1537:1: entryRuleCase returns [EObject current=null] : iv_ruleCase= ruleCase EOF ;
2557 public final EObject entryRuleCase() throws RecognitionException { 3747 public final EObject entryRuleCase() throws RecognitionException {
2558 EObject current = null; 3748 EObject current = null;
2559 3749
@@ -2561,8 +3751,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2561 3751
2562 3752
2563 try { 3753 try {
2564 // InternalSolverLanguageParser.g:1026:45: (iv_ruleCase= ruleCase EOF ) 3754 // InternalSolverLanguageParser.g:1537:45: (iv_ruleCase= ruleCase EOF )
2565 // InternalSolverLanguageParser.g:1027:2: iv_ruleCase= ruleCase EOF 3755 // InternalSolverLanguageParser.g:1538:2: iv_ruleCase= ruleCase EOF
2566 { 3756 {
2567 newCompositeNode(grammarAccess.getCaseRule()); 3757 newCompositeNode(grammarAccess.getCaseRule());
2568 pushFollow(FOLLOW_1); 3758 pushFollow(FOLLOW_1);
@@ -2589,7 +3779,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2589 3779
2590 3780
2591 // $ANTLR start "ruleCase" 3781 // $ANTLR start "ruleCase"
2592 // InternalSolverLanguageParser.g:1033:1: ruleCase returns [EObject current=null] : ( ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) ) ; 3782 // InternalSolverLanguageParser.g:1544:1: ruleCase returns [EObject current=null] : ( ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) ) ;
2593 public final EObject ruleCase() throws RecognitionException { 3783 public final EObject ruleCase() throws RecognitionException {
2594 EObject current = null; 3784 EObject current = null;
2595 3785
@@ -2603,22 +3793,22 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2603 enterRule(); 3793 enterRule();
2604 3794
2605 try { 3795 try {
2606 // InternalSolverLanguageParser.g:1039:2: ( ( ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) ) ) 3796 // InternalSolverLanguageParser.g:1550:2: ( ( ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) ) )
2607 // InternalSolverLanguageParser.g:1040:2: ( ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) ) 3797 // InternalSolverLanguageParser.g:1551:2: ( ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) )
2608 { 3798 {
2609 // InternalSolverLanguageParser.g:1040:2: ( ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) ) 3799 // InternalSolverLanguageParser.g:1551:2: ( ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) )
2610 // InternalSolverLanguageParser.g:1041:3: ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) 3800 // InternalSolverLanguageParser.g:1552:3: ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) )
2611 { 3801 {
2612 // InternalSolverLanguageParser.g:1041:3: ( (lv_condition_0_0= ruleConjunctiveExpression ) ) 3802 // InternalSolverLanguageParser.g:1552:3: ( (lv_condition_0_0= ruleConjunctiveExpression ) )
2613 // InternalSolverLanguageParser.g:1042:4: (lv_condition_0_0= ruleConjunctiveExpression ) 3803 // InternalSolverLanguageParser.g:1553:4: (lv_condition_0_0= ruleConjunctiveExpression )
2614 { 3804 {
2615 // InternalSolverLanguageParser.g:1042:4: (lv_condition_0_0= ruleConjunctiveExpression ) 3805 // InternalSolverLanguageParser.g:1553:4: (lv_condition_0_0= ruleConjunctiveExpression )
2616 // InternalSolverLanguageParser.g:1043:5: lv_condition_0_0= ruleConjunctiveExpression 3806 // InternalSolverLanguageParser.g:1554:5: lv_condition_0_0= ruleConjunctiveExpression
2617 { 3807 {
2618 3808
2619 newCompositeNode(grammarAccess.getCaseAccess().getConditionConjunctiveExpressionParserRuleCall_0_0()); 3809 newCompositeNode(grammarAccess.getCaseAccess().getConditionConjunctiveExpressionParserRuleCall_0_0());
2620 3810
2621 pushFollow(FOLLOW_19); 3811 pushFollow(FOLLOW_27);
2622 lv_condition_0_0=ruleConjunctiveExpression(); 3812 lv_condition_0_0=ruleConjunctiveExpression();
2623 3813
2624 state._fsp--; 3814 state._fsp--;
@@ -2644,11 +3834,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2644 3834
2645 newLeafNode(otherlv_1, grammarAccess.getCaseAccess().getHyphenMinusGreaterThanSignKeyword_1()); 3835 newLeafNode(otherlv_1, grammarAccess.getCaseAccess().getHyphenMinusGreaterThanSignKeyword_1());
2646 3836
2647 // InternalSolverLanguageParser.g:1064:3: ( (lv_body_2_0= ruleConjunctiveExpression ) ) 3837 // InternalSolverLanguageParser.g:1575:3: ( (lv_body_2_0= ruleConjunctiveExpression ) )
2648 // InternalSolverLanguageParser.g:1065:4: (lv_body_2_0= ruleConjunctiveExpression ) 3838 // InternalSolverLanguageParser.g:1576:4: (lv_body_2_0= ruleConjunctiveExpression )
2649 { 3839 {
2650 // InternalSolverLanguageParser.g:1065:4: (lv_body_2_0= ruleConjunctiveExpression ) 3840 // InternalSolverLanguageParser.g:1576:4: (lv_body_2_0= ruleConjunctiveExpression )
2651 // InternalSolverLanguageParser.g:1066:5: lv_body_2_0= ruleConjunctiveExpression 3841 // InternalSolverLanguageParser.g:1577:5: lv_body_2_0= ruleConjunctiveExpression
2652 { 3842 {
2653 3843
2654 newCompositeNode(grammarAccess.getCaseAccess().getBodyConjunctiveExpressionParserRuleCall_2_0()); 3844 newCompositeNode(grammarAccess.getCaseAccess().getBodyConjunctiveExpressionParserRuleCall_2_0());
@@ -2698,7 +3888,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2698 3888
2699 3889
2700 // $ANTLR start "entryRuleConjunctiveExpression" 3890 // $ANTLR start "entryRuleConjunctiveExpression"
2701 // InternalSolverLanguageParser.g:1087:1: entryRuleConjunctiveExpression returns [EObject current=null] : iv_ruleConjunctiveExpression= ruleConjunctiveExpression EOF ; 3891 // InternalSolverLanguageParser.g:1598:1: entryRuleConjunctiveExpression returns [EObject current=null] : iv_ruleConjunctiveExpression= ruleConjunctiveExpression EOF ;
2702 public final EObject entryRuleConjunctiveExpression() throws RecognitionException { 3892 public final EObject entryRuleConjunctiveExpression() throws RecognitionException {
2703 EObject current = null; 3893 EObject current = null;
2704 3894
@@ -2706,8 +3896,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2706 3896
2707 3897
2708 try { 3898 try {
2709 // InternalSolverLanguageParser.g:1087:62: (iv_ruleConjunctiveExpression= ruleConjunctiveExpression EOF ) 3899 // InternalSolverLanguageParser.g:1598:62: (iv_ruleConjunctiveExpression= ruleConjunctiveExpression EOF )
2710 // InternalSolverLanguageParser.g:1088:2: iv_ruleConjunctiveExpression= ruleConjunctiveExpression EOF 3900 // InternalSolverLanguageParser.g:1599:2: iv_ruleConjunctiveExpression= ruleConjunctiveExpression EOF
2711 { 3901 {
2712 newCompositeNode(grammarAccess.getConjunctiveExpressionRule()); 3902 newCompositeNode(grammarAccess.getConjunctiveExpressionRule());
2713 pushFollow(FOLLOW_1); 3903 pushFollow(FOLLOW_1);
@@ -2734,7 +3924,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2734 3924
2735 3925
2736 // $ANTLR start "ruleConjunctiveExpression" 3926 // $ANTLR start "ruleConjunctiveExpression"
2737 // InternalSolverLanguageParser.g:1094:1: ruleConjunctiveExpression returns [EObject current=null] : (this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? ) ; 3927 // InternalSolverLanguageParser.g:1605:1: ruleConjunctiveExpression returns [EObject current=null] : (this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? ) ;
2738 public final EObject ruleConjunctiveExpression() throws RecognitionException { 3928 public final EObject ruleConjunctiveExpression() throws RecognitionException {
2739 EObject current = null; 3929 EObject current = null;
2740 3930
@@ -2748,16 +3938,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2748 enterRule(); 3938 enterRule();
2749 3939
2750 try { 3940 try {
2751 // InternalSolverLanguageParser.g:1100:2: ( (this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? ) ) 3941 // InternalSolverLanguageParser.g:1611:2: ( (this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? ) )
2752 // InternalSolverLanguageParser.g:1101:2: (this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? ) 3942 // InternalSolverLanguageParser.g:1612:2: (this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? )
2753 { 3943 {
2754 // InternalSolverLanguageParser.g:1101:2: (this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? ) 3944 // InternalSolverLanguageParser.g:1612:2: (this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? )
2755 // InternalSolverLanguageParser.g:1102:3: this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? 3945 // InternalSolverLanguageParser.g:1613:3: this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )?
2756 { 3946 {
2757 3947
2758 newCompositeNode(grammarAccess.getConjunctiveExpressionAccess().getComparisonExpressionParserRuleCall_0()); 3948 newCompositeNode(grammarAccess.getConjunctiveExpressionAccess().getComparisonExpressionParserRuleCall_0());
2759 3949
2760 pushFollow(FOLLOW_20); 3950 pushFollow(FOLLOW_19);
2761 this_ComparisonExpression_0=ruleComparisonExpression(); 3951 this_ComparisonExpression_0=ruleComparisonExpression();
2762 3952
2763 state._fsp--; 3953 state._fsp--;
@@ -2766,19 +3956,19 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2766 current = this_ComparisonExpression_0; 3956 current = this_ComparisonExpression_0;
2767 afterParserOrEnumRuleCall(); 3957 afterParserOrEnumRuleCall();
2768 3958
2769 // InternalSolverLanguageParser.g:1110:3: ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? 3959 // InternalSolverLanguageParser.g:1621:3: ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )?
2770 int alt13=2; 3960 int alt16=2;
2771 int LA13_0 = input.LA(1); 3961 int LA16_0 = input.LA(1);
2772 3962
2773 if ( (LA13_0==Comma) ) { 3963 if ( (LA16_0==Comma) ) {
2774 alt13=1; 3964 alt16=1;
2775 } 3965 }
2776 switch (alt13) { 3966 switch (alt16) {
2777 case 1 : 3967 case 1 :
2778 // InternalSolverLanguageParser.g:1111:4: () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ 3968 // InternalSolverLanguageParser.g:1622:4: () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+
2779 { 3969 {
2780 // InternalSolverLanguageParser.g:1111:4: () 3970 // InternalSolverLanguageParser.g:1622:4: ()
2781 // InternalSolverLanguageParser.g:1112:5: 3971 // InternalSolverLanguageParser.g:1623:5:
2782 { 3972 {
2783 3973
2784 current = forceCreateModelElementAndAdd( 3974 current = forceCreateModelElementAndAdd(
@@ -2788,36 +3978,36 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2788 3978
2789 } 3979 }
2790 3980
2791 // InternalSolverLanguageParser.g:1118:4: (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ 3981 // InternalSolverLanguageParser.g:1629:4: (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+
2792 int cnt12=0; 3982 int cnt15=0;
2793 loop12: 3983 loop15:
2794 do { 3984 do {
2795 int alt12=2; 3985 int alt15=2;
2796 int LA12_0 = input.LA(1); 3986 int LA15_0 = input.LA(1);
2797 3987
2798 if ( (LA12_0==Comma) ) { 3988 if ( (LA15_0==Comma) ) {
2799 alt12=1; 3989 alt15=1;
2800 } 3990 }
2801 3991
2802 3992
2803 switch (alt12) { 3993 switch (alt15) {
2804 case 1 : 3994 case 1 :
2805 // InternalSolverLanguageParser.g:1119:5: otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) 3995 // InternalSolverLanguageParser.g:1630:5: otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) )
2806 { 3996 {
2807 otherlv_2=(Token)match(input,Comma,FOLLOW_6); 3997 otherlv_2=(Token)match(input,Comma,FOLLOW_6);
2808 3998
2809 newLeafNode(otherlv_2, grammarAccess.getConjunctiveExpressionAccess().getCommaKeyword_1_1_0()); 3999 newLeafNode(otherlv_2, grammarAccess.getConjunctiveExpressionAccess().getCommaKeyword_1_1_0());
2810 4000
2811 // InternalSolverLanguageParser.g:1123:5: ( (lv_children_3_0= ruleComparisonExpression ) ) 4001 // InternalSolverLanguageParser.g:1634:5: ( (lv_children_3_0= ruleComparisonExpression ) )
2812 // InternalSolverLanguageParser.g:1124:6: (lv_children_3_0= ruleComparisonExpression ) 4002 // InternalSolverLanguageParser.g:1635:6: (lv_children_3_0= ruleComparisonExpression )
2813 { 4003 {
2814 // InternalSolverLanguageParser.g:1124:6: (lv_children_3_0= ruleComparisonExpression ) 4004 // InternalSolverLanguageParser.g:1635:6: (lv_children_3_0= ruleComparisonExpression )
2815 // InternalSolverLanguageParser.g:1125:7: lv_children_3_0= ruleComparisonExpression 4005 // InternalSolverLanguageParser.g:1636:7: lv_children_3_0= ruleComparisonExpression
2816 { 4006 {
2817 4007
2818 newCompositeNode(grammarAccess.getConjunctiveExpressionAccess().getChildrenComparisonExpressionParserRuleCall_1_1_1_0()); 4008 newCompositeNode(grammarAccess.getConjunctiveExpressionAccess().getChildrenComparisonExpressionParserRuleCall_1_1_1_0());
2819 4009
2820 pushFollow(FOLLOW_20); 4010 pushFollow(FOLLOW_19);
2821 lv_children_3_0=ruleComparisonExpression(); 4011 lv_children_3_0=ruleComparisonExpression();
2822 4012
2823 state._fsp--; 4013 state._fsp--;
@@ -2844,12 +4034,12 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2844 break; 4034 break;
2845 4035
2846 default : 4036 default :
2847 if ( cnt12 >= 1 ) break loop12; 4037 if ( cnt15 >= 1 ) break loop15;
2848 EarlyExitException eee = 4038 EarlyExitException eee =
2849 new EarlyExitException(12, input); 4039 new EarlyExitException(15, input);
2850 throw eee; 4040 throw eee;
2851 } 4041 }
2852 cnt12++; 4042 cnt15++;
2853 } while (true); 4043 } while (true);
2854 4044
2855 4045
@@ -2881,7 +4071,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2881 4071
2882 4072
2883 // $ANTLR start "entryRuleComparisonExpression" 4073 // $ANTLR start "entryRuleComparisonExpression"
2884 // InternalSolverLanguageParser.g:1148:1: entryRuleComparisonExpression returns [EObject current=null] : iv_ruleComparisonExpression= ruleComparisonExpression EOF ; 4074 // InternalSolverLanguageParser.g:1659:1: entryRuleComparisonExpression returns [EObject current=null] : iv_ruleComparisonExpression= ruleComparisonExpression EOF ;
2885 public final EObject entryRuleComparisonExpression() throws RecognitionException { 4075 public final EObject entryRuleComparisonExpression() throws RecognitionException {
2886 EObject current = null; 4076 EObject current = null;
2887 4077
@@ -2889,8 +4079,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2889 4079
2890 4080
2891 try { 4081 try {
2892 // InternalSolverLanguageParser.g:1148:61: (iv_ruleComparisonExpression= ruleComparisonExpression EOF ) 4082 // InternalSolverLanguageParser.g:1659:61: (iv_ruleComparisonExpression= ruleComparisonExpression EOF )
2893 // InternalSolverLanguageParser.g:1149:2: iv_ruleComparisonExpression= ruleComparisonExpression EOF 4083 // InternalSolverLanguageParser.g:1660:2: iv_ruleComparisonExpression= ruleComparisonExpression EOF
2894 { 4084 {
2895 newCompositeNode(grammarAccess.getComparisonExpressionRule()); 4085 newCompositeNode(grammarAccess.getComparisonExpressionRule());
2896 pushFollow(FOLLOW_1); 4086 pushFollow(FOLLOW_1);
@@ -2917,7 +4107,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2917 4107
2918 4108
2919 // $ANTLR start "ruleComparisonExpression" 4109 // $ANTLR start "ruleComparisonExpression"
2920 // InternalSolverLanguageParser.g:1155:1: ruleComparisonExpression returns [EObject current=null] : (this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? ) ; 4110 // InternalSolverLanguageParser.g:1666:1: ruleComparisonExpression returns [EObject current=null] : (this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? ) ;
2921 public final EObject ruleComparisonExpression() throws RecognitionException { 4111 public final EObject ruleComparisonExpression() throws RecognitionException {
2922 EObject current = null; 4112 EObject current = null;
2923 4113
@@ -2932,16 +4122,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2932 enterRule(); 4122 enterRule();
2933 4123
2934 try { 4124 try {
2935 // InternalSolverLanguageParser.g:1161:2: ( (this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? ) ) 4125 // InternalSolverLanguageParser.g:1672:2: ( (this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? ) )
2936 // InternalSolverLanguageParser.g:1162:2: (this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? ) 4126 // InternalSolverLanguageParser.g:1673:2: (this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? )
2937 { 4127 {
2938 // InternalSolverLanguageParser.g:1162:2: (this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? ) 4128 // InternalSolverLanguageParser.g:1673:2: (this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? )
2939 // InternalSolverLanguageParser.g:1163:3: this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? 4129 // InternalSolverLanguageParser.g:1674:3: this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )?
2940 { 4130 {
2941 4131
2942 newCompositeNode(grammarAccess.getComparisonExpressionAccess().getAdditiveExpressionParserRuleCall_0()); 4132 newCompositeNode(grammarAccess.getComparisonExpressionAccess().getAdditiveExpressionParserRuleCall_0());
2943 4133
2944 pushFollow(FOLLOW_21); 4134 pushFollow(FOLLOW_28);
2945 this_AdditiveExpression_0=ruleAdditiveExpression(); 4135 this_AdditiveExpression_0=ruleAdditiveExpression();
2946 4136
2947 state._fsp--; 4137 state._fsp--;
@@ -2950,19 +4140,19 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2950 current = this_AdditiveExpression_0; 4140 current = this_AdditiveExpression_0;
2951 afterParserOrEnumRuleCall(); 4141 afterParserOrEnumRuleCall();
2952 4142
2953 // InternalSolverLanguageParser.g:1171:3: ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? 4143 // InternalSolverLanguageParser.g:1682:3: ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )?
2954 int alt14=2; 4144 int alt17=2;
2955 int LA14_0 = input.LA(1); 4145 int LA17_0 = input.LA(1);
2956 4146
2957 if ( (LA14_0==ExclamationMarkEqualsSign||(LA14_0>=LessThanSignEqualsSign && LA14_0<=GreaterThanSignEqualsSign)||LA14_0==In||LA14_0==LessThanSign||LA14_0==GreaterThanSign) ) { 4147 if ( (LA17_0==ExclamationMarkEqualsSign||(LA17_0>=LessThanSignEqualsSign && LA17_0<=EqualsSignEqualsSign)||LA17_0==GreaterThanSignEqualsSign||LA17_0==In||LA17_0==LessThanSign||LA17_0==GreaterThanSign) ) {
2958 alt14=1; 4148 alt17=1;
2959 } 4149 }
2960 switch (alt14) { 4150 switch (alt17) {
2961 case 1 : 4151 case 1 :
2962 // InternalSolverLanguageParser.g:1172:4: () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) 4152 // InternalSolverLanguageParser.g:1683:4: () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) )
2963 { 4153 {
2964 // InternalSolverLanguageParser.g:1172:4: () 4154 // InternalSolverLanguageParser.g:1683:4: ()
2965 // InternalSolverLanguageParser.g:1173:5: 4155 // InternalSolverLanguageParser.g:1684:5:
2966 { 4156 {
2967 4157
2968 current = forceCreateModelElementAndSet( 4158 current = forceCreateModelElementAndSet(
@@ -2972,11 +4162,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
2972 4162
2973 } 4163 }
2974 4164
2975 // InternalSolverLanguageParser.g:1179:4: ( (lv_op_2_0= ruleComparisonOperator ) ) 4165 // InternalSolverLanguageParser.g:1690:4: ( (lv_op_2_0= ruleComparisonOperator ) )
2976 // InternalSolverLanguageParser.g:1180:5: (lv_op_2_0= ruleComparisonOperator ) 4166 // InternalSolverLanguageParser.g:1691:5: (lv_op_2_0= ruleComparisonOperator )
2977 { 4167 {
2978 // InternalSolverLanguageParser.g:1180:5: (lv_op_2_0= ruleComparisonOperator ) 4168 // InternalSolverLanguageParser.g:1691:5: (lv_op_2_0= ruleComparisonOperator )
2979 // InternalSolverLanguageParser.g:1181:6: lv_op_2_0= ruleComparisonOperator 4169 // InternalSolverLanguageParser.g:1692:6: lv_op_2_0= ruleComparisonOperator
2980 { 4170 {
2981 4171
2982 newCompositeNode(grammarAccess.getComparisonExpressionAccess().getOpComparisonOperatorEnumRuleCall_1_1_0()); 4172 newCompositeNode(grammarAccess.getComparisonExpressionAccess().getOpComparisonOperatorEnumRuleCall_1_1_0());
@@ -3003,11 +4193,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3003 4193
3004 } 4194 }
3005 4195
3006 // InternalSolverLanguageParser.g:1198:4: ( (lv_right_3_0= ruleAdditiveExpression ) ) 4196 // InternalSolverLanguageParser.g:1709:4: ( (lv_right_3_0= ruleAdditiveExpression ) )
3007 // InternalSolverLanguageParser.g:1199:5: (lv_right_3_0= ruleAdditiveExpression ) 4197 // InternalSolverLanguageParser.g:1710:5: (lv_right_3_0= ruleAdditiveExpression )
3008 { 4198 {
3009 // InternalSolverLanguageParser.g:1199:5: (lv_right_3_0= ruleAdditiveExpression ) 4199 // InternalSolverLanguageParser.g:1710:5: (lv_right_3_0= ruleAdditiveExpression )
3010 // InternalSolverLanguageParser.g:1200:6: lv_right_3_0= ruleAdditiveExpression 4200 // InternalSolverLanguageParser.g:1711:6: lv_right_3_0= ruleAdditiveExpression
3011 { 4201 {
3012 4202
3013 newCompositeNode(grammarAccess.getComparisonExpressionAccess().getRightAdditiveExpressionParserRuleCall_1_2_0()); 4203 newCompositeNode(grammarAccess.getComparisonExpressionAccess().getRightAdditiveExpressionParserRuleCall_1_2_0());
@@ -3063,7 +4253,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3063 4253
3064 4254
3065 // $ANTLR start "entryRuleAdditiveExpression" 4255 // $ANTLR start "entryRuleAdditiveExpression"
3066 // InternalSolverLanguageParser.g:1222:1: entryRuleAdditiveExpression returns [EObject current=null] : iv_ruleAdditiveExpression= ruleAdditiveExpression EOF ; 4256 // InternalSolverLanguageParser.g:1733:1: entryRuleAdditiveExpression returns [EObject current=null] : iv_ruleAdditiveExpression= ruleAdditiveExpression EOF ;
3067 public final EObject entryRuleAdditiveExpression() throws RecognitionException { 4257 public final EObject entryRuleAdditiveExpression() throws RecognitionException {
3068 EObject current = null; 4258 EObject current = null;
3069 4259
@@ -3071,8 +4261,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3071 4261
3072 4262
3073 try { 4263 try {
3074 // InternalSolverLanguageParser.g:1222:59: (iv_ruleAdditiveExpression= ruleAdditiveExpression EOF ) 4264 // InternalSolverLanguageParser.g:1733:59: (iv_ruleAdditiveExpression= ruleAdditiveExpression EOF )
3075 // InternalSolverLanguageParser.g:1223:2: iv_ruleAdditiveExpression= ruleAdditiveExpression EOF 4265 // InternalSolverLanguageParser.g:1734:2: iv_ruleAdditiveExpression= ruleAdditiveExpression EOF
3076 { 4266 {
3077 newCompositeNode(grammarAccess.getAdditiveExpressionRule()); 4267 newCompositeNode(grammarAccess.getAdditiveExpressionRule());
3078 pushFollow(FOLLOW_1); 4268 pushFollow(FOLLOW_1);
@@ -3099,7 +4289,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3099 4289
3100 4290
3101 // $ANTLR start "ruleAdditiveExpression" 4291 // $ANTLR start "ruleAdditiveExpression"
3102 // InternalSolverLanguageParser.g:1229:1: ruleAdditiveExpression returns [EObject current=null] : (this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* ) ; 4292 // InternalSolverLanguageParser.g:1740:1: ruleAdditiveExpression returns [EObject current=null] : (this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* ) ;
3103 public final EObject ruleAdditiveExpression() throws RecognitionException { 4293 public final EObject ruleAdditiveExpression() throws RecognitionException {
3104 EObject current = null; 4294 EObject current = null;
3105 4295
@@ -3114,16 +4304,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3114 enterRule(); 4304 enterRule();
3115 4305
3116 try { 4306 try {
3117 // InternalSolverLanguageParser.g:1235:2: ( (this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* ) ) 4307 // InternalSolverLanguageParser.g:1746:2: ( (this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* ) )
3118 // InternalSolverLanguageParser.g:1236:2: (this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* ) 4308 // InternalSolverLanguageParser.g:1747:2: (this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* )
3119 { 4309 {
3120 // InternalSolverLanguageParser.g:1236:2: (this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* ) 4310 // InternalSolverLanguageParser.g:1747:2: (this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* )
3121 // InternalSolverLanguageParser.g:1237:3: this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* 4311 // InternalSolverLanguageParser.g:1748:3: this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )*
3122 { 4312 {
3123 4313
3124 newCompositeNode(grammarAccess.getAdditiveExpressionAccess().getMultiplicativeExpressionParserRuleCall_0()); 4314 newCompositeNode(grammarAccess.getAdditiveExpressionAccess().getMultiplicativeExpressionParserRuleCall_0());
3125 4315
3126 pushFollow(FOLLOW_22); 4316 pushFollow(FOLLOW_29);
3127 this_MultiplicativeExpression_0=ruleMultiplicativeExpression(); 4317 this_MultiplicativeExpression_0=ruleMultiplicativeExpression();
3128 4318
3129 state._fsp--; 4319 state._fsp--;
@@ -3132,23 +4322,23 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3132 current = this_MultiplicativeExpression_0; 4322 current = this_MultiplicativeExpression_0;
3133 afterParserOrEnumRuleCall(); 4323 afterParserOrEnumRuleCall();
3134 4324
3135 // InternalSolverLanguageParser.g:1245:3: ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* 4325 // InternalSolverLanguageParser.g:1756:3: ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )*
3136 loop15: 4326 loop18:
3137 do { 4327 do {
3138 int alt15=2; 4328 int alt18=2;
3139 int LA15_0 = input.LA(1); 4329 int LA18_0 = input.LA(1);
3140 4330
3141 if ( (LA15_0==PlusSign||LA15_0==HyphenMinus) ) { 4331 if ( (LA18_0==PlusSign||LA18_0==HyphenMinus) ) {
3142 alt15=1; 4332 alt18=1;
3143 } 4333 }
3144 4334
3145 4335
3146 switch (alt15) { 4336 switch (alt18) {
3147 case 1 : 4337 case 1 :
3148 // InternalSolverLanguageParser.g:1246:4: () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) 4338 // InternalSolverLanguageParser.g:1757:4: () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) )
3149 { 4339 {
3150 // InternalSolverLanguageParser.g:1246:4: () 4340 // InternalSolverLanguageParser.g:1757:4: ()
3151 // InternalSolverLanguageParser.g:1247:5: 4341 // InternalSolverLanguageParser.g:1758:5:
3152 { 4342 {
3153 4343
3154 current = forceCreateModelElementAndSet( 4344 current = forceCreateModelElementAndSet(
@@ -3158,11 +4348,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3158 4348
3159 } 4349 }
3160 4350
3161 // InternalSolverLanguageParser.g:1253:4: ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) 4351 // InternalSolverLanguageParser.g:1764:4: ( (lv_op_2_0= ruleAdditiveBinaryOperator ) )
3162 // InternalSolverLanguageParser.g:1254:5: (lv_op_2_0= ruleAdditiveBinaryOperator ) 4352 // InternalSolverLanguageParser.g:1765:5: (lv_op_2_0= ruleAdditiveBinaryOperator )
3163 { 4353 {
3164 // InternalSolverLanguageParser.g:1254:5: (lv_op_2_0= ruleAdditiveBinaryOperator ) 4354 // InternalSolverLanguageParser.g:1765:5: (lv_op_2_0= ruleAdditiveBinaryOperator )
3165 // InternalSolverLanguageParser.g:1255:6: lv_op_2_0= ruleAdditiveBinaryOperator 4355 // InternalSolverLanguageParser.g:1766:6: lv_op_2_0= ruleAdditiveBinaryOperator
3166 { 4356 {
3167 4357
3168 newCompositeNode(grammarAccess.getAdditiveExpressionAccess().getOpAdditiveBinaryOperatorEnumRuleCall_1_1_0()); 4358 newCompositeNode(grammarAccess.getAdditiveExpressionAccess().getOpAdditiveBinaryOperatorEnumRuleCall_1_1_0());
@@ -3189,16 +4379,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3189 4379
3190 } 4380 }
3191 4381
3192 // InternalSolverLanguageParser.g:1272:4: ( (lv_right_3_0= ruleMultiplicativeExpression ) ) 4382 // InternalSolverLanguageParser.g:1783:4: ( (lv_right_3_0= ruleMultiplicativeExpression ) )
3193 // InternalSolverLanguageParser.g:1273:5: (lv_right_3_0= ruleMultiplicativeExpression ) 4383 // InternalSolverLanguageParser.g:1784:5: (lv_right_3_0= ruleMultiplicativeExpression )
3194 { 4384 {
3195 // InternalSolverLanguageParser.g:1273:5: (lv_right_3_0= ruleMultiplicativeExpression ) 4385 // InternalSolverLanguageParser.g:1784:5: (lv_right_3_0= ruleMultiplicativeExpression )
3196 // InternalSolverLanguageParser.g:1274:6: lv_right_3_0= ruleMultiplicativeExpression 4386 // InternalSolverLanguageParser.g:1785:6: lv_right_3_0= ruleMultiplicativeExpression
3197 { 4387 {
3198 4388
3199 newCompositeNode(grammarAccess.getAdditiveExpressionAccess().getRightMultiplicativeExpressionParserRuleCall_1_2_0()); 4389 newCompositeNode(grammarAccess.getAdditiveExpressionAccess().getRightMultiplicativeExpressionParserRuleCall_1_2_0());
3200 4390
3201 pushFollow(FOLLOW_22); 4391 pushFollow(FOLLOW_29);
3202 lv_right_3_0=ruleMultiplicativeExpression(); 4392 lv_right_3_0=ruleMultiplicativeExpression();
3203 4393
3204 state._fsp--; 4394 state._fsp--;
@@ -3225,7 +4415,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3225 break; 4415 break;
3226 4416
3227 default : 4417 default :
3228 break loop15; 4418 break loop18;
3229 } 4419 }
3230 } while (true); 4420 } while (true);
3231 4421
@@ -3252,7 +4442,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3252 4442
3253 4443
3254 // $ANTLR start "entryRuleMultiplicativeExpression" 4444 // $ANTLR start "entryRuleMultiplicativeExpression"
3255 // InternalSolverLanguageParser.g:1296:1: entryRuleMultiplicativeExpression returns [EObject current=null] : iv_ruleMultiplicativeExpression= ruleMultiplicativeExpression EOF ; 4445 // InternalSolverLanguageParser.g:1807:1: entryRuleMultiplicativeExpression returns [EObject current=null] : iv_ruleMultiplicativeExpression= ruleMultiplicativeExpression EOF ;
3256 public final EObject entryRuleMultiplicativeExpression() throws RecognitionException { 4446 public final EObject entryRuleMultiplicativeExpression() throws RecognitionException {
3257 EObject current = null; 4447 EObject current = null;
3258 4448
@@ -3260,8 +4450,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3260 4450
3261 4451
3262 try { 4452 try {
3263 // InternalSolverLanguageParser.g:1296:65: (iv_ruleMultiplicativeExpression= ruleMultiplicativeExpression EOF ) 4453 // InternalSolverLanguageParser.g:1807:65: (iv_ruleMultiplicativeExpression= ruleMultiplicativeExpression EOF )
3264 // InternalSolverLanguageParser.g:1297:2: iv_ruleMultiplicativeExpression= ruleMultiplicativeExpression EOF 4454 // InternalSolverLanguageParser.g:1808:2: iv_ruleMultiplicativeExpression= ruleMultiplicativeExpression EOF
3265 { 4455 {
3266 newCompositeNode(grammarAccess.getMultiplicativeExpressionRule()); 4456 newCompositeNode(grammarAccess.getMultiplicativeExpressionRule());
3267 pushFollow(FOLLOW_1); 4457 pushFollow(FOLLOW_1);
@@ -3288,7 +4478,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3288 4478
3289 4479
3290 // $ANTLR start "ruleMultiplicativeExpression" 4480 // $ANTLR start "ruleMultiplicativeExpression"
3291 // InternalSolverLanguageParser.g:1303:1: ruleMultiplicativeExpression returns [EObject current=null] : (this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* ) ; 4481 // InternalSolverLanguageParser.g:1814:1: ruleMultiplicativeExpression returns [EObject current=null] : (this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* ) ;
3292 public final EObject ruleMultiplicativeExpression() throws RecognitionException { 4482 public final EObject ruleMultiplicativeExpression() throws RecognitionException {
3293 EObject current = null; 4483 EObject current = null;
3294 4484
@@ -3303,16 +4493,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3303 enterRule(); 4493 enterRule();
3304 4494
3305 try { 4495 try {
3306 // InternalSolverLanguageParser.g:1309:2: ( (this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* ) ) 4496 // InternalSolverLanguageParser.g:1820:2: ( (this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* ) )
3307 // InternalSolverLanguageParser.g:1310:2: (this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* ) 4497 // InternalSolverLanguageParser.g:1821:2: (this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* )
3308 { 4498 {
3309 // InternalSolverLanguageParser.g:1310:2: (this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* ) 4499 // InternalSolverLanguageParser.g:1821:2: (this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* )
3310 // InternalSolverLanguageParser.g:1311:3: this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* 4500 // InternalSolverLanguageParser.g:1822:3: this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )*
3311 { 4501 {
3312 4502
3313 newCompositeNode(grammarAccess.getMultiplicativeExpressionAccess().getExponentialExpressionParserRuleCall_0()); 4503 newCompositeNode(grammarAccess.getMultiplicativeExpressionAccess().getExponentialExpressionParserRuleCall_0());
3314 4504
3315 pushFollow(FOLLOW_23); 4505 pushFollow(FOLLOW_30);
3316 this_ExponentialExpression_0=ruleExponentialExpression(); 4506 this_ExponentialExpression_0=ruleExponentialExpression();
3317 4507
3318 state._fsp--; 4508 state._fsp--;
@@ -3321,23 +4511,23 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3321 current = this_ExponentialExpression_0; 4511 current = this_ExponentialExpression_0;
3322 afterParserOrEnumRuleCall(); 4512 afterParserOrEnumRuleCall();
3323 4513
3324 // InternalSolverLanguageParser.g:1319:3: ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* 4514 // InternalSolverLanguageParser.g:1830:3: ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )*
3325 loop16: 4515 loop19:
3326 do { 4516 do {
3327 int alt16=2; 4517 int alt19=2;
3328 int LA16_0 = input.LA(1); 4518 int LA19_0 = input.LA(1);
3329 4519
3330 if ( (LA16_0==Asterisk||LA16_0==Solidus) ) { 4520 if ( (LA19_0==Asterisk||LA19_0==Solidus) ) {
3331 alt16=1; 4521 alt19=1;
3332 } 4522 }
3333 4523
3334 4524
3335 switch (alt16) { 4525 switch (alt19) {
3336 case 1 : 4526 case 1 :
3337 // InternalSolverLanguageParser.g:1320:4: () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) 4527 // InternalSolverLanguageParser.g:1831:4: () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) )
3338 { 4528 {
3339 // InternalSolverLanguageParser.g:1320:4: () 4529 // InternalSolverLanguageParser.g:1831:4: ()
3340 // InternalSolverLanguageParser.g:1321:5: 4530 // InternalSolverLanguageParser.g:1832:5:
3341 { 4531 {
3342 4532
3343 current = forceCreateModelElementAndSet( 4533 current = forceCreateModelElementAndSet(
@@ -3347,11 +4537,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3347 4537
3348 } 4538 }
3349 4539
3350 // InternalSolverLanguageParser.g:1327:4: ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) 4540 // InternalSolverLanguageParser.g:1838:4: ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) )
3351 // InternalSolverLanguageParser.g:1328:5: (lv_op_2_0= ruleMultiplicativeBinaryOperator ) 4541 // InternalSolverLanguageParser.g:1839:5: (lv_op_2_0= ruleMultiplicativeBinaryOperator )
3352 { 4542 {
3353 // InternalSolverLanguageParser.g:1328:5: (lv_op_2_0= ruleMultiplicativeBinaryOperator ) 4543 // InternalSolverLanguageParser.g:1839:5: (lv_op_2_0= ruleMultiplicativeBinaryOperator )
3354 // InternalSolverLanguageParser.g:1329:6: lv_op_2_0= ruleMultiplicativeBinaryOperator 4544 // InternalSolverLanguageParser.g:1840:6: lv_op_2_0= ruleMultiplicativeBinaryOperator
3355 { 4545 {
3356 4546
3357 newCompositeNode(grammarAccess.getMultiplicativeExpressionAccess().getOpMultiplicativeBinaryOperatorEnumRuleCall_1_1_0()); 4547 newCompositeNode(grammarAccess.getMultiplicativeExpressionAccess().getOpMultiplicativeBinaryOperatorEnumRuleCall_1_1_0());
@@ -3378,16 +4568,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3378 4568
3379 } 4569 }
3380 4570
3381 // InternalSolverLanguageParser.g:1346:4: ( (lv_right_3_0= ruleExponentialExpression ) ) 4571 // InternalSolverLanguageParser.g:1857:4: ( (lv_right_3_0= ruleExponentialExpression ) )
3382 // InternalSolverLanguageParser.g:1347:5: (lv_right_3_0= ruleExponentialExpression ) 4572 // InternalSolverLanguageParser.g:1858:5: (lv_right_3_0= ruleExponentialExpression )
3383 { 4573 {
3384 // InternalSolverLanguageParser.g:1347:5: (lv_right_3_0= ruleExponentialExpression ) 4574 // InternalSolverLanguageParser.g:1858:5: (lv_right_3_0= ruleExponentialExpression )
3385 // InternalSolverLanguageParser.g:1348:6: lv_right_3_0= ruleExponentialExpression 4575 // InternalSolverLanguageParser.g:1859:6: lv_right_3_0= ruleExponentialExpression
3386 { 4576 {
3387 4577
3388 newCompositeNode(grammarAccess.getMultiplicativeExpressionAccess().getRightExponentialExpressionParserRuleCall_1_2_0()); 4578 newCompositeNode(grammarAccess.getMultiplicativeExpressionAccess().getRightExponentialExpressionParserRuleCall_1_2_0());
3389 4579
3390 pushFollow(FOLLOW_23); 4580 pushFollow(FOLLOW_30);
3391 lv_right_3_0=ruleExponentialExpression(); 4581 lv_right_3_0=ruleExponentialExpression();
3392 4582
3393 state._fsp--; 4583 state._fsp--;
@@ -3414,7 +4604,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3414 break; 4604 break;
3415 4605
3416 default : 4606 default :
3417 break loop16; 4607 break loop19;
3418 } 4608 }
3419 } while (true); 4609 } while (true);
3420 4610
@@ -3441,7 +4631,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3441 4631
3442 4632
3443 // $ANTLR start "entryRuleExponentialExpression" 4633 // $ANTLR start "entryRuleExponentialExpression"
3444 // InternalSolverLanguageParser.g:1370:1: entryRuleExponentialExpression returns [EObject current=null] : iv_ruleExponentialExpression= ruleExponentialExpression EOF ; 4634 // InternalSolverLanguageParser.g:1881:1: entryRuleExponentialExpression returns [EObject current=null] : iv_ruleExponentialExpression= ruleExponentialExpression EOF ;
3445 public final EObject entryRuleExponentialExpression() throws RecognitionException { 4635 public final EObject entryRuleExponentialExpression() throws RecognitionException {
3446 EObject current = null; 4636 EObject current = null;
3447 4637
@@ -3449,8 +4639,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3449 4639
3450 4640
3451 try { 4641 try {
3452 // InternalSolverLanguageParser.g:1370:62: (iv_ruleExponentialExpression= ruleExponentialExpression EOF ) 4642 // InternalSolverLanguageParser.g:1881:62: (iv_ruleExponentialExpression= ruleExponentialExpression EOF )
3453 // InternalSolverLanguageParser.g:1371:2: iv_ruleExponentialExpression= ruleExponentialExpression EOF 4643 // InternalSolverLanguageParser.g:1882:2: iv_ruleExponentialExpression= ruleExponentialExpression EOF
3454 { 4644 {
3455 newCompositeNode(grammarAccess.getExponentialExpressionRule()); 4645 newCompositeNode(grammarAccess.getExponentialExpressionRule());
3456 pushFollow(FOLLOW_1); 4646 pushFollow(FOLLOW_1);
@@ -3477,11 +4667,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3477 4667
3478 4668
3479 // $ANTLR start "ruleExponentialExpression" 4669 // $ANTLR start "ruleExponentialExpression"
3480 // InternalSolverLanguageParser.g:1377:1: ruleExponentialExpression returns [EObject current=null] : (this_UnaryExpression_0= ruleUnaryExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )? ) ; 4670 // InternalSolverLanguageParser.g:1888:1: ruleExponentialExpression returns [EObject current=null] : (this_CastExpression_0= ruleCastExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) )? ) ;
3481 public final EObject ruleExponentialExpression() throws RecognitionException { 4671 public final EObject ruleExponentialExpression() throws RecognitionException {
3482 EObject current = null; 4672 EObject current = null;
3483 4673
3484 EObject this_UnaryExpression_0 = null; 4674 EObject this_CastExpression_0 = null;
3485 4675
3486 Enumerator lv_op_2_0 = null; 4676 Enumerator lv_op_2_0 = null;
3487 4677
@@ -3492,37 +4682,37 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3492 enterRule(); 4682 enterRule();
3493 4683
3494 try { 4684 try {
3495 // InternalSolverLanguageParser.g:1383:2: ( (this_UnaryExpression_0= ruleUnaryExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )? ) ) 4685 // InternalSolverLanguageParser.g:1894:2: ( (this_CastExpression_0= ruleCastExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) )? ) )
3496 // InternalSolverLanguageParser.g:1384:2: (this_UnaryExpression_0= ruleUnaryExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )? ) 4686 // InternalSolverLanguageParser.g:1895:2: (this_CastExpression_0= ruleCastExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) )? )
3497 { 4687 {
3498 // InternalSolverLanguageParser.g:1384:2: (this_UnaryExpression_0= ruleUnaryExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )? ) 4688 // InternalSolverLanguageParser.g:1895:2: (this_CastExpression_0= ruleCastExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) )? )
3499 // InternalSolverLanguageParser.g:1385:3: this_UnaryExpression_0= ruleUnaryExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )? 4689 // InternalSolverLanguageParser.g:1896:3: this_CastExpression_0= ruleCastExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) )?
3500 { 4690 {
3501 4691
3502 newCompositeNode(grammarAccess.getExponentialExpressionAccess().getUnaryExpressionParserRuleCall_0()); 4692 newCompositeNode(grammarAccess.getExponentialExpressionAccess().getCastExpressionParserRuleCall_0());
3503 4693
3504 pushFollow(FOLLOW_24); 4694 pushFollow(FOLLOW_31);
3505 this_UnaryExpression_0=ruleUnaryExpression(); 4695 this_CastExpression_0=ruleCastExpression();
3506 4696
3507 state._fsp--; 4697 state._fsp--;
3508 4698
3509 4699
3510 current = this_UnaryExpression_0; 4700 current = this_CastExpression_0;
3511 afterParserOrEnumRuleCall(); 4701 afterParserOrEnumRuleCall();
3512 4702
3513 // InternalSolverLanguageParser.g:1393:3: ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )? 4703 // InternalSolverLanguageParser.g:1904:3: ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) )?
3514 int alt17=2; 4704 int alt20=2;
3515 int LA17_0 = input.LA(1); 4705 int LA20_0 = input.LA(1);
3516 4706
3517 if ( (LA17_0==CircumflexAccent) ) { 4707 if ( (LA20_0==CircumflexAccent) ) {
3518 alt17=1; 4708 alt20=1;
3519 } 4709 }
3520 switch (alt17) { 4710 switch (alt20) {
3521 case 1 : 4711 case 1 :
3522 // InternalSolverLanguageParser.g:1394:4: () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) 4712 // InternalSolverLanguageParser.g:1905:4: () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) )
3523 { 4713 {
3524 // InternalSolverLanguageParser.g:1394:4: () 4714 // InternalSolverLanguageParser.g:1905:4: ()
3525 // InternalSolverLanguageParser.g:1395:5: 4715 // InternalSolverLanguageParser.g:1906:5:
3526 { 4716 {
3527 4717
3528 current = forceCreateModelElementAndSet( 4718 current = forceCreateModelElementAndSet(
@@ -3532,11 +4722,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3532 4722
3533 } 4723 }
3534 4724
3535 // InternalSolverLanguageParser.g:1401:4: ( (lv_op_2_0= ruleExponentialOp ) ) 4725 // InternalSolverLanguageParser.g:1912:4: ( (lv_op_2_0= ruleExponentialOp ) )
3536 // InternalSolverLanguageParser.g:1402:5: (lv_op_2_0= ruleExponentialOp ) 4726 // InternalSolverLanguageParser.g:1913:5: (lv_op_2_0= ruleExponentialOp )
3537 { 4727 {
3538 // InternalSolverLanguageParser.g:1402:5: (lv_op_2_0= ruleExponentialOp ) 4728 // InternalSolverLanguageParser.g:1913:5: (lv_op_2_0= ruleExponentialOp )
3539 // InternalSolverLanguageParser.g:1403:6: lv_op_2_0= ruleExponentialOp 4729 // InternalSolverLanguageParser.g:1914:6: lv_op_2_0= ruleExponentialOp
3540 { 4730 {
3541 4731
3542 newCompositeNode(grammarAccess.getExponentialExpressionAccess().getOpExponentialOpEnumRuleCall_1_1_0()); 4732 newCompositeNode(grammarAccess.getExponentialExpressionAccess().getOpExponentialOpEnumRuleCall_1_1_0());
@@ -3563,17 +4753,17 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3563 4753
3564 } 4754 }
3565 4755
3566 // InternalSolverLanguageParser.g:1420:4: ( (lv_right_3_0= ruleExponentialExpression ) ) 4756 // InternalSolverLanguageParser.g:1931:4: ( (lv_right_3_0= ruleCastExpression ) )
3567 // InternalSolverLanguageParser.g:1421:5: (lv_right_3_0= ruleExponentialExpression ) 4757 // InternalSolverLanguageParser.g:1932:5: (lv_right_3_0= ruleCastExpression )
3568 { 4758 {
3569 // InternalSolverLanguageParser.g:1421:5: (lv_right_3_0= ruleExponentialExpression ) 4759 // InternalSolverLanguageParser.g:1932:5: (lv_right_3_0= ruleCastExpression )
3570 // InternalSolverLanguageParser.g:1422:6: lv_right_3_0= ruleExponentialExpression 4760 // InternalSolverLanguageParser.g:1933:6: lv_right_3_0= ruleCastExpression
3571 { 4761 {
3572 4762
3573 newCompositeNode(grammarAccess.getExponentialExpressionAccess().getRightExponentialExpressionParserRuleCall_1_2_0()); 4763 newCompositeNode(grammarAccess.getExponentialExpressionAccess().getRightCastExpressionParserRuleCall_1_2_0());
3574 4764
3575 pushFollow(FOLLOW_2); 4765 pushFollow(FOLLOW_2);
3576 lv_right_3_0=ruleExponentialExpression(); 4766 lv_right_3_0=ruleCastExpression();
3577 4767
3578 state._fsp--; 4768 state._fsp--;
3579 4769
@@ -3585,7 +4775,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3585 current, 4775 current,
3586 "right", 4776 "right",
3587 lv_right_3_0, 4777 lv_right_3_0,
3588 "org.eclipse.viatra.solver.language.SolverLanguage.ExponentialExpression"); 4778 "org.eclipse.viatra.solver.language.SolverLanguage.CastExpression");
3589 afterParserOrEnumRuleCall(); 4779 afterParserOrEnumRuleCall();
3590 4780
3591 4781
@@ -3622,8 +4812,157 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3622 // $ANTLR end "ruleExponentialExpression" 4812 // $ANTLR end "ruleExponentialExpression"
3623 4813
3624 4814
4815 // $ANTLR start "entryRuleCastExpression"
4816 // InternalSolverLanguageParser.g:1955:1: entryRuleCastExpression returns [EObject current=null] : iv_ruleCastExpression= ruleCastExpression EOF ;
4817 public final EObject entryRuleCastExpression() throws RecognitionException {
4818 EObject current = null;
4819
4820 EObject iv_ruleCastExpression = null;
4821
4822
4823 try {
4824 // InternalSolverLanguageParser.g:1955:55: (iv_ruleCastExpression= ruleCastExpression EOF )
4825 // InternalSolverLanguageParser.g:1956:2: iv_ruleCastExpression= ruleCastExpression EOF
4826 {
4827 newCompositeNode(grammarAccess.getCastExpressionRule());
4828 pushFollow(FOLLOW_1);
4829 iv_ruleCastExpression=ruleCastExpression();
4830
4831 state._fsp--;
4832
4833 current =iv_ruleCastExpression;
4834 match(input,EOF,FOLLOW_2);
4835
4836 }
4837
4838 }
4839
4840 catch (RecognitionException re) {
4841 recover(input,re);
4842 appendSkippedTokens();
4843 }
4844 finally {
4845 }
4846 return current;
4847 }
4848 // $ANTLR end "entryRuleCastExpression"
4849
4850
4851 // $ANTLR start "ruleCastExpression"
4852 // InternalSolverLanguageParser.g:1962:1: ruleCastExpression returns [EObject current=null] : (this_UnaryExpression_0= ruleUnaryExpression ( () otherlv_2= As ( ( ruleQualifiedName ) ) )? ) ;
4853 public final EObject ruleCastExpression() throws RecognitionException {
4854 EObject current = null;
4855
4856 Token otherlv_2=null;
4857 EObject this_UnaryExpression_0 = null;
4858
4859
4860
4861 enterRule();
4862
4863 try {
4864 // InternalSolverLanguageParser.g:1968:2: ( (this_UnaryExpression_0= ruleUnaryExpression ( () otherlv_2= As ( ( ruleQualifiedName ) ) )? ) )
4865 // InternalSolverLanguageParser.g:1969:2: (this_UnaryExpression_0= ruleUnaryExpression ( () otherlv_2= As ( ( ruleQualifiedName ) ) )? )
4866 {
4867 // InternalSolverLanguageParser.g:1969:2: (this_UnaryExpression_0= ruleUnaryExpression ( () otherlv_2= As ( ( ruleQualifiedName ) ) )? )
4868 // InternalSolverLanguageParser.g:1970:3: this_UnaryExpression_0= ruleUnaryExpression ( () otherlv_2= As ( ( ruleQualifiedName ) ) )?
4869 {
4870
4871 newCompositeNode(grammarAccess.getCastExpressionAccess().getUnaryExpressionParserRuleCall_0());
4872
4873 pushFollow(FOLLOW_32);
4874 this_UnaryExpression_0=ruleUnaryExpression();
4875
4876 state._fsp--;
4877
4878
4879 current = this_UnaryExpression_0;
4880 afterParserOrEnumRuleCall();
4881
4882 // InternalSolverLanguageParser.g:1978:3: ( () otherlv_2= As ( ( ruleQualifiedName ) ) )?
4883 int alt21=2;
4884 int LA21_0 = input.LA(1);
4885
4886 if ( (LA21_0==As) ) {
4887 alt21=1;
4888 }
4889 switch (alt21) {
4890 case 1 :
4891 // InternalSolverLanguageParser.g:1979:4: () otherlv_2= As ( ( ruleQualifiedName ) )
4892 {
4893 // InternalSolverLanguageParser.g:1979:4: ()
4894 // InternalSolverLanguageParser.g:1980:5:
4895 {
4896
4897 current = forceCreateModelElementAndSet(
4898 grammarAccess.getCastExpressionAccess().getCastExpressionBodyAction_1_0(),
4899 current);
4900
4901
4902 }
4903
4904 otherlv_2=(Token)match(input,As,FOLLOW_8);
4905
4906 newLeafNode(otherlv_2, grammarAccess.getCastExpressionAccess().getAsKeyword_1_1());
4907
4908 // InternalSolverLanguageParser.g:1990:4: ( ( ruleQualifiedName ) )
4909 // InternalSolverLanguageParser.g:1991:5: ( ruleQualifiedName )
4910 {
4911 // InternalSolverLanguageParser.g:1991:5: ( ruleQualifiedName )
4912 // InternalSolverLanguageParser.g:1992:6: ruleQualifiedName
4913 {
4914
4915 if (current==null) {
4916 current = createModelElement(grammarAccess.getCastExpressionRule());
4917 }
4918
4919
4920 newCompositeNode(grammarAccess.getCastExpressionAccess().getTypeNamedElementCrossReference_1_2_0());
4921
4922 pushFollow(FOLLOW_2);
4923 ruleQualifiedName();
4924
4925 state._fsp--;
4926
4927
4928 afterParserOrEnumRuleCall();
4929
4930
4931 }
4932
4933
4934 }
4935
4936
4937 }
4938 break;
4939
4940 }
4941
4942
4943 }
4944
4945
4946 }
4947
4948
4949 leaveRule();
4950
4951 }
4952
4953 catch (RecognitionException re) {
4954 recover(input,re);
4955 appendSkippedTokens();
4956 }
4957 finally {
4958 }
4959 return current;
4960 }
4961 // $ANTLR end "ruleCastExpression"
4962
4963
3625 // $ANTLR start "entryRuleUnaryExpression" 4964 // $ANTLR start "entryRuleUnaryExpression"
3626 // InternalSolverLanguageParser.g:1444:1: entryRuleUnaryExpression returns [EObject current=null] : iv_ruleUnaryExpression= ruleUnaryExpression EOF ; 4965 // InternalSolverLanguageParser.g:2011:1: entryRuleUnaryExpression returns [EObject current=null] : iv_ruleUnaryExpression= ruleUnaryExpression EOF ;
3627 public final EObject entryRuleUnaryExpression() throws RecognitionException { 4966 public final EObject entryRuleUnaryExpression() throws RecognitionException {
3628 EObject current = null; 4967 EObject current = null;
3629 4968
@@ -3631,8 +4970,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3631 4970
3632 4971
3633 try { 4972 try {
3634 // InternalSolverLanguageParser.g:1444:56: (iv_ruleUnaryExpression= ruleUnaryExpression EOF ) 4973 // InternalSolverLanguageParser.g:2011:56: (iv_ruleUnaryExpression= ruleUnaryExpression EOF )
3635 // InternalSolverLanguageParser.g:1445:2: iv_ruleUnaryExpression= ruleUnaryExpression EOF 4974 // InternalSolverLanguageParser.g:2012:2: iv_ruleUnaryExpression= ruleUnaryExpression EOF
3636 { 4975 {
3637 newCompositeNode(grammarAccess.getUnaryExpressionRule()); 4976 newCompositeNode(grammarAccess.getUnaryExpressionRule());
3638 pushFollow(FOLLOW_1); 4977 pushFollow(FOLLOW_1);
@@ -3659,7 +4998,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3659 4998
3660 4999
3661 // $ANTLR start "ruleUnaryExpression" 5000 // $ANTLR start "ruleUnaryExpression"
3662 // InternalSolverLanguageParser.g:1451:1: ruleUnaryExpression returns [EObject current=null] : (this_AggregationExpression_0= ruleAggregationExpression | ( () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) ) ) ; 5001 // InternalSolverLanguageParser.g:2018:1: ruleUnaryExpression returns [EObject current=null] : (this_AggregationExpression_0= ruleAggregationExpression | ( () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) ) ) ;
3663 public final EObject ruleUnaryExpression() throws RecognitionException { 5002 public final EObject ruleUnaryExpression() throws RecognitionException {
3664 EObject current = null; 5003 EObject current = null;
3665 5004
@@ -3674,28 +5013,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3674 enterRule(); 5013 enterRule();
3675 5014
3676 try { 5015 try {
3677 // InternalSolverLanguageParser.g:1457:2: ( (this_AggregationExpression_0= ruleAggregationExpression | ( () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) ) ) ) 5016 // InternalSolverLanguageParser.g:2024:2: ( (this_AggregationExpression_0= ruleAggregationExpression | ( () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) ) ) )
3678 // InternalSolverLanguageParser.g:1458:2: (this_AggregationExpression_0= ruleAggregationExpression | ( () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) ) ) 5017 // InternalSolverLanguageParser.g:2025:2: (this_AggregationExpression_0= ruleAggregationExpression | ( () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) ) )
3679 { 5018 {
3680 // InternalSolverLanguageParser.g:1458:2: (this_AggregationExpression_0= ruleAggregationExpression | ( () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) ) ) 5019 // InternalSolverLanguageParser.g:2025:2: (this_AggregationExpression_0= ruleAggregationExpression | ( () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) ) )
3681 int alt18=2; 5020 int alt22=2;
3682 int LA18_0 = input.LA(1); 5021 int LA22_0 = input.LA(1);
3683 5022
3684 if ( (LA18_0==Unknown||(LA18_0>=Count && LA18_0<=False)||(LA18_0>=Only && LA18_0<=Prod)||LA18_0==True||(LA18_0>=Avg && LA18_0<=Inf)||LA18_0==Max||(LA18_0>=Min && LA18_0<=Sum)||LA18_0==LeftParenthesis||LA18_0==LeftSquareBracket||(LA18_0>=RULE_STRING && LA18_0<=RULE_QUOTED_ID)||(LA18_0>=RULE_ID && LA18_0<=RULE_INT)) ) { 5023 if ( ((LA22_0>=Unknown && LA22_0<=Exists)||LA22_0==Forall||(LA22_0>=Count && LA22_0<=False)||LA22_0==True||LA22_0==Inf||LA22_0==LeftParenthesis||LA22_0==LeftSquareBracket||(LA22_0>=RULE_STRING && LA22_0<=RULE_QUOTED_ID)||(LA22_0>=RULE_ID && LA22_0<=RULE_INT)) ) {
3685 alt18=1; 5024 alt22=1;
3686 } 5025 }
3687 else if ( (LA18_0==Current||LA18_0==Must||LA18_0==May||LA18_0==ExclamationMark||LA18_0==PlusSign||LA18_0==HyphenMinus) ) { 5026 else if ( (LA22_0==Current||LA22_0==Must||LA22_0==May||LA22_0==ExclamationMark||LA22_0==PlusSign||LA22_0==HyphenMinus) ) {
3688 alt18=2; 5027 alt22=2;
3689 } 5028 }
3690 else { 5029 else {
3691 NoViableAltException nvae = 5030 NoViableAltException nvae =
3692 new NoViableAltException("", 18, 0, input); 5031 new NoViableAltException("", 22, 0, input);
3693 5032
3694 throw nvae; 5033 throw nvae;
3695 } 5034 }
3696 switch (alt18) { 5035 switch (alt22) {
3697 case 1 : 5036 case 1 :
3698 // InternalSolverLanguageParser.g:1459:3: this_AggregationExpression_0= ruleAggregationExpression 5037 // InternalSolverLanguageParser.g:2026:3: this_AggregationExpression_0= ruleAggregationExpression
3699 { 5038 {
3700 5039
3701 newCompositeNode(grammarAccess.getUnaryExpressionAccess().getAggregationExpressionParserRuleCall_0()); 5040 newCompositeNode(grammarAccess.getUnaryExpressionAccess().getAggregationExpressionParserRuleCall_0());
@@ -3713,13 +5052,13 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3713 } 5052 }
3714 break; 5053 break;
3715 case 2 : 5054 case 2 :
3716 // InternalSolverLanguageParser.g:1468:3: ( () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) ) 5055 // InternalSolverLanguageParser.g:2035:3: ( () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) )
3717 { 5056 {
3718 // InternalSolverLanguageParser.g:1468:3: ( () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) ) 5057 // InternalSolverLanguageParser.g:2035:3: ( () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) )
3719 // InternalSolverLanguageParser.g:1469:4: () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) 5058 // InternalSolverLanguageParser.g:2036:4: () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) )
3720 { 5059 {
3721 // InternalSolverLanguageParser.g:1469:4: () 5060 // InternalSolverLanguageParser.g:2036:4: ()
3722 // InternalSolverLanguageParser.g:1470:5: 5061 // InternalSolverLanguageParser.g:2037:5:
3723 { 5062 {
3724 5063
3725 current = forceCreateModelElement( 5064 current = forceCreateModelElement(
@@ -3729,16 +5068,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3729 5068
3730 } 5069 }
3731 5070
3732 // InternalSolverLanguageParser.g:1476:4: ( (lv_op_2_0= ruleUnaryOp ) ) 5071 // InternalSolverLanguageParser.g:2043:4: ( (lv_op_2_0= ruleUnaryOp ) )
3733 // InternalSolverLanguageParser.g:1477:5: (lv_op_2_0= ruleUnaryOp ) 5072 // InternalSolverLanguageParser.g:2044:5: (lv_op_2_0= ruleUnaryOp )
3734 { 5073 {
3735 // InternalSolverLanguageParser.g:1477:5: (lv_op_2_0= ruleUnaryOp ) 5074 // InternalSolverLanguageParser.g:2044:5: (lv_op_2_0= ruleUnaryOp )
3736 // InternalSolverLanguageParser.g:1478:6: lv_op_2_0= ruleUnaryOp 5075 // InternalSolverLanguageParser.g:2045:6: lv_op_2_0= ruleUnaryOp
3737 { 5076 {
3738 5077
3739 newCompositeNode(grammarAccess.getUnaryExpressionAccess().getOpUnaryOpEnumRuleCall_1_1_0()); 5078 newCompositeNode(grammarAccess.getUnaryExpressionAccess().getOpUnaryOpEnumRuleCall_1_1_0());
3740 5079
3741 pushFollow(FOLLOW_25); 5080 pushFollow(FOLLOW_33);
3742 lv_op_2_0=ruleUnaryOp(); 5081 lv_op_2_0=ruleUnaryOp();
3743 5082
3744 state._fsp--; 5083 state._fsp--;
@@ -3760,11 +5099,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3760 5099
3761 } 5100 }
3762 5101
3763 // InternalSolverLanguageParser.g:1495:4: ( (lv_body_3_0= ruleAggregationExpression ) ) 5102 // InternalSolverLanguageParser.g:2062:4: ( (lv_body_3_0= ruleAggregationExpression ) )
3764 // InternalSolverLanguageParser.g:1496:5: (lv_body_3_0= ruleAggregationExpression ) 5103 // InternalSolverLanguageParser.g:2063:5: (lv_body_3_0= ruleAggregationExpression )
3765 { 5104 {
3766 // InternalSolverLanguageParser.g:1496:5: (lv_body_3_0= ruleAggregationExpression ) 5105 // InternalSolverLanguageParser.g:2063:5: (lv_body_3_0= ruleAggregationExpression )
3767 // InternalSolverLanguageParser.g:1497:6: lv_body_3_0= ruleAggregationExpression 5106 // InternalSolverLanguageParser.g:2064:6: lv_body_3_0= ruleAggregationExpression
3768 { 5107 {
3769 5108
3770 newCompositeNode(grammarAccess.getUnaryExpressionAccess().getBodyAggregationExpressionParserRuleCall_1_2_0()); 5109 newCompositeNode(grammarAccess.getUnaryExpressionAccess().getBodyAggregationExpressionParserRuleCall_1_2_0());
@@ -3820,7 +5159,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3820 5159
3821 5160
3822 // $ANTLR start "entryRuleAggregationExpression" 5161 // $ANTLR start "entryRuleAggregationExpression"
3823 // InternalSolverLanguageParser.g:1519:1: entryRuleAggregationExpression returns [EObject current=null] : iv_ruleAggregationExpression= ruleAggregationExpression EOF ; 5162 // InternalSolverLanguageParser.g:2086:1: entryRuleAggregationExpression returns [EObject current=null] : iv_ruleAggregationExpression= ruleAggregationExpression EOF ;
3824 public final EObject entryRuleAggregationExpression() throws RecognitionException { 5163 public final EObject entryRuleAggregationExpression() throws RecognitionException {
3825 EObject current = null; 5164 EObject current = null;
3826 5165
@@ -3828,8 +5167,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3828 5167
3829 5168
3830 try { 5169 try {
3831 // InternalSolverLanguageParser.g:1519:62: (iv_ruleAggregationExpression= ruleAggregationExpression EOF ) 5170 // InternalSolverLanguageParser.g:2086:62: (iv_ruleAggregationExpression= ruleAggregationExpression EOF )
3832 // InternalSolverLanguageParser.g:1520:2: iv_ruleAggregationExpression= ruleAggregationExpression EOF 5171 // InternalSolverLanguageParser.g:2087:2: iv_ruleAggregationExpression= ruleAggregationExpression EOF
3833 { 5172 {
3834 newCompositeNode(grammarAccess.getAggregationExpressionRule()); 5173 newCompositeNode(grammarAccess.getAggregationExpressionRule());
3835 pushFollow(FOLLOW_1); 5174 pushFollow(FOLLOW_1);
@@ -3856,13 +5195,13 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3856 5195
3857 5196
3858 // $ANTLR start "ruleAggregationExpression" 5197 // $ANTLR start "ruleAggregationExpression"
3859 // InternalSolverLanguageParser.g:1526:1: ruleAggregationExpression returns [EObject current=null] : (this_AtomicExpression_0= ruleAtomicExpression | this_Count_1= ruleCount | this_Aggregation_2= ruleAggregation ) ; 5198 // InternalSolverLanguageParser.g:2093:1: ruleAggregationExpression returns [EObject current=null] : (this_AtomicExpression_0= ruleAtomicExpression | this_QuantifiedExpression_1= ruleQuantifiedExpression | this_Aggregation_2= ruleAggregation ) ;
3860 public final EObject ruleAggregationExpression() throws RecognitionException { 5199 public final EObject ruleAggregationExpression() throws RecognitionException {
3861 EObject current = null; 5200 EObject current = null;
3862 5201
3863 EObject this_AtomicExpression_0 = null; 5202 EObject this_AtomicExpression_0 = null;
3864 5203
3865 EObject this_Count_1 = null; 5204 EObject this_QuantifiedExpression_1 = null;
3866 5205
3867 EObject this_Aggregation_2 = null; 5206 EObject this_Aggregation_2 = null;
3868 5207
@@ -3871,53 +5210,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3871 enterRule(); 5210 enterRule();
3872 5211
3873 try { 5212 try {
3874 // InternalSolverLanguageParser.g:1532:2: ( (this_AtomicExpression_0= ruleAtomicExpression | this_Count_1= ruleCount | this_Aggregation_2= ruleAggregation ) ) 5213 // InternalSolverLanguageParser.g:2099:2: ( (this_AtomicExpression_0= ruleAtomicExpression | this_QuantifiedExpression_1= ruleQuantifiedExpression | this_Aggregation_2= ruleAggregation ) )
3875 // InternalSolverLanguageParser.g:1533:2: (this_AtomicExpression_0= ruleAtomicExpression | this_Count_1= ruleCount | this_Aggregation_2= ruleAggregation ) 5214 // InternalSolverLanguageParser.g:2100:2: (this_AtomicExpression_0= ruleAtomicExpression | this_QuantifiedExpression_1= ruleQuantifiedExpression | this_Aggregation_2= ruleAggregation )
3876 { 5215 {
3877 // InternalSolverLanguageParser.g:1533:2: (this_AtomicExpression_0= ruleAtomicExpression | this_Count_1= ruleCount | this_Aggregation_2= ruleAggregation ) 5216 // InternalSolverLanguageParser.g:2100:2: (this_AtomicExpression_0= ruleAtomicExpression | this_QuantifiedExpression_1= ruleQuantifiedExpression | this_Aggregation_2= ruleAggregation )
3878 int alt19=3; 5217 int alt23=3;
3879 switch ( input.LA(1) ) { 5218 alt23 = dfa23.predict(input);
3880 case Unknown: 5219 switch (alt23) {
3881 case Empty:
3882 case Error:
3883 case False:
3884 case True:
3885 case Inf:
3886 case LeftParenthesis:
3887 case LeftSquareBracket:
3888 case RULE_STRING:
3889 case RULE_QUOTED_ID:
3890 case RULE_ID:
3891 case RULE_INT:
3892 {
3893 alt19=1;
3894 }
3895 break;
3896 case Count:
3897 {
3898 alt19=2;
3899 }
3900 break;
3901 case Only:
3902 case Prod:
3903 case Avg:
3904 case Max:
3905 case Min:
3906 case Sum:
3907 {
3908 alt19=3;
3909 }
3910 break;
3911 default:
3912 NoViableAltException nvae =
3913 new NoViableAltException("", 19, 0, input);
3914
3915 throw nvae;
3916 }
3917
3918 switch (alt19) {
3919 case 1 : 5220 case 1 :
3920 // InternalSolverLanguageParser.g:1534:3: this_AtomicExpression_0= ruleAtomicExpression 5221 // InternalSolverLanguageParser.g:2101:3: this_AtomicExpression_0= ruleAtomicExpression
3921 { 5222 {
3922 5223
3923 newCompositeNode(grammarAccess.getAggregationExpressionAccess().getAtomicExpressionParserRuleCall_0()); 5224 newCompositeNode(grammarAccess.getAggregationExpressionAccess().getAtomicExpressionParserRuleCall_0());
@@ -3935,25 +5236,25 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3935 } 5236 }
3936 break; 5237 break;
3937 case 2 : 5238 case 2 :
3938 // InternalSolverLanguageParser.g:1543:3: this_Count_1= ruleCount 5239 // InternalSolverLanguageParser.g:2110:3: this_QuantifiedExpression_1= ruleQuantifiedExpression
3939 { 5240 {
3940 5241
3941 newCompositeNode(grammarAccess.getAggregationExpressionAccess().getCountParserRuleCall_1()); 5242 newCompositeNode(grammarAccess.getAggregationExpressionAccess().getQuantifiedExpressionParserRuleCall_1());
3942 5243
3943 pushFollow(FOLLOW_2); 5244 pushFollow(FOLLOW_2);
3944 this_Count_1=ruleCount(); 5245 this_QuantifiedExpression_1=ruleQuantifiedExpression();
3945 5246
3946 state._fsp--; 5247 state._fsp--;
3947 5248
3948 5249
3949 current = this_Count_1; 5250 current = this_QuantifiedExpression_1;
3950 afterParserOrEnumRuleCall(); 5251 afterParserOrEnumRuleCall();
3951 5252
3952 5253
3953 } 5254 }
3954 break; 5255 break;
3955 case 3 : 5256 case 3 :
3956 // InternalSolverLanguageParser.g:1552:3: this_Aggregation_2= ruleAggregation 5257 // InternalSolverLanguageParser.g:2119:3: this_Aggregation_2= ruleAggregation
3957 { 5258 {
3958 5259
3959 newCompositeNode(grammarAccess.getAggregationExpressionAccess().getAggregationParserRuleCall_2()); 5260 newCompositeNode(grammarAccess.getAggregationExpressionAccess().getAggregationParserRuleCall_2());
@@ -3992,25 +5293,25 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
3992 // $ANTLR end "ruleAggregationExpression" 5293 // $ANTLR end "ruleAggregationExpression"
3993 5294
3994 5295
3995 // $ANTLR start "entryRuleCount" 5296 // $ANTLR start "entryRuleLocalVariables"
3996 // InternalSolverLanguageParser.g:1564:1: entryRuleCount returns [EObject current=null] : iv_ruleCount= ruleCount EOF ; 5297 // InternalSolverLanguageParser.g:2131:1: entryRuleLocalVariables returns [EObject current=null] : iv_ruleLocalVariables= ruleLocalVariables EOF ;
3997 public final EObject entryRuleCount() throws RecognitionException { 5298 public final EObject entryRuleLocalVariables() throws RecognitionException {
3998 EObject current = null; 5299 EObject current = null;
3999 5300
4000 EObject iv_ruleCount = null; 5301 EObject iv_ruleLocalVariables = null;
4001 5302
4002 5303
4003 try { 5304 try {
4004 // InternalSolverLanguageParser.g:1564:46: (iv_ruleCount= ruleCount EOF ) 5305 // InternalSolverLanguageParser.g:2131:55: (iv_ruleLocalVariables= ruleLocalVariables EOF )
4005 // InternalSolverLanguageParser.g:1565:2: iv_ruleCount= ruleCount EOF 5306 // InternalSolverLanguageParser.g:2132:2: iv_ruleLocalVariables= ruleLocalVariables EOF
4006 { 5307 {
4007 newCompositeNode(grammarAccess.getCountRule()); 5308 newCompositeNode(grammarAccess.getLocalVariablesRule());
4008 pushFollow(FOLLOW_1); 5309 pushFollow(FOLLOW_1);
4009 iv_ruleCount=ruleCount(); 5310 iv_ruleLocalVariables=ruleLocalVariables();
4010 5311
4011 state._fsp--; 5312 state._fsp--;
4012 5313
4013 current =iv_ruleCount; 5314 current =iv_ruleLocalVariables;
4014 match(input,EOF,FOLLOW_2); 5315 match(input,EOF,FOLLOW_2);
4015 5316
4016 } 5317 }
@@ -4025,60 +5326,339 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4025 } 5326 }
4026 return current; 5327 return current;
4027 } 5328 }
4028 // $ANTLR end "entryRuleCount" 5329 // $ANTLR end "entryRuleLocalVariables"
4029 5330
4030 5331
4031 // $ANTLR start "ruleCount" 5332 // $ANTLR start "ruleLocalVariables"
4032 // InternalSolverLanguageParser.g:1571:1: ruleCount returns [EObject current=null] : (otherlv_0= Count otherlv_1= LeftCurlyBracket ( (lv_body_2_0= ruleExpression ) ) otherlv_3= RightCurlyBracket ) ; 5333 // InternalSolverLanguageParser.g:2138:1: ruleLocalVariables returns [EObject current=null] : ( () otherlv_1= LeftSquareBracket ( ( (lv_variables_2_0= ruleVariable ) ) (otherlv_3= Comma ( (lv_variables_4_0= ruleVariable ) ) )* )? otherlv_5= RightSquareBracket ) ;
4033 public final EObject ruleCount() throws RecognitionException { 5334 public final EObject ruleLocalVariables() throws RecognitionException {
4034 EObject current = null; 5335 EObject current = null;
4035 5336
4036 Token otherlv_0=null;
4037 Token otherlv_1=null; 5337 Token otherlv_1=null;
4038 Token otherlv_3=null; 5338 Token otherlv_3=null;
4039 EObject lv_body_2_0 = null; 5339 Token otherlv_5=null;
5340 EObject lv_variables_2_0 = null;
5341
5342 EObject lv_variables_4_0 = null;
4040 5343
4041 5344
4042 5345
4043 enterRule(); 5346 enterRule();
4044 5347
4045 try { 5348 try {
4046 // InternalSolverLanguageParser.g:1577:2: ( (otherlv_0= Count otherlv_1= LeftCurlyBracket ( (lv_body_2_0= ruleExpression ) ) otherlv_3= RightCurlyBracket ) ) 5349 // InternalSolverLanguageParser.g:2144:2: ( ( () otherlv_1= LeftSquareBracket ( ( (lv_variables_2_0= ruleVariable ) ) (otherlv_3= Comma ( (lv_variables_4_0= ruleVariable ) ) )* )? otherlv_5= RightSquareBracket ) )
4047 // InternalSolverLanguageParser.g:1578:2: (otherlv_0= Count otherlv_1= LeftCurlyBracket ( (lv_body_2_0= ruleExpression ) ) otherlv_3= RightCurlyBracket ) 5350 // InternalSolverLanguageParser.g:2145:2: ( () otherlv_1= LeftSquareBracket ( ( (lv_variables_2_0= ruleVariable ) ) (otherlv_3= Comma ( (lv_variables_4_0= ruleVariable ) ) )* )? otherlv_5= RightSquareBracket )
5351 {
5352 // InternalSolverLanguageParser.g:2145:2: ( () otherlv_1= LeftSquareBracket ( ( (lv_variables_2_0= ruleVariable ) ) (otherlv_3= Comma ( (lv_variables_4_0= ruleVariable ) ) )* )? otherlv_5= RightSquareBracket )
5353 // InternalSolverLanguageParser.g:2146:3: () otherlv_1= LeftSquareBracket ( ( (lv_variables_2_0= ruleVariable ) ) (otherlv_3= Comma ( (lv_variables_4_0= ruleVariable ) ) )* )? otherlv_5= RightSquareBracket
4048 { 5354 {
4049 // InternalSolverLanguageParser.g:1578:2: (otherlv_0= Count otherlv_1= LeftCurlyBracket ( (lv_body_2_0= ruleExpression ) ) otherlv_3= RightCurlyBracket ) 5355 // InternalSolverLanguageParser.g:2146:3: ()
4050 // InternalSolverLanguageParser.g:1579:3: otherlv_0= Count otherlv_1= LeftCurlyBracket ( (lv_body_2_0= ruleExpression ) ) otherlv_3= RightCurlyBracket 5356 // InternalSolverLanguageParser.g:2147:4:
4051 { 5357 {
4052 otherlv_0=(Token)match(input,Count,FOLLOW_26);
4053 5358
4054 newLeafNode(otherlv_0, grammarAccess.getCountAccess().getCountKeyword_0()); 5359 current = forceCreateModelElement(
5360 grammarAccess.getLocalVariablesAccess().getLocalVariablesAction_0(),
5361 current);
5362
5363
5364 }
5365
5366 otherlv_1=(Token)match(input,LeftSquareBracket,FOLLOW_34);
5367
5368 newLeafNode(otherlv_1, grammarAccess.getLocalVariablesAccess().getLeftSquareBracketKeyword_1());
5369
5370 // InternalSolverLanguageParser.g:2157:3: ( ( (lv_variables_2_0= ruleVariable ) ) (otherlv_3= Comma ( (lv_variables_4_0= ruleVariable ) ) )* )?
5371 int alt25=2;
5372 int LA25_0 = input.LA(1);
5373
5374 if ( (LA25_0==RULE_QUOTED_ID||LA25_0==RULE_ID) ) {
5375 alt25=1;
5376 }
5377 switch (alt25) {
5378 case 1 :
5379 // InternalSolverLanguageParser.g:2158:4: ( (lv_variables_2_0= ruleVariable ) ) (otherlv_3= Comma ( (lv_variables_4_0= ruleVariable ) ) )*
5380 {
5381 // InternalSolverLanguageParser.g:2158:4: ( (lv_variables_2_0= ruleVariable ) )
5382 // InternalSolverLanguageParser.g:2159:5: (lv_variables_2_0= ruleVariable )
5383 {
5384 // InternalSolverLanguageParser.g:2159:5: (lv_variables_2_0= ruleVariable )
5385 // InternalSolverLanguageParser.g:2160:6: lv_variables_2_0= ruleVariable
5386 {
5387
5388 newCompositeNode(grammarAccess.getLocalVariablesAccess().getVariablesVariableParserRuleCall_2_0_0());
5389
5390 pushFollow(FOLLOW_35);
5391 lv_variables_2_0=ruleVariable();
5392
5393 state._fsp--;
5394
5395
5396 if (current==null) {
5397 current = createModelElementForParent(grammarAccess.getLocalVariablesRule());
5398 }
5399 add(
5400 current,
5401 "variables",
5402 lv_variables_2_0,
5403 "org.eclipse.viatra.solver.language.SolverLanguage.Variable");
5404 afterParserOrEnumRuleCall();
5405
5406
5407 }
5408
5409
5410 }
5411
5412 // InternalSolverLanguageParser.g:2177:4: (otherlv_3= Comma ( (lv_variables_4_0= ruleVariable ) ) )*
5413 loop24:
5414 do {
5415 int alt24=2;
5416 int LA24_0 = input.LA(1);
5417
5418 if ( (LA24_0==Comma) ) {
5419 alt24=1;
5420 }
5421
5422
5423 switch (alt24) {
5424 case 1 :
5425 // InternalSolverLanguageParser.g:2178:5: otherlv_3= Comma ( (lv_variables_4_0= ruleVariable ) )
5426 {
5427 otherlv_3=(Token)match(input,Comma,FOLLOW_8);
5428
5429 newLeafNode(otherlv_3, grammarAccess.getLocalVariablesAccess().getCommaKeyword_2_1_0());
5430
5431 // InternalSolverLanguageParser.g:2182:5: ( (lv_variables_4_0= ruleVariable ) )
5432 // InternalSolverLanguageParser.g:2183:6: (lv_variables_4_0= ruleVariable )
5433 {
5434 // InternalSolverLanguageParser.g:2183:6: (lv_variables_4_0= ruleVariable )
5435 // InternalSolverLanguageParser.g:2184:7: lv_variables_4_0= ruleVariable
5436 {
5437
5438 newCompositeNode(grammarAccess.getLocalVariablesAccess().getVariablesVariableParserRuleCall_2_1_1_0());
5439
5440 pushFollow(FOLLOW_35);
5441 lv_variables_4_0=ruleVariable();
5442
5443 state._fsp--;
5444
5445
5446 if (current==null) {
5447 current = createModelElementForParent(grammarAccess.getLocalVariablesRule());
5448 }
5449 add(
5450 current,
5451 "variables",
5452 lv_variables_4_0,
5453 "org.eclipse.viatra.solver.language.SolverLanguage.Variable");
5454 afterParserOrEnumRuleCall();
5455
5456
5457 }
5458
5459
5460 }
5461
5462
5463 }
5464 break;
5465
5466 default :
5467 break loop24;
5468 }
5469 } while (true);
5470
5471
5472 }
5473 break;
5474
5475 }
5476
5477 otherlv_5=(Token)match(input,RightSquareBracket,FOLLOW_2);
5478
5479 newLeafNode(otherlv_5, grammarAccess.getLocalVariablesAccess().getRightSquareBracketKeyword_3());
4055 5480
4056 otherlv_1=(Token)match(input,LeftCurlyBracket,FOLLOW_6);
4057 5481
4058 newLeafNode(otherlv_1, grammarAccess.getCountAccess().getLeftCurlyBracketKeyword_1()); 5482 }
5483
5484
5485 }
5486
5487
5488 leaveRule();
5489
5490 }
5491
5492 catch (RecognitionException re) {
5493 recover(input,re);
5494 appendSkippedTokens();
5495 }
5496 finally {
5497 }
5498 return current;
5499 }
5500 // $ANTLR end "ruleLocalVariables"
5501
5502
5503 // $ANTLR start "entryRuleQuantifiedExpression"
5504 // InternalSolverLanguageParser.g:2211:1: entryRuleQuantifiedExpression returns [EObject current=null] : iv_ruleQuantifiedExpression= ruleQuantifiedExpression EOF ;
5505 public final EObject entryRuleQuantifiedExpression() throws RecognitionException {
5506 EObject current = null;
5507
5508 EObject iv_ruleQuantifiedExpression = null;
5509
5510
5511 try {
5512 // InternalSolverLanguageParser.g:2211:61: (iv_ruleQuantifiedExpression= ruleQuantifiedExpression EOF )
5513 // InternalSolverLanguageParser.g:2212:2: iv_ruleQuantifiedExpression= ruleQuantifiedExpression EOF
5514 {
5515 newCompositeNode(grammarAccess.getQuantifiedExpressionRule());
5516 pushFollow(FOLLOW_1);
5517 iv_ruleQuantifiedExpression=ruleQuantifiedExpression();
5518
5519 state._fsp--;
5520
5521 current =iv_ruleQuantifiedExpression;
5522 match(input,EOF,FOLLOW_2);
5523
5524 }
5525
5526 }
5527
5528 catch (RecognitionException re) {
5529 recover(input,re);
5530 appendSkippedTokens();
5531 }
5532 finally {
5533 }
5534 return current;
5535 }
5536 // $ANTLR end "entryRuleQuantifiedExpression"
5537
5538
5539 // $ANTLR start "ruleQuantifiedExpression"
5540 // InternalSolverLanguageParser.g:2218:1: ruleQuantifiedExpression returns [EObject current=null] : ( ( (lv_quantifier_0_0= ruleQuantifier ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) otherlv_4= RightCurlyBracket ) ;
5541 public final EObject ruleQuantifiedExpression() throws RecognitionException {
5542 EObject current = null;
5543
5544 Token otherlv_2=null;
5545 Token otherlv_4=null;
5546 Enumerator lv_quantifier_0_0 = null;
5547
5548 EObject lv_localVariables_1_0 = null;
5549
5550 EObject lv_body_3_0 = null;
5551
5552
5553
5554 enterRule();
5555
5556 try {
5557 // InternalSolverLanguageParser.g:2224:2: ( ( ( (lv_quantifier_0_0= ruleQuantifier ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) otherlv_4= RightCurlyBracket ) )
5558 // InternalSolverLanguageParser.g:2225:2: ( ( (lv_quantifier_0_0= ruleQuantifier ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) otherlv_4= RightCurlyBracket )
5559 {
5560 // InternalSolverLanguageParser.g:2225:2: ( ( (lv_quantifier_0_0= ruleQuantifier ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) otherlv_4= RightCurlyBracket )
5561 // InternalSolverLanguageParser.g:2226:3: ( (lv_quantifier_0_0= ruleQuantifier ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) otherlv_4= RightCurlyBracket
5562 {
5563 // InternalSolverLanguageParser.g:2226:3: ( (lv_quantifier_0_0= ruleQuantifier ) )
5564 // InternalSolverLanguageParser.g:2227:4: (lv_quantifier_0_0= ruleQuantifier )
5565 {
5566 // InternalSolverLanguageParser.g:2227:4: (lv_quantifier_0_0= ruleQuantifier )
5567 // InternalSolverLanguageParser.g:2228:5: lv_quantifier_0_0= ruleQuantifier
5568 {
5569
5570 newCompositeNode(grammarAccess.getQuantifiedExpressionAccess().getQuantifierQuantifierEnumRuleCall_0_0());
5571
5572 pushFollow(FOLLOW_36);
5573 lv_quantifier_0_0=ruleQuantifier();
5574
5575 state._fsp--;
5576
5577
5578 if (current==null) {
5579 current = createModelElementForParent(grammarAccess.getQuantifiedExpressionRule());
5580 }
5581 set(
5582 current,
5583 "quantifier",
5584 lv_quantifier_0_0,
5585 "org.eclipse.viatra.solver.language.SolverLanguage.Quantifier");
5586 afterParserOrEnumRuleCall();
5587
5588
5589 }
5590
5591
5592 }
5593
5594 // InternalSolverLanguageParser.g:2245:3: ( (lv_localVariables_1_0= ruleLocalVariables ) )?
5595 int alt26=2;
5596 int LA26_0 = input.LA(1);
5597
5598 if ( (LA26_0==LeftSquareBracket) ) {
5599 alt26=1;
5600 }
5601 switch (alt26) {
5602 case 1 :
5603 // InternalSolverLanguageParser.g:2246:4: (lv_localVariables_1_0= ruleLocalVariables )
5604 {
5605 // InternalSolverLanguageParser.g:2246:4: (lv_localVariables_1_0= ruleLocalVariables )
5606 // InternalSolverLanguageParser.g:2247:5: lv_localVariables_1_0= ruleLocalVariables
5607 {
5608
5609 newCompositeNode(grammarAccess.getQuantifiedExpressionAccess().getLocalVariablesLocalVariablesParserRuleCall_1_0());
5610
5611 pushFollow(FOLLOW_14);
5612 lv_localVariables_1_0=ruleLocalVariables();
5613
5614 state._fsp--;
5615
5616
5617 if (current==null) {
5618 current = createModelElementForParent(grammarAccess.getQuantifiedExpressionRule());
5619 }
5620 set(
5621 current,
5622 "localVariables",
5623 lv_localVariables_1_0,
5624 "org.eclipse.viatra.solver.language.SolverLanguage.LocalVariables");
5625 afterParserOrEnumRuleCall();
5626
5627
5628 }
5629
5630
5631 }
5632 break;
5633
5634 }
5635
5636 otherlv_2=(Token)match(input,LeftCurlyBracket,FOLLOW_6);
5637
5638 newLeafNode(otherlv_2, grammarAccess.getQuantifiedExpressionAccess().getLeftCurlyBracketKeyword_2());
4059 5639
4060 // InternalSolverLanguageParser.g:1587:3: ( (lv_body_2_0= ruleExpression ) ) 5640 // InternalSolverLanguageParser.g:2268:3: ( (lv_body_3_0= ruleExpression ) )
4061 // InternalSolverLanguageParser.g:1588:4: (lv_body_2_0= ruleExpression ) 5641 // InternalSolverLanguageParser.g:2269:4: (lv_body_3_0= ruleExpression )
4062 { 5642 {
4063 // InternalSolverLanguageParser.g:1588:4: (lv_body_2_0= ruleExpression ) 5643 // InternalSolverLanguageParser.g:2269:4: (lv_body_3_0= ruleExpression )
4064 // InternalSolverLanguageParser.g:1589:5: lv_body_2_0= ruleExpression 5644 // InternalSolverLanguageParser.g:2270:5: lv_body_3_0= ruleExpression
4065 { 5645 {
4066 5646
4067 newCompositeNode(grammarAccess.getCountAccess().getBodyExpressionParserRuleCall_2_0()); 5647 newCompositeNode(grammarAccess.getQuantifiedExpressionAccess().getBodyExpressionParserRuleCall_3_0());
4068 5648
4069 pushFollow(FOLLOW_27); 5649 pushFollow(FOLLOW_16);
4070 lv_body_2_0=ruleExpression(); 5650 lv_body_3_0=ruleExpression();
4071 5651
4072 state._fsp--; 5652 state._fsp--;
4073 5653
4074 5654
4075 if (current==null) { 5655 if (current==null) {
4076 current = createModelElementForParent(grammarAccess.getCountRule()); 5656 current = createModelElementForParent(grammarAccess.getQuantifiedExpressionRule());
4077 } 5657 }
4078 set( 5658 set(
4079 current, 5659 current,
4080 "body", 5660 "body",
4081 lv_body_2_0, 5661 lv_body_3_0,
4082 "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); 5662 "org.eclipse.viatra.solver.language.SolverLanguage.Expression");
4083 afterParserOrEnumRuleCall(); 5663 afterParserOrEnumRuleCall();
4084 5664
@@ -4088,9 +5668,9 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4088 5668
4089 } 5669 }
4090 5670
4091 otherlv_3=(Token)match(input,RightCurlyBracket,FOLLOW_2); 5671 otherlv_4=(Token)match(input,RightCurlyBracket,FOLLOW_2);
4092 5672
4093 newLeafNode(otherlv_3, grammarAccess.getCountAccess().getRightCurlyBracketKeyword_3()); 5673 newLeafNode(otherlv_4, grammarAccess.getQuantifiedExpressionAccess().getRightCurlyBracketKeyword_4());
4094 5674
4095 5675
4096 } 5676 }
@@ -4111,11 +5691,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4111 } 5691 }
4112 return current; 5692 return current;
4113 } 5693 }
4114 // $ANTLR end "ruleCount" 5694 // $ANTLR end "ruleQuantifiedExpression"
4115 5695
4116 5696
4117 // $ANTLR start "entryRuleAggregation" 5697 // $ANTLR start "entryRuleAggregation"
4118 // InternalSolverLanguageParser.g:1614:1: entryRuleAggregation returns [EObject current=null] : iv_ruleAggregation= ruleAggregation EOF ; 5698 // InternalSolverLanguageParser.g:2295:1: entryRuleAggregation returns [EObject current=null] : iv_ruleAggregation= ruleAggregation EOF ;
4119 public final EObject entryRuleAggregation() throws RecognitionException { 5699 public final EObject entryRuleAggregation() throws RecognitionException {
4120 EObject current = null; 5700 EObject current = null;
4121 5701
@@ -4123,8 +5703,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4123 5703
4124 5704
4125 try { 5705 try {
4126 // InternalSolverLanguageParser.g:1614:52: (iv_ruleAggregation= ruleAggregation EOF ) 5706 // InternalSolverLanguageParser.g:2295:52: (iv_ruleAggregation= ruleAggregation EOF )
4127 // InternalSolverLanguageParser.g:1615:2: iv_ruleAggregation= ruleAggregation EOF 5707 // InternalSolverLanguageParser.g:2296:2: iv_ruleAggregation= ruleAggregation EOF
4128 { 5708 {
4129 newCompositeNode(grammarAccess.getAggregationRule()); 5709 newCompositeNode(grammarAccess.getAggregationRule());
4130 pushFollow(FOLLOW_1); 5710 pushFollow(FOLLOW_1);
@@ -4151,53 +5731,50 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4151 5731
4152 5732
4153 // $ANTLR start "ruleAggregation" 5733 // $ANTLR start "ruleAggregation"
4154 // InternalSolverLanguageParser.g:1621:1: ruleAggregation returns [EObject current=null] : ( ( (lv_op_0_0= ruleAggregationOp ) ) otherlv_1= LeftCurlyBracket ( (lv_body_2_0= ruleExpression ) ) otherlv_3= VerticalLine ( (lv_condition_4_0= ruleExpression ) ) otherlv_5= RightCurlyBracket ) ; 5734 // InternalSolverLanguageParser.g:2302:1: ruleAggregation returns [EObject current=null] : ( ( ( ruleQualifiedName ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) (otherlv_4= VerticalLine ( (lv_condition_5_0= ruleExpression ) ) )? otherlv_6= RightCurlyBracket ) ;
4155 public final EObject ruleAggregation() throws RecognitionException { 5735 public final EObject ruleAggregation() throws RecognitionException {
4156 EObject current = null; 5736 EObject current = null;
4157 5737
4158 Token otherlv_1=null; 5738 Token otherlv_2=null;
4159 Token otherlv_3=null; 5739 Token otherlv_4=null;
4160 Token otherlv_5=null; 5740 Token otherlv_6=null;
4161 Enumerator lv_op_0_0 = null; 5741 EObject lv_localVariables_1_0 = null;
4162 5742
4163 EObject lv_body_2_0 = null; 5743 EObject lv_body_3_0 = null;
4164 5744
4165 EObject lv_condition_4_0 = null; 5745 EObject lv_condition_5_0 = null;
4166 5746
4167 5747
4168 5748
4169 enterRule(); 5749 enterRule();
4170 5750
4171 try { 5751 try {
4172 // InternalSolverLanguageParser.g:1627:2: ( ( ( (lv_op_0_0= ruleAggregationOp ) ) otherlv_1= LeftCurlyBracket ( (lv_body_2_0= ruleExpression ) ) otherlv_3= VerticalLine ( (lv_condition_4_0= ruleExpression ) ) otherlv_5= RightCurlyBracket ) ) 5752 // InternalSolverLanguageParser.g:2308:2: ( ( ( ( ruleQualifiedName ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) (otherlv_4= VerticalLine ( (lv_condition_5_0= ruleExpression ) ) )? otherlv_6= RightCurlyBracket ) )
4173 // InternalSolverLanguageParser.g:1628:2: ( ( (lv_op_0_0= ruleAggregationOp ) ) otherlv_1= LeftCurlyBracket ( (lv_body_2_0= ruleExpression ) ) otherlv_3= VerticalLine ( (lv_condition_4_0= ruleExpression ) ) otherlv_5= RightCurlyBracket ) 5753 // InternalSolverLanguageParser.g:2309:2: ( ( ( ruleQualifiedName ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) (otherlv_4= VerticalLine ( (lv_condition_5_0= ruleExpression ) ) )? otherlv_6= RightCurlyBracket )
4174 { 5754 {
4175 // InternalSolverLanguageParser.g:1628:2: ( ( (lv_op_0_0= ruleAggregationOp ) ) otherlv_1= LeftCurlyBracket ( (lv_body_2_0= ruleExpression ) ) otherlv_3= VerticalLine ( (lv_condition_4_0= ruleExpression ) ) otherlv_5= RightCurlyBracket ) 5755 // InternalSolverLanguageParser.g:2309:2: ( ( ( ruleQualifiedName ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) (otherlv_4= VerticalLine ( (lv_condition_5_0= ruleExpression ) ) )? otherlv_6= RightCurlyBracket )
4176 // InternalSolverLanguageParser.g:1629:3: ( (lv_op_0_0= ruleAggregationOp ) ) otherlv_1= LeftCurlyBracket ( (lv_body_2_0= ruleExpression ) ) otherlv_3= VerticalLine ( (lv_condition_4_0= ruleExpression ) ) otherlv_5= RightCurlyBracket 5756 // InternalSolverLanguageParser.g:2310:3: ( ( ruleQualifiedName ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) (otherlv_4= VerticalLine ( (lv_condition_5_0= ruleExpression ) ) )? otherlv_6= RightCurlyBracket
4177 { 5757 {
4178 // InternalSolverLanguageParser.g:1629:3: ( (lv_op_0_0= ruleAggregationOp ) ) 5758 // InternalSolverLanguageParser.g:2310:3: ( ( ruleQualifiedName ) )
4179 // InternalSolverLanguageParser.g:1630:4: (lv_op_0_0= ruleAggregationOp ) 5759 // InternalSolverLanguageParser.g:2311:4: ( ruleQualifiedName )
4180 { 5760 {
4181 // InternalSolverLanguageParser.g:1630:4: (lv_op_0_0= ruleAggregationOp ) 5761 // InternalSolverLanguageParser.g:2311:4: ( ruleQualifiedName )
4182 // InternalSolverLanguageParser.g:1631:5: lv_op_0_0= ruleAggregationOp 5762 // InternalSolverLanguageParser.g:2312:5: ruleQualifiedName
4183 { 5763 {
4184 5764
4185 newCompositeNode(grammarAccess.getAggregationAccess().getOpAggregationOpEnumRuleCall_0_0()); 5765 if (current==null) {
5766 current = createModelElement(grammarAccess.getAggregationRule());
5767 }
5768
5769
5770 newCompositeNode(grammarAccess.getAggregationAccess().getOpNamedElementCrossReference_0_0());
4186 5771
4187 pushFollow(FOLLOW_26); 5772 pushFollow(FOLLOW_36);
4188 lv_op_0_0=ruleAggregationOp(); 5773 ruleQualifiedName();
4189 5774
4190 state._fsp--; 5775 state._fsp--;
4191 5776
4192 5777
4193 if (current==null) {
4194 current = createModelElementForParent(grammarAccess.getAggregationRule());
4195 }
4196 set(
4197 current,
4198 "op",
4199 lv_op_0_0,
4200 "org.eclipse.viatra.solver.language.SolverLanguage.AggregationOp");
4201 afterParserOrEnumRuleCall(); 5778 afterParserOrEnumRuleCall();
4202 5779
4203 5780
@@ -4206,21 +5783,63 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4206 5783
4207 } 5784 }
4208 5785
4209 otherlv_1=(Token)match(input,LeftCurlyBracket,FOLLOW_6); 5786 // InternalSolverLanguageParser.g:2326:3: ( (lv_localVariables_1_0= ruleLocalVariables ) )?
5787 int alt27=2;
5788 int LA27_0 = input.LA(1);
5789
5790 if ( (LA27_0==LeftSquareBracket) ) {
5791 alt27=1;
5792 }
5793 switch (alt27) {
5794 case 1 :
5795 // InternalSolverLanguageParser.g:2327:4: (lv_localVariables_1_0= ruleLocalVariables )
5796 {
5797 // InternalSolverLanguageParser.g:2327:4: (lv_localVariables_1_0= ruleLocalVariables )
5798 // InternalSolverLanguageParser.g:2328:5: lv_localVariables_1_0= ruleLocalVariables
5799 {
5800
5801 newCompositeNode(grammarAccess.getAggregationAccess().getLocalVariablesLocalVariablesParserRuleCall_1_0());
5802
5803 pushFollow(FOLLOW_14);
5804 lv_localVariables_1_0=ruleLocalVariables();
5805
5806 state._fsp--;
5807
5808
5809 if (current==null) {
5810 current = createModelElementForParent(grammarAccess.getAggregationRule());
5811 }
5812 set(
5813 current,
5814 "localVariables",
5815 lv_localVariables_1_0,
5816 "org.eclipse.viatra.solver.language.SolverLanguage.LocalVariables");
5817 afterParserOrEnumRuleCall();
5818
5819
5820 }
5821
5822
5823 }
5824 break;
5825
5826 }
5827
5828 otherlv_2=(Token)match(input,LeftCurlyBracket,FOLLOW_6);
4210 5829
4211 newLeafNode(otherlv_1, grammarAccess.getAggregationAccess().getLeftCurlyBracketKeyword_1()); 5830 newLeafNode(otherlv_2, grammarAccess.getAggregationAccess().getLeftCurlyBracketKeyword_2());
4212 5831
4213 // InternalSolverLanguageParser.g:1652:3: ( (lv_body_2_0= ruleExpression ) ) 5832 // InternalSolverLanguageParser.g:2349:3: ( (lv_body_3_0= ruleExpression ) )
4214 // InternalSolverLanguageParser.g:1653:4: (lv_body_2_0= ruleExpression ) 5833 // InternalSolverLanguageParser.g:2350:4: (lv_body_3_0= ruleExpression )
4215 { 5834 {
4216 // InternalSolverLanguageParser.g:1653:4: (lv_body_2_0= ruleExpression ) 5835 // InternalSolverLanguageParser.g:2350:4: (lv_body_3_0= ruleExpression )
4217 // InternalSolverLanguageParser.g:1654:5: lv_body_2_0= ruleExpression 5836 // InternalSolverLanguageParser.g:2351:5: lv_body_3_0= ruleExpression
4218 { 5837 {
4219 5838
4220 newCompositeNode(grammarAccess.getAggregationAccess().getBodyExpressionParserRuleCall_2_0()); 5839 newCompositeNode(grammarAccess.getAggregationAccess().getBodyExpressionParserRuleCall_3_0());
4221 5840
4222 pushFollow(FOLLOW_28); 5841 pushFollow(FOLLOW_37);
4223 lv_body_2_0=ruleExpression(); 5842 lv_body_3_0=ruleExpression();
4224 5843
4225 state._fsp--; 5844 state._fsp--;
4226 5845
@@ -4231,7 +5850,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4231 set( 5850 set(
4232 current, 5851 current,
4233 "body", 5852 "body",
4234 lv_body_2_0, 5853 lv_body_3_0,
4235 "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); 5854 "org.eclipse.viatra.solver.language.SolverLanguage.Expression");
4236 afterParserOrEnumRuleCall(); 5855 afterParserOrEnumRuleCall();
4237 5856
@@ -4241,44 +5860,61 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4241 5860
4242 } 5861 }
4243 5862
4244 otherlv_3=(Token)match(input,VerticalLine,FOLLOW_6); 5863 // InternalSolverLanguageParser.g:2368:3: (otherlv_4= VerticalLine ( (lv_condition_5_0= ruleExpression ) ) )?
5864 int alt28=2;
5865 int LA28_0 = input.LA(1);
4245 5866
4246 newLeafNode(otherlv_3, grammarAccess.getAggregationAccess().getVerticalLineKeyword_3()); 5867 if ( (LA28_0==VerticalLine) ) {
4247 5868 alt28=1;
4248 // InternalSolverLanguageParser.g:1675:3: ( (lv_condition_4_0= ruleExpression ) ) 5869 }
4249 // InternalSolverLanguageParser.g:1676:4: (lv_condition_4_0= ruleExpression ) 5870 switch (alt28) {
4250 { 5871 case 1 :
4251 // InternalSolverLanguageParser.g:1676:4: (lv_condition_4_0= ruleExpression ) 5872 // InternalSolverLanguageParser.g:2369:4: otherlv_4= VerticalLine ( (lv_condition_5_0= ruleExpression ) )
4252 // InternalSolverLanguageParser.g:1677:5: lv_condition_4_0= ruleExpression 5873 {
4253 { 5874 otherlv_4=(Token)match(input,VerticalLine,FOLLOW_6);
4254 5875
4255 newCompositeNode(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_0()); 5876 newLeafNode(otherlv_4, grammarAccess.getAggregationAccess().getVerticalLineKeyword_4_0());
4256 5877
4257 pushFollow(FOLLOW_27); 5878 // InternalSolverLanguageParser.g:2373:4: ( (lv_condition_5_0= ruleExpression ) )
4258 lv_condition_4_0=ruleExpression(); 5879 // InternalSolverLanguageParser.g:2374:5: (lv_condition_5_0= ruleExpression )
5880 {
5881 // InternalSolverLanguageParser.g:2374:5: (lv_condition_5_0= ruleExpression )
5882 // InternalSolverLanguageParser.g:2375:6: lv_condition_5_0= ruleExpression
5883 {
4259 5884
4260 state._fsp--; 5885 newCompositeNode(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_1_0());
5886
5887 pushFollow(FOLLOW_16);
5888 lv_condition_5_0=ruleExpression();
4261 5889
5890 state._fsp--;
4262 5891
4263 if (current==null) {
4264 current = createModelElementForParent(grammarAccess.getAggregationRule());
4265 }
4266 set(
4267 current,
4268 "condition",
4269 lv_condition_4_0,
4270 "org.eclipse.viatra.solver.language.SolverLanguage.Expression");
4271 afterParserOrEnumRuleCall();
4272
4273 5892
4274 } 5893 if (current==null) {
5894 current = createModelElementForParent(grammarAccess.getAggregationRule());
5895 }
5896 set(
5897 current,
5898 "condition",
5899 lv_condition_5_0,
5900 "org.eclipse.viatra.solver.language.SolverLanguage.Expression");
5901 afterParserOrEnumRuleCall();
5902
5903
5904 }
5905
5906
5907 }
4275 5908
4276 5909
5910 }
5911 break;
5912
4277 } 5913 }
4278 5914
4279 otherlv_5=(Token)match(input,RightCurlyBracket,FOLLOW_2); 5915 otherlv_6=(Token)match(input,RightCurlyBracket,FOLLOW_2);
4280 5916
4281 newLeafNode(otherlv_5, grammarAccess.getAggregationAccess().getRightCurlyBracketKeyword_5()); 5917 newLeafNode(otherlv_6, grammarAccess.getAggregationAccess().getRightCurlyBracketKeyword_5());
4282 5918
4283 5919
4284 } 5920 }
@@ -4303,7 +5939,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4303 5939
4304 5940
4305 // $ANTLR start "entryRuleAtomicExpression" 5941 // $ANTLR start "entryRuleAtomicExpression"
4306 // InternalSolverLanguageParser.g:1702:1: entryRuleAtomicExpression returns [EObject current=null] : iv_ruleAtomicExpression= ruleAtomicExpression EOF ; 5942 // InternalSolverLanguageParser.g:2401:1: entryRuleAtomicExpression returns [EObject current=null] : iv_ruleAtomicExpression= ruleAtomicExpression EOF ;
4307 public final EObject entryRuleAtomicExpression() throws RecognitionException { 5943 public final EObject entryRuleAtomicExpression() throws RecognitionException {
4308 EObject current = null; 5944 EObject current = null;
4309 5945
@@ -4311,8 +5947,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4311 5947
4312 5948
4313 try { 5949 try {
4314 // InternalSolverLanguageParser.g:1702:57: (iv_ruleAtomicExpression= ruleAtomicExpression EOF ) 5950 // InternalSolverLanguageParser.g:2401:57: (iv_ruleAtomicExpression= ruleAtomicExpression EOF )
4315 // InternalSolverLanguageParser.g:1703:2: iv_ruleAtomicExpression= ruleAtomicExpression EOF 5951 // InternalSolverLanguageParser.g:2402:2: iv_ruleAtomicExpression= ruleAtomicExpression EOF
4316 { 5952 {
4317 newCompositeNode(grammarAccess.getAtomicExpressionRule()); 5953 newCompositeNode(grammarAccess.getAtomicExpressionRule());
4318 pushFollow(FOLLOW_1); 5954 pushFollow(FOLLOW_1);
@@ -4339,7 +5975,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4339 5975
4340 5976
4341 // $ANTLR start "ruleAtomicExpression" 5977 // $ANTLR start "ruleAtomicExpression"
4342 // InternalSolverLanguageParser.g:1709:1: ruleAtomicExpression returns [EObject current=null] : (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) ) ; 5978 // InternalSolverLanguageParser.g:2408:1: ruleAtomicExpression returns [EObject current=null] : (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) ) ;
4343 public final EObject ruleAtomicExpression() throws RecognitionException { 5979 public final EObject ruleAtomicExpression() throws RecognitionException {
4344 EObject current = null; 5980 EObject current = null;
4345 5981
@@ -4360,15 +5996,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4360 enterRule(); 5996 enterRule();
4361 5997
4362 try { 5998 try {
4363 // InternalSolverLanguageParser.g:1715:2: ( (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) ) ) 5999 // InternalSolverLanguageParser.g:2414:2: ( (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) ) )
4364 // InternalSolverLanguageParser.g:1716:2: (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) ) 6000 // InternalSolverLanguageParser.g:2415:2: (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) )
4365 { 6001 {
4366 // InternalSolverLanguageParser.g:1716:2: (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) ) 6002 // InternalSolverLanguageParser.g:2415:2: (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) )
4367 int alt20=5; 6003 int alt29=5;
4368 alt20 = dfa20.predict(input); 6004 alt29 = dfa29.predict(input);
4369 switch (alt20) { 6005 switch (alt29) {
4370 case 1 : 6006 case 1 :
4371 // InternalSolverLanguageParser.g:1717:3: this_Reference_0= ruleReference 6007 // InternalSolverLanguageParser.g:2416:3: this_Reference_0= ruleReference
4372 { 6008 {
4373 6009
4374 newCompositeNode(grammarAccess.getAtomicExpressionAccess().getReferenceParserRuleCall_0()); 6010 newCompositeNode(grammarAccess.getAtomicExpressionAccess().getReferenceParserRuleCall_0());
@@ -4386,7 +6022,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4386 } 6022 }
4387 break; 6023 break;
4388 case 2 : 6024 case 2 :
4389 // InternalSolverLanguageParser.g:1726:3: this_Call_1= ruleCall 6025 // InternalSolverLanguageParser.g:2425:3: this_Call_1= ruleCall
4390 { 6026 {
4391 6027
4392 newCompositeNode(grammarAccess.getAtomicExpressionAccess().getCallParserRuleCall_1()); 6028 newCompositeNode(grammarAccess.getAtomicExpressionAccess().getCallParserRuleCall_1());
@@ -4404,7 +6040,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4404 } 6040 }
4405 break; 6041 break;
4406 case 3 : 6042 case 3 :
4407 // InternalSolverLanguageParser.g:1735:3: this_Interval_2= ruleInterval 6043 // InternalSolverLanguageParser.g:2434:3: this_Interval_2= ruleInterval
4408 { 6044 {
4409 6045
4410 newCompositeNode(grammarAccess.getAtomicExpressionAccess().getIntervalParserRuleCall_2()); 6046 newCompositeNode(grammarAccess.getAtomicExpressionAccess().getIntervalParserRuleCall_2());
@@ -4422,7 +6058,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4422 } 6058 }
4423 break; 6059 break;
4424 case 4 : 6060 case 4 :
4425 // InternalSolverLanguageParser.g:1744:3: this_Literal_3= ruleLiteral 6061 // InternalSolverLanguageParser.g:2443:3: this_Literal_3= ruleLiteral
4426 { 6062 {
4427 6063
4428 newCompositeNode(grammarAccess.getAtomicExpressionAccess().getLiteralParserRuleCall_3()); 6064 newCompositeNode(grammarAccess.getAtomicExpressionAccess().getLiteralParserRuleCall_3());
@@ -4440,10 +6076,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4440 } 6076 }
4441 break; 6077 break;
4442 case 5 : 6078 case 5 :
4443 // InternalSolverLanguageParser.g:1753:3: (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) 6079 // InternalSolverLanguageParser.g:2452:3: (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis )
4444 { 6080 {
4445 // InternalSolverLanguageParser.g:1753:3: (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) 6081 // InternalSolverLanguageParser.g:2452:3: (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis )
4446 // InternalSolverLanguageParser.g:1754:4: otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis 6082 // InternalSolverLanguageParser.g:2453:4: otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis
4447 { 6083 {
4448 otherlv_4=(Token)match(input,LeftParenthesis,FOLLOW_6); 6084 otherlv_4=(Token)match(input,LeftParenthesis,FOLLOW_6);
4449 6085
@@ -4452,7 +6088,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4452 6088
4453 newCompositeNode(grammarAccess.getAtomicExpressionAccess().getExpressionParserRuleCall_4_1()); 6089 newCompositeNode(grammarAccess.getAtomicExpressionAccess().getExpressionParserRuleCall_4_1());
4454 6090
4455 pushFollow(FOLLOW_29); 6091 pushFollow(FOLLOW_38);
4456 this_Expression_5=ruleExpression(); 6092 this_Expression_5=ruleExpression();
4457 6093
4458 state._fsp--; 6094 state._fsp--;
@@ -4494,7 +6130,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4494 6130
4495 6131
4496 // $ANTLR start "entryRuleCall" 6132 // $ANTLR start "entryRuleCall"
4497 // InternalSolverLanguageParser.g:1775:1: entryRuleCall returns [EObject current=null] : iv_ruleCall= ruleCall EOF ; 6133 // InternalSolverLanguageParser.g:2474:1: entryRuleCall returns [EObject current=null] : iv_ruleCall= ruleCall EOF ;
4498 public final EObject entryRuleCall() throws RecognitionException { 6134 public final EObject entryRuleCall() throws RecognitionException {
4499 EObject current = null; 6135 EObject current = null;
4500 6136
@@ -4502,8 +6138,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4502 6138
4503 6139
4504 try { 6140 try {
4505 // InternalSolverLanguageParser.g:1775:45: (iv_ruleCall= ruleCall EOF ) 6141 // InternalSolverLanguageParser.g:2474:45: (iv_ruleCall= ruleCall EOF )
4506 // InternalSolverLanguageParser.g:1776:2: iv_ruleCall= ruleCall EOF 6142 // InternalSolverLanguageParser.g:2475:2: iv_ruleCall= ruleCall EOF
4507 { 6143 {
4508 newCompositeNode(grammarAccess.getCallRule()); 6144 newCompositeNode(grammarAccess.getCallRule());
4509 pushFollow(FOLLOW_1); 6145 pushFollow(FOLLOW_1);
@@ -4530,7 +6166,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4530 6166
4531 6167
4532 // $ANTLR start "ruleCall" 6168 // $ANTLR start "ruleCall"
4533 // InternalSolverLanguageParser.g:1782:1: ruleCall returns [EObject current=null] : ( ( (lv_functor_0_0= ruleReference ) ) ( ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ( (lv_argumentList_3_0= ruleArgumentList ) ) ) ; 6169 // InternalSolverLanguageParser.g:2481:1: ruleCall returns [EObject current=null] : ( ( (lv_functor_0_0= ruleReference ) ) ( ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ( (lv_argumentList_3_0= ruleArgumentList ) ) ) ;
4534 public final EObject ruleCall() throws RecognitionException { 6170 public final EObject ruleCall() throws RecognitionException {
4535 EObject current = null; 6171 EObject current = null;
4536 6172
@@ -4545,22 +6181,22 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4545 enterRule(); 6181 enterRule();
4546 6182
4547 try { 6183 try {
4548 // InternalSolverLanguageParser.g:1788:2: ( ( ( (lv_functor_0_0= ruleReference ) ) ( ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ( (lv_argumentList_3_0= ruleArgumentList ) ) ) ) 6184 // InternalSolverLanguageParser.g:2487:2: ( ( ( (lv_functor_0_0= ruleReference ) ) ( ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ( (lv_argumentList_3_0= ruleArgumentList ) ) ) )
4549 // InternalSolverLanguageParser.g:1789:2: ( ( (lv_functor_0_0= ruleReference ) ) ( ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ( (lv_argumentList_3_0= ruleArgumentList ) ) ) 6185 // InternalSolverLanguageParser.g:2488:2: ( ( (lv_functor_0_0= ruleReference ) ) ( ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ( (lv_argumentList_3_0= ruleArgumentList ) ) )
4550 { 6186 {
4551 // InternalSolverLanguageParser.g:1789:2: ( ( (lv_functor_0_0= ruleReference ) ) ( ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ( (lv_argumentList_3_0= ruleArgumentList ) ) ) 6187 // InternalSolverLanguageParser.g:2488:2: ( ( (lv_functor_0_0= ruleReference ) ) ( ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ( (lv_argumentList_3_0= ruleArgumentList ) ) )
4552 // InternalSolverLanguageParser.g:1790:3: ( (lv_functor_0_0= ruleReference ) ) ( ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ( (lv_argumentList_3_0= ruleArgumentList ) ) 6188 // InternalSolverLanguageParser.g:2489:3: ( (lv_functor_0_0= ruleReference ) ) ( ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ( (lv_argumentList_3_0= ruleArgumentList ) )
4553 { 6189 {
4554 // InternalSolverLanguageParser.g:1790:3: ( (lv_functor_0_0= ruleReference ) ) 6190 // InternalSolverLanguageParser.g:2489:3: ( (lv_functor_0_0= ruleReference ) )
4555 // InternalSolverLanguageParser.g:1791:4: (lv_functor_0_0= ruleReference ) 6191 // InternalSolverLanguageParser.g:2490:4: (lv_functor_0_0= ruleReference )
4556 { 6192 {
4557 // InternalSolverLanguageParser.g:1791:4: (lv_functor_0_0= ruleReference ) 6193 // InternalSolverLanguageParser.g:2490:4: (lv_functor_0_0= ruleReference )
4558 // InternalSolverLanguageParser.g:1792:5: lv_functor_0_0= ruleReference 6194 // InternalSolverLanguageParser.g:2491:5: lv_functor_0_0= ruleReference
4559 { 6195 {
4560 6196
4561 newCompositeNode(grammarAccess.getCallAccess().getFunctorReferenceParserRuleCall_0_0()); 6197 newCompositeNode(grammarAccess.getCallAccess().getFunctorReferenceParserRuleCall_0_0());
4562 6198
4563 pushFollow(FOLLOW_30); 6199 pushFollow(FOLLOW_39);
4564 lv_functor_0_0=ruleReference(); 6200 lv_functor_0_0=ruleReference();
4565 6201
4566 state._fsp--; 6202 state._fsp--;
@@ -4582,25 +6218,25 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4582 6218
4583 } 6219 }
4584 6220
4585 // InternalSolverLanguageParser.g:1809:3: ( ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? 6221 // InternalSolverLanguageParser.g:2508:3: ( ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )?
4586 int alt21=3; 6222 int alt30=3;
4587 int LA21_0 = input.LA(1); 6223 int LA30_0 = input.LA(1);
4588 6224
4589 if ( (LA21_0==RULE_TRANSITIVE_CLOSURE) ) { 6225 if ( (LA30_0==RULE_TRANSITIVE_CLOSURE) ) {
4590 alt21=1; 6226 alt30=1;
4591 } 6227 }
4592 else if ( (LA21_0==RULE_REFLEXIVE_TRANSITIVE_CLOSURE) ) { 6228 else if ( (LA30_0==RULE_REFLEXIVE_TRANSITIVE_CLOSURE) ) {
4593 alt21=2; 6229 alt30=2;
4594 } 6230 }
4595 switch (alt21) { 6231 switch (alt30) {
4596 case 1 : 6232 case 1 :
4597 // InternalSolverLanguageParser.g:1810:4: ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) 6233 // InternalSolverLanguageParser.g:2509:4: ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) )
4598 { 6234 {
4599 // InternalSolverLanguageParser.g:1810:4: ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) 6235 // InternalSolverLanguageParser.g:2509:4: ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) )
4600 // InternalSolverLanguageParser.g:1811:5: (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) 6236 // InternalSolverLanguageParser.g:2510:5: (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE )
4601 { 6237 {
4602 // InternalSolverLanguageParser.g:1811:5: (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) 6238 // InternalSolverLanguageParser.g:2510:5: (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE )
4603 // InternalSolverLanguageParser.g:1812:6: lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE 6239 // InternalSolverLanguageParser.g:2511:6: lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE
4604 { 6240 {
4605 lv_transitiveClosure_1_0=(Token)match(input,RULE_TRANSITIVE_CLOSURE,FOLLOW_11); 6241 lv_transitiveClosure_1_0=(Token)match(input,RULE_TRANSITIVE_CLOSURE,FOLLOW_11);
4606 6242
@@ -4626,13 +6262,13 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4626 } 6262 }
4627 break; 6263 break;
4628 case 2 : 6264 case 2 :
4629 // InternalSolverLanguageParser.g:1829:4: ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) 6265 // InternalSolverLanguageParser.g:2528:4: ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) )
4630 { 6266 {
4631 // InternalSolverLanguageParser.g:1829:4: ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) 6267 // InternalSolverLanguageParser.g:2528:4: ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) )
4632 // InternalSolverLanguageParser.g:1830:5: (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) 6268 // InternalSolverLanguageParser.g:2529:5: (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE )
4633 { 6269 {
4634 // InternalSolverLanguageParser.g:1830:5: (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) 6270 // InternalSolverLanguageParser.g:2529:5: (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE )
4635 // InternalSolverLanguageParser.g:1831:6: lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE 6271 // InternalSolverLanguageParser.g:2530:6: lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE
4636 { 6272 {
4637 lv_reflexiveTransitiveClosure_2_0=(Token)match(input,RULE_REFLEXIVE_TRANSITIVE_CLOSURE,FOLLOW_11); 6273 lv_reflexiveTransitiveClosure_2_0=(Token)match(input,RULE_REFLEXIVE_TRANSITIVE_CLOSURE,FOLLOW_11);
4638 6274
@@ -4660,11 +6296,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4660 6296
4661 } 6297 }
4662 6298
4663 // InternalSolverLanguageParser.g:1848:3: ( (lv_argumentList_3_0= ruleArgumentList ) ) 6299 // InternalSolverLanguageParser.g:2547:3: ( (lv_argumentList_3_0= ruleArgumentList ) )
4664 // InternalSolverLanguageParser.g:1849:4: (lv_argumentList_3_0= ruleArgumentList ) 6300 // InternalSolverLanguageParser.g:2548:4: (lv_argumentList_3_0= ruleArgumentList )
4665 { 6301 {
4666 // InternalSolverLanguageParser.g:1849:4: (lv_argumentList_3_0= ruleArgumentList ) 6302 // InternalSolverLanguageParser.g:2548:4: (lv_argumentList_3_0= ruleArgumentList )
4667 // InternalSolverLanguageParser.g:1850:5: lv_argumentList_3_0= ruleArgumentList 6303 // InternalSolverLanguageParser.g:2549:5: lv_argumentList_3_0= ruleArgumentList
4668 { 6304 {
4669 6305
4670 newCompositeNode(grammarAccess.getCallAccess().getArgumentListArgumentListParserRuleCall_2_0()); 6306 newCompositeNode(grammarAccess.getCallAccess().getArgumentListArgumentListParserRuleCall_2_0());
@@ -4714,7 +6350,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4714 6350
4715 6351
4716 // $ANTLR start "entryRuleArgumentList" 6352 // $ANTLR start "entryRuleArgumentList"
4717 // InternalSolverLanguageParser.g:1871:1: entryRuleArgumentList returns [EObject current=null] : iv_ruleArgumentList= ruleArgumentList EOF ; 6353 // InternalSolverLanguageParser.g:2570:1: entryRuleArgumentList returns [EObject current=null] : iv_ruleArgumentList= ruleArgumentList EOF ;
4718 public final EObject entryRuleArgumentList() throws RecognitionException { 6354 public final EObject entryRuleArgumentList() throws RecognitionException {
4719 EObject current = null; 6355 EObject current = null;
4720 6356
@@ -4722,8 +6358,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4722 6358
4723 6359
4724 try { 6360 try {
4725 // InternalSolverLanguageParser.g:1871:53: (iv_ruleArgumentList= ruleArgumentList EOF ) 6361 // InternalSolverLanguageParser.g:2570:53: (iv_ruleArgumentList= ruleArgumentList EOF )
4726 // InternalSolverLanguageParser.g:1872:2: iv_ruleArgumentList= ruleArgumentList EOF 6362 // InternalSolverLanguageParser.g:2571:2: iv_ruleArgumentList= ruleArgumentList EOF
4727 { 6363 {
4728 newCompositeNode(grammarAccess.getArgumentListRule()); 6364 newCompositeNode(grammarAccess.getArgumentListRule());
4729 pushFollow(FOLLOW_1); 6365 pushFollow(FOLLOW_1);
@@ -4750,7 +6386,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4750 6386
4751 6387
4752 // $ANTLR start "ruleArgumentList" 6388 // $ANTLR start "ruleArgumentList"
4753 // InternalSolverLanguageParser.g:1878:1: ruleArgumentList returns [EObject current=null] : ( () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis ) ; 6389 // InternalSolverLanguageParser.g:2577:1: ruleArgumentList returns [EObject current=null] : ( () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis ) ;
4754 public final EObject ruleArgumentList() throws RecognitionException { 6390 public final EObject ruleArgumentList() throws RecognitionException {
4755 EObject current = null; 6391 EObject current = null;
4756 6392
@@ -4766,14 +6402,14 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4766 enterRule(); 6402 enterRule();
4767 6403
4768 try { 6404 try {
4769 // InternalSolverLanguageParser.g:1884:2: ( ( () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis ) ) 6405 // InternalSolverLanguageParser.g:2583:2: ( ( () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis ) )
4770 // InternalSolverLanguageParser.g:1885:2: ( () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis ) 6406 // InternalSolverLanguageParser.g:2584:2: ( () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis )
4771 { 6407 {
4772 // InternalSolverLanguageParser.g:1885:2: ( () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis ) 6408 // InternalSolverLanguageParser.g:2584:2: ( () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis )
4773 // InternalSolverLanguageParser.g:1886:3: () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis 6409 // InternalSolverLanguageParser.g:2585:3: () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis
4774 { 6410 {
4775 // InternalSolverLanguageParser.g:1886:3: () 6411 // InternalSolverLanguageParser.g:2585:3: ()
4776 // InternalSolverLanguageParser.g:1887:4: 6412 // InternalSolverLanguageParser.g:2586:4:
4777 { 6413 {
4778 6414
4779 current = forceCreateModelElement( 6415 current = forceCreateModelElement(
@@ -4783,31 +6419,31 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4783 6419
4784 } 6420 }
4785 6421
4786 otherlv_1=(Token)match(input,LeftParenthesis,FOLLOW_31); 6422 otherlv_1=(Token)match(input,LeftParenthesis,FOLLOW_40);
4787 6423
4788 newLeafNode(otherlv_1, grammarAccess.getArgumentListAccess().getLeftParenthesisKeyword_1()); 6424 newLeafNode(otherlv_1, grammarAccess.getArgumentListAccess().getLeftParenthesisKeyword_1());
4789 6425
4790 // InternalSolverLanguageParser.g:1897:3: ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? 6426 // InternalSolverLanguageParser.g:2596:3: ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )?
4791 int alt23=2; 6427 int alt32=2;
4792 int LA23_0 = input.LA(1); 6428 int LA32_0 = input.LA(1);
4793 6429
4794 if ( (LA23_0==Current||LA23_0==Unknown||(LA23_0>=Count && LA23_0<=False)||(LA23_0>=Must && LA23_0<=Prod)||LA23_0==True||(LA23_0>=Avg && LA23_0<=Inf)||(LA23_0>=Max && LA23_0<=Sum)||(LA23_0>=ExclamationMark && LA23_0<=LeftParenthesis)||(LA23_0>=Asterisk && LA23_0<=PlusSign)||LA23_0==HyphenMinus||LA23_0==LeftSquareBracket||(LA23_0>=RULE_STRING && LA23_0<=RULE_QUOTED_ID)||(LA23_0>=RULE_ID && LA23_0<=RULE_INT)) ) { 6430 if ( (LA32_0==Current||(LA32_0>=Unknown && LA32_0<=Exists)||LA32_0==Forall||(LA32_0>=Count && LA32_0<=False)||LA32_0==Must||LA32_0==True||LA32_0==Inf||LA32_0==May||(LA32_0>=ExclamationMark && LA32_0<=LeftParenthesis)||(LA32_0>=Asterisk && LA32_0<=PlusSign)||LA32_0==HyphenMinus||LA32_0==LeftSquareBracket||(LA32_0>=RULE_STRING && LA32_0<=RULE_QUOTED_ID)||(LA32_0>=RULE_ID && LA32_0<=RULE_INT)) ) {
4795 alt23=1; 6431 alt32=1;
4796 } 6432 }
4797 switch (alt23) { 6433 switch (alt32) {
4798 case 1 : 6434 case 1 :
4799 // InternalSolverLanguageParser.g:1898:4: ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* 6435 // InternalSolverLanguageParser.g:2597:4: ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )*
4800 { 6436 {
4801 // InternalSolverLanguageParser.g:1898:4: ( (lv_arguments_2_0= ruleArgument ) ) 6437 // InternalSolverLanguageParser.g:2597:4: ( (lv_arguments_2_0= ruleArgument ) )
4802 // InternalSolverLanguageParser.g:1899:5: (lv_arguments_2_0= ruleArgument ) 6438 // InternalSolverLanguageParser.g:2598:5: (lv_arguments_2_0= ruleArgument )
4803 { 6439 {
4804 // InternalSolverLanguageParser.g:1899:5: (lv_arguments_2_0= ruleArgument ) 6440 // InternalSolverLanguageParser.g:2598:5: (lv_arguments_2_0= ruleArgument )
4805 // InternalSolverLanguageParser.g:1900:6: lv_arguments_2_0= ruleArgument 6441 // InternalSolverLanguageParser.g:2599:6: lv_arguments_2_0= ruleArgument
4806 { 6442 {
4807 6443
4808 newCompositeNode(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_0_0()); 6444 newCompositeNode(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_0_0());
4809 6445
4810 pushFollow(FOLLOW_32); 6446 pushFollow(FOLLOW_41);
4811 lv_arguments_2_0=ruleArgument(); 6447 lv_arguments_2_0=ruleArgument();
4812 6448
4813 state._fsp--; 6449 state._fsp--;
@@ -4829,35 +6465,35 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4829 6465
4830 } 6466 }
4831 6467
4832 // InternalSolverLanguageParser.g:1917:4: (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* 6468 // InternalSolverLanguageParser.g:2616:4: (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )*
4833 loop22: 6469 loop31:
4834 do { 6470 do {
4835 int alt22=2; 6471 int alt31=2;
4836 int LA22_0 = input.LA(1); 6472 int LA31_0 = input.LA(1);
4837 6473
4838 if ( (LA22_0==Comma) ) { 6474 if ( (LA31_0==Comma) ) {
4839 alt22=1; 6475 alt31=1;
4840 } 6476 }
4841 6477
4842 6478
4843 switch (alt22) { 6479 switch (alt31) {
4844 case 1 : 6480 case 1 :
4845 // InternalSolverLanguageParser.g:1918:5: otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) 6481 // InternalSolverLanguageParser.g:2617:5: otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) )
4846 { 6482 {
4847 otherlv_3=(Token)match(input,Comma,FOLLOW_33); 6483 otherlv_3=(Token)match(input,Comma,FOLLOW_42);
4848 6484
4849 newLeafNode(otherlv_3, grammarAccess.getArgumentListAccess().getCommaKeyword_2_1_0()); 6485 newLeafNode(otherlv_3, grammarAccess.getArgumentListAccess().getCommaKeyword_2_1_0());
4850 6486
4851 // InternalSolverLanguageParser.g:1922:5: ( (lv_arguments_4_0= ruleArgument ) ) 6487 // InternalSolverLanguageParser.g:2621:5: ( (lv_arguments_4_0= ruleArgument ) )
4852 // InternalSolverLanguageParser.g:1923:6: (lv_arguments_4_0= ruleArgument ) 6488 // InternalSolverLanguageParser.g:2622:6: (lv_arguments_4_0= ruleArgument )
4853 { 6489 {
4854 // InternalSolverLanguageParser.g:1923:6: (lv_arguments_4_0= ruleArgument ) 6490 // InternalSolverLanguageParser.g:2622:6: (lv_arguments_4_0= ruleArgument )
4855 // InternalSolverLanguageParser.g:1924:7: lv_arguments_4_0= ruleArgument 6491 // InternalSolverLanguageParser.g:2623:7: lv_arguments_4_0= ruleArgument
4856 { 6492 {
4857 6493
4858 newCompositeNode(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_1_1_0()); 6494 newCompositeNode(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_1_1_0());
4859 6495
4860 pushFollow(FOLLOW_32); 6496 pushFollow(FOLLOW_41);
4861 lv_arguments_4_0=ruleArgument(); 6497 lv_arguments_4_0=ruleArgument();
4862 6498
4863 state._fsp--; 6499 state._fsp--;
@@ -4884,7 +6520,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4884 break; 6520 break;
4885 6521
4886 default : 6522 default :
4887 break loop22; 6523 break loop31;
4888 } 6524 }
4889 } while (true); 6525 } while (true);
4890 6526
@@ -4921,7 +6557,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4921 6557
4922 6558
4923 // $ANTLR start "entryRuleArgument" 6559 // $ANTLR start "entryRuleArgument"
4924 // InternalSolverLanguageParser.g:1951:1: entryRuleArgument returns [EObject current=null] : iv_ruleArgument= ruleArgument EOF ; 6560 // InternalSolverLanguageParser.g:2650:1: entryRuleArgument returns [EObject current=null] : iv_ruleArgument= ruleArgument EOF ;
4925 public final EObject entryRuleArgument() throws RecognitionException { 6561 public final EObject entryRuleArgument() throws RecognitionException {
4926 EObject current = null; 6562 EObject current = null;
4927 6563
@@ -4929,8 +6565,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4929 6565
4930 6566
4931 try { 6567 try {
4932 // InternalSolverLanguageParser.g:1951:49: (iv_ruleArgument= ruleArgument EOF ) 6568 // InternalSolverLanguageParser.g:2650:49: (iv_ruleArgument= ruleArgument EOF )
4933 // InternalSolverLanguageParser.g:1952:2: iv_ruleArgument= ruleArgument EOF 6569 // InternalSolverLanguageParser.g:2651:2: iv_ruleArgument= ruleArgument EOF
4934 { 6570 {
4935 newCompositeNode(grammarAccess.getArgumentRule()); 6571 newCompositeNode(grammarAccess.getArgumentRule());
4936 pushFollow(FOLLOW_1); 6572 pushFollow(FOLLOW_1);
@@ -4957,7 +6593,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4957 6593
4958 6594
4959 // $ANTLR start "ruleArgument" 6595 // $ANTLR start "ruleArgument"
4960 // InternalSolverLanguageParser.g:1958:1: ruleArgument returns [EObject current=null] : (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedArgument_2= ruleTypedArgument | this_TypedStarArgument_3= ruleTypedStarArgument ) ; 6596 // InternalSolverLanguageParser.g:2657:1: ruleArgument returns [EObject current=null] : (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedArgument_2= ruleTypedArgument | this_TypedStarArgument_3= ruleTypedStarArgument ) ;
4961 public final EObject ruleArgument() throws RecognitionException { 6597 public final EObject ruleArgument() throws RecognitionException {
4962 EObject current = null; 6598 EObject current = null;
4963 6599
@@ -4974,15 +6610,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
4974 enterRule(); 6610 enterRule();
4975 6611
4976 try { 6612 try {
4977 // InternalSolverLanguageParser.g:1964:2: ( (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedArgument_2= ruleTypedArgument | this_TypedStarArgument_3= ruleTypedStarArgument ) ) 6613 // InternalSolverLanguageParser.g:2663:2: ( (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedArgument_2= ruleTypedArgument | this_TypedStarArgument_3= ruleTypedStarArgument ) )
4978 // InternalSolverLanguageParser.g:1965:2: (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedArgument_2= ruleTypedArgument | this_TypedStarArgument_3= ruleTypedStarArgument ) 6614 // InternalSolverLanguageParser.g:2664:2: (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedArgument_2= ruleTypedArgument | this_TypedStarArgument_3= ruleTypedStarArgument )
4979 { 6615 {
4980 // InternalSolverLanguageParser.g:1965:2: (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedArgument_2= ruleTypedArgument | this_TypedStarArgument_3= ruleTypedStarArgument ) 6616 // InternalSolverLanguageParser.g:2664:2: (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedArgument_2= ruleTypedArgument | this_TypedStarArgument_3= ruleTypedStarArgument )
4981 int alt24=4; 6617 int alt33=4;
4982 alt24 = dfa24.predict(input); 6618 alt33 = dfa33.predict(input);
4983 switch (alt24) { 6619 switch (alt33) {
4984 case 1 : 6620 case 1 :
4985 // InternalSolverLanguageParser.g:1966:3: this_ExpressionArgument_0= ruleExpressionArgument 6621 // InternalSolverLanguageParser.g:2665:3: this_ExpressionArgument_0= ruleExpressionArgument
4986 { 6622 {
4987 6623
4988 newCompositeNode(grammarAccess.getArgumentAccess().getExpressionArgumentParserRuleCall_0()); 6624 newCompositeNode(grammarAccess.getArgumentAccess().getExpressionArgumentParserRuleCall_0());
@@ -5000,7 +6636,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5000 } 6636 }
5001 break; 6637 break;
5002 case 2 : 6638 case 2 :
5003 // InternalSolverLanguageParser.g:1975:3: this_StarArgument_1= ruleStarArgument 6639 // InternalSolverLanguageParser.g:2674:3: this_StarArgument_1= ruleStarArgument
5004 { 6640 {
5005 6641
5006 newCompositeNode(grammarAccess.getArgumentAccess().getStarArgumentParserRuleCall_1()); 6642 newCompositeNode(grammarAccess.getArgumentAccess().getStarArgumentParserRuleCall_1());
@@ -5018,7 +6654,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5018 } 6654 }
5019 break; 6655 break;
5020 case 3 : 6656 case 3 :
5021 // InternalSolverLanguageParser.g:1984:3: this_TypedArgument_2= ruleTypedArgument 6657 // InternalSolverLanguageParser.g:2683:3: this_TypedArgument_2= ruleTypedArgument
5022 { 6658 {
5023 6659
5024 newCompositeNode(grammarAccess.getArgumentAccess().getTypedArgumentParserRuleCall_2()); 6660 newCompositeNode(grammarAccess.getArgumentAccess().getTypedArgumentParserRuleCall_2());
@@ -5036,7 +6672,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5036 } 6672 }
5037 break; 6673 break;
5038 case 4 : 6674 case 4 :
5039 // InternalSolverLanguageParser.g:1993:3: this_TypedStarArgument_3= ruleTypedStarArgument 6675 // InternalSolverLanguageParser.g:2692:3: this_TypedStarArgument_3= ruleTypedStarArgument
5040 { 6676 {
5041 6677
5042 newCompositeNode(grammarAccess.getArgumentAccess().getTypedStarArgumentParserRuleCall_3()); 6678 newCompositeNode(grammarAccess.getArgumentAccess().getTypedStarArgumentParserRuleCall_3());
@@ -5076,7 +6712,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5076 6712
5077 6713
5078 // $ANTLR start "entryRuleExpressionArgument" 6714 // $ANTLR start "entryRuleExpressionArgument"
5079 // InternalSolverLanguageParser.g:2005:1: entryRuleExpressionArgument returns [EObject current=null] : iv_ruleExpressionArgument= ruleExpressionArgument EOF ; 6715 // InternalSolverLanguageParser.g:2704:1: entryRuleExpressionArgument returns [EObject current=null] : iv_ruleExpressionArgument= ruleExpressionArgument EOF ;
5080 public final EObject entryRuleExpressionArgument() throws RecognitionException { 6716 public final EObject entryRuleExpressionArgument() throws RecognitionException {
5081 EObject current = null; 6717 EObject current = null;
5082 6718
@@ -5084,8 +6720,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5084 6720
5085 6721
5086 try { 6722 try {
5087 // InternalSolverLanguageParser.g:2005:59: (iv_ruleExpressionArgument= ruleExpressionArgument EOF ) 6723 // InternalSolverLanguageParser.g:2704:59: (iv_ruleExpressionArgument= ruleExpressionArgument EOF )
5088 // InternalSolverLanguageParser.g:2006:2: iv_ruleExpressionArgument= ruleExpressionArgument EOF 6724 // InternalSolverLanguageParser.g:2705:2: iv_ruleExpressionArgument= ruleExpressionArgument EOF
5089 { 6725 {
5090 newCompositeNode(grammarAccess.getExpressionArgumentRule()); 6726 newCompositeNode(grammarAccess.getExpressionArgumentRule());
5091 pushFollow(FOLLOW_1); 6727 pushFollow(FOLLOW_1);
@@ -5112,7 +6748,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5112 6748
5113 6749
5114 // $ANTLR start "ruleExpressionArgument" 6750 // $ANTLR start "ruleExpressionArgument"
5115 // InternalSolverLanguageParser.g:2012:1: ruleExpressionArgument returns [EObject current=null] : ( (lv_body_0_0= ruleComparisonExpression ) ) ; 6751 // InternalSolverLanguageParser.g:2711:1: ruleExpressionArgument returns [EObject current=null] : ( (lv_body_0_0= ruleComparisonExpression ) ) ;
5116 public final EObject ruleExpressionArgument() throws RecognitionException { 6752 public final EObject ruleExpressionArgument() throws RecognitionException {
5117 EObject current = null; 6753 EObject current = null;
5118 6754
@@ -5123,14 +6759,14 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5123 enterRule(); 6759 enterRule();
5124 6760
5125 try { 6761 try {
5126 // InternalSolverLanguageParser.g:2018:2: ( ( (lv_body_0_0= ruleComparisonExpression ) ) ) 6762 // InternalSolverLanguageParser.g:2717:2: ( ( (lv_body_0_0= ruleComparisonExpression ) ) )
5127 // InternalSolverLanguageParser.g:2019:2: ( (lv_body_0_0= ruleComparisonExpression ) ) 6763 // InternalSolverLanguageParser.g:2718:2: ( (lv_body_0_0= ruleComparisonExpression ) )
5128 { 6764 {
5129 // InternalSolverLanguageParser.g:2019:2: ( (lv_body_0_0= ruleComparisonExpression ) ) 6765 // InternalSolverLanguageParser.g:2718:2: ( (lv_body_0_0= ruleComparisonExpression ) )
5130 // InternalSolverLanguageParser.g:2020:3: (lv_body_0_0= ruleComparisonExpression ) 6766 // InternalSolverLanguageParser.g:2719:3: (lv_body_0_0= ruleComparisonExpression )
5131 { 6767 {
5132 // InternalSolverLanguageParser.g:2020:3: (lv_body_0_0= ruleComparisonExpression ) 6768 // InternalSolverLanguageParser.g:2719:3: (lv_body_0_0= ruleComparisonExpression )
5133 // InternalSolverLanguageParser.g:2021:4: lv_body_0_0= ruleComparisonExpression 6769 // InternalSolverLanguageParser.g:2720:4: lv_body_0_0= ruleComparisonExpression
5134 { 6770 {
5135 6771
5136 newCompositeNode(grammarAccess.getExpressionArgumentAccess().getBodyComparisonExpressionParserRuleCall_0()); 6772 newCompositeNode(grammarAccess.getExpressionArgumentAccess().getBodyComparisonExpressionParserRuleCall_0());
@@ -5177,7 +6813,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5177 6813
5178 6814
5179 // $ANTLR start "entryRuleStarArgument" 6815 // $ANTLR start "entryRuleStarArgument"
5180 // InternalSolverLanguageParser.g:2041:1: entryRuleStarArgument returns [EObject current=null] : iv_ruleStarArgument= ruleStarArgument EOF ; 6816 // InternalSolverLanguageParser.g:2740:1: entryRuleStarArgument returns [EObject current=null] : iv_ruleStarArgument= ruleStarArgument EOF ;
5181 public final EObject entryRuleStarArgument() throws RecognitionException { 6817 public final EObject entryRuleStarArgument() throws RecognitionException {
5182 EObject current = null; 6818 EObject current = null;
5183 6819
@@ -5185,8 +6821,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5185 6821
5186 6822
5187 try { 6823 try {
5188 // InternalSolverLanguageParser.g:2041:53: (iv_ruleStarArgument= ruleStarArgument EOF ) 6824 // InternalSolverLanguageParser.g:2740:53: (iv_ruleStarArgument= ruleStarArgument EOF )
5189 // InternalSolverLanguageParser.g:2042:2: iv_ruleStarArgument= ruleStarArgument EOF 6825 // InternalSolverLanguageParser.g:2741:2: iv_ruleStarArgument= ruleStarArgument EOF
5190 { 6826 {
5191 newCompositeNode(grammarAccess.getStarArgumentRule()); 6827 newCompositeNode(grammarAccess.getStarArgumentRule());
5192 pushFollow(FOLLOW_1); 6828 pushFollow(FOLLOW_1);
@@ -5213,7 +6849,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5213 6849
5214 6850
5215 // $ANTLR start "ruleStarArgument" 6851 // $ANTLR start "ruleStarArgument"
5216 // InternalSolverLanguageParser.g:2048:1: ruleStarArgument returns [EObject current=null] : ( () otherlv_1= Asterisk ) ; 6852 // InternalSolverLanguageParser.g:2747:1: ruleStarArgument returns [EObject current=null] : ( () otherlv_1= Asterisk ) ;
5217 public final EObject ruleStarArgument() throws RecognitionException { 6853 public final EObject ruleStarArgument() throws RecognitionException {
5218 EObject current = null; 6854 EObject current = null;
5219 6855
@@ -5223,14 +6859,14 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5223 enterRule(); 6859 enterRule();
5224 6860
5225 try { 6861 try {
5226 // InternalSolverLanguageParser.g:2054:2: ( ( () otherlv_1= Asterisk ) ) 6862 // InternalSolverLanguageParser.g:2753:2: ( ( () otherlv_1= Asterisk ) )
5227 // InternalSolverLanguageParser.g:2055:2: ( () otherlv_1= Asterisk ) 6863 // InternalSolverLanguageParser.g:2754:2: ( () otherlv_1= Asterisk )
5228 { 6864 {
5229 // InternalSolverLanguageParser.g:2055:2: ( () otherlv_1= Asterisk ) 6865 // InternalSolverLanguageParser.g:2754:2: ( () otherlv_1= Asterisk )
5230 // InternalSolverLanguageParser.g:2056:3: () otherlv_1= Asterisk 6866 // InternalSolverLanguageParser.g:2755:3: () otherlv_1= Asterisk
5231 { 6867 {
5232 // InternalSolverLanguageParser.g:2056:3: () 6868 // InternalSolverLanguageParser.g:2755:3: ()
5233 // InternalSolverLanguageParser.g:2057:4: 6869 // InternalSolverLanguageParser.g:2756:4:
5234 { 6870 {
5235 6871
5236 current = forceCreateModelElement( 6872 current = forceCreateModelElement(
@@ -5267,7 +6903,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5267 6903
5268 6904
5269 // $ANTLR start "entryRuleTypedArgument" 6905 // $ANTLR start "entryRuleTypedArgument"
5270 // InternalSolverLanguageParser.g:2071:1: entryRuleTypedArgument returns [EObject current=null] : iv_ruleTypedArgument= ruleTypedArgument EOF ; 6906 // InternalSolverLanguageParser.g:2770:1: entryRuleTypedArgument returns [EObject current=null] : iv_ruleTypedArgument= ruleTypedArgument EOF ;
5271 public final EObject entryRuleTypedArgument() throws RecognitionException { 6907 public final EObject entryRuleTypedArgument() throws RecognitionException {
5272 EObject current = null; 6908 EObject current = null;
5273 6909
@@ -5275,8 +6911,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5275 6911
5276 6912
5277 try { 6913 try {
5278 // InternalSolverLanguageParser.g:2071:54: (iv_ruleTypedArgument= ruleTypedArgument EOF ) 6914 // InternalSolverLanguageParser.g:2770:54: (iv_ruleTypedArgument= ruleTypedArgument EOF )
5279 // InternalSolverLanguageParser.g:2072:2: iv_ruleTypedArgument= ruleTypedArgument EOF 6915 // InternalSolverLanguageParser.g:2771:2: iv_ruleTypedArgument= ruleTypedArgument EOF
5280 { 6916 {
5281 newCompositeNode(grammarAccess.getTypedArgumentRule()); 6917 newCompositeNode(grammarAccess.getTypedArgumentRule());
5282 pushFollow(FOLLOW_1); 6918 pushFollow(FOLLOW_1);
@@ -5303,7 +6939,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5303 6939
5304 6940
5305 // $ANTLR start "ruleTypedArgument" 6941 // $ANTLR start "ruleTypedArgument"
5306 // InternalSolverLanguageParser.g:2078:1: ruleTypedArgument returns [EObject current=null] : ( ( ( ruleQualifiedName ) ) ( ( ruleQualifiedName ) ) ) ; 6942 // InternalSolverLanguageParser.g:2777:1: ruleTypedArgument returns [EObject current=null] : ( ( ( ruleQualifiedName ) ) ( ( ruleQualifiedName ) ) ) ;
5307 public final EObject ruleTypedArgument() throws RecognitionException { 6943 public final EObject ruleTypedArgument() throws RecognitionException {
5308 EObject current = null; 6944 EObject current = null;
5309 6945
@@ -5311,17 +6947,17 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5311 enterRule(); 6947 enterRule();
5312 6948
5313 try { 6949 try {
5314 // InternalSolverLanguageParser.g:2084:2: ( ( ( ( ruleQualifiedName ) ) ( ( ruleQualifiedName ) ) ) ) 6950 // InternalSolverLanguageParser.g:2783:2: ( ( ( ( ruleQualifiedName ) ) ( ( ruleQualifiedName ) ) ) )
5315 // InternalSolverLanguageParser.g:2085:2: ( ( ( ruleQualifiedName ) ) ( ( ruleQualifiedName ) ) ) 6951 // InternalSolverLanguageParser.g:2784:2: ( ( ( ruleQualifiedName ) ) ( ( ruleQualifiedName ) ) )
5316 { 6952 {
5317 // InternalSolverLanguageParser.g:2085:2: ( ( ( ruleQualifiedName ) ) ( ( ruleQualifiedName ) ) ) 6953 // InternalSolverLanguageParser.g:2784:2: ( ( ( ruleQualifiedName ) ) ( ( ruleQualifiedName ) ) )
5318 // InternalSolverLanguageParser.g:2086:3: ( ( ruleQualifiedName ) ) ( ( ruleQualifiedName ) ) 6954 // InternalSolverLanguageParser.g:2785:3: ( ( ruleQualifiedName ) ) ( ( ruleQualifiedName ) )
5319 { 6955 {
5320 // InternalSolverLanguageParser.g:2086:3: ( ( ruleQualifiedName ) ) 6956 // InternalSolverLanguageParser.g:2785:3: ( ( ruleQualifiedName ) )
5321 // InternalSolverLanguageParser.g:2087:4: ( ruleQualifiedName ) 6957 // InternalSolverLanguageParser.g:2786:4: ( ruleQualifiedName )
5322 { 6958 {
5323 // InternalSolverLanguageParser.g:2087:4: ( ruleQualifiedName ) 6959 // InternalSolverLanguageParser.g:2786:4: ( ruleQualifiedName )
5324 // InternalSolverLanguageParser.g:2088:5: ruleQualifiedName 6960 // InternalSolverLanguageParser.g:2787:5: ruleQualifiedName
5325 { 6961 {
5326 6962
5327 if (current==null) { 6963 if (current==null) {
@@ -5345,11 +6981,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5345 6981
5346 } 6982 }
5347 6983
5348 // InternalSolverLanguageParser.g:2102:3: ( ( ruleQualifiedName ) ) 6984 // InternalSolverLanguageParser.g:2801:3: ( ( ruleQualifiedName ) )
5349 // InternalSolverLanguageParser.g:2103:4: ( ruleQualifiedName ) 6985 // InternalSolverLanguageParser.g:2802:4: ( ruleQualifiedName )
5350 { 6986 {
5351 // InternalSolverLanguageParser.g:2103:4: ( ruleQualifiedName ) 6987 // InternalSolverLanguageParser.g:2802:4: ( ruleQualifiedName )
5352 // InternalSolverLanguageParser.g:2104:5: ruleQualifiedName 6988 // InternalSolverLanguageParser.g:2803:5: ruleQualifiedName
5353 { 6989 {
5354 6990
5355 if (current==null) { 6991 if (current==null) {
@@ -5396,7 +7032,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5396 7032
5397 7033
5398 // $ANTLR start "entryRuleTypedStarArgument" 7034 // $ANTLR start "entryRuleTypedStarArgument"
5399 // InternalSolverLanguageParser.g:2122:1: entryRuleTypedStarArgument returns [EObject current=null] : iv_ruleTypedStarArgument= ruleTypedStarArgument EOF ; 7035 // InternalSolverLanguageParser.g:2821:1: entryRuleTypedStarArgument returns [EObject current=null] : iv_ruleTypedStarArgument= ruleTypedStarArgument EOF ;
5400 public final EObject entryRuleTypedStarArgument() throws RecognitionException { 7036 public final EObject entryRuleTypedStarArgument() throws RecognitionException {
5401 EObject current = null; 7037 EObject current = null;
5402 7038
@@ -5404,8 +7040,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5404 7040
5405 7041
5406 try { 7042 try {
5407 // InternalSolverLanguageParser.g:2122:58: (iv_ruleTypedStarArgument= ruleTypedStarArgument EOF ) 7043 // InternalSolverLanguageParser.g:2821:58: (iv_ruleTypedStarArgument= ruleTypedStarArgument EOF )
5408 // InternalSolverLanguageParser.g:2123:2: iv_ruleTypedStarArgument= ruleTypedStarArgument EOF 7044 // InternalSolverLanguageParser.g:2822:2: iv_ruleTypedStarArgument= ruleTypedStarArgument EOF
5409 { 7045 {
5410 newCompositeNode(grammarAccess.getTypedStarArgumentRule()); 7046 newCompositeNode(grammarAccess.getTypedStarArgumentRule());
5411 pushFollow(FOLLOW_1); 7047 pushFollow(FOLLOW_1);
@@ -5432,7 +7068,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5432 7068
5433 7069
5434 // $ANTLR start "ruleTypedStarArgument" 7070 // $ANTLR start "ruleTypedStarArgument"
5435 // InternalSolverLanguageParser.g:2129:1: ruleTypedStarArgument returns [EObject current=null] : ( ( ( ruleQualifiedName ) ) otherlv_1= Asterisk ) ; 7071 // InternalSolverLanguageParser.g:2828:1: ruleTypedStarArgument returns [EObject current=null] : ( ( ( ruleQualifiedName ) ) otherlv_1= Asterisk ) ;
5436 public final EObject ruleTypedStarArgument() throws RecognitionException { 7072 public final EObject ruleTypedStarArgument() throws RecognitionException {
5437 EObject current = null; 7073 EObject current = null;
5438 7074
@@ -5442,17 +7078,17 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5442 enterRule(); 7078 enterRule();
5443 7079
5444 try { 7080 try {
5445 // InternalSolverLanguageParser.g:2135:2: ( ( ( ( ruleQualifiedName ) ) otherlv_1= Asterisk ) ) 7081 // InternalSolverLanguageParser.g:2834:2: ( ( ( ( ruleQualifiedName ) ) otherlv_1= Asterisk ) )
5446 // InternalSolverLanguageParser.g:2136:2: ( ( ( ruleQualifiedName ) ) otherlv_1= Asterisk ) 7082 // InternalSolverLanguageParser.g:2835:2: ( ( ( ruleQualifiedName ) ) otherlv_1= Asterisk )
5447 { 7083 {
5448 // InternalSolverLanguageParser.g:2136:2: ( ( ( ruleQualifiedName ) ) otherlv_1= Asterisk ) 7084 // InternalSolverLanguageParser.g:2835:2: ( ( ( ruleQualifiedName ) ) otherlv_1= Asterisk )
5449 // InternalSolverLanguageParser.g:2137:3: ( ( ruleQualifiedName ) ) otherlv_1= Asterisk 7085 // InternalSolverLanguageParser.g:2836:3: ( ( ruleQualifiedName ) ) otherlv_1= Asterisk
5450 { 7086 {
5451 // InternalSolverLanguageParser.g:2137:3: ( ( ruleQualifiedName ) ) 7087 // InternalSolverLanguageParser.g:2836:3: ( ( ruleQualifiedName ) )
5452 // InternalSolverLanguageParser.g:2138:4: ( ruleQualifiedName ) 7088 // InternalSolverLanguageParser.g:2837:4: ( ruleQualifiedName )
5453 { 7089 {
5454 // InternalSolverLanguageParser.g:2138:4: ( ruleQualifiedName ) 7090 // InternalSolverLanguageParser.g:2837:4: ( ruleQualifiedName )
5455 // InternalSolverLanguageParser.g:2139:5: ruleQualifiedName 7091 // InternalSolverLanguageParser.g:2838:5: ruleQualifiedName
5456 { 7092 {
5457 7093
5458 if (current==null) { 7094 if (current==null) {
@@ -5462,7 +7098,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5462 7098
5463 newCompositeNode(grammarAccess.getTypedStarArgumentAccess().getTypeNamedElementCrossReference_0_0()); 7099 newCompositeNode(grammarAccess.getTypedStarArgumentAccess().getTypeNamedElementCrossReference_0_0());
5464 7100
5465 pushFollow(FOLLOW_34); 7101 pushFollow(FOLLOW_43);
5466 ruleQualifiedName(); 7102 ruleQualifiedName();
5467 7103
5468 state._fsp--; 7104 state._fsp--;
@@ -5503,7 +7139,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5503 7139
5504 7140
5505 // $ANTLR start "entryRuleReference" 7141 // $ANTLR start "entryRuleReference"
5506 // InternalSolverLanguageParser.g:2161:1: entryRuleReference returns [EObject current=null] : iv_ruleReference= ruleReference EOF ; 7142 // InternalSolverLanguageParser.g:2860:1: entryRuleReference returns [EObject current=null] : iv_ruleReference= ruleReference EOF ;
5507 public final EObject entryRuleReference() throws RecognitionException { 7143 public final EObject entryRuleReference() throws RecognitionException {
5508 EObject current = null; 7144 EObject current = null;
5509 7145
@@ -5511,8 +7147,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5511 7147
5512 7148
5513 try { 7149 try {
5514 // InternalSolverLanguageParser.g:2161:50: (iv_ruleReference= ruleReference EOF ) 7150 // InternalSolverLanguageParser.g:2860:50: (iv_ruleReference= ruleReference EOF )
5515 // InternalSolverLanguageParser.g:2162:2: iv_ruleReference= ruleReference EOF 7151 // InternalSolverLanguageParser.g:2861:2: iv_ruleReference= ruleReference EOF
5516 { 7152 {
5517 newCompositeNode(grammarAccess.getReferenceRule()); 7153 newCompositeNode(grammarAccess.getReferenceRule());
5518 pushFollow(FOLLOW_1); 7154 pushFollow(FOLLOW_1);
@@ -5539,7 +7175,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5539 7175
5540 7176
5541 // $ANTLR start "ruleReference" 7177 // $ANTLR start "ruleReference"
5542 // InternalSolverLanguageParser.g:2168:1: ruleReference returns [EObject current=null] : ( ( ruleQualifiedName ) ) ; 7178 // InternalSolverLanguageParser.g:2867:1: ruleReference returns [EObject current=null] : ( ( ruleQualifiedName ) ) ;
5543 public final EObject ruleReference() throws RecognitionException { 7179 public final EObject ruleReference() throws RecognitionException {
5544 EObject current = null; 7180 EObject current = null;
5545 7181
@@ -5547,14 +7183,14 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5547 enterRule(); 7183 enterRule();
5548 7184
5549 try { 7185 try {
5550 // InternalSolverLanguageParser.g:2174:2: ( ( ( ruleQualifiedName ) ) ) 7186 // InternalSolverLanguageParser.g:2873:2: ( ( ( ruleQualifiedName ) ) )
5551 // InternalSolverLanguageParser.g:2175:2: ( ( ruleQualifiedName ) ) 7187 // InternalSolverLanguageParser.g:2874:2: ( ( ruleQualifiedName ) )
5552 { 7188 {
5553 // InternalSolverLanguageParser.g:2175:2: ( ( ruleQualifiedName ) ) 7189 // InternalSolverLanguageParser.g:2874:2: ( ( ruleQualifiedName ) )
5554 // InternalSolverLanguageParser.g:2176:3: ( ruleQualifiedName ) 7190 // InternalSolverLanguageParser.g:2875:3: ( ruleQualifiedName )
5555 { 7191 {
5556 // InternalSolverLanguageParser.g:2176:3: ( ruleQualifiedName ) 7192 // InternalSolverLanguageParser.g:2875:3: ( ruleQualifiedName )
5557 // InternalSolverLanguageParser.g:2177:4: ruleQualifiedName 7193 // InternalSolverLanguageParser.g:2876:4: ruleQualifiedName
5558 { 7194 {
5559 7195
5560 if (current==null) { 7196 if (current==null) {
@@ -5598,7 +7234,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5598 7234
5599 7235
5600 // $ANTLR start "entryRuleInterval" 7236 // $ANTLR start "entryRuleInterval"
5601 // InternalSolverLanguageParser.g:2194:1: entryRuleInterval returns [EObject current=null] : iv_ruleInterval= ruleInterval EOF ; 7237 // InternalSolverLanguageParser.g:2893:1: entryRuleInterval returns [EObject current=null] : iv_ruleInterval= ruleInterval EOF ;
5602 public final EObject entryRuleInterval() throws RecognitionException { 7238 public final EObject entryRuleInterval() throws RecognitionException {
5603 EObject current = null; 7239 EObject current = null;
5604 7240
@@ -5606,8 +7242,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5606 7242
5607 7243
5608 try { 7244 try {
5609 // InternalSolverLanguageParser.g:2194:49: (iv_ruleInterval= ruleInterval EOF ) 7245 // InternalSolverLanguageParser.g:2893:49: (iv_ruleInterval= ruleInterval EOF )
5610 // InternalSolverLanguageParser.g:2195:2: iv_ruleInterval= ruleInterval EOF 7246 // InternalSolverLanguageParser.g:2894:2: iv_ruleInterval= ruleInterval EOF
5611 { 7247 {
5612 newCompositeNode(grammarAccess.getIntervalRule()); 7248 newCompositeNode(grammarAccess.getIntervalRule());
5613 pushFollow(FOLLOW_1); 7249 pushFollow(FOLLOW_1);
@@ -5634,7 +7270,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5634 7270
5635 7271
5636 // $ANTLR start "ruleInterval" 7272 // $ANTLR start "ruleInterval"
5637 // InternalSolverLanguageParser.g:2201:1: ruleInterval returns [EObject current=null] : (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleExpression ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleExpression ) ) otherlv_4= RightSquareBracket ) ; 7273 // InternalSolverLanguageParser.g:2900:1: ruleInterval returns [EObject current=null] : (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleExpression ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleExpression ) ) otherlv_4= RightSquareBracket ) ;
5638 public final EObject ruleInterval() throws RecognitionException { 7274 public final EObject ruleInterval() throws RecognitionException {
5639 EObject current = null; 7275 EObject current = null;
5640 7276
@@ -5650,26 +7286,26 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5650 enterRule(); 7286 enterRule();
5651 7287
5652 try { 7288 try {
5653 // InternalSolverLanguageParser.g:2207:2: ( (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleExpression ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleExpression ) ) otherlv_4= RightSquareBracket ) ) 7289 // InternalSolverLanguageParser.g:2906:2: ( (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleExpression ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleExpression ) ) otherlv_4= RightSquareBracket ) )
5654 // InternalSolverLanguageParser.g:2208:2: (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleExpression ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleExpression ) ) otherlv_4= RightSquareBracket ) 7290 // InternalSolverLanguageParser.g:2907:2: (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleExpression ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleExpression ) ) otherlv_4= RightSquareBracket )
5655 { 7291 {
5656 // InternalSolverLanguageParser.g:2208:2: (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleExpression ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleExpression ) ) otherlv_4= RightSquareBracket ) 7292 // InternalSolverLanguageParser.g:2907:2: (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleExpression ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleExpression ) ) otherlv_4= RightSquareBracket )
5657 // InternalSolverLanguageParser.g:2209:3: otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleExpression ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleExpression ) ) otherlv_4= RightSquareBracket 7293 // InternalSolverLanguageParser.g:2908:3: otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleExpression ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleExpression ) ) otherlv_4= RightSquareBracket
5658 { 7294 {
5659 otherlv_0=(Token)match(input,LeftSquareBracket,FOLLOW_6); 7295 otherlv_0=(Token)match(input,LeftSquareBracket,FOLLOW_6);
5660 7296
5661 newLeafNode(otherlv_0, grammarAccess.getIntervalAccess().getLeftSquareBracketKeyword_0()); 7297 newLeafNode(otherlv_0, grammarAccess.getIntervalAccess().getLeftSquareBracketKeyword_0());
5662 7298
5663 // InternalSolverLanguageParser.g:2213:3: ( (lv_lowerBound_1_0= ruleExpression ) ) 7299 // InternalSolverLanguageParser.g:2912:3: ( (lv_lowerBound_1_0= ruleExpression ) )
5664 // InternalSolverLanguageParser.g:2214:4: (lv_lowerBound_1_0= ruleExpression ) 7300 // InternalSolverLanguageParser.g:2913:4: (lv_lowerBound_1_0= ruleExpression )
5665 { 7301 {
5666 // InternalSolverLanguageParser.g:2214:4: (lv_lowerBound_1_0= ruleExpression ) 7302 // InternalSolverLanguageParser.g:2913:4: (lv_lowerBound_1_0= ruleExpression )
5667 // InternalSolverLanguageParser.g:2215:5: lv_lowerBound_1_0= ruleExpression 7303 // InternalSolverLanguageParser.g:2914:5: lv_lowerBound_1_0= ruleExpression
5668 { 7304 {
5669 7305
5670 newCompositeNode(grammarAccess.getIntervalAccess().getLowerBoundExpressionParserRuleCall_1_0()); 7306 newCompositeNode(grammarAccess.getIntervalAccess().getLowerBoundExpressionParserRuleCall_1_0());
5671 7307
5672 pushFollow(FOLLOW_35); 7308 pushFollow(FOLLOW_44);
5673 lv_lowerBound_1_0=ruleExpression(); 7309 lv_lowerBound_1_0=ruleExpression();
5674 7310
5675 state._fsp--; 7311 state._fsp--;
@@ -5695,16 +7331,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5695 7331
5696 newLeafNode(otherlv_2, grammarAccess.getIntervalAccess().getFullStopFullStopKeyword_2()); 7332 newLeafNode(otherlv_2, grammarAccess.getIntervalAccess().getFullStopFullStopKeyword_2());
5697 7333
5698 // InternalSolverLanguageParser.g:2236:3: ( (lv_upperBound_3_0= ruleExpression ) ) 7334 // InternalSolverLanguageParser.g:2935:3: ( (lv_upperBound_3_0= ruleExpression ) )
5699 // InternalSolverLanguageParser.g:2237:4: (lv_upperBound_3_0= ruleExpression ) 7335 // InternalSolverLanguageParser.g:2936:4: (lv_upperBound_3_0= ruleExpression )
5700 { 7336 {
5701 // InternalSolverLanguageParser.g:2237:4: (lv_upperBound_3_0= ruleExpression ) 7337 // InternalSolverLanguageParser.g:2936:4: (lv_upperBound_3_0= ruleExpression )
5702 // InternalSolverLanguageParser.g:2238:5: lv_upperBound_3_0= ruleExpression 7338 // InternalSolverLanguageParser.g:2937:5: lv_upperBound_3_0= ruleExpression
5703 { 7339 {
5704 7340
5705 newCompositeNode(grammarAccess.getIntervalAccess().getUpperBoundExpressionParserRuleCall_3_0()); 7341 newCompositeNode(grammarAccess.getIntervalAccess().getUpperBoundExpressionParserRuleCall_3_0());
5706 7342
5707 pushFollow(FOLLOW_36); 7343 pushFollow(FOLLOW_45);
5708 lv_upperBound_3_0=ruleExpression(); 7344 lv_upperBound_3_0=ruleExpression();
5709 7345
5710 state._fsp--; 7346 state._fsp--;
@@ -5753,7 +7389,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5753 7389
5754 7390
5755 // $ANTLR start "entryRuleLiteral" 7391 // $ANTLR start "entryRuleLiteral"
5756 // InternalSolverLanguageParser.g:2263:1: entryRuleLiteral returns [EObject current=null] : iv_ruleLiteral= ruleLiteral EOF ; 7392 // InternalSolverLanguageParser.g:2962:1: entryRuleLiteral returns [EObject current=null] : iv_ruleLiteral= ruleLiteral EOF ;
5757 public final EObject entryRuleLiteral() throws RecognitionException { 7393 public final EObject entryRuleLiteral() throws RecognitionException {
5758 EObject current = null; 7394 EObject current = null;
5759 7395
@@ -5761,8 +7397,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5761 7397
5762 7398
5763 try { 7399 try {
5764 // InternalSolverLanguageParser.g:2263:48: (iv_ruleLiteral= ruleLiteral EOF ) 7400 // InternalSolverLanguageParser.g:2962:48: (iv_ruleLiteral= ruleLiteral EOF )
5765 // InternalSolverLanguageParser.g:2264:2: iv_ruleLiteral= ruleLiteral EOF 7401 // InternalSolverLanguageParser.g:2963:2: iv_ruleLiteral= ruleLiteral EOF
5766 { 7402 {
5767 newCompositeNode(grammarAccess.getLiteralRule()); 7403 newCompositeNode(grammarAccess.getLiteralRule());
5768 pushFollow(FOLLOW_1); 7404 pushFollow(FOLLOW_1);
@@ -5789,7 +7425,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5789 7425
5790 7426
5791 // $ANTLR start "ruleLiteral" 7427 // $ANTLR start "ruleLiteral"
5792 // InternalSolverLanguageParser.g:2270:1: ruleLiteral returns [EObject current=null] : (this_LogicLiteral_0= ruleLogicLiteral | this_NumericLiteral_1= ruleNumericLiteral | this_InfinityLiteral_2= ruleInfinityLiteral | this_EmptyIntervalLiteral_3= ruleEmptyIntervalLiteral | this_StringLiteral_4= ruleStringLiteral ) ; 7428 // InternalSolverLanguageParser.g:2969:1: ruleLiteral returns [EObject current=null] : (this_LogicLiteral_0= ruleLogicLiteral | this_NumericLiteral_1= ruleNumericLiteral | this_InfinityLiteral_2= ruleInfinityLiteral | this_EmptyIntervalLiteral_3= ruleEmptyIntervalLiteral | this_StringLiteral_4= ruleStringLiteral ) ;
5793 public final EObject ruleLiteral() throws RecognitionException { 7429 public final EObject ruleLiteral() throws RecognitionException {
5794 EObject current = null; 7430 EObject current = null;
5795 7431
@@ -5808,50 +7444,50 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5808 enterRule(); 7444 enterRule();
5809 7445
5810 try { 7446 try {
5811 // InternalSolverLanguageParser.g:2276:2: ( (this_LogicLiteral_0= ruleLogicLiteral | this_NumericLiteral_1= ruleNumericLiteral | this_InfinityLiteral_2= ruleInfinityLiteral | this_EmptyIntervalLiteral_3= ruleEmptyIntervalLiteral | this_StringLiteral_4= ruleStringLiteral ) ) 7447 // InternalSolverLanguageParser.g:2975:2: ( (this_LogicLiteral_0= ruleLogicLiteral | this_NumericLiteral_1= ruleNumericLiteral | this_InfinityLiteral_2= ruleInfinityLiteral | this_EmptyIntervalLiteral_3= ruleEmptyIntervalLiteral | this_StringLiteral_4= ruleStringLiteral ) )
5812 // InternalSolverLanguageParser.g:2277:2: (this_LogicLiteral_0= ruleLogicLiteral | this_NumericLiteral_1= ruleNumericLiteral | this_InfinityLiteral_2= ruleInfinityLiteral | this_EmptyIntervalLiteral_3= ruleEmptyIntervalLiteral | this_StringLiteral_4= ruleStringLiteral ) 7448 // InternalSolverLanguageParser.g:2976:2: (this_LogicLiteral_0= ruleLogicLiteral | this_NumericLiteral_1= ruleNumericLiteral | this_InfinityLiteral_2= ruleInfinityLiteral | this_EmptyIntervalLiteral_3= ruleEmptyIntervalLiteral | this_StringLiteral_4= ruleStringLiteral )
5813 { 7449 {
5814 // InternalSolverLanguageParser.g:2277:2: (this_LogicLiteral_0= ruleLogicLiteral | this_NumericLiteral_1= ruleNumericLiteral | this_InfinityLiteral_2= ruleInfinityLiteral | this_EmptyIntervalLiteral_3= ruleEmptyIntervalLiteral | this_StringLiteral_4= ruleStringLiteral ) 7450 // InternalSolverLanguageParser.g:2976:2: (this_LogicLiteral_0= ruleLogicLiteral | this_NumericLiteral_1= ruleNumericLiteral | this_InfinityLiteral_2= ruleInfinityLiteral | this_EmptyIntervalLiteral_3= ruleEmptyIntervalLiteral | this_StringLiteral_4= ruleStringLiteral )
5815 int alt25=5; 7451 int alt34=5;
5816 switch ( input.LA(1) ) { 7452 switch ( input.LA(1) ) {
5817 case Unknown: 7453 case Unknown:
5818 case Error: 7454 case Error:
5819 case False: 7455 case False:
5820 case True: 7456 case True:
5821 { 7457 {
5822 alt25=1; 7458 alt34=1;
5823 } 7459 }
5824 break; 7460 break;
5825 case RULE_INT: 7461 case RULE_INT:
5826 { 7462 {
5827 alt25=2; 7463 alt34=2;
5828 } 7464 }
5829 break; 7465 break;
5830 case Inf: 7466 case Inf:
5831 { 7467 {
5832 alt25=3; 7468 alt34=3;
5833 } 7469 }
5834 break; 7470 break;
5835 case Empty: 7471 case Empty:
5836 { 7472 {
5837 alt25=4; 7473 alt34=4;
5838 } 7474 }
5839 break; 7475 break;
5840 case RULE_STRING: 7476 case RULE_STRING:
5841 { 7477 {
5842 alt25=5; 7478 alt34=5;
5843 } 7479 }
5844 break; 7480 break;
5845 default: 7481 default:
5846 NoViableAltException nvae = 7482 NoViableAltException nvae =
5847 new NoViableAltException("", 25, 0, input); 7483 new NoViableAltException("", 34, 0, input);
5848 7484
5849 throw nvae; 7485 throw nvae;
5850 } 7486 }
5851 7487
5852 switch (alt25) { 7488 switch (alt34) {
5853 case 1 : 7489 case 1 :
5854 // InternalSolverLanguageParser.g:2278:3: this_LogicLiteral_0= ruleLogicLiteral 7490 // InternalSolverLanguageParser.g:2977:3: this_LogicLiteral_0= ruleLogicLiteral
5855 { 7491 {
5856 7492
5857 newCompositeNode(grammarAccess.getLiteralAccess().getLogicLiteralParserRuleCall_0()); 7493 newCompositeNode(grammarAccess.getLiteralAccess().getLogicLiteralParserRuleCall_0());
@@ -5869,7 +7505,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5869 } 7505 }
5870 break; 7506 break;
5871 case 2 : 7507 case 2 :
5872 // InternalSolverLanguageParser.g:2287:3: this_NumericLiteral_1= ruleNumericLiteral 7508 // InternalSolverLanguageParser.g:2986:3: this_NumericLiteral_1= ruleNumericLiteral
5873 { 7509 {
5874 7510
5875 newCompositeNode(grammarAccess.getLiteralAccess().getNumericLiteralParserRuleCall_1()); 7511 newCompositeNode(grammarAccess.getLiteralAccess().getNumericLiteralParserRuleCall_1());
@@ -5887,7 +7523,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5887 } 7523 }
5888 break; 7524 break;
5889 case 3 : 7525 case 3 :
5890 // InternalSolverLanguageParser.g:2296:3: this_InfinityLiteral_2= ruleInfinityLiteral 7526 // InternalSolverLanguageParser.g:2995:3: this_InfinityLiteral_2= ruleInfinityLiteral
5891 { 7527 {
5892 7528
5893 newCompositeNode(grammarAccess.getLiteralAccess().getInfinityLiteralParserRuleCall_2()); 7529 newCompositeNode(grammarAccess.getLiteralAccess().getInfinityLiteralParserRuleCall_2());
@@ -5905,7 +7541,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5905 } 7541 }
5906 break; 7542 break;
5907 case 4 : 7543 case 4 :
5908 // InternalSolverLanguageParser.g:2305:3: this_EmptyIntervalLiteral_3= ruleEmptyIntervalLiteral 7544 // InternalSolverLanguageParser.g:3004:3: this_EmptyIntervalLiteral_3= ruleEmptyIntervalLiteral
5909 { 7545 {
5910 7546
5911 newCompositeNode(grammarAccess.getLiteralAccess().getEmptyIntervalLiteralParserRuleCall_3()); 7547 newCompositeNode(grammarAccess.getLiteralAccess().getEmptyIntervalLiteralParserRuleCall_3());
@@ -5923,7 +7559,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5923 } 7559 }
5924 break; 7560 break;
5925 case 5 : 7561 case 5 :
5926 // InternalSolverLanguageParser.g:2314:3: this_StringLiteral_4= ruleStringLiteral 7562 // InternalSolverLanguageParser.g:3013:3: this_StringLiteral_4= ruleStringLiteral
5927 { 7563 {
5928 7564
5929 newCompositeNode(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_4()); 7565 newCompositeNode(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_4());
@@ -5963,7 +7599,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5963 7599
5964 7600
5965 // $ANTLR start "entryRuleLogicLiteral" 7601 // $ANTLR start "entryRuleLogicLiteral"
5966 // InternalSolverLanguageParser.g:2326:1: entryRuleLogicLiteral returns [EObject current=null] : iv_ruleLogicLiteral= ruleLogicLiteral EOF ; 7602 // InternalSolverLanguageParser.g:3025:1: entryRuleLogicLiteral returns [EObject current=null] : iv_ruleLogicLiteral= ruleLogicLiteral EOF ;
5967 public final EObject entryRuleLogicLiteral() throws RecognitionException { 7603 public final EObject entryRuleLogicLiteral() throws RecognitionException {
5968 EObject current = null; 7604 EObject current = null;
5969 7605
@@ -5971,8 +7607,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5971 7607
5972 7608
5973 try { 7609 try {
5974 // InternalSolverLanguageParser.g:2326:53: (iv_ruleLogicLiteral= ruleLogicLiteral EOF ) 7610 // InternalSolverLanguageParser.g:3025:53: (iv_ruleLogicLiteral= ruleLogicLiteral EOF )
5975 // InternalSolverLanguageParser.g:2327:2: iv_ruleLogicLiteral= ruleLogicLiteral EOF 7611 // InternalSolverLanguageParser.g:3026:2: iv_ruleLogicLiteral= ruleLogicLiteral EOF
5976 { 7612 {
5977 newCompositeNode(grammarAccess.getLogicLiteralRule()); 7613 newCompositeNode(grammarAccess.getLogicLiteralRule());
5978 pushFollow(FOLLOW_1); 7614 pushFollow(FOLLOW_1);
@@ -5999,7 +7635,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
5999 7635
6000 7636
6001 // $ANTLR start "ruleLogicLiteral" 7637 // $ANTLR start "ruleLogicLiteral"
6002 // InternalSolverLanguageParser.g:2333:1: ruleLogicLiteral returns [EObject current=null] : ( (lv_value_0_0= ruleLogicValue ) ) ; 7638 // InternalSolverLanguageParser.g:3032:1: ruleLogicLiteral returns [EObject current=null] : ( (lv_value_0_0= ruleLogicValue ) ) ;
6003 public final EObject ruleLogicLiteral() throws RecognitionException { 7639 public final EObject ruleLogicLiteral() throws RecognitionException {
6004 EObject current = null; 7640 EObject current = null;
6005 7641
@@ -6010,14 +7646,14 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6010 enterRule(); 7646 enterRule();
6011 7647
6012 try { 7648 try {
6013 // InternalSolverLanguageParser.g:2339:2: ( ( (lv_value_0_0= ruleLogicValue ) ) ) 7649 // InternalSolverLanguageParser.g:3038:2: ( ( (lv_value_0_0= ruleLogicValue ) ) )
6014 // InternalSolverLanguageParser.g:2340:2: ( (lv_value_0_0= ruleLogicValue ) ) 7650 // InternalSolverLanguageParser.g:3039:2: ( (lv_value_0_0= ruleLogicValue ) )
6015 { 7651 {
6016 // InternalSolverLanguageParser.g:2340:2: ( (lv_value_0_0= ruleLogicValue ) ) 7652 // InternalSolverLanguageParser.g:3039:2: ( (lv_value_0_0= ruleLogicValue ) )
6017 // InternalSolverLanguageParser.g:2341:3: (lv_value_0_0= ruleLogicValue ) 7653 // InternalSolverLanguageParser.g:3040:3: (lv_value_0_0= ruleLogicValue )
6018 { 7654 {
6019 // InternalSolverLanguageParser.g:2341:3: (lv_value_0_0= ruleLogicValue ) 7655 // InternalSolverLanguageParser.g:3040:3: (lv_value_0_0= ruleLogicValue )
6020 // InternalSolverLanguageParser.g:2342:4: lv_value_0_0= ruleLogicValue 7656 // InternalSolverLanguageParser.g:3041:4: lv_value_0_0= ruleLogicValue
6021 { 7657 {
6022 7658
6023 newCompositeNode(grammarAccess.getLogicLiteralAccess().getValueLogicValueEnumRuleCall_0()); 7659 newCompositeNode(grammarAccess.getLogicLiteralAccess().getValueLogicValueEnumRuleCall_0());
@@ -6064,7 +7700,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6064 7700
6065 7701
6066 // $ANTLR start "entryRuleNumericLiteral" 7702 // $ANTLR start "entryRuleNumericLiteral"
6067 // InternalSolverLanguageParser.g:2362:1: entryRuleNumericLiteral returns [EObject current=null] : iv_ruleNumericLiteral= ruleNumericLiteral EOF ; 7703 // InternalSolverLanguageParser.g:3061:1: entryRuleNumericLiteral returns [EObject current=null] : iv_ruleNumericLiteral= ruleNumericLiteral EOF ;
6068 public final EObject entryRuleNumericLiteral() throws RecognitionException { 7704 public final EObject entryRuleNumericLiteral() throws RecognitionException {
6069 EObject current = null; 7705 EObject current = null;
6070 7706
@@ -6072,8 +7708,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6072 7708
6073 7709
6074 try { 7710 try {
6075 // InternalSolverLanguageParser.g:2362:55: (iv_ruleNumericLiteral= ruleNumericLiteral EOF ) 7711 // InternalSolverLanguageParser.g:3061:55: (iv_ruleNumericLiteral= ruleNumericLiteral EOF )
6076 // InternalSolverLanguageParser.g:2363:2: iv_ruleNumericLiteral= ruleNumericLiteral EOF 7712 // InternalSolverLanguageParser.g:3062:2: iv_ruleNumericLiteral= ruleNumericLiteral EOF
6077 { 7713 {
6078 newCompositeNode(grammarAccess.getNumericLiteralRule()); 7714 newCompositeNode(grammarAccess.getNumericLiteralRule());
6079 pushFollow(FOLLOW_1); 7715 pushFollow(FOLLOW_1);
@@ -6100,7 +7736,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6100 7736
6101 7737
6102 // $ANTLR start "ruleNumericLiteral" 7738 // $ANTLR start "ruleNumericLiteral"
6103 // InternalSolverLanguageParser.g:2369:1: ruleNumericLiteral returns [EObject current=null] : ( (lv_value_0_0= ruleReal ) ) ; 7739 // InternalSolverLanguageParser.g:3068:1: ruleNumericLiteral returns [EObject current=null] : ( (lv_value_0_0= ruleReal ) ) ;
6104 public final EObject ruleNumericLiteral() throws RecognitionException { 7740 public final EObject ruleNumericLiteral() throws RecognitionException {
6105 EObject current = null; 7741 EObject current = null;
6106 7742
@@ -6111,14 +7747,14 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6111 enterRule(); 7747 enterRule();
6112 7748
6113 try { 7749 try {
6114 // InternalSolverLanguageParser.g:2375:2: ( ( (lv_value_0_0= ruleReal ) ) ) 7750 // InternalSolverLanguageParser.g:3074:2: ( ( (lv_value_0_0= ruleReal ) ) )
6115 // InternalSolverLanguageParser.g:2376:2: ( (lv_value_0_0= ruleReal ) ) 7751 // InternalSolverLanguageParser.g:3075:2: ( (lv_value_0_0= ruleReal ) )
6116 { 7752 {
6117 // InternalSolverLanguageParser.g:2376:2: ( (lv_value_0_0= ruleReal ) ) 7753 // InternalSolverLanguageParser.g:3075:2: ( (lv_value_0_0= ruleReal ) )
6118 // InternalSolverLanguageParser.g:2377:3: (lv_value_0_0= ruleReal ) 7754 // InternalSolverLanguageParser.g:3076:3: (lv_value_0_0= ruleReal )
6119 { 7755 {
6120 // InternalSolverLanguageParser.g:2377:3: (lv_value_0_0= ruleReal ) 7756 // InternalSolverLanguageParser.g:3076:3: (lv_value_0_0= ruleReal )
6121 // InternalSolverLanguageParser.g:2378:4: lv_value_0_0= ruleReal 7757 // InternalSolverLanguageParser.g:3077:4: lv_value_0_0= ruleReal
6122 { 7758 {
6123 7759
6124 newCompositeNode(grammarAccess.getNumericLiteralAccess().getValueRealParserRuleCall_0()); 7760 newCompositeNode(grammarAccess.getNumericLiteralAccess().getValueRealParserRuleCall_0());
@@ -6165,7 +7801,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6165 7801
6166 7802
6167 // $ANTLR start "entryRuleInfinityLiteral" 7803 // $ANTLR start "entryRuleInfinityLiteral"
6168 // InternalSolverLanguageParser.g:2398:1: entryRuleInfinityLiteral returns [EObject current=null] : iv_ruleInfinityLiteral= ruleInfinityLiteral EOF ; 7804 // InternalSolverLanguageParser.g:3097:1: entryRuleInfinityLiteral returns [EObject current=null] : iv_ruleInfinityLiteral= ruleInfinityLiteral EOF ;
6169 public final EObject entryRuleInfinityLiteral() throws RecognitionException { 7805 public final EObject entryRuleInfinityLiteral() throws RecognitionException {
6170 EObject current = null; 7806 EObject current = null;
6171 7807
@@ -6173,8 +7809,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6173 7809
6174 7810
6175 try { 7811 try {
6176 // InternalSolverLanguageParser.g:2398:56: (iv_ruleInfinityLiteral= ruleInfinityLiteral EOF ) 7812 // InternalSolverLanguageParser.g:3097:56: (iv_ruleInfinityLiteral= ruleInfinityLiteral EOF )
6177 // InternalSolverLanguageParser.g:2399:2: iv_ruleInfinityLiteral= ruleInfinityLiteral EOF 7813 // InternalSolverLanguageParser.g:3098:2: iv_ruleInfinityLiteral= ruleInfinityLiteral EOF
6178 { 7814 {
6179 newCompositeNode(grammarAccess.getInfinityLiteralRule()); 7815 newCompositeNode(grammarAccess.getInfinityLiteralRule());
6180 pushFollow(FOLLOW_1); 7816 pushFollow(FOLLOW_1);
@@ -6201,7 +7837,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6201 7837
6202 7838
6203 // $ANTLR start "ruleInfinityLiteral" 7839 // $ANTLR start "ruleInfinityLiteral"
6204 // InternalSolverLanguageParser.g:2405:1: ruleInfinityLiteral returns [EObject current=null] : ( () otherlv_1= Inf ) ; 7840 // InternalSolverLanguageParser.g:3104:1: ruleInfinityLiteral returns [EObject current=null] : ( () otherlv_1= Inf ) ;
6205 public final EObject ruleInfinityLiteral() throws RecognitionException { 7841 public final EObject ruleInfinityLiteral() throws RecognitionException {
6206 EObject current = null; 7842 EObject current = null;
6207 7843
@@ -6211,14 +7847,14 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6211 enterRule(); 7847 enterRule();
6212 7848
6213 try { 7849 try {
6214 // InternalSolverLanguageParser.g:2411:2: ( ( () otherlv_1= Inf ) ) 7850 // InternalSolverLanguageParser.g:3110:2: ( ( () otherlv_1= Inf ) )
6215 // InternalSolverLanguageParser.g:2412:2: ( () otherlv_1= Inf ) 7851 // InternalSolverLanguageParser.g:3111:2: ( () otherlv_1= Inf )
6216 { 7852 {
6217 // InternalSolverLanguageParser.g:2412:2: ( () otherlv_1= Inf ) 7853 // InternalSolverLanguageParser.g:3111:2: ( () otherlv_1= Inf )
6218 // InternalSolverLanguageParser.g:2413:3: () otherlv_1= Inf 7854 // InternalSolverLanguageParser.g:3112:3: () otherlv_1= Inf
6219 { 7855 {
6220 // InternalSolverLanguageParser.g:2413:3: () 7856 // InternalSolverLanguageParser.g:3112:3: ()
6221 // InternalSolverLanguageParser.g:2414:4: 7857 // InternalSolverLanguageParser.g:3113:4:
6222 { 7858 {
6223 7859
6224 current = forceCreateModelElement( 7860 current = forceCreateModelElement(
@@ -6255,7 +7891,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6255 7891
6256 7892
6257 // $ANTLR start "entryRuleEmptyIntervalLiteral" 7893 // $ANTLR start "entryRuleEmptyIntervalLiteral"
6258 // InternalSolverLanguageParser.g:2428:1: entryRuleEmptyIntervalLiteral returns [EObject current=null] : iv_ruleEmptyIntervalLiteral= ruleEmptyIntervalLiteral EOF ; 7894 // InternalSolverLanguageParser.g:3127:1: entryRuleEmptyIntervalLiteral returns [EObject current=null] : iv_ruleEmptyIntervalLiteral= ruleEmptyIntervalLiteral EOF ;
6259 public final EObject entryRuleEmptyIntervalLiteral() throws RecognitionException { 7895 public final EObject entryRuleEmptyIntervalLiteral() throws RecognitionException {
6260 EObject current = null; 7896 EObject current = null;
6261 7897
@@ -6263,8 +7899,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6263 7899
6264 7900
6265 try { 7901 try {
6266 // InternalSolverLanguageParser.g:2428:61: (iv_ruleEmptyIntervalLiteral= ruleEmptyIntervalLiteral EOF ) 7902 // InternalSolverLanguageParser.g:3127:61: (iv_ruleEmptyIntervalLiteral= ruleEmptyIntervalLiteral EOF )
6267 // InternalSolverLanguageParser.g:2429:2: iv_ruleEmptyIntervalLiteral= ruleEmptyIntervalLiteral EOF 7903 // InternalSolverLanguageParser.g:3128:2: iv_ruleEmptyIntervalLiteral= ruleEmptyIntervalLiteral EOF
6268 { 7904 {
6269 newCompositeNode(grammarAccess.getEmptyIntervalLiteralRule()); 7905 newCompositeNode(grammarAccess.getEmptyIntervalLiteralRule());
6270 pushFollow(FOLLOW_1); 7906 pushFollow(FOLLOW_1);
@@ -6291,7 +7927,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6291 7927
6292 7928
6293 // $ANTLR start "ruleEmptyIntervalLiteral" 7929 // $ANTLR start "ruleEmptyIntervalLiteral"
6294 // InternalSolverLanguageParser.g:2435:1: ruleEmptyIntervalLiteral returns [EObject current=null] : ( () otherlv_1= Empty ) ; 7930 // InternalSolverLanguageParser.g:3134:1: ruleEmptyIntervalLiteral returns [EObject current=null] : ( () otherlv_1= Empty ) ;
6295 public final EObject ruleEmptyIntervalLiteral() throws RecognitionException { 7931 public final EObject ruleEmptyIntervalLiteral() throws RecognitionException {
6296 EObject current = null; 7932 EObject current = null;
6297 7933
@@ -6301,14 +7937,14 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6301 enterRule(); 7937 enterRule();
6302 7938
6303 try { 7939 try {
6304 // InternalSolverLanguageParser.g:2441:2: ( ( () otherlv_1= Empty ) ) 7940 // InternalSolverLanguageParser.g:3140:2: ( ( () otherlv_1= Empty ) )
6305 // InternalSolverLanguageParser.g:2442:2: ( () otherlv_1= Empty ) 7941 // InternalSolverLanguageParser.g:3141:2: ( () otherlv_1= Empty )
6306 { 7942 {
6307 // InternalSolverLanguageParser.g:2442:2: ( () otherlv_1= Empty ) 7943 // InternalSolverLanguageParser.g:3141:2: ( () otherlv_1= Empty )
6308 // InternalSolverLanguageParser.g:2443:3: () otherlv_1= Empty 7944 // InternalSolverLanguageParser.g:3142:3: () otherlv_1= Empty
6309 { 7945 {
6310 // InternalSolverLanguageParser.g:2443:3: () 7946 // InternalSolverLanguageParser.g:3142:3: ()
6311 // InternalSolverLanguageParser.g:2444:4: 7947 // InternalSolverLanguageParser.g:3143:4:
6312 { 7948 {
6313 7949
6314 current = forceCreateModelElement( 7950 current = forceCreateModelElement(
@@ -6345,7 +7981,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6345 7981
6346 7982
6347 // $ANTLR start "entryRuleStringLiteral" 7983 // $ANTLR start "entryRuleStringLiteral"
6348 // InternalSolverLanguageParser.g:2458:1: entryRuleStringLiteral returns [EObject current=null] : iv_ruleStringLiteral= ruleStringLiteral EOF ; 7984 // InternalSolverLanguageParser.g:3157:1: entryRuleStringLiteral returns [EObject current=null] : iv_ruleStringLiteral= ruleStringLiteral EOF ;
6349 public final EObject entryRuleStringLiteral() throws RecognitionException { 7985 public final EObject entryRuleStringLiteral() throws RecognitionException {
6350 EObject current = null; 7986 EObject current = null;
6351 7987
@@ -6353,8 +7989,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6353 7989
6354 7990
6355 try { 7991 try {
6356 // InternalSolverLanguageParser.g:2458:54: (iv_ruleStringLiteral= ruleStringLiteral EOF ) 7992 // InternalSolverLanguageParser.g:3157:54: (iv_ruleStringLiteral= ruleStringLiteral EOF )
6357 // InternalSolverLanguageParser.g:2459:2: iv_ruleStringLiteral= ruleStringLiteral EOF 7993 // InternalSolverLanguageParser.g:3158:2: iv_ruleStringLiteral= ruleStringLiteral EOF
6358 { 7994 {
6359 newCompositeNode(grammarAccess.getStringLiteralRule()); 7995 newCompositeNode(grammarAccess.getStringLiteralRule());
6360 pushFollow(FOLLOW_1); 7996 pushFollow(FOLLOW_1);
@@ -6381,7 +8017,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6381 8017
6382 8018
6383 // $ANTLR start "ruleStringLiteral" 8019 // $ANTLR start "ruleStringLiteral"
6384 // InternalSolverLanguageParser.g:2465:1: ruleStringLiteral returns [EObject current=null] : ( (lv_value_0_0= RULE_STRING ) ) ; 8020 // InternalSolverLanguageParser.g:3164:1: ruleStringLiteral returns [EObject current=null] : ( (lv_value_0_0= RULE_STRING ) ) ;
6385 public final EObject ruleStringLiteral() throws RecognitionException { 8021 public final EObject ruleStringLiteral() throws RecognitionException {
6386 EObject current = null; 8022 EObject current = null;
6387 8023
@@ -6391,14 +8027,14 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6391 enterRule(); 8027 enterRule();
6392 8028
6393 try { 8029 try {
6394 // InternalSolverLanguageParser.g:2471:2: ( ( (lv_value_0_0= RULE_STRING ) ) ) 8030 // InternalSolverLanguageParser.g:3170:2: ( ( (lv_value_0_0= RULE_STRING ) ) )
6395 // InternalSolverLanguageParser.g:2472:2: ( (lv_value_0_0= RULE_STRING ) ) 8031 // InternalSolverLanguageParser.g:3171:2: ( (lv_value_0_0= RULE_STRING ) )
6396 { 8032 {
6397 // InternalSolverLanguageParser.g:2472:2: ( (lv_value_0_0= RULE_STRING ) ) 8033 // InternalSolverLanguageParser.g:3171:2: ( (lv_value_0_0= RULE_STRING ) )
6398 // InternalSolverLanguageParser.g:2473:3: (lv_value_0_0= RULE_STRING ) 8034 // InternalSolverLanguageParser.g:3172:3: (lv_value_0_0= RULE_STRING )
6399 { 8035 {
6400 // InternalSolverLanguageParser.g:2473:3: (lv_value_0_0= RULE_STRING ) 8036 // InternalSolverLanguageParser.g:3172:3: (lv_value_0_0= RULE_STRING )
6401 // InternalSolverLanguageParser.g:2474:4: lv_value_0_0= RULE_STRING 8037 // InternalSolverLanguageParser.g:3173:4: lv_value_0_0= RULE_STRING
6402 { 8038 {
6403 lv_value_0_0=(Token)match(input,RULE_STRING,FOLLOW_2); 8039 lv_value_0_0=(Token)match(input,RULE_STRING,FOLLOW_2);
6404 8040
@@ -6440,7 +8076,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6440 8076
6441 8077
6442 // $ANTLR start "entryRuleClassDefinition" 8078 // $ANTLR start "entryRuleClassDefinition"
6443 // InternalSolverLanguageParser.g:2493:1: entryRuleClassDefinition returns [EObject current=null] : iv_ruleClassDefinition= ruleClassDefinition EOF ; 8079 // InternalSolverLanguageParser.g:3192:1: entryRuleClassDefinition returns [EObject current=null] : iv_ruleClassDefinition= ruleClassDefinition EOF ;
6444 public final EObject entryRuleClassDefinition() throws RecognitionException { 8080 public final EObject entryRuleClassDefinition() throws RecognitionException {
6445 EObject current = null; 8081 EObject current = null;
6446 8082
@@ -6448,8 +8084,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6448 8084
6449 8085
6450 try { 8086 try {
6451 // InternalSolverLanguageParser.g:2493:56: (iv_ruleClassDefinition= ruleClassDefinition EOF ) 8087 // InternalSolverLanguageParser.g:3192:56: (iv_ruleClassDefinition= ruleClassDefinition EOF )
6452 // InternalSolverLanguageParser.g:2494:2: iv_ruleClassDefinition= ruleClassDefinition EOF 8088 // InternalSolverLanguageParser.g:3193:2: iv_ruleClassDefinition= ruleClassDefinition EOF
6453 { 8089 {
6454 newCompositeNode(grammarAccess.getClassDefinitionRule()); 8090 newCompositeNode(grammarAccess.getClassDefinitionRule());
6455 pushFollow(FOLLOW_1); 8091 pushFollow(FOLLOW_1);
@@ -6476,7 +8112,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6476 8112
6477 8113
6478 // $ANTLR start "ruleClassDefinition" 8114 // $ANTLR start "ruleClassDefinition"
6479 // InternalSolverLanguageParser.g:2500:1: ruleClassDefinition returns [EObject current=null] : ( ( (lv_abstract_0_0= Abstract ) )? otherlv_1= Class ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )? otherlv_7= LeftCurlyBracket ( (lv_members_8_0= ruleMemberDefinition ) )* otherlv_9= RightCurlyBracket ) ; 8115 // InternalSolverLanguageParser.g:3199:1: ruleClassDefinition returns [EObject current=null] : ( ( (lv_abstract_0_0= Abstract ) )? otherlv_1= Class ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )? otherlv_7= LeftCurlyBracket ( (lv_members_8_0= ruleMemberDefinition ) )* otherlv_9= RightCurlyBracket ) ;
6480 public final EObject ruleClassDefinition() throws RecognitionException { 8116 public final EObject ruleClassDefinition() throws RecognitionException {
6481 EObject current = null; 8117 EObject current = null;
6482 8118
@@ -6494,27 +8130,27 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6494 enterRule(); 8130 enterRule();
6495 8131
6496 try { 8132 try {
6497 // InternalSolverLanguageParser.g:2506:2: ( ( ( (lv_abstract_0_0= Abstract ) )? otherlv_1= Class ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )? otherlv_7= LeftCurlyBracket ( (lv_members_8_0= ruleMemberDefinition ) )* otherlv_9= RightCurlyBracket ) ) 8133 // InternalSolverLanguageParser.g:3205:2: ( ( ( (lv_abstract_0_0= Abstract ) )? otherlv_1= Class ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )? otherlv_7= LeftCurlyBracket ( (lv_members_8_0= ruleMemberDefinition ) )* otherlv_9= RightCurlyBracket ) )
6498 // InternalSolverLanguageParser.g:2507:2: ( ( (lv_abstract_0_0= Abstract ) )? otherlv_1= Class ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )? otherlv_7= LeftCurlyBracket ( (lv_members_8_0= ruleMemberDefinition ) )* otherlv_9= RightCurlyBracket ) 8134 // InternalSolverLanguageParser.g:3206:2: ( ( (lv_abstract_0_0= Abstract ) )? otherlv_1= Class ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )? otherlv_7= LeftCurlyBracket ( (lv_members_8_0= ruleMemberDefinition ) )* otherlv_9= RightCurlyBracket )
6499 { 8135 {
6500 // InternalSolverLanguageParser.g:2507:2: ( ( (lv_abstract_0_0= Abstract ) )? otherlv_1= Class ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )? otherlv_7= LeftCurlyBracket ( (lv_members_8_0= ruleMemberDefinition ) )* otherlv_9= RightCurlyBracket ) 8136 // InternalSolverLanguageParser.g:3206:2: ( ( (lv_abstract_0_0= Abstract ) )? otherlv_1= Class ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )? otherlv_7= LeftCurlyBracket ( (lv_members_8_0= ruleMemberDefinition ) )* otherlv_9= RightCurlyBracket )
6501 // InternalSolverLanguageParser.g:2508:3: ( (lv_abstract_0_0= Abstract ) )? otherlv_1= Class ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )? otherlv_7= LeftCurlyBracket ( (lv_members_8_0= ruleMemberDefinition ) )* otherlv_9= RightCurlyBracket 8137 // InternalSolverLanguageParser.g:3207:3: ( (lv_abstract_0_0= Abstract ) )? otherlv_1= Class ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )? otherlv_7= LeftCurlyBracket ( (lv_members_8_0= ruleMemberDefinition ) )* otherlv_9= RightCurlyBracket
6502 { 8138 {
6503 // InternalSolverLanguageParser.g:2508:3: ( (lv_abstract_0_0= Abstract ) )? 8139 // InternalSolverLanguageParser.g:3207:3: ( (lv_abstract_0_0= Abstract ) )?
6504 int alt26=2; 8140 int alt35=2;
6505 int LA26_0 = input.LA(1); 8141 int LA35_0 = input.LA(1);
6506 8142
6507 if ( (LA26_0==Abstract) ) { 8143 if ( (LA35_0==Abstract) ) {
6508 alt26=1; 8144 alt35=1;
6509 } 8145 }
6510 switch (alt26) { 8146 switch (alt35) {
6511 case 1 : 8147 case 1 :
6512 // InternalSolverLanguageParser.g:2509:4: (lv_abstract_0_0= Abstract ) 8148 // InternalSolverLanguageParser.g:3208:4: (lv_abstract_0_0= Abstract )
6513 { 8149 {
6514 // InternalSolverLanguageParser.g:2509:4: (lv_abstract_0_0= Abstract ) 8150 // InternalSolverLanguageParser.g:3208:4: (lv_abstract_0_0= Abstract )
6515 // InternalSolverLanguageParser.g:2510:5: lv_abstract_0_0= Abstract 8151 // InternalSolverLanguageParser.g:3209:5: lv_abstract_0_0= Abstract
6516 { 8152 {
6517 lv_abstract_0_0=(Token)match(input,Abstract,FOLLOW_37); 8153 lv_abstract_0_0=(Token)match(input,Abstract,FOLLOW_46);
6518 8154
6519 newLeafNode(lv_abstract_0_0, grammarAccess.getClassDefinitionAccess().getAbstractAbstractKeyword_0_0()); 8155 newLeafNode(lv_abstract_0_0, grammarAccess.getClassDefinitionAccess().getAbstractAbstractKeyword_0_0());
6520 8156
@@ -6533,17 +8169,17 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6533 8169
6534 } 8170 }
6535 8171
6536 otherlv_1=(Token)match(input,Class,FOLLOW_38); 8172 otherlv_1=(Token)match(input,Class,FOLLOW_20);
6537 8173
6538 newLeafNode(otherlv_1, grammarAccess.getClassDefinitionAccess().getClassKeyword_1()); 8174 newLeafNode(otherlv_1, grammarAccess.getClassDefinitionAccess().getClassKeyword_1());
6539 8175
6540 // InternalSolverLanguageParser.g:2526:3: ( (lv_name_2_0= RULE_ID ) ) 8176 // InternalSolverLanguageParser.g:3225:3: ( (lv_name_2_0= RULE_ID ) )
6541 // InternalSolverLanguageParser.g:2527:4: (lv_name_2_0= RULE_ID ) 8177 // InternalSolverLanguageParser.g:3226:4: (lv_name_2_0= RULE_ID )
6542 { 8178 {
6543 // InternalSolverLanguageParser.g:2527:4: (lv_name_2_0= RULE_ID ) 8179 // InternalSolverLanguageParser.g:3226:4: (lv_name_2_0= RULE_ID )
6544 // InternalSolverLanguageParser.g:2528:5: lv_name_2_0= RULE_ID 8180 // InternalSolverLanguageParser.g:3227:5: lv_name_2_0= RULE_ID
6545 { 8181 {
6546 lv_name_2_0=(Token)match(input,RULE_ID,FOLLOW_39); 8182 lv_name_2_0=(Token)match(input,RULE_ID,FOLLOW_47);
6547 8183
6548 newLeafNode(lv_name_2_0, grammarAccess.getClassDefinitionAccess().getNameIDTerminalRuleCall_2_0()); 8184 newLeafNode(lv_name_2_0, grammarAccess.getClassDefinitionAccess().getNameIDTerminalRuleCall_2_0());
6549 8185
@@ -6563,26 +8199,26 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6563 8199
6564 } 8200 }
6565 8201
6566 // InternalSolverLanguageParser.g:2544:3: (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )? 8202 // InternalSolverLanguageParser.g:3243:3: (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )?
6567 int alt28=2; 8203 int alt37=2;
6568 int LA28_0 = input.LA(1); 8204 int LA37_0 = input.LA(1);
6569 8205
6570 if ( (LA28_0==Extends) ) { 8206 if ( (LA37_0==Extends) ) {
6571 alt28=1; 8207 alt37=1;
6572 } 8208 }
6573 switch (alt28) { 8209 switch (alt37) {
6574 case 1 : 8210 case 1 :
6575 // InternalSolverLanguageParser.g:2545:4: otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* 8211 // InternalSolverLanguageParser.g:3244:4: otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )*
6576 { 8212 {
6577 otherlv_3=(Token)match(input,Extends,FOLLOW_8); 8213 otherlv_3=(Token)match(input,Extends,FOLLOW_8);
6578 8214
6579 newLeafNode(otherlv_3, grammarAccess.getClassDefinitionAccess().getExtendsKeyword_3_0()); 8215 newLeafNode(otherlv_3, grammarAccess.getClassDefinitionAccess().getExtendsKeyword_3_0());
6580 8216
6581 // InternalSolverLanguageParser.g:2549:4: ( ( ruleQualifiedName ) ) 8217 // InternalSolverLanguageParser.g:3248:4: ( ( ruleQualifiedName ) )
6582 // InternalSolverLanguageParser.g:2550:5: ( ruleQualifiedName ) 8218 // InternalSolverLanguageParser.g:3249:5: ( ruleQualifiedName )
6583 { 8219 {
6584 // InternalSolverLanguageParser.g:2550:5: ( ruleQualifiedName ) 8220 // InternalSolverLanguageParser.g:3249:5: ( ruleQualifiedName )
6585 // InternalSolverLanguageParser.g:2551:6: ruleQualifiedName 8221 // InternalSolverLanguageParser.g:3250:6: ruleQualifiedName
6586 { 8222 {
6587 8223
6588 if (current==null) { 8224 if (current==null) {
@@ -6592,7 +8228,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6592 8228
6593 newCompositeNode(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementCrossReference_3_1_0()); 8229 newCompositeNode(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementCrossReference_3_1_0());
6594 8230
6595 pushFollow(FOLLOW_40); 8231 pushFollow(FOLLOW_48);
6596 ruleQualifiedName(); 8232 ruleQualifiedName();
6597 8233
6598 state._fsp--; 8234 state._fsp--;
@@ -6606,30 +8242,30 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6606 8242
6607 } 8243 }
6608 8244
6609 // InternalSolverLanguageParser.g:2565:4: (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* 8245 // InternalSolverLanguageParser.g:3264:4: (otherlv_5= Comma ( ( ruleQualifiedName ) ) )*
6610 loop27: 8246 loop36:
6611 do { 8247 do {
6612 int alt27=2; 8248 int alt36=2;
6613 int LA27_0 = input.LA(1); 8249 int LA36_0 = input.LA(1);
6614 8250
6615 if ( (LA27_0==Comma) ) { 8251 if ( (LA36_0==Comma) ) {
6616 alt27=1; 8252 alt36=1;
6617 } 8253 }
6618 8254
6619 8255
6620 switch (alt27) { 8256 switch (alt36) {
6621 case 1 : 8257 case 1 :
6622 // InternalSolverLanguageParser.g:2566:5: otherlv_5= Comma ( ( ruleQualifiedName ) ) 8258 // InternalSolverLanguageParser.g:3265:5: otherlv_5= Comma ( ( ruleQualifiedName ) )
6623 { 8259 {
6624 otherlv_5=(Token)match(input,Comma,FOLLOW_8); 8260 otherlv_5=(Token)match(input,Comma,FOLLOW_8);
6625 8261
6626 newLeafNode(otherlv_5, grammarAccess.getClassDefinitionAccess().getCommaKeyword_3_2_0()); 8262 newLeafNode(otherlv_5, grammarAccess.getClassDefinitionAccess().getCommaKeyword_3_2_0());
6627 8263
6628 // InternalSolverLanguageParser.g:2570:5: ( ( ruleQualifiedName ) ) 8264 // InternalSolverLanguageParser.g:3269:5: ( ( ruleQualifiedName ) )
6629 // InternalSolverLanguageParser.g:2571:6: ( ruleQualifiedName ) 8265 // InternalSolverLanguageParser.g:3270:6: ( ruleQualifiedName )
6630 { 8266 {
6631 // InternalSolverLanguageParser.g:2571:6: ( ruleQualifiedName ) 8267 // InternalSolverLanguageParser.g:3270:6: ( ruleQualifiedName )
6632 // InternalSolverLanguageParser.g:2572:7: ruleQualifiedName 8268 // InternalSolverLanguageParser.g:3271:7: ruleQualifiedName
6633 { 8269 {
6634 8270
6635 if (current==null) { 8271 if (current==null) {
@@ -6639,7 +8275,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6639 8275
6640 newCompositeNode(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementCrossReference_3_2_1_0()); 8276 newCompositeNode(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementCrossReference_3_2_1_0());
6641 8277
6642 pushFollow(FOLLOW_40); 8278 pushFollow(FOLLOW_48);
6643 ruleQualifiedName(); 8279 ruleQualifiedName();
6644 8280
6645 state._fsp--; 8281 state._fsp--;
@@ -6658,7 +8294,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6658 break; 8294 break;
6659 8295
6660 default : 8296 default :
6661 break loop27; 8297 break loop36;
6662 } 8298 }
6663 } while (true); 8299 } while (true);
6664 8300
@@ -6668,32 +8304,32 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6668 8304
6669 } 8305 }
6670 8306
6671 otherlv_7=(Token)match(input,LeftCurlyBracket,FOLLOW_41); 8307 otherlv_7=(Token)match(input,LeftCurlyBracket,FOLLOW_49);
6672 8308
6673 newLeafNode(otherlv_7, grammarAccess.getClassDefinitionAccess().getLeftCurlyBracketKeyword_4()); 8309 newLeafNode(otherlv_7, grammarAccess.getClassDefinitionAccess().getLeftCurlyBracketKeyword_4());
6674 8310
6675 // InternalSolverLanguageParser.g:2592:3: ( (lv_members_8_0= ruleMemberDefinition ) )* 8311 // InternalSolverLanguageParser.g:3291:3: ( (lv_members_8_0= ruleMemberDefinition ) )*
6676 loop29: 8312 loop38:
6677 do { 8313 do {
6678 int alt29=2; 8314 int alt38=2;
6679 int LA29_0 = input.LA(1); 8315 int LA38_0 = input.LA(1);
6680 8316
6681 if ( (LA29_0==Contains||LA29_0==RULE_QUOTED_ID||LA29_0==RULE_ID) ) { 8317 if ( (LA38_0==Contains||LA38_0==RULE_QUOTED_ID||LA38_0==RULE_ID) ) {
6682 alt29=1; 8318 alt38=1;
6683 } 8319 }
6684 8320
6685 8321
6686 switch (alt29) { 8322 switch (alt38) {
6687 case 1 : 8323 case 1 :
6688 // InternalSolverLanguageParser.g:2593:4: (lv_members_8_0= ruleMemberDefinition ) 8324 // InternalSolverLanguageParser.g:3292:4: (lv_members_8_0= ruleMemberDefinition )
6689 { 8325 {
6690 // InternalSolverLanguageParser.g:2593:4: (lv_members_8_0= ruleMemberDefinition ) 8326 // InternalSolverLanguageParser.g:3292:4: (lv_members_8_0= ruleMemberDefinition )
6691 // InternalSolverLanguageParser.g:2594:5: lv_members_8_0= ruleMemberDefinition 8327 // InternalSolverLanguageParser.g:3293:5: lv_members_8_0= ruleMemberDefinition
6692 { 8328 {
6693 8329
6694 newCompositeNode(grammarAccess.getClassDefinitionAccess().getMembersMemberDefinitionParserRuleCall_5_0()); 8330 newCompositeNode(grammarAccess.getClassDefinitionAccess().getMembersMemberDefinitionParserRuleCall_5_0());
6695 8331
6696 pushFollow(FOLLOW_41); 8332 pushFollow(FOLLOW_49);
6697 lv_members_8_0=ruleMemberDefinition(); 8333 lv_members_8_0=ruleMemberDefinition();
6698 8334
6699 state._fsp--; 8335 state._fsp--;
@@ -6717,7 +8353,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6717 break; 8353 break;
6718 8354
6719 default : 8355 default :
6720 break loop29; 8356 break loop38;
6721 } 8357 }
6722 } while (true); 8358 } while (true);
6723 8359
@@ -6748,7 +8384,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6748 8384
6749 8385
6750 // $ANTLR start "entryRuleMemberDefinition" 8386 // $ANTLR start "entryRuleMemberDefinition"
6751 // InternalSolverLanguageParser.g:2619:1: entryRuleMemberDefinition returns [EObject current=null] : iv_ruleMemberDefinition= ruleMemberDefinition EOF ; 8387 // InternalSolverLanguageParser.g:3318:1: entryRuleMemberDefinition returns [EObject current=null] : iv_ruleMemberDefinition= ruleMemberDefinition EOF ;
6752 public final EObject entryRuleMemberDefinition() throws RecognitionException { 8388 public final EObject entryRuleMemberDefinition() throws RecognitionException {
6753 EObject current = null; 8389 EObject current = null;
6754 8390
@@ -6756,8 +8392,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6756 8392
6757 8393
6758 try { 8394 try {
6759 // InternalSolverLanguageParser.g:2619:57: (iv_ruleMemberDefinition= ruleMemberDefinition EOF ) 8395 // InternalSolverLanguageParser.g:3318:57: (iv_ruleMemberDefinition= ruleMemberDefinition EOF )
6760 // InternalSolverLanguageParser.g:2620:2: iv_ruleMemberDefinition= ruleMemberDefinition EOF 8396 // InternalSolverLanguageParser.g:3319:2: iv_ruleMemberDefinition= ruleMemberDefinition EOF
6761 { 8397 {
6762 newCompositeNode(grammarAccess.getMemberDefinitionRule()); 8398 newCompositeNode(grammarAccess.getMemberDefinitionRule());
6763 pushFollow(FOLLOW_1); 8399 pushFollow(FOLLOW_1);
@@ -6784,7 +8420,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6784 8420
6785 8421
6786 // $ANTLR start "ruleMemberDefinition" 8422 // $ANTLR start "ruleMemberDefinition"
6787 // InternalSolverLanguageParser.g:2626:1: ruleMemberDefinition returns [EObject current=null] : ( ( (lv_containment_0_0= Contains ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_2_0= ruleMultiplicity ) )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_6= Semicolon )? ) ; 8423 // InternalSolverLanguageParser.g:3325:1: ruleMemberDefinition returns [EObject current=null] : ( ( (lv_containment_0_0= Contains ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_2_0= ruleMultiplicity ) )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_6= Semicolon )? ) ;
6788 public final EObject ruleMemberDefinition() throws RecognitionException { 8424 public final EObject ruleMemberDefinition() throws RecognitionException {
6789 EObject current = null; 8425 EObject current = null;
6790 8426
@@ -6799,25 +8435,25 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6799 enterRule(); 8435 enterRule();
6800 8436
6801 try { 8437 try {
6802 // InternalSolverLanguageParser.g:2632:2: ( ( ( (lv_containment_0_0= Contains ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_2_0= ruleMultiplicity ) )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_6= Semicolon )? ) ) 8438 // InternalSolverLanguageParser.g:3331:2: ( ( ( (lv_containment_0_0= Contains ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_2_0= ruleMultiplicity ) )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_6= Semicolon )? ) )
6803 // InternalSolverLanguageParser.g:2633:2: ( ( (lv_containment_0_0= Contains ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_2_0= ruleMultiplicity ) )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_6= Semicolon )? ) 8439 // InternalSolverLanguageParser.g:3332:2: ( ( (lv_containment_0_0= Contains ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_2_0= ruleMultiplicity ) )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_6= Semicolon )? )
6804 { 8440 {
6805 // InternalSolverLanguageParser.g:2633:2: ( ( (lv_containment_0_0= Contains ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_2_0= ruleMultiplicity ) )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_6= Semicolon )? ) 8441 // InternalSolverLanguageParser.g:3332:2: ( ( (lv_containment_0_0= Contains ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_2_0= ruleMultiplicity ) )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_6= Semicolon )? )
6806 // InternalSolverLanguageParser.g:2634:3: ( (lv_containment_0_0= Contains ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_2_0= ruleMultiplicity ) )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_6= Semicolon )? 8442 // InternalSolverLanguageParser.g:3333:3: ( (lv_containment_0_0= Contains ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_2_0= ruleMultiplicity ) )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_6= Semicolon )?
6807 { 8443 {
6808 // InternalSolverLanguageParser.g:2634:3: ( (lv_containment_0_0= Contains ) )? 8444 // InternalSolverLanguageParser.g:3333:3: ( (lv_containment_0_0= Contains ) )?
6809 int alt30=2; 8445 int alt39=2;
6810 int LA30_0 = input.LA(1); 8446 int LA39_0 = input.LA(1);
6811 8447
6812 if ( (LA30_0==Contains) ) { 8448 if ( (LA39_0==Contains) ) {
6813 alt30=1; 8449 alt39=1;
6814 } 8450 }
6815 switch (alt30) { 8451 switch (alt39) {
6816 case 1 : 8452 case 1 :
6817 // InternalSolverLanguageParser.g:2635:4: (lv_containment_0_0= Contains ) 8453 // InternalSolverLanguageParser.g:3334:4: (lv_containment_0_0= Contains )
6818 { 8454 {
6819 // InternalSolverLanguageParser.g:2635:4: (lv_containment_0_0= Contains ) 8455 // InternalSolverLanguageParser.g:3334:4: (lv_containment_0_0= Contains )
6820 // InternalSolverLanguageParser.g:2636:5: lv_containment_0_0= Contains 8456 // InternalSolverLanguageParser.g:3335:5: lv_containment_0_0= Contains
6821 { 8457 {
6822 lv_containment_0_0=(Token)match(input,Contains,FOLLOW_8); 8458 lv_containment_0_0=(Token)match(input,Contains,FOLLOW_8);
6823 8459
@@ -6838,11 +8474,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6838 8474
6839 } 8475 }
6840 8476
6841 // InternalSolverLanguageParser.g:2648:3: ( ( ruleQualifiedName ) ) 8477 // InternalSolverLanguageParser.g:3347:3: ( ( ruleQualifiedName ) )
6842 // InternalSolverLanguageParser.g:2649:4: ( ruleQualifiedName ) 8478 // InternalSolverLanguageParser.g:3348:4: ( ruleQualifiedName )
6843 { 8479 {
6844 // InternalSolverLanguageParser.g:2649:4: ( ruleQualifiedName ) 8480 // InternalSolverLanguageParser.g:3348:4: ( ruleQualifiedName )
6845 // InternalSolverLanguageParser.g:2650:5: ruleQualifiedName 8481 // InternalSolverLanguageParser.g:3349:5: ruleQualifiedName
6846 { 8482 {
6847 8483
6848 if (current==null) { 8484 if (current==null) {
@@ -6852,7 +8488,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6852 8488
6853 newCompositeNode(grammarAccess.getMemberDefinitionAccess().getTypeNamedElementCrossReference_1_0()); 8489 newCompositeNode(grammarAccess.getMemberDefinitionAccess().getTypeNamedElementCrossReference_1_0());
6854 8490
6855 pushFollow(FOLLOW_42); 8491 pushFollow(FOLLOW_50);
6856 ruleQualifiedName(); 8492 ruleQualifiedName();
6857 8493
6858 state._fsp--; 8494 state._fsp--;
@@ -6866,24 +8502,24 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6866 8502
6867 } 8503 }
6868 8504
6869 // InternalSolverLanguageParser.g:2664:3: ( (lv_multiplicity_2_0= ruleMultiplicity ) )? 8505 // InternalSolverLanguageParser.g:3363:3: ( (lv_multiplicity_2_0= ruleMultiplicity ) )?
6870 int alt31=2; 8506 int alt40=2;
6871 int LA31_0 = input.LA(1); 8507 int LA40_0 = input.LA(1);
6872 8508
6873 if ( (LA31_0==LeftSquareBracket) ) { 8509 if ( (LA40_0==LeftSquareBracket) ) {
6874 alt31=1; 8510 alt40=1;
6875 } 8511 }
6876 switch (alt31) { 8512 switch (alt40) {
6877 case 1 : 8513 case 1 :
6878 // InternalSolverLanguageParser.g:2665:4: (lv_multiplicity_2_0= ruleMultiplicity ) 8514 // InternalSolverLanguageParser.g:3364:4: (lv_multiplicity_2_0= ruleMultiplicity )
6879 { 8515 {
6880 // InternalSolverLanguageParser.g:2665:4: (lv_multiplicity_2_0= ruleMultiplicity ) 8516 // InternalSolverLanguageParser.g:3364:4: (lv_multiplicity_2_0= ruleMultiplicity )
6881 // InternalSolverLanguageParser.g:2666:5: lv_multiplicity_2_0= ruleMultiplicity 8517 // InternalSolverLanguageParser.g:3365:5: lv_multiplicity_2_0= ruleMultiplicity
6882 { 8518 {
6883 8519
6884 newCompositeNode(grammarAccess.getMemberDefinitionAccess().getMultiplicityMultiplicityParserRuleCall_2_0()); 8520 newCompositeNode(grammarAccess.getMemberDefinitionAccess().getMultiplicityMultiplicityParserRuleCall_2_0());
6885 8521
6886 pushFollow(FOLLOW_38); 8522 pushFollow(FOLLOW_20);
6887 lv_multiplicity_2_0=ruleMultiplicity(); 8523 lv_multiplicity_2_0=ruleMultiplicity();
6888 8524
6889 state._fsp--; 8525 state._fsp--;
@@ -6908,13 +8544,13 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6908 8544
6909 } 8545 }
6910 8546
6911 // InternalSolverLanguageParser.g:2683:3: ( (lv_name_3_0= RULE_ID ) ) 8547 // InternalSolverLanguageParser.g:3382:3: ( (lv_name_3_0= RULE_ID ) )
6912 // InternalSolverLanguageParser.g:2684:4: (lv_name_3_0= RULE_ID ) 8548 // InternalSolverLanguageParser.g:3383:4: (lv_name_3_0= RULE_ID )
6913 { 8549 {
6914 // InternalSolverLanguageParser.g:2684:4: (lv_name_3_0= RULE_ID ) 8550 // InternalSolverLanguageParser.g:3383:4: (lv_name_3_0= RULE_ID )
6915 // InternalSolverLanguageParser.g:2685:5: lv_name_3_0= RULE_ID 8551 // InternalSolverLanguageParser.g:3384:5: lv_name_3_0= RULE_ID
6916 { 8552 {
6917 lv_name_3_0=(Token)match(input,RULE_ID,FOLLOW_43); 8553 lv_name_3_0=(Token)match(input,RULE_ID,FOLLOW_51);
6918 8554
6919 newLeafNode(lv_name_3_0, grammarAccess.getMemberDefinitionAccess().getNameIDTerminalRuleCall_3_0()); 8555 newLeafNode(lv_name_3_0, grammarAccess.getMemberDefinitionAccess().getNameIDTerminalRuleCall_3_0());
6920 8556
@@ -6934,26 +8570,26 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6934 8570
6935 } 8571 }
6936 8572
6937 // InternalSolverLanguageParser.g:2701:3: (otherlv_4= Opposite ( ( ruleQualifiedName ) ) )? 8573 // InternalSolverLanguageParser.g:3400:3: (otherlv_4= Opposite ( ( ruleQualifiedName ) ) )?
6938 int alt32=2; 8574 int alt41=2;
6939 int LA32_0 = input.LA(1); 8575 int LA41_0 = input.LA(1);
6940 8576
6941 if ( (LA32_0==Opposite) ) { 8577 if ( (LA41_0==Opposite) ) {
6942 alt32=1; 8578 alt41=1;
6943 } 8579 }
6944 switch (alt32) { 8580 switch (alt41) {
6945 case 1 : 8581 case 1 :
6946 // InternalSolverLanguageParser.g:2702:4: otherlv_4= Opposite ( ( ruleQualifiedName ) ) 8582 // InternalSolverLanguageParser.g:3401:4: otherlv_4= Opposite ( ( ruleQualifiedName ) )
6947 { 8583 {
6948 otherlv_4=(Token)match(input,Opposite,FOLLOW_8); 8584 otherlv_4=(Token)match(input,Opposite,FOLLOW_8);
6949 8585
6950 newLeafNode(otherlv_4, grammarAccess.getMemberDefinitionAccess().getOppositeKeyword_4_0()); 8586 newLeafNode(otherlv_4, grammarAccess.getMemberDefinitionAccess().getOppositeKeyword_4_0());
6951 8587
6952 // InternalSolverLanguageParser.g:2706:4: ( ( ruleQualifiedName ) ) 8588 // InternalSolverLanguageParser.g:3405:4: ( ( ruleQualifiedName ) )
6953 // InternalSolverLanguageParser.g:2707:5: ( ruleQualifiedName ) 8589 // InternalSolverLanguageParser.g:3406:5: ( ruleQualifiedName )
6954 { 8590 {
6955 // InternalSolverLanguageParser.g:2707:5: ( ruleQualifiedName ) 8591 // InternalSolverLanguageParser.g:3406:5: ( ruleQualifiedName )
6956 // InternalSolverLanguageParser.g:2708:6: ruleQualifiedName 8592 // InternalSolverLanguageParser.g:3407:6: ruleQualifiedName
6957 { 8593 {
6958 8594
6959 if (current==null) { 8595 if (current==null) {
@@ -6963,7 +8599,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6963 8599
6964 newCompositeNode(grammarAccess.getMemberDefinitionAccess().getOppositeNamedElementCrossReference_4_1_0()); 8600 newCompositeNode(grammarAccess.getMemberDefinitionAccess().getOppositeNamedElementCrossReference_4_1_0());
6965 8601
6966 pushFollow(FOLLOW_18); 8602 pushFollow(FOLLOW_26);
6967 ruleQualifiedName(); 8603 ruleQualifiedName();
6968 8604
6969 state._fsp--; 8605 state._fsp--;
@@ -6983,16 +8619,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
6983 8619
6984 } 8620 }
6985 8621
6986 // InternalSolverLanguageParser.g:2723:3: (otherlv_6= Semicolon )? 8622 // InternalSolverLanguageParser.g:3422:3: (otherlv_6= Semicolon )?
6987 int alt33=2; 8623 int alt42=2;
6988 int LA33_0 = input.LA(1); 8624 int LA42_0 = input.LA(1);
6989 8625
6990 if ( (LA33_0==Semicolon) ) { 8626 if ( (LA42_0==Semicolon) ) {
6991 alt33=1; 8627 alt42=1;
6992 } 8628 }
6993 switch (alt33) { 8629 switch (alt42) {
6994 case 1 : 8630 case 1 :
6995 // InternalSolverLanguageParser.g:2724:4: otherlv_6= Semicolon 8631 // InternalSolverLanguageParser.g:3423:4: otherlv_6= Semicolon
6996 { 8632 {
6997 otherlv_6=(Token)match(input,Semicolon,FOLLOW_2); 8633 otherlv_6=(Token)match(input,Semicolon,FOLLOW_2);
6998 8634
@@ -7027,7 +8663,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7027 8663
7028 8664
7029 // $ANTLR start "entryRuleMultiplicity" 8665 // $ANTLR start "entryRuleMultiplicity"
7030 // InternalSolverLanguageParser.g:2733:1: entryRuleMultiplicity returns [EObject current=null] : iv_ruleMultiplicity= ruleMultiplicity EOF ; 8666 // InternalSolverLanguageParser.g:3432:1: entryRuleMultiplicity returns [EObject current=null] : iv_ruleMultiplicity= ruleMultiplicity EOF ;
7031 public final EObject entryRuleMultiplicity() throws RecognitionException { 8667 public final EObject entryRuleMultiplicity() throws RecognitionException {
7032 EObject current = null; 8668 EObject current = null;
7033 8669
@@ -7035,8 +8671,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7035 8671
7036 8672
7037 try { 8673 try {
7038 // InternalSolverLanguageParser.g:2733:53: (iv_ruleMultiplicity= ruleMultiplicity EOF ) 8674 // InternalSolverLanguageParser.g:3432:53: (iv_ruleMultiplicity= ruleMultiplicity EOF )
7039 // InternalSolverLanguageParser.g:2734:2: iv_ruleMultiplicity= ruleMultiplicity EOF 8675 // InternalSolverLanguageParser.g:3433:2: iv_ruleMultiplicity= ruleMultiplicity EOF
7040 { 8676 {
7041 newCompositeNode(grammarAccess.getMultiplicityRule()); 8677 newCompositeNode(grammarAccess.getMultiplicityRule());
7042 pushFollow(FOLLOW_1); 8678 pushFollow(FOLLOW_1);
@@ -7063,7 +8699,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7063 8699
7064 8700
7065 // $ANTLR start "ruleMultiplicity" 8701 // $ANTLR start "ruleMultiplicity"
7066 // InternalSolverLanguageParser.g:2740:1: ruleMultiplicity returns [EObject current=null] : (this_ManyMultiplicity_0= ruleManyMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity | this_BoundedMultiplicity_2= ruleBoundedMultiplicity ) ; 8702 // InternalSolverLanguageParser.g:3439:1: ruleMultiplicity returns [EObject current=null] : (this_ManyMultiplicity_0= ruleManyMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity | this_BoundedMultiplicity_2= ruleBoundedMultiplicity ) ;
7067 public final EObject ruleMultiplicity() throws RecognitionException { 8703 public final EObject ruleMultiplicity() throws RecognitionException {
7068 EObject current = null; 8704 EObject current = null;
7069 8705
@@ -7078,28 +8714,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7078 enterRule(); 8714 enterRule();
7079 8715
7080 try { 8716 try {
7081 // InternalSolverLanguageParser.g:2746:2: ( (this_ManyMultiplicity_0= ruleManyMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity | this_BoundedMultiplicity_2= ruleBoundedMultiplicity ) ) 8717 // InternalSolverLanguageParser.g:3445:2: ( (this_ManyMultiplicity_0= ruleManyMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity | this_BoundedMultiplicity_2= ruleBoundedMultiplicity ) )
7082 // InternalSolverLanguageParser.g:2747:2: (this_ManyMultiplicity_0= ruleManyMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity | this_BoundedMultiplicity_2= ruleBoundedMultiplicity ) 8718 // InternalSolverLanguageParser.g:3446:2: (this_ManyMultiplicity_0= ruleManyMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity | this_BoundedMultiplicity_2= ruleBoundedMultiplicity )
7083 { 8719 {
7084 // InternalSolverLanguageParser.g:2747:2: (this_ManyMultiplicity_0= ruleManyMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity | this_BoundedMultiplicity_2= ruleBoundedMultiplicity ) 8720 // InternalSolverLanguageParser.g:3446:2: (this_ManyMultiplicity_0= ruleManyMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity | this_BoundedMultiplicity_2= ruleBoundedMultiplicity )
7085 int alt34=3; 8721 int alt43=3;
7086 int LA34_0 = input.LA(1); 8722 int LA43_0 = input.LA(1);
7087 8723
7088 if ( (LA34_0==LeftSquareBracket) ) { 8724 if ( (LA43_0==LeftSquareBracket) ) {
7089 switch ( input.LA(2) ) { 8725 switch ( input.LA(2) ) {
7090 case RULE_INT: 8726 case RULE_INT:
7091 { 8727 {
7092 int LA34_2 = input.LA(3); 8728 int LA43_2 = input.LA(3);
7093 8729
7094 if ( (LA34_2==FullStopFullStop) ) { 8730 if ( (LA43_2==FullStopFullStop) ) {
7095 alt34=3; 8731 alt43=3;
7096 } 8732 }
7097 else if ( (LA34_2==RightSquareBracket) ) { 8733 else if ( (LA43_2==RightSquareBracket) ) {
7098 alt34=2; 8734 alt43=2;
7099 } 8735 }
7100 else { 8736 else {
7101 NoViableAltException nvae = 8737 NoViableAltException nvae =
7102 new NoViableAltException("", 34, 2, input); 8738 new NoViableAltException("", 43, 2, input);
7103 8739
7104 throw nvae; 8740 throw nvae;
7105 } 8741 }
@@ -7107,17 +8743,17 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7107 break; 8743 break;
7108 case Asterisk: 8744 case Asterisk:
7109 { 8745 {
7110 alt34=2; 8746 alt43=2;
7111 } 8747 }
7112 break; 8748 break;
7113 case RightSquareBracket: 8749 case RightSquareBracket:
7114 { 8750 {
7115 alt34=1; 8751 alt43=1;
7116 } 8752 }
7117 break; 8753 break;
7118 default: 8754 default:
7119 NoViableAltException nvae = 8755 NoViableAltException nvae =
7120 new NoViableAltException("", 34, 1, input); 8756 new NoViableAltException("", 43, 1, input);
7121 8757
7122 throw nvae; 8758 throw nvae;
7123 } 8759 }
@@ -7125,13 +8761,13 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7125 } 8761 }
7126 else { 8762 else {
7127 NoViableAltException nvae = 8763 NoViableAltException nvae =
7128 new NoViableAltException("", 34, 0, input); 8764 new NoViableAltException("", 43, 0, input);
7129 8765
7130 throw nvae; 8766 throw nvae;
7131 } 8767 }
7132 switch (alt34) { 8768 switch (alt43) {
7133 case 1 : 8769 case 1 :
7134 // InternalSolverLanguageParser.g:2748:3: this_ManyMultiplicity_0= ruleManyMultiplicity 8770 // InternalSolverLanguageParser.g:3447:3: this_ManyMultiplicity_0= ruleManyMultiplicity
7135 { 8771 {
7136 8772
7137 newCompositeNode(grammarAccess.getMultiplicityAccess().getManyMultiplicityParserRuleCall_0()); 8773 newCompositeNode(grammarAccess.getMultiplicityAccess().getManyMultiplicityParserRuleCall_0());
@@ -7149,7 +8785,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7149 } 8785 }
7150 break; 8786 break;
7151 case 2 : 8787 case 2 :
7152 // InternalSolverLanguageParser.g:2757:3: this_ExactMultiplicity_1= ruleExactMultiplicity 8788 // InternalSolverLanguageParser.g:3456:3: this_ExactMultiplicity_1= ruleExactMultiplicity
7153 { 8789 {
7154 8790
7155 newCompositeNode(grammarAccess.getMultiplicityAccess().getExactMultiplicityParserRuleCall_1()); 8791 newCompositeNode(grammarAccess.getMultiplicityAccess().getExactMultiplicityParserRuleCall_1());
@@ -7167,7 +8803,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7167 } 8803 }
7168 break; 8804 break;
7169 case 3 : 8805 case 3 :
7170 // InternalSolverLanguageParser.g:2766:3: this_BoundedMultiplicity_2= ruleBoundedMultiplicity 8806 // InternalSolverLanguageParser.g:3465:3: this_BoundedMultiplicity_2= ruleBoundedMultiplicity
7171 { 8807 {
7172 8808
7173 newCompositeNode(grammarAccess.getMultiplicityAccess().getBoundedMultiplicityParserRuleCall_2()); 8809 newCompositeNode(grammarAccess.getMultiplicityAccess().getBoundedMultiplicityParserRuleCall_2());
@@ -7207,7 +8843,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7207 8843
7208 8844
7209 // $ANTLR start "entryRuleManyMultiplicity" 8845 // $ANTLR start "entryRuleManyMultiplicity"
7210 // InternalSolverLanguageParser.g:2778:1: entryRuleManyMultiplicity returns [EObject current=null] : iv_ruleManyMultiplicity= ruleManyMultiplicity EOF ; 8846 // InternalSolverLanguageParser.g:3477:1: entryRuleManyMultiplicity returns [EObject current=null] : iv_ruleManyMultiplicity= ruleManyMultiplicity EOF ;
7211 public final EObject entryRuleManyMultiplicity() throws RecognitionException { 8847 public final EObject entryRuleManyMultiplicity() throws RecognitionException {
7212 EObject current = null; 8848 EObject current = null;
7213 8849
@@ -7215,8 +8851,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7215 8851
7216 8852
7217 try { 8853 try {
7218 // InternalSolverLanguageParser.g:2778:57: (iv_ruleManyMultiplicity= ruleManyMultiplicity EOF ) 8854 // InternalSolverLanguageParser.g:3477:57: (iv_ruleManyMultiplicity= ruleManyMultiplicity EOF )
7219 // InternalSolverLanguageParser.g:2779:2: iv_ruleManyMultiplicity= ruleManyMultiplicity EOF 8855 // InternalSolverLanguageParser.g:3478:2: iv_ruleManyMultiplicity= ruleManyMultiplicity EOF
7220 { 8856 {
7221 newCompositeNode(grammarAccess.getManyMultiplicityRule()); 8857 newCompositeNode(grammarAccess.getManyMultiplicityRule());
7222 pushFollow(FOLLOW_1); 8858 pushFollow(FOLLOW_1);
@@ -7243,7 +8879,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7243 8879
7244 8880
7245 // $ANTLR start "ruleManyMultiplicity" 8881 // $ANTLR start "ruleManyMultiplicity"
7246 // InternalSolverLanguageParser.g:2785:1: ruleManyMultiplicity returns [EObject current=null] : ( () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket ) ; 8882 // InternalSolverLanguageParser.g:3484:1: ruleManyMultiplicity returns [EObject current=null] : ( () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket ) ;
7247 public final EObject ruleManyMultiplicity() throws RecognitionException { 8883 public final EObject ruleManyMultiplicity() throws RecognitionException {
7248 EObject current = null; 8884 EObject current = null;
7249 8885
@@ -7254,14 +8890,14 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7254 enterRule(); 8890 enterRule();
7255 8891
7256 try { 8892 try {
7257 // InternalSolverLanguageParser.g:2791:2: ( ( () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket ) ) 8893 // InternalSolverLanguageParser.g:3490:2: ( ( () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket ) )
7258 // InternalSolverLanguageParser.g:2792:2: ( () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket ) 8894 // InternalSolverLanguageParser.g:3491:2: ( () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket )
7259 { 8895 {
7260 // InternalSolverLanguageParser.g:2792:2: ( () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket ) 8896 // InternalSolverLanguageParser.g:3491:2: ( () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket )
7261 // InternalSolverLanguageParser.g:2793:3: () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket 8897 // InternalSolverLanguageParser.g:3492:3: () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket
7262 { 8898 {
7263 // InternalSolverLanguageParser.g:2793:3: () 8899 // InternalSolverLanguageParser.g:3492:3: ()
7264 // InternalSolverLanguageParser.g:2794:4: 8900 // InternalSolverLanguageParser.g:3493:4:
7265 { 8901 {
7266 8902
7267 current = forceCreateModelElement( 8903 current = forceCreateModelElement(
@@ -7271,7 +8907,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7271 8907
7272 } 8908 }
7273 8909
7274 otherlv_1=(Token)match(input,LeftSquareBracket,FOLLOW_36); 8910 otherlv_1=(Token)match(input,LeftSquareBracket,FOLLOW_45);
7275 8911
7276 newLeafNode(otherlv_1, grammarAccess.getManyMultiplicityAccess().getLeftSquareBracketKeyword_1()); 8912 newLeafNode(otherlv_1, grammarAccess.getManyMultiplicityAccess().getLeftSquareBracketKeyword_1());
7277 8913
@@ -7302,7 +8938,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7302 8938
7303 8939
7304 // $ANTLR start "entryRuleExactMultiplicity" 8940 // $ANTLR start "entryRuleExactMultiplicity"
7305 // InternalSolverLanguageParser.g:2812:1: entryRuleExactMultiplicity returns [EObject current=null] : iv_ruleExactMultiplicity= ruleExactMultiplicity EOF ; 8941 // InternalSolverLanguageParser.g:3511:1: entryRuleExactMultiplicity returns [EObject current=null] : iv_ruleExactMultiplicity= ruleExactMultiplicity EOF ;
7306 public final EObject entryRuleExactMultiplicity() throws RecognitionException { 8942 public final EObject entryRuleExactMultiplicity() throws RecognitionException {
7307 EObject current = null; 8943 EObject current = null;
7308 8944
@@ -7310,8 +8946,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7310 8946
7311 8947
7312 try { 8948 try {
7313 // InternalSolverLanguageParser.g:2812:58: (iv_ruleExactMultiplicity= ruleExactMultiplicity EOF ) 8949 // InternalSolverLanguageParser.g:3511:58: (iv_ruleExactMultiplicity= ruleExactMultiplicity EOF )
7314 // InternalSolverLanguageParser.g:2813:2: iv_ruleExactMultiplicity= ruleExactMultiplicity EOF 8950 // InternalSolverLanguageParser.g:3512:2: iv_ruleExactMultiplicity= ruleExactMultiplicity EOF
7315 { 8951 {
7316 newCompositeNode(grammarAccess.getExactMultiplicityRule()); 8952 newCompositeNode(grammarAccess.getExactMultiplicityRule());
7317 pushFollow(FOLLOW_1); 8953 pushFollow(FOLLOW_1);
@@ -7338,7 +8974,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7338 8974
7339 8975
7340 // $ANTLR start "ruleExactMultiplicity" 8976 // $ANTLR start "ruleExactMultiplicity"
7341 // InternalSolverLanguageParser.g:2819:1: ruleExactMultiplicity returns [EObject current=null] : (otherlv_0= LeftSquareBracket ( (lv_multiplicity_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket ) ; 8977 // InternalSolverLanguageParser.g:3518:1: ruleExactMultiplicity returns [EObject current=null] : (otherlv_0= LeftSquareBracket ( (lv_multiplicity_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket ) ;
7342 public final EObject ruleExactMultiplicity() throws RecognitionException { 8978 public final EObject ruleExactMultiplicity() throws RecognitionException {
7343 EObject current = null; 8979 EObject current = null;
7344 8980
@@ -7351,26 +8987,26 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7351 enterRule(); 8987 enterRule();
7352 8988
7353 try { 8989 try {
7354 // InternalSolverLanguageParser.g:2825:2: ( (otherlv_0= LeftSquareBracket ( (lv_multiplicity_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket ) ) 8990 // InternalSolverLanguageParser.g:3524:2: ( (otherlv_0= LeftSquareBracket ( (lv_multiplicity_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket ) )
7355 // InternalSolverLanguageParser.g:2826:2: (otherlv_0= LeftSquareBracket ( (lv_multiplicity_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket ) 8991 // InternalSolverLanguageParser.g:3525:2: (otherlv_0= LeftSquareBracket ( (lv_multiplicity_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket )
7356 { 8992 {
7357 // InternalSolverLanguageParser.g:2826:2: (otherlv_0= LeftSquareBracket ( (lv_multiplicity_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket ) 8993 // InternalSolverLanguageParser.g:3525:2: (otherlv_0= LeftSquareBracket ( (lv_multiplicity_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket )
7358 // InternalSolverLanguageParser.g:2827:3: otherlv_0= LeftSquareBracket ( (lv_multiplicity_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket 8994 // InternalSolverLanguageParser.g:3526:3: otherlv_0= LeftSquareBracket ( (lv_multiplicity_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket
7359 { 8995 {
7360 otherlv_0=(Token)match(input,LeftSquareBracket,FOLLOW_44); 8996 otherlv_0=(Token)match(input,LeftSquareBracket,FOLLOW_52);
7361 8997
7362 newLeafNode(otherlv_0, grammarAccess.getExactMultiplicityAccess().getLeftSquareBracketKeyword_0()); 8998 newLeafNode(otherlv_0, grammarAccess.getExactMultiplicityAccess().getLeftSquareBracketKeyword_0());
7363 8999
7364 // InternalSolverLanguageParser.g:2831:3: ( (lv_multiplicity_1_0= ruleUpperMultiplicty ) ) 9000 // InternalSolverLanguageParser.g:3530:3: ( (lv_multiplicity_1_0= ruleUpperMultiplicty ) )
7365 // InternalSolverLanguageParser.g:2832:4: (lv_multiplicity_1_0= ruleUpperMultiplicty ) 9001 // InternalSolverLanguageParser.g:3531:4: (lv_multiplicity_1_0= ruleUpperMultiplicty )
7366 { 9002 {
7367 // InternalSolverLanguageParser.g:2832:4: (lv_multiplicity_1_0= ruleUpperMultiplicty ) 9003 // InternalSolverLanguageParser.g:3531:4: (lv_multiplicity_1_0= ruleUpperMultiplicty )
7368 // InternalSolverLanguageParser.g:2833:5: lv_multiplicity_1_0= ruleUpperMultiplicty 9004 // InternalSolverLanguageParser.g:3532:5: lv_multiplicity_1_0= ruleUpperMultiplicty
7369 { 9005 {
7370 9006
7371 newCompositeNode(grammarAccess.getExactMultiplicityAccess().getMultiplicityUpperMultiplictyParserRuleCall_1_0()); 9007 newCompositeNode(grammarAccess.getExactMultiplicityAccess().getMultiplicityUpperMultiplictyParserRuleCall_1_0());
7372 9008
7373 pushFollow(FOLLOW_36); 9009 pushFollow(FOLLOW_45);
7374 lv_multiplicity_1_0=ruleUpperMultiplicty(); 9010 lv_multiplicity_1_0=ruleUpperMultiplicty();
7375 9011
7376 state._fsp--; 9012 state._fsp--;
@@ -7419,7 +9055,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7419 9055
7420 9056
7421 // $ANTLR start "entryRuleBoundedMultiplicity" 9057 // $ANTLR start "entryRuleBoundedMultiplicity"
7422 // InternalSolverLanguageParser.g:2858:1: entryRuleBoundedMultiplicity returns [EObject current=null] : iv_ruleBoundedMultiplicity= ruleBoundedMultiplicity EOF ; 9058 // InternalSolverLanguageParser.g:3557:1: entryRuleBoundedMultiplicity returns [EObject current=null] : iv_ruleBoundedMultiplicity= ruleBoundedMultiplicity EOF ;
7423 public final EObject entryRuleBoundedMultiplicity() throws RecognitionException { 9059 public final EObject entryRuleBoundedMultiplicity() throws RecognitionException {
7424 EObject current = null; 9060 EObject current = null;
7425 9061
@@ -7427,8 +9063,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7427 9063
7428 9064
7429 try { 9065 try {
7430 // InternalSolverLanguageParser.g:2858:60: (iv_ruleBoundedMultiplicity= ruleBoundedMultiplicity EOF ) 9066 // InternalSolverLanguageParser.g:3557:60: (iv_ruleBoundedMultiplicity= ruleBoundedMultiplicity EOF )
7431 // InternalSolverLanguageParser.g:2859:2: iv_ruleBoundedMultiplicity= ruleBoundedMultiplicity EOF 9067 // InternalSolverLanguageParser.g:3558:2: iv_ruleBoundedMultiplicity= ruleBoundedMultiplicity EOF
7432 { 9068 {
7433 newCompositeNode(grammarAccess.getBoundedMultiplicityRule()); 9069 newCompositeNode(grammarAccess.getBoundedMultiplicityRule());
7434 pushFollow(FOLLOW_1); 9070 pushFollow(FOLLOW_1);
@@ -7455,7 +9091,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7455 9091
7456 9092
7457 // $ANTLR start "ruleBoundedMultiplicity" 9093 // $ANTLR start "ruleBoundedMultiplicity"
7458 // InternalSolverLanguageParser.g:2865:1: ruleBoundedMultiplicity returns [EObject current=null] : (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket ) ; 9094 // InternalSolverLanguageParser.g:3564:1: ruleBoundedMultiplicity returns [EObject current=null] : (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket ) ;
7459 public final EObject ruleBoundedMultiplicity() throws RecognitionException { 9095 public final EObject ruleBoundedMultiplicity() throws RecognitionException {
7460 EObject current = null; 9096 EObject current = null;
7461 9097
@@ -7470,23 +9106,23 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7470 enterRule(); 9106 enterRule();
7471 9107
7472 try { 9108 try {
7473 // InternalSolverLanguageParser.g:2871:2: ( (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket ) ) 9109 // InternalSolverLanguageParser.g:3570:2: ( (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket ) )
7474 // InternalSolverLanguageParser.g:2872:2: (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket ) 9110 // InternalSolverLanguageParser.g:3571:2: (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket )
7475 { 9111 {
7476 // InternalSolverLanguageParser.g:2872:2: (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket ) 9112 // InternalSolverLanguageParser.g:3571:2: (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket )
7477 // InternalSolverLanguageParser.g:2873:3: otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket 9113 // InternalSolverLanguageParser.g:3572:3: otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket
7478 { 9114 {
7479 otherlv_0=(Token)match(input,LeftSquareBracket,FOLLOW_45); 9115 otherlv_0=(Token)match(input,LeftSquareBracket,FOLLOW_53);
7480 9116
7481 newLeafNode(otherlv_0, grammarAccess.getBoundedMultiplicityAccess().getLeftSquareBracketKeyword_0()); 9117 newLeafNode(otherlv_0, grammarAccess.getBoundedMultiplicityAccess().getLeftSquareBracketKeyword_0());
7482 9118
7483 // InternalSolverLanguageParser.g:2877:3: ( (lv_lowerBound_1_0= RULE_INT ) ) 9119 // InternalSolverLanguageParser.g:3576:3: ( (lv_lowerBound_1_0= RULE_INT ) )
7484 // InternalSolverLanguageParser.g:2878:4: (lv_lowerBound_1_0= RULE_INT ) 9120 // InternalSolverLanguageParser.g:3577:4: (lv_lowerBound_1_0= RULE_INT )
7485 { 9121 {
7486 // InternalSolverLanguageParser.g:2878:4: (lv_lowerBound_1_0= RULE_INT ) 9122 // InternalSolverLanguageParser.g:3577:4: (lv_lowerBound_1_0= RULE_INT )
7487 // InternalSolverLanguageParser.g:2879:5: lv_lowerBound_1_0= RULE_INT 9123 // InternalSolverLanguageParser.g:3578:5: lv_lowerBound_1_0= RULE_INT
7488 { 9124 {
7489 lv_lowerBound_1_0=(Token)match(input,RULE_INT,FOLLOW_35); 9125 lv_lowerBound_1_0=(Token)match(input,RULE_INT,FOLLOW_44);
7490 9126
7491 newLeafNode(lv_lowerBound_1_0, grammarAccess.getBoundedMultiplicityAccess().getLowerBoundINTTerminalRuleCall_1_0()); 9127 newLeafNode(lv_lowerBound_1_0, grammarAccess.getBoundedMultiplicityAccess().getLowerBoundINTTerminalRuleCall_1_0());
7492 9128
@@ -7506,20 +9142,20 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7506 9142
7507 } 9143 }
7508 9144
7509 otherlv_2=(Token)match(input,FullStopFullStop,FOLLOW_44); 9145 otherlv_2=(Token)match(input,FullStopFullStop,FOLLOW_52);
7510 9146
7511 newLeafNode(otherlv_2, grammarAccess.getBoundedMultiplicityAccess().getFullStopFullStopKeyword_2()); 9147 newLeafNode(otherlv_2, grammarAccess.getBoundedMultiplicityAccess().getFullStopFullStopKeyword_2());
7512 9148
7513 // InternalSolverLanguageParser.g:2899:3: ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) 9149 // InternalSolverLanguageParser.g:3598:3: ( (lv_upperBound_3_0= ruleUpperMultiplicty ) )
7514 // InternalSolverLanguageParser.g:2900:4: (lv_upperBound_3_0= ruleUpperMultiplicty ) 9150 // InternalSolverLanguageParser.g:3599:4: (lv_upperBound_3_0= ruleUpperMultiplicty )
7515 { 9151 {
7516 // InternalSolverLanguageParser.g:2900:4: (lv_upperBound_3_0= ruleUpperMultiplicty ) 9152 // InternalSolverLanguageParser.g:3599:4: (lv_upperBound_3_0= ruleUpperMultiplicty )
7517 // InternalSolverLanguageParser.g:2901:5: lv_upperBound_3_0= ruleUpperMultiplicty 9153 // InternalSolverLanguageParser.g:3600:5: lv_upperBound_3_0= ruleUpperMultiplicty
7518 { 9154 {
7519 9155
7520 newCompositeNode(grammarAccess.getBoundedMultiplicityAccess().getUpperBoundUpperMultiplictyParserRuleCall_3_0()); 9156 newCompositeNode(grammarAccess.getBoundedMultiplicityAccess().getUpperBoundUpperMultiplictyParserRuleCall_3_0());
7521 9157
7522 pushFollow(FOLLOW_36); 9158 pushFollow(FOLLOW_45);
7523 lv_upperBound_3_0=ruleUpperMultiplicty(); 9159 lv_upperBound_3_0=ruleUpperMultiplicty();
7524 9160
7525 state._fsp--; 9161 state._fsp--;
@@ -7568,7 +9204,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7568 9204
7569 9205
7570 // $ANTLR start "entryRuleScopeDefinition" 9206 // $ANTLR start "entryRuleScopeDefinition"
7571 // InternalSolverLanguageParser.g:2926:1: entryRuleScopeDefinition returns [EObject current=null] : iv_ruleScopeDefinition= ruleScopeDefinition EOF ; 9207 // InternalSolverLanguageParser.g:3625:1: entryRuleScopeDefinition returns [EObject current=null] : iv_ruleScopeDefinition= ruleScopeDefinition EOF ;
7572 public final EObject entryRuleScopeDefinition() throws RecognitionException { 9208 public final EObject entryRuleScopeDefinition() throws RecognitionException {
7573 EObject current = null; 9209 EObject current = null;
7574 9210
@@ -7576,8 +9212,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7576 9212
7577 9213
7578 try { 9214 try {
7579 // InternalSolverLanguageParser.g:2926:56: (iv_ruleScopeDefinition= ruleScopeDefinition EOF ) 9215 // InternalSolverLanguageParser.g:3625:56: (iv_ruleScopeDefinition= ruleScopeDefinition EOF )
7580 // InternalSolverLanguageParser.g:2927:2: iv_ruleScopeDefinition= ruleScopeDefinition EOF 9216 // InternalSolverLanguageParser.g:3626:2: iv_ruleScopeDefinition= ruleScopeDefinition EOF
7581 { 9217 {
7582 newCompositeNode(grammarAccess.getScopeDefinitionRule()); 9218 newCompositeNode(grammarAccess.getScopeDefinitionRule());
7583 pushFollow(FOLLOW_1); 9219 pushFollow(FOLLOW_1);
@@ -7604,7 +9240,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7604 9240
7605 9241
7606 // $ANTLR start "ruleScopeDefinition" 9242 // $ANTLR start "ruleScopeDefinition"
7607 // InternalSolverLanguageParser.g:2933:1: ruleScopeDefinition returns [EObject current=null] : (this_ExactScopeDefinition_0= ruleExactScopeDefinition | this_BoundedScopeDefinition_1= ruleBoundedScopeDefinition | this_LowerBoundedScopeDefinition_2= ruleLowerBoundedScopeDefinition ) ; 9243 // InternalSolverLanguageParser.g:3632:1: ruleScopeDefinition returns [EObject current=null] : (this_ExactScopeDefinition_0= ruleExactScopeDefinition | this_BoundedScopeDefinition_1= ruleBoundedScopeDefinition | this_LowerBoundedScopeDefinition_2= ruleLowerBoundedScopeDefinition ) ;
7608 public final EObject ruleScopeDefinition() throws RecognitionException { 9244 public final EObject ruleScopeDefinition() throws RecognitionException {
7609 EObject current = null; 9245 EObject current = null;
7610 9246
@@ -7619,15 +9255,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7619 enterRule(); 9255 enterRule();
7620 9256
7621 try { 9257 try {
7622 // InternalSolverLanguageParser.g:2939:2: ( (this_ExactScopeDefinition_0= ruleExactScopeDefinition | this_BoundedScopeDefinition_1= ruleBoundedScopeDefinition | this_LowerBoundedScopeDefinition_2= ruleLowerBoundedScopeDefinition ) ) 9258 // InternalSolverLanguageParser.g:3638:2: ( (this_ExactScopeDefinition_0= ruleExactScopeDefinition | this_BoundedScopeDefinition_1= ruleBoundedScopeDefinition | this_LowerBoundedScopeDefinition_2= ruleLowerBoundedScopeDefinition ) )
7623 // InternalSolverLanguageParser.g:2940:2: (this_ExactScopeDefinition_0= ruleExactScopeDefinition | this_BoundedScopeDefinition_1= ruleBoundedScopeDefinition | this_LowerBoundedScopeDefinition_2= ruleLowerBoundedScopeDefinition ) 9259 // InternalSolverLanguageParser.g:3639:2: (this_ExactScopeDefinition_0= ruleExactScopeDefinition | this_BoundedScopeDefinition_1= ruleBoundedScopeDefinition | this_LowerBoundedScopeDefinition_2= ruleLowerBoundedScopeDefinition )
7624 { 9260 {
7625 // InternalSolverLanguageParser.g:2940:2: (this_ExactScopeDefinition_0= ruleExactScopeDefinition | this_BoundedScopeDefinition_1= ruleBoundedScopeDefinition | this_LowerBoundedScopeDefinition_2= ruleLowerBoundedScopeDefinition ) 9261 // InternalSolverLanguageParser.g:3639:2: (this_ExactScopeDefinition_0= ruleExactScopeDefinition | this_BoundedScopeDefinition_1= ruleBoundedScopeDefinition | this_LowerBoundedScopeDefinition_2= ruleLowerBoundedScopeDefinition )
7626 int alt35=3; 9262 int alt44=3;
7627 alt35 = dfa35.predict(input); 9263 alt44 = dfa44.predict(input);
7628 switch (alt35) { 9264 switch (alt44) {
7629 case 1 : 9265 case 1 :
7630 // InternalSolverLanguageParser.g:2941:3: this_ExactScopeDefinition_0= ruleExactScopeDefinition 9266 // InternalSolverLanguageParser.g:3640:3: this_ExactScopeDefinition_0= ruleExactScopeDefinition
7631 { 9267 {
7632 9268
7633 newCompositeNode(grammarAccess.getScopeDefinitionAccess().getExactScopeDefinitionParserRuleCall_0()); 9269 newCompositeNode(grammarAccess.getScopeDefinitionAccess().getExactScopeDefinitionParserRuleCall_0());
@@ -7645,7 +9281,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7645 } 9281 }
7646 break; 9282 break;
7647 case 2 : 9283 case 2 :
7648 // InternalSolverLanguageParser.g:2950:3: this_BoundedScopeDefinition_1= ruleBoundedScopeDefinition 9284 // InternalSolverLanguageParser.g:3649:3: this_BoundedScopeDefinition_1= ruleBoundedScopeDefinition
7649 { 9285 {
7650 9286
7651 newCompositeNode(grammarAccess.getScopeDefinitionAccess().getBoundedScopeDefinitionParserRuleCall_1()); 9287 newCompositeNode(grammarAccess.getScopeDefinitionAccess().getBoundedScopeDefinitionParserRuleCall_1());
@@ -7663,7 +9299,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7663 } 9299 }
7664 break; 9300 break;
7665 case 3 : 9301 case 3 :
7666 // InternalSolverLanguageParser.g:2959:3: this_LowerBoundedScopeDefinition_2= ruleLowerBoundedScopeDefinition 9302 // InternalSolverLanguageParser.g:3658:3: this_LowerBoundedScopeDefinition_2= ruleLowerBoundedScopeDefinition
7667 { 9303 {
7668 9304
7669 newCompositeNode(grammarAccess.getScopeDefinitionAccess().getLowerBoundedScopeDefinitionParserRuleCall_2()); 9305 newCompositeNode(grammarAccess.getScopeDefinitionAccess().getLowerBoundedScopeDefinitionParserRuleCall_2());
@@ -7703,7 +9339,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7703 9339
7704 9340
7705 // $ANTLR start "entryRuleExactScopeDefinition" 9341 // $ANTLR start "entryRuleExactScopeDefinition"
7706 // InternalSolverLanguageParser.g:2971:1: entryRuleExactScopeDefinition returns [EObject current=null] : iv_ruleExactScopeDefinition= ruleExactScopeDefinition EOF ; 9342 // InternalSolverLanguageParser.g:3670:1: entryRuleExactScopeDefinition returns [EObject current=null] : iv_ruleExactScopeDefinition= ruleExactScopeDefinition EOF ;
7707 public final EObject entryRuleExactScopeDefinition() throws RecognitionException { 9343 public final EObject entryRuleExactScopeDefinition() throws RecognitionException {
7708 EObject current = null; 9344 EObject current = null;
7709 9345
@@ -7711,8 +9347,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7711 9347
7712 9348
7713 try { 9349 try {
7714 // InternalSolverLanguageParser.g:2971:61: (iv_ruleExactScopeDefinition= ruleExactScopeDefinition EOF ) 9350 // InternalSolverLanguageParser.g:3670:61: (iv_ruleExactScopeDefinition= ruleExactScopeDefinition EOF )
7715 // InternalSolverLanguageParser.g:2972:2: iv_ruleExactScopeDefinition= ruleExactScopeDefinition EOF 9351 // InternalSolverLanguageParser.g:3671:2: iv_ruleExactScopeDefinition= ruleExactScopeDefinition EOF
7716 { 9352 {
7717 newCompositeNode(grammarAccess.getExactScopeDefinitionRule()); 9353 newCompositeNode(grammarAccess.getExactScopeDefinitionRule());
7718 pushFollow(FOLLOW_1); 9354 pushFollow(FOLLOW_1);
@@ -7739,7 +9375,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7739 9375
7740 9376
7741 // $ANTLR start "ruleExactScopeDefinition" 9377 // $ANTLR start "ruleExactScopeDefinition"
7742 // InternalSolverLanguageParser.g:2978:1: ruleExactScopeDefinition returns [EObject current=null] : (otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_exactScope_3_0= RULE_INT ) ) ) ; 9378 // InternalSolverLanguageParser.g:3677:1: ruleExactScopeDefinition returns [EObject current=null] : (otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_exactScope_3_0= RULE_INT ) ) ) ;
7743 public final EObject ruleExactScopeDefinition() throws RecognitionException { 9379 public final EObject ruleExactScopeDefinition() throws RecognitionException {
7744 EObject current = null; 9380 EObject current = null;
7745 9381
@@ -7751,21 +9387,21 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7751 enterRule(); 9387 enterRule();
7752 9388
7753 try { 9389 try {
7754 // InternalSolverLanguageParser.g:2984:2: ( (otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_exactScope_3_0= RULE_INT ) ) ) ) 9390 // InternalSolverLanguageParser.g:3683:2: ( (otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_exactScope_3_0= RULE_INT ) ) ) )
7755 // InternalSolverLanguageParser.g:2985:2: (otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_exactScope_3_0= RULE_INT ) ) ) 9391 // InternalSolverLanguageParser.g:3684:2: (otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_exactScope_3_0= RULE_INT ) ) )
7756 { 9392 {
7757 // InternalSolverLanguageParser.g:2985:2: (otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_exactScope_3_0= RULE_INT ) ) ) 9393 // InternalSolverLanguageParser.g:3684:2: (otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_exactScope_3_0= RULE_INT ) ) )
7758 // InternalSolverLanguageParser.g:2986:3: otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_exactScope_3_0= RULE_INT ) ) 9394 // InternalSolverLanguageParser.g:3685:3: otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_exactScope_3_0= RULE_INT ) )
7759 { 9395 {
7760 otherlv_0=(Token)match(input,Scope,FOLLOW_8); 9396 otherlv_0=(Token)match(input,Scope,FOLLOW_8);
7761 9397
7762 newLeafNode(otherlv_0, grammarAccess.getExactScopeDefinitionAccess().getScopeKeyword_0()); 9398 newLeafNode(otherlv_0, grammarAccess.getExactScopeDefinitionAccess().getScopeKeyword_0());
7763 9399
7764 // InternalSolverLanguageParser.g:2990:3: ( ( ruleQualifiedName ) ) 9400 // InternalSolverLanguageParser.g:3689:3: ( ( ruleQualifiedName ) )
7765 // InternalSolverLanguageParser.g:2991:4: ( ruleQualifiedName ) 9401 // InternalSolverLanguageParser.g:3690:4: ( ruleQualifiedName )
7766 { 9402 {
7767 // InternalSolverLanguageParser.g:2991:4: ( ruleQualifiedName ) 9403 // InternalSolverLanguageParser.g:3690:4: ( ruleQualifiedName )
7768 // InternalSolverLanguageParser.g:2992:5: ruleQualifiedName 9404 // InternalSolverLanguageParser.g:3691:5: ruleQualifiedName
7769 { 9405 {
7770 9406
7771 if (current==null) { 9407 if (current==null) {
@@ -7775,7 +9411,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7775 9411
7776 newCompositeNode(grammarAccess.getExactScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0()); 9412 newCompositeNode(grammarAccess.getExactScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0());
7777 9413
7778 pushFollow(FOLLOW_46); 9414 pushFollow(FOLLOW_54);
7779 ruleQualifiedName(); 9415 ruleQualifiedName();
7780 9416
7781 state._fsp--; 9417 state._fsp--;
@@ -7789,15 +9425,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7789 9425
7790 } 9426 }
7791 9427
7792 otherlv_2=(Token)match(input,EqualsSignEqualsSign,FOLLOW_45); 9428 otherlv_2=(Token)match(input,EqualsSignEqualsSign,FOLLOW_53);
7793 9429
7794 newLeafNode(otherlv_2, grammarAccess.getExactScopeDefinitionAccess().getEqualsSignEqualsSignKeyword_2()); 9430 newLeafNode(otherlv_2, grammarAccess.getExactScopeDefinitionAccess().getEqualsSignEqualsSignKeyword_2());
7795 9431
7796 // InternalSolverLanguageParser.g:3010:3: ( (lv_exactScope_3_0= RULE_INT ) ) 9432 // InternalSolverLanguageParser.g:3709:3: ( (lv_exactScope_3_0= RULE_INT ) )
7797 // InternalSolverLanguageParser.g:3011:4: (lv_exactScope_3_0= RULE_INT ) 9433 // InternalSolverLanguageParser.g:3710:4: (lv_exactScope_3_0= RULE_INT )
7798 { 9434 {
7799 // InternalSolverLanguageParser.g:3011:4: (lv_exactScope_3_0= RULE_INT ) 9435 // InternalSolverLanguageParser.g:3710:4: (lv_exactScope_3_0= RULE_INT )
7800 // InternalSolverLanguageParser.g:3012:5: lv_exactScope_3_0= RULE_INT 9436 // InternalSolverLanguageParser.g:3711:5: lv_exactScope_3_0= RULE_INT
7801 { 9437 {
7802 lv_exactScope_3_0=(Token)match(input,RULE_INT,FOLLOW_2); 9438 lv_exactScope_3_0=(Token)match(input,RULE_INT,FOLLOW_2);
7803 9439
@@ -7842,7 +9478,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7842 9478
7843 9479
7844 // $ANTLR start "entryRuleBoundedScopeDefinition" 9480 // $ANTLR start "entryRuleBoundedScopeDefinition"
7845 // InternalSolverLanguageParser.g:3032:1: entryRuleBoundedScopeDefinition returns [EObject current=null] : iv_ruleBoundedScopeDefinition= ruleBoundedScopeDefinition EOF ; 9481 // InternalSolverLanguageParser.g:3731:1: entryRuleBoundedScopeDefinition returns [EObject current=null] : iv_ruleBoundedScopeDefinition= ruleBoundedScopeDefinition EOF ;
7846 public final EObject entryRuleBoundedScopeDefinition() throws RecognitionException { 9482 public final EObject entryRuleBoundedScopeDefinition() throws RecognitionException {
7847 EObject current = null; 9483 EObject current = null;
7848 9484
@@ -7850,8 +9486,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7850 9486
7851 9487
7852 try { 9488 try {
7853 // InternalSolverLanguageParser.g:3032:63: (iv_ruleBoundedScopeDefinition= ruleBoundedScopeDefinition EOF ) 9489 // InternalSolverLanguageParser.g:3731:63: (iv_ruleBoundedScopeDefinition= ruleBoundedScopeDefinition EOF )
7854 // InternalSolverLanguageParser.g:3033:2: iv_ruleBoundedScopeDefinition= ruleBoundedScopeDefinition EOF 9490 // InternalSolverLanguageParser.g:3732:2: iv_ruleBoundedScopeDefinition= ruleBoundedScopeDefinition EOF
7855 { 9491 {
7856 newCompositeNode(grammarAccess.getBoundedScopeDefinitionRule()); 9492 newCompositeNode(grammarAccess.getBoundedScopeDefinitionRule());
7857 pushFollow(FOLLOW_1); 9493 pushFollow(FOLLOW_1);
@@ -7878,7 +9514,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7878 9514
7879 9515
7880 // $ANTLR start "ruleBoundedScopeDefinition" 9516 // $ANTLR start "ruleBoundedScopeDefinition"
7881 // InternalSolverLanguageParser.g:3039:1: ruleBoundedScopeDefinition returns [EObject current=null] : (otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) ) ; 9517 // InternalSolverLanguageParser.g:3738:1: ruleBoundedScopeDefinition returns [EObject current=null] : (otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) ) ;
7882 public final EObject ruleBoundedScopeDefinition() throws RecognitionException { 9518 public final EObject ruleBoundedScopeDefinition() throws RecognitionException {
7883 EObject current = null; 9519 EObject current = null;
7884 9520
@@ -7896,70 +9532,70 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7896 enterRule(); 9532 enterRule();
7897 9533
7898 try { 9534 try {
7899 // InternalSolverLanguageParser.g:3045:2: ( (otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) ) ) 9535 // InternalSolverLanguageParser.g:3744:2: ( (otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) ) )
7900 // InternalSolverLanguageParser.g:3046:2: (otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) ) 9536 // InternalSolverLanguageParser.g:3745:2: (otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) )
7901 { 9537 {
7902 // InternalSolverLanguageParser.g:3046:2: (otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) ) 9538 // InternalSolverLanguageParser.g:3745:2: (otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) )
7903 // InternalSolverLanguageParser.g:3047:3: otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) 9539 // InternalSolverLanguageParser.g:3746:3: otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) )
7904 { 9540 {
7905 otherlv_0=(Token)match(input,Scope,FOLLOW_47); 9541 otherlv_0=(Token)match(input,Scope,FOLLOW_55);
7906 9542
7907 newLeafNode(otherlv_0, grammarAccess.getBoundedScopeDefinitionAccess().getScopeKeyword_0()); 9543 newLeafNode(otherlv_0, grammarAccess.getBoundedScopeDefinitionAccess().getScopeKeyword_0());
7908 9544
7909 // InternalSolverLanguageParser.g:3051:3: ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) 9545 // InternalSolverLanguageParser.g:3750:3: ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) )
7910 int alt38=2; 9546 int alt47=2;
7911 int LA38_0 = input.LA(1); 9547 int LA47_0 = input.LA(1);
7912 9548
7913 if ( (LA38_0==RULE_INT) ) { 9549 if ( (LA47_0==RULE_INT) ) {
7914 int LA38_1 = input.LA(2); 9550 int LA47_1 = input.LA(2);
7915 9551
7916 if ( (LA38_1==GreaterThanSignEqualsSign) ) { 9552 if ( (LA47_1==GreaterThanSignEqualsSign) ) {
7917 alt38=2; 9553 alt47=2;
7918 } 9554 }
7919 else if ( (LA38_1==LessThanSignEqualsSign) ) { 9555 else if ( (LA47_1==LessThanSignEqualsSign) ) {
7920 alt38=1; 9556 alt47=1;
7921 } 9557 }
7922 else { 9558 else {
7923 NoViableAltException nvae = 9559 NoViableAltException nvae =
7924 new NoViableAltException("", 38, 1, input); 9560 new NoViableAltException("", 47, 1, input);
7925 9561
7926 throw nvae; 9562 throw nvae;
7927 } 9563 }
7928 } 9564 }
7929 else if ( (LA38_0==RULE_QUOTED_ID||LA38_0==RULE_ID) ) { 9565 else if ( (LA47_0==RULE_QUOTED_ID||LA47_0==RULE_ID) ) {
7930 alt38=1; 9566 alt47=1;
7931 } 9567 }
7932 else { 9568 else {
7933 NoViableAltException nvae = 9569 NoViableAltException nvae =
7934 new NoViableAltException("", 38, 0, input); 9570 new NoViableAltException("", 47, 0, input);
7935 9571
7936 throw nvae; 9572 throw nvae;
7937 } 9573 }
7938 switch (alt38) { 9574 switch (alt47) {
7939 case 1 : 9575 case 1 :
7940 // InternalSolverLanguageParser.g:3052:4: ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) 9576 // InternalSolverLanguageParser.g:3751:4: ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) )
7941 { 9577 {
7942 // InternalSolverLanguageParser.g:3052:4: ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) 9578 // InternalSolverLanguageParser.g:3751:4: ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) )
7943 // InternalSolverLanguageParser.g:3053:5: ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) 9579 // InternalSolverLanguageParser.g:3752:5: ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) )
7944 { 9580 {
7945 // InternalSolverLanguageParser.g:3053:5: ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? 9581 // InternalSolverLanguageParser.g:3752:5: ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )?
7946 int alt36=2; 9582 int alt45=2;
7947 int LA36_0 = input.LA(1); 9583 int LA45_0 = input.LA(1);
7948 9584
7949 if ( (LA36_0==RULE_INT) ) { 9585 if ( (LA45_0==RULE_INT) ) {
7950 alt36=1; 9586 alt45=1;
7951 } 9587 }
7952 switch (alt36) { 9588 switch (alt45) {
7953 case 1 : 9589 case 1 :
7954 // InternalSolverLanguageParser.g:3054:6: ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign 9590 // InternalSolverLanguageParser.g:3753:6: ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign
7955 { 9591 {
7956 // InternalSolverLanguageParser.g:3054:6: ( (lv_lowerBound_1_0= RULE_INT ) ) 9592 // InternalSolverLanguageParser.g:3753:6: ( (lv_lowerBound_1_0= RULE_INT ) )
7957 // InternalSolverLanguageParser.g:3055:7: (lv_lowerBound_1_0= RULE_INT ) 9593 // InternalSolverLanguageParser.g:3754:7: (lv_lowerBound_1_0= RULE_INT )
7958 { 9594 {
7959 // InternalSolverLanguageParser.g:3055:7: (lv_lowerBound_1_0= RULE_INT ) 9595 // InternalSolverLanguageParser.g:3754:7: (lv_lowerBound_1_0= RULE_INT )
7960 // InternalSolverLanguageParser.g:3056:8: lv_lowerBound_1_0= RULE_INT 9596 // InternalSolverLanguageParser.g:3755:8: lv_lowerBound_1_0= RULE_INT
7961 { 9597 {
7962 lv_lowerBound_1_0=(Token)match(input,RULE_INT,FOLLOW_48); 9598 lv_lowerBound_1_0=(Token)match(input,RULE_INT,FOLLOW_56);
7963 9599
7964 newLeafNode(lv_lowerBound_1_0, grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0_0()); 9600 newLeafNode(lv_lowerBound_1_0, grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0_0());
7965 9601
@@ -7989,11 +9625,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
7989 9625
7990 } 9626 }
7991 9627
7992 // InternalSolverLanguageParser.g:3077:5: ( ( ruleQualifiedName ) ) 9628 // InternalSolverLanguageParser.g:3776:5: ( ( ruleQualifiedName ) )
7993 // InternalSolverLanguageParser.g:3078:6: ( ruleQualifiedName ) 9629 // InternalSolverLanguageParser.g:3777:6: ( ruleQualifiedName )
7994 { 9630 {
7995 // InternalSolverLanguageParser.g:3078:6: ( ruleQualifiedName ) 9631 // InternalSolverLanguageParser.g:3777:6: ( ruleQualifiedName )
7996 // InternalSolverLanguageParser.g:3079:7: ruleQualifiedName 9632 // InternalSolverLanguageParser.g:3778:7: ruleQualifiedName
7997 { 9633 {
7998 9634
7999 if (current==null) { 9635 if (current==null) {
@@ -8003,7 +9639,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8003 9639
8004 newCompositeNode(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0_1_0()); 9640 newCompositeNode(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0_1_0());
8005 9641
8006 pushFollow(FOLLOW_48); 9642 pushFollow(FOLLOW_56);
8007 ruleQualifiedName(); 9643 ruleQualifiedName();
8008 9644
8009 state._fsp--; 9645 state._fsp--;
@@ -8017,15 +9653,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8017 9653
8018 } 9654 }
8019 9655
8020 otherlv_4=(Token)match(input,LessThanSignEqualsSign,FOLLOW_45); 9656 otherlv_4=(Token)match(input,LessThanSignEqualsSign,FOLLOW_53);
8021 9657
8022 newLeafNode(otherlv_4, grammarAccess.getBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_2()); 9658 newLeafNode(otherlv_4, grammarAccess.getBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_2());
8023 9659
8024 // InternalSolverLanguageParser.g:3097:5: ( (lv_upperBound_5_0= RULE_INT ) ) 9660 // InternalSolverLanguageParser.g:3796:5: ( (lv_upperBound_5_0= RULE_INT ) )
8025 // InternalSolverLanguageParser.g:3098:6: (lv_upperBound_5_0= RULE_INT ) 9661 // InternalSolverLanguageParser.g:3797:6: (lv_upperBound_5_0= RULE_INT )
8026 { 9662 {
8027 // InternalSolverLanguageParser.g:3098:6: (lv_upperBound_5_0= RULE_INT ) 9663 // InternalSolverLanguageParser.g:3797:6: (lv_upperBound_5_0= RULE_INT )
8028 // InternalSolverLanguageParser.g:3099:7: lv_upperBound_5_0= RULE_INT 9664 // InternalSolverLanguageParser.g:3798:7: lv_upperBound_5_0= RULE_INT
8029 { 9665 {
8030 lv_upperBound_5_0=(Token)match(input,RULE_INT,FOLLOW_2); 9666 lv_upperBound_5_0=(Token)match(input,RULE_INT,FOLLOW_2);
8031 9667
@@ -8054,18 +9690,18 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8054 } 9690 }
8055 break; 9691 break;
8056 case 2 : 9692 case 2 :
8057 // InternalSolverLanguageParser.g:3117:4: ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) 9693 // InternalSolverLanguageParser.g:3816:4: ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? )
8058 { 9694 {
8059 // InternalSolverLanguageParser.g:3117:4: ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) 9695 // InternalSolverLanguageParser.g:3816:4: ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? )
8060 // InternalSolverLanguageParser.g:3118:5: ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? 9696 // InternalSolverLanguageParser.g:3817:5: ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )?
8061 { 9697 {
8062 // InternalSolverLanguageParser.g:3118:5: ( (lv_upperBound_6_0= RULE_INT ) ) 9698 // InternalSolverLanguageParser.g:3817:5: ( (lv_upperBound_6_0= RULE_INT ) )
8063 // InternalSolverLanguageParser.g:3119:6: (lv_upperBound_6_0= RULE_INT ) 9699 // InternalSolverLanguageParser.g:3818:6: (lv_upperBound_6_0= RULE_INT )
8064 { 9700 {
8065 // InternalSolverLanguageParser.g:3119:6: (lv_upperBound_6_0= RULE_INT ) 9701 // InternalSolverLanguageParser.g:3818:6: (lv_upperBound_6_0= RULE_INT )
8066 // InternalSolverLanguageParser.g:3120:7: lv_upperBound_6_0= RULE_INT 9702 // InternalSolverLanguageParser.g:3819:7: lv_upperBound_6_0= RULE_INT
8067 { 9703 {
8068 lv_upperBound_6_0=(Token)match(input,RULE_INT,FOLLOW_49); 9704 lv_upperBound_6_0=(Token)match(input,RULE_INT,FOLLOW_57);
8069 9705
8070 newLeafNode(lv_upperBound_6_0, grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundINTTerminalRuleCall_1_1_0_0()); 9706 newLeafNode(lv_upperBound_6_0, grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundINTTerminalRuleCall_1_1_0_0());
8071 9707
@@ -8089,11 +9725,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8089 9725
8090 newLeafNode(otherlv_7, grammarAccess.getBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); 9726 newLeafNode(otherlv_7, grammarAccess.getBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_1());
8091 9727
8092 // InternalSolverLanguageParser.g:3140:5: ( ( ruleQualifiedName ) ) 9728 // InternalSolverLanguageParser.g:3839:5: ( ( ruleQualifiedName ) )
8093 // InternalSolverLanguageParser.g:3141:6: ( ruleQualifiedName ) 9729 // InternalSolverLanguageParser.g:3840:6: ( ruleQualifiedName )
8094 { 9730 {
8095 // InternalSolverLanguageParser.g:3141:6: ( ruleQualifiedName ) 9731 // InternalSolverLanguageParser.g:3840:6: ( ruleQualifiedName )
8096 // InternalSolverLanguageParser.g:3142:7: ruleQualifiedName 9732 // InternalSolverLanguageParser.g:3841:7: ruleQualifiedName
8097 { 9733 {
8098 9734
8099 if (current==null) { 9735 if (current==null) {
@@ -8103,7 +9739,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8103 9739
8104 newCompositeNode(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_1_2_0()); 9740 newCompositeNode(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_1_2_0());
8105 9741
8106 pushFollow(FOLLOW_50); 9742 pushFollow(FOLLOW_58);
8107 ruleQualifiedName(); 9743 ruleQualifiedName();
8108 9744
8109 state._fsp--; 9745 state._fsp--;
@@ -8117,26 +9753,26 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8117 9753
8118 } 9754 }
8119 9755
8120 // InternalSolverLanguageParser.g:3156:5: (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? 9756 // InternalSolverLanguageParser.g:3855:5: (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )?
8121 int alt37=2; 9757 int alt46=2;
8122 int LA37_0 = input.LA(1); 9758 int LA46_0 = input.LA(1);
8123 9759
8124 if ( (LA37_0==GreaterThanSignEqualsSign) ) { 9760 if ( (LA46_0==GreaterThanSignEqualsSign) ) {
8125 alt37=1; 9761 alt46=1;
8126 } 9762 }
8127 switch (alt37) { 9763 switch (alt46) {
8128 case 1 : 9764 case 1 :
8129 // InternalSolverLanguageParser.g:3157:6: otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) 9765 // InternalSolverLanguageParser.g:3856:6: otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) )
8130 { 9766 {
8131 otherlv_9=(Token)match(input,GreaterThanSignEqualsSign,FOLLOW_45); 9767 otherlv_9=(Token)match(input,GreaterThanSignEqualsSign,FOLLOW_53);
8132 9768
8133 newLeafNode(otherlv_9, grammarAccess.getBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_3_0()); 9769 newLeafNode(otherlv_9, grammarAccess.getBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_3_0());
8134 9770
8135 // InternalSolverLanguageParser.g:3161:6: ( (lv_lowerBound_10_0= RULE_INT ) ) 9771 // InternalSolverLanguageParser.g:3860:6: ( (lv_lowerBound_10_0= RULE_INT ) )
8136 // InternalSolverLanguageParser.g:3162:7: (lv_lowerBound_10_0= RULE_INT ) 9772 // InternalSolverLanguageParser.g:3861:7: (lv_lowerBound_10_0= RULE_INT )
8137 { 9773 {
8138 // InternalSolverLanguageParser.g:3162:7: (lv_lowerBound_10_0= RULE_INT ) 9774 // InternalSolverLanguageParser.g:3861:7: (lv_lowerBound_10_0= RULE_INT )
8139 // InternalSolverLanguageParser.g:3163:8: lv_lowerBound_10_0= RULE_INT 9775 // InternalSolverLanguageParser.g:3862:8: lv_lowerBound_10_0= RULE_INT
8140 { 9776 {
8141 lv_lowerBound_10_0=(Token)match(input,RULE_INT,FOLLOW_2); 9777 lv_lowerBound_10_0=(Token)match(input,RULE_INT,FOLLOW_2);
8142 9778
@@ -8196,7 +9832,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8196 9832
8197 9833
8198 // $ANTLR start "entryRuleLowerBoundedScopeDefinition" 9834 // $ANTLR start "entryRuleLowerBoundedScopeDefinition"
8199 // InternalSolverLanguageParser.g:3186:1: entryRuleLowerBoundedScopeDefinition returns [EObject current=null] : iv_ruleLowerBoundedScopeDefinition= ruleLowerBoundedScopeDefinition EOF ; 9835 // InternalSolverLanguageParser.g:3885:1: entryRuleLowerBoundedScopeDefinition returns [EObject current=null] : iv_ruleLowerBoundedScopeDefinition= ruleLowerBoundedScopeDefinition EOF ;
8200 public final EObject entryRuleLowerBoundedScopeDefinition() throws RecognitionException { 9836 public final EObject entryRuleLowerBoundedScopeDefinition() throws RecognitionException {
8201 EObject current = null; 9837 EObject current = null;
8202 9838
@@ -8204,8 +9840,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8204 9840
8205 9841
8206 try { 9842 try {
8207 // InternalSolverLanguageParser.g:3186:68: (iv_ruleLowerBoundedScopeDefinition= ruleLowerBoundedScopeDefinition EOF ) 9843 // InternalSolverLanguageParser.g:3885:68: (iv_ruleLowerBoundedScopeDefinition= ruleLowerBoundedScopeDefinition EOF )
8208 // InternalSolverLanguageParser.g:3187:2: iv_ruleLowerBoundedScopeDefinition= ruleLowerBoundedScopeDefinition EOF 9844 // InternalSolverLanguageParser.g:3886:2: iv_ruleLowerBoundedScopeDefinition= ruleLowerBoundedScopeDefinition EOF
8209 { 9845 {
8210 newCompositeNode(grammarAccess.getLowerBoundedScopeDefinitionRule()); 9846 newCompositeNode(grammarAccess.getLowerBoundedScopeDefinitionRule());
8211 pushFollow(FOLLOW_1); 9847 pushFollow(FOLLOW_1);
@@ -8232,7 +9868,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8232 9868
8233 9869
8234 // $ANTLR start "ruleLowerBoundedScopeDefinition" 9870 // $ANTLR start "ruleLowerBoundedScopeDefinition"
8235 // InternalSolverLanguageParser.g:3193:1: ruleLowerBoundedScopeDefinition returns [EObject current=null] : (otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) ) ; 9871 // InternalSolverLanguageParser.g:3892:1: ruleLowerBoundedScopeDefinition returns [EObject current=null] : (otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) ) ;
8236 public final EObject ruleLowerBoundedScopeDefinition() throws RecognitionException { 9872 public final EObject ruleLowerBoundedScopeDefinition() throws RecognitionException {
8237 EObject current = null; 9873 EObject current = null;
8238 9874
@@ -8246,46 +9882,46 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8246 enterRule(); 9882 enterRule();
8247 9883
8248 try { 9884 try {
8249 // InternalSolverLanguageParser.g:3199:2: ( (otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) ) ) 9885 // InternalSolverLanguageParser.g:3898:2: ( (otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) ) )
8250 // InternalSolverLanguageParser.g:3200:2: (otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) ) 9886 // InternalSolverLanguageParser.g:3899:2: (otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) )
8251 { 9887 {
8252 // InternalSolverLanguageParser.g:3200:2: (otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) ) 9888 // InternalSolverLanguageParser.g:3899:2: (otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) )
8253 // InternalSolverLanguageParser.g:3201:3: otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) 9889 // InternalSolverLanguageParser.g:3900:3: otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) )
8254 { 9890 {
8255 otherlv_0=(Token)match(input,Scope,FOLLOW_47); 9891 otherlv_0=(Token)match(input,Scope,FOLLOW_55);
8256 9892
8257 newLeafNode(otherlv_0, grammarAccess.getLowerBoundedScopeDefinitionAccess().getScopeKeyword_0()); 9893 newLeafNode(otherlv_0, grammarAccess.getLowerBoundedScopeDefinitionAccess().getScopeKeyword_0());
8258 9894
8259 // InternalSolverLanguageParser.g:3205:3: ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) 9895 // InternalSolverLanguageParser.g:3904:3: ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) )
8260 int alt39=2; 9896 int alt48=2;
8261 int LA39_0 = input.LA(1); 9897 int LA48_0 = input.LA(1);
8262 9898
8263 if ( (LA39_0==RULE_INT) ) { 9899 if ( (LA48_0==RULE_INT) ) {
8264 alt39=1; 9900 alt48=1;
8265 } 9901 }
8266 else if ( (LA39_0==RULE_QUOTED_ID||LA39_0==RULE_ID) ) { 9902 else if ( (LA48_0==RULE_QUOTED_ID||LA48_0==RULE_ID) ) {
8267 alt39=2; 9903 alt48=2;
8268 } 9904 }
8269 else { 9905 else {
8270 NoViableAltException nvae = 9906 NoViableAltException nvae =
8271 new NoViableAltException("", 39, 0, input); 9907 new NoViableAltException("", 48, 0, input);
8272 9908
8273 throw nvae; 9909 throw nvae;
8274 } 9910 }
8275 switch (alt39) { 9911 switch (alt48) {
8276 case 1 : 9912 case 1 :
8277 // InternalSolverLanguageParser.g:3206:4: ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) 9913 // InternalSolverLanguageParser.g:3905:4: ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) )
8278 { 9914 {
8279 // InternalSolverLanguageParser.g:3206:4: ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) 9915 // InternalSolverLanguageParser.g:3905:4: ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) )
8280 // InternalSolverLanguageParser.g:3207:5: ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) 9916 // InternalSolverLanguageParser.g:3906:5: ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) )
8281 { 9917 {
8282 // InternalSolverLanguageParser.g:3207:5: ( (lv_lowerBound_1_0= RULE_INT ) ) 9918 // InternalSolverLanguageParser.g:3906:5: ( (lv_lowerBound_1_0= RULE_INT ) )
8283 // InternalSolverLanguageParser.g:3208:6: (lv_lowerBound_1_0= RULE_INT ) 9919 // InternalSolverLanguageParser.g:3907:6: (lv_lowerBound_1_0= RULE_INT )
8284 { 9920 {
8285 // InternalSolverLanguageParser.g:3208:6: (lv_lowerBound_1_0= RULE_INT ) 9921 // InternalSolverLanguageParser.g:3907:6: (lv_lowerBound_1_0= RULE_INT )
8286 // InternalSolverLanguageParser.g:3209:7: lv_lowerBound_1_0= RULE_INT 9922 // InternalSolverLanguageParser.g:3908:7: lv_lowerBound_1_0= RULE_INT
8287 { 9923 {
8288 lv_lowerBound_1_0=(Token)match(input,RULE_INT,FOLLOW_48); 9924 lv_lowerBound_1_0=(Token)match(input,RULE_INT,FOLLOW_56);
8289 9925
8290 newLeafNode(lv_lowerBound_1_0, grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0()); 9926 newLeafNode(lv_lowerBound_1_0, grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0());
8291 9927
@@ -8309,11 +9945,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8309 9945
8310 newLeafNode(otherlv_2, grammarAccess.getLowerBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_1()); 9946 newLeafNode(otherlv_2, grammarAccess.getLowerBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_1());
8311 9947
8312 // InternalSolverLanguageParser.g:3229:5: ( ( ruleQualifiedName ) ) 9948 // InternalSolverLanguageParser.g:3928:5: ( ( ruleQualifiedName ) )
8313 // InternalSolverLanguageParser.g:3230:6: ( ruleQualifiedName ) 9949 // InternalSolverLanguageParser.g:3929:6: ( ruleQualifiedName )
8314 { 9950 {
8315 // InternalSolverLanguageParser.g:3230:6: ( ruleQualifiedName ) 9951 // InternalSolverLanguageParser.g:3929:6: ( ruleQualifiedName )
8316 // InternalSolverLanguageParser.g:3231:7: ruleQualifiedName 9952 // InternalSolverLanguageParser.g:3930:7: ruleQualifiedName
8317 { 9953 {
8318 9954
8319 if (current==null) { 9955 if (current==null) {
@@ -8344,16 +9980,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8344 } 9980 }
8345 break; 9981 break;
8346 case 2 : 9982 case 2 :
8347 // InternalSolverLanguageParser.g:3247:4: ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) 9983 // InternalSolverLanguageParser.g:3946:4: ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) )
8348 { 9984 {
8349 // InternalSolverLanguageParser.g:3247:4: ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) 9985 // InternalSolverLanguageParser.g:3946:4: ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) )
8350 // InternalSolverLanguageParser.g:3248:5: ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) 9986 // InternalSolverLanguageParser.g:3947:5: ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) )
8351 { 9987 {
8352 // InternalSolverLanguageParser.g:3248:5: ( ( ruleQualifiedName ) ) 9988 // InternalSolverLanguageParser.g:3947:5: ( ( ruleQualifiedName ) )
8353 // InternalSolverLanguageParser.g:3249:6: ( ruleQualifiedName ) 9989 // InternalSolverLanguageParser.g:3948:6: ( ruleQualifiedName )
8354 { 9990 {
8355 // InternalSolverLanguageParser.g:3249:6: ( ruleQualifiedName ) 9991 // InternalSolverLanguageParser.g:3948:6: ( ruleQualifiedName )
8356 // InternalSolverLanguageParser.g:3250:7: ruleQualifiedName 9992 // InternalSolverLanguageParser.g:3949:7: ruleQualifiedName
8357 { 9993 {
8358 9994
8359 if (current==null) { 9995 if (current==null) {
@@ -8363,7 +9999,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8363 9999
8364 newCompositeNode(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_1_0_0()); 10000 newCompositeNode(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_1_0_0());
8365 10001
8366 pushFollow(FOLLOW_49); 10002 pushFollow(FOLLOW_57);
8367 ruleQualifiedName(); 10003 ruleQualifiedName();
8368 10004
8369 state._fsp--; 10005 state._fsp--;
@@ -8377,15 +10013,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8377 10013
8378 } 10014 }
8379 10015
8380 otherlv_5=(Token)match(input,GreaterThanSignEqualsSign,FOLLOW_45); 10016 otherlv_5=(Token)match(input,GreaterThanSignEqualsSign,FOLLOW_53);
8381 10017
8382 newLeafNode(otherlv_5, grammarAccess.getLowerBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); 10018 newLeafNode(otherlv_5, grammarAccess.getLowerBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_1());
8383 10019
8384 // InternalSolverLanguageParser.g:3268:5: ( (lv_lowerBound_6_0= RULE_INT ) ) 10020 // InternalSolverLanguageParser.g:3967:5: ( (lv_lowerBound_6_0= RULE_INT ) )
8385 // InternalSolverLanguageParser.g:3269:6: (lv_lowerBound_6_0= RULE_INT ) 10021 // InternalSolverLanguageParser.g:3968:6: (lv_lowerBound_6_0= RULE_INT )
8386 { 10022 {
8387 // InternalSolverLanguageParser.g:3269:6: (lv_lowerBound_6_0= RULE_INT ) 10023 // InternalSolverLanguageParser.g:3968:6: (lv_lowerBound_6_0= RULE_INT )
8388 // InternalSolverLanguageParser.g:3270:7: lv_lowerBound_6_0= RULE_INT 10024 // InternalSolverLanguageParser.g:3969:7: lv_lowerBound_6_0= RULE_INT
8389 { 10025 {
8390 lv_lowerBound_6_0=(Token)match(input,RULE_INT,FOLLOW_2); 10026 lv_lowerBound_6_0=(Token)match(input,RULE_INT,FOLLOW_2);
8391 10027
@@ -8439,7 +10075,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8439 10075
8440 10076
8441 // $ANTLR start "entryRuleObjectiveDefinition" 10077 // $ANTLR start "entryRuleObjectiveDefinition"
8442 // InternalSolverLanguageParser.g:3292:1: entryRuleObjectiveDefinition returns [EObject current=null] : iv_ruleObjectiveDefinition= ruleObjectiveDefinition EOF ; 10078 // InternalSolverLanguageParser.g:3991:1: entryRuleObjectiveDefinition returns [EObject current=null] : iv_ruleObjectiveDefinition= ruleObjectiveDefinition EOF ;
8443 public final EObject entryRuleObjectiveDefinition() throws RecognitionException { 10079 public final EObject entryRuleObjectiveDefinition() throws RecognitionException {
8444 EObject current = null; 10080 EObject current = null;
8445 10081
@@ -8447,8 +10083,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8447 10083
8448 10084
8449 try { 10085 try {
8450 // InternalSolverLanguageParser.g:3292:60: (iv_ruleObjectiveDefinition= ruleObjectiveDefinition EOF ) 10086 // InternalSolverLanguageParser.g:3991:60: (iv_ruleObjectiveDefinition= ruleObjectiveDefinition EOF )
8451 // InternalSolverLanguageParser.g:3293:2: iv_ruleObjectiveDefinition= ruleObjectiveDefinition EOF 10087 // InternalSolverLanguageParser.g:3992:2: iv_ruleObjectiveDefinition= ruleObjectiveDefinition EOF
8452 { 10088 {
8453 newCompositeNode(grammarAccess.getObjectiveDefinitionRule()); 10089 newCompositeNode(grammarAccess.getObjectiveDefinitionRule());
8454 pushFollow(FOLLOW_1); 10090 pushFollow(FOLLOW_1);
@@ -8475,7 +10111,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8475 10111
8476 10112
8477 // $ANTLR start "ruleObjectiveDefinition" 10113 // $ANTLR start "ruleObjectiveDefinition"
8478 // InternalSolverLanguageParser.g:3299:1: ruleObjectiveDefinition returns [EObject current=null] : ( ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) ) ; 10114 // InternalSolverLanguageParser.g:3998:1: ruleObjectiveDefinition returns [EObject current=null] : ( ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) ) ;
8479 public final EObject ruleObjectiveDefinition() throws RecognitionException { 10115 public final EObject ruleObjectiveDefinition() throws RecognitionException {
8480 EObject current = null; 10116 EObject current = null;
8481 10117
@@ -8488,17 +10124,17 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8488 enterRule(); 10124 enterRule();
8489 10125
8490 try { 10126 try {
8491 // InternalSolverLanguageParser.g:3305:2: ( ( ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) ) ) 10127 // InternalSolverLanguageParser.g:4004:2: ( ( ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) ) )
8492 // InternalSolverLanguageParser.g:3306:2: ( ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) ) 10128 // InternalSolverLanguageParser.g:4005:2: ( ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) )
8493 { 10129 {
8494 // InternalSolverLanguageParser.g:3306:2: ( ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) ) 10130 // InternalSolverLanguageParser.g:4005:2: ( ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) )
8495 // InternalSolverLanguageParser.g:3307:3: ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) 10131 // InternalSolverLanguageParser.g:4006:3: ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) )
8496 { 10132 {
8497 // InternalSolverLanguageParser.g:3307:3: ( (lv_kind_0_0= ruleObjectiveKind ) ) 10133 // InternalSolverLanguageParser.g:4006:3: ( (lv_kind_0_0= ruleObjectiveKind ) )
8498 // InternalSolverLanguageParser.g:3308:4: (lv_kind_0_0= ruleObjectiveKind ) 10134 // InternalSolverLanguageParser.g:4007:4: (lv_kind_0_0= ruleObjectiveKind )
8499 { 10135 {
8500 // InternalSolverLanguageParser.g:3308:4: (lv_kind_0_0= ruleObjectiveKind ) 10136 // InternalSolverLanguageParser.g:4007:4: (lv_kind_0_0= ruleObjectiveKind )
8501 // InternalSolverLanguageParser.g:3309:5: lv_kind_0_0= ruleObjectiveKind 10137 // InternalSolverLanguageParser.g:4008:5: lv_kind_0_0= ruleObjectiveKind
8502 { 10138 {
8503 10139
8504 newCompositeNode(grammarAccess.getObjectiveDefinitionAccess().getKindObjectiveKindEnumRuleCall_0_0()); 10140 newCompositeNode(grammarAccess.getObjectiveDefinitionAccess().getKindObjectiveKindEnumRuleCall_0_0());
@@ -8525,11 +10161,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8525 10161
8526 } 10162 }
8527 10163
8528 // InternalSolverLanguageParser.g:3326:3: ( (lv_objective_1_0= ruleExpression ) ) 10164 // InternalSolverLanguageParser.g:4025:3: ( (lv_objective_1_0= ruleExpression ) )
8529 // InternalSolverLanguageParser.g:3327:4: (lv_objective_1_0= ruleExpression ) 10165 // InternalSolverLanguageParser.g:4026:4: (lv_objective_1_0= ruleExpression )
8530 { 10166 {
8531 // InternalSolverLanguageParser.g:3327:4: (lv_objective_1_0= ruleExpression ) 10167 // InternalSolverLanguageParser.g:4026:4: (lv_objective_1_0= ruleExpression )
8532 // InternalSolverLanguageParser.g:3328:5: lv_objective_1_0= ruleExpression 10168 // InternalSolverLanguageParser.g:4027:5: lv_objective_1_0= ruleExpression
8533 { 10169 {
8534 10170
8535 newCompositeNode(grammarAccess.getObjectiveDefinitionAccess().getObjectiveExpressionParserRuleCall_1_0()); 10171 newCompositeNode(grammarAccess.getObjectiveDefinitionAccess().getObjectiveExpressionParserRuleCall_1_0());
@@ -8579,7 +10215,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8579 10215
8580 10216
8581 // $ANTLR start "entryRuleUpperMultiplicty" 10217 // $ANTLR start "entryRuleUpperMultiplicty"
8582 // InternalSolverLanguageParser.g:3349:1: entryRuleUpperMultiplicty returns [String current=null] : iv_ruleUpperMultiplicty= ruleUpperMultiplicty EOF ; 10218 // InternalSolverLanguageParser.g:4048:1: entryRuleUpperMultiplicty returns [String current=null] : iv_ruleUpperMultiplicty= ruleUpperMultiplicty EOF ;
8583 public final String entryRuleUpperMultiplicty() throws RecognitionException { 10219 public final String entryRuleUpperMultiplicty() throws RecognitionException {
8584 String current = null; 10220 String current = null;
8585 10221
@@ -8587,8 +10223,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8587 10223
8588 10224
8589 try { 10225 try {
8590 // InternalSolverLanguageParser.g:3349:56: (iv_ruleUpperMultiplicty= ruleUpperMultiplicty EOF ) 10226 // InternalSolverLanguageParser.g:4048:56: (iv_ruleUpperMultiplicty= ruleUpperMultiplicty EOF )
8591 // InternalSolverLanguageParser.g:3350:2: iv_ruleUpperMultiplicty= ruleUpperMultiplicty EOF 10227 // InternalSolverLanguageParser.g:4049:2: iv_ruleUpperMultiplicty= ruleUpperMultiplicty EOF
8592 { 10228 {
8593 newCompositeNode(grammarAccess.getUpperMultiplictyRule()); 10229 newCompositeNode(grammarAccess.getUpperMultiplictyRule());
8594 pushFollow(FOLLOW_1); 10230 pushFollow(FOLLOW_1);
@@ -8615,7 +10251,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8615 10251
8616 10252
8617 // $ANTLR start "ruleUpperMultiplicty" 10253 // $ANTLR start "ruleUpperMultiplicty"
8618 // InternalSolverLanguageParser.g:3356:1: ruleUpperMultiplicty returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT | kw= Asterisk ) ; 10254 // InternalSolverLanguageParser.g:4055:1: ruleUpperMultiplicty returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT | kw= Asterisk ) ;
8619 public final AntlrDatatypeRuleToken ruleUpperMultiplicty() throws RecognitionException { 10255 public final AntlrDatatypeRuleToken ruleUpperMultiplicty() throws RecognitionException {
8620 AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); 10256 AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
8621 10257
@@ -8626,28 +10262,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8626 enterRule(); 10262 enterRule();
8627 10263
8628 try { 10264 try {
8629 // InternalSolverLanguageParser.g:3362:2: ( (this_INT_0= RULE_INT | kw= Asterisk ) ) 10265 // InternalSolverLanguageParser.g:4061:2: ( (this_INT_0= RULE_INT | kw= Asterisk ) )
8630 // InternalSolverLanguageParser.g:3363:2: (this_INT_0= RULE_INT | kw= Asterisk ) 10266 // InternalSolverLanguageParser.g:4062:2: (this_INT_0= RULE_INT | kw= Asterisk )
8631 { 10267 {
8632 // InternalSolverLanguageParser.g:3363:2: (this_INT_0= RULE_INT | kw= Asterisk ) 10268 // InternalSolverLanguageParser.g:4062:2: (this_INT_0= RULE_INT | kw= Asterisk )
8633 int alt40=2; 10269 int alt49=2;
8634 int LA40_0 = input.LA(1); 10270 int LA49_0 = input.LA(1);
8635 10271
8636 if ( (LA40_0==RULE_INT) ) { 10272 if ( (LA49_0==RULE_INT) ) {
8637 alt40=1; 10273 alt49=1;
8638 } 10274 }
8639 else if ( (LA40_0==Asterisk) ) { 10275 else if ( (LA49_0==Asterisk) ) {
8640 alt40=2; 10276 alt49=2;
8641 } 10277 }
8642 else { 10278 else {
8643 NoViableAltException nvae = 10279 NoViableAltException nvae =
8644 new NoViableAltException("", 40, 0, input); 10280 new NoViableAltException("", 49, 0, input);
8645 10281
8646 throw nvae; 10282 throw nvae;
8647 } 10283 }
8648 switch (alt40) { 10284 switch (alt49) {
8649 case 1 : 10285 case 1 :
8650 // InternalSolverLanguageParser.g:3364:3: this_INT_0= RULE_INT 10286 // InternalSolverLanguageParser.g:4063:3: this_INT_0= RULE_INT
8651 { 10287 {
8652 this_INT_0=(Token)match(input,RULE_INT,FOLLOW_2); 10288 this_INT_0=(Token)match(input,RULE_INT,FOLLOW_2);
8653 10289
@@ -8660,7 +10296,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8660 } 10296 }
8661 break; 10297 break;
8662 case 2 : 10298 case 2 :
8663 // InternalSolverLanguageParser.g:3372:3: kw= Asterisk 10299 // InternalSolverLanguageParser.g:4071:3: kw= Asterisk
8664 { 10300 {
8665 kw=(Token)match(input,Asterisk,FOLLOW_2); 10301 kw=(Token)match(input,Asterisk,FOLLOW_2);
8666 10302
@@ -8693,7 +10329,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8693 10329
8694 10330
8695 // $ANTLR start "entryRuleReal" 10331 // $ANTLR start "entryRuleReal"
8696 // InternalSolverLanguageParser.g:3381:1: entryRuleReal returns [String current=null] : iv_ruleReal= ruleReal EOF ; 10332 // InternalSolverLanguageParser.g:4080:1: entryRuleReal returns [String current=null] : iv_ruleReal= ruleReal EOF ;
8697 public final String entryRuleReal() throws RecognitionException { 10333 public final String entryRuleReal() throws RecognitionException {
8698 String current = null; 10334 String current = null;
8699 10335
@@ -8704,8 +10340,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8704 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); 10340 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
8705 10341
8706 try { 10342 try {
8707 // InternalSolverLanguageParser.g:3383:2: (iv_ruleReal= ruleReal EOF ) 10343 // InternalSolverLanguageParser.g:4082:2: (iv_ruleReal= ruleReal EOF )
8708 // InternalSolverLanguageParser.g:3384:2: iv_ruleReal= ruleReal EOF 10344 // InternalSolverLanguageParser.g:4083:2: iv_ruleReal= ruleReal EOF
8709 { 10345 {
8710 newCompositeNode(grammarAccess.getRealRule()); 10346 newCompositeNode(grammarAccess.getRealRule());
8711 pushFollow(FOLLOW_1); 10347 pushFollow(FOLLOW_1);
@@ -8735,7 +10371,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8735 10371
8736 10372
8737 // $ANTLR start "ruleReal" 10373 // $ANTLR start "ruleReal"
8738 // InternalSolverLanguageParser.g:3393:1: ruleReal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT (kw= FullStop this_INT_2= RULE_INT )? ) ; 10374 // InternalSolverLanguageParser.g:4092:1: ruleReal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT (kw= FullStop this_INT_2= RULE_INT )? ) ;
8739 public final AntlrDatatypeRuleToken ruleReal() throws RecognitionException { 10375 public final AntlrDatatypeRuleToken ruleReal() throws RecognitionException {
8740 AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); 10376 AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
8741 10377
@@ -8748,31 +10384,31 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8748 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); 10384 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
8749 10385
8750 try { 10386 try {
8751 // InternalSolverLanguageParser.g:3400:2: ( (this_INT_0= RULE_INT (kw= FullStop this_INT_2= RULE_INT )? ) ) 10387 // InternalSolverLanguageParser.g:4099:2: ( (this_INT_0= RULE_INT (kw= FullStop this_INT_2= RULE_INT )? ) )
8752 // InternalSolverLanguageParser.g:3401:2: (this_INT_0= RULE_INT (kw= FullStop this_INT_2= RULE_INT )? ) 10388 // InternalSolverLanguageParser.g:4100:2: (this_INT_0= RULE_INT (kw= FullStop this_INT_2= RULE_INT )? )
8753 { 10389 {
8754 // InternalSolverLanguageParser.g:3401:2: (this_INT_0= RULE_INT (kw= FullStop this_INT_2= RULE_INT )? ) 10390 // InternalSolverLanguageParser.g:4100:2: (this_INT_0= RULE_INT (kw= FullStop this_INT_2= RULE_INT )? )
8755 // InternalSolverLanguageParser.g:3402:3: this_INT_0= RULE_INT (kw= FullStop this_INT_2= RULE_INT )? 10391 // InternalSolverLanguageParser.g:4101:3: this_INT_0= RULE_INT (kw= FullStop this_INT_2= RULE_INT )?
8756 { 10392 {
8757 this_INT_0=(Token)match(input,RULE_INT,FOLLOW_51); 10393 this_INT_0=(Token)match(input,RULE_INT,FOLLOW_59);
8758 10394
8759 current.merge(this_INT_0); 10395 current.merge(this_INT_0);
8760 10396
8761 10397
8762 newLeafNode(this_INT_0, grammarAccess.getRealAccess().getINTTerminalRuleCall_0()); 10398 newLeafNode(this_INT_0, grammarAccess.getRealAccess().getINTTerminalRuleCall_0());
8763 10399
8764 // InternalSolverLanguageParser.g:3409:3: (kw= FullStop this_INT_2= RULE_INT )? 10400 // InternalSolverLanguageParser.g:4108:3: (kw= FullStop this_INT_2= RULE_INT )?
8765 int alt41=2; 10401 int alt50=2;
8766 int LA41_0 = input.LA(1); 10402 int LA50_0 = input.LA(1);
8767 10403
8768 if ( (LA41_0==FullStop) ) { 10404 if ( (LA50_0==FullStop) ) {
8769 alt41=1; 10405 alt50=1;
8770 } 10406 }
8771 switch (alt41) { 10407 switch (alt50) {
8772 case 1 : 10408 case 1 :
8773 // InternalSolverLanguageParser.g:3410:4: kw= FullStop this_INT_2= RULE_INT 10409 // InternalSolverLanguageParser.g:4109:4: kw= FullStop this_INT_2= RULE_INT
8774 { 10410 {
8775 kw=(Token)match(input,FullStop,FOLLOW_45); 10411 kw=(Token)match(input,FullStop,FOLLOW_53);
8776 10412
8777 current.merge(kw); 10413 current.merge(kw);
8778 newLeafNode(kw, grammarAccess.getRealAccess().getFullStopKeyword_1_0()); 10414 newLeafNode(kw, grammarAccess.getRealAccess().getFullStopKeyword_1_0());
@@ -8816,7 +10452,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8816 10452
8817 10453
8818 // $ANTLR start "entryRuleQualifiedName" 10454 // $ANTLR start "entryRuleQualifiedName"
8819 // InternalSolverLanguageParser.g:3430:1: entryRuleQualifiedName returns [String current=null] : iv_ruleQualifiedName= ruleQualifiedName EOF ; 10455 // InternalSolverLanguageParser.g:4129:1: entryRuleQualifiedName returns [String current=null] : iv_ruleQualifiedName= ruleQualifiedName EOF ;
8820 public final String entryRuleQualifiedName() throws RecognitionException { 10456 public final String entryRuleQualifiedName() throws RecognitionException {
8821 String current = null; 10457 String current = null;
8822 10458
@@ -8827,8 +10463,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8827 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); 10463 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
8828 10464
8829 try { 10465 try {
8830 // InternalSolverLanguageParser.g:3432:2: (iv_ruleQualifiedName= ruleQualifiedName EOF ) 10466 // InternalSolverLanguageParser.g:4131:2: (iv_ruleQualifiedName= ruleQualifiedName EOF )
8831 // InternalSolverLanguageParser.g:3433:2: iv_ruleQualifiedName= ruleQualifiedName EOF 10467 // InternalSolverLanguageParser.g:4132:2: iv_ruleQualifiedName= ruleQualifiedName EOF
8832 { 10468 {
8833 newCompositeNode(grammarAccess.getQualifiedNameRule()); 10469 newCompositeNode(grammarAccess.getQualifiedNameRule());
8834 pushFollow(FOLLOW_1); 10470 pushFollow(FOLLOW_1);
@@ -8858,7 +10494,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8858 10494
8859 10495
8860 // $ANTLR start "ruleQualifiedName" 10496 // $ANTLR start "ruleQualifiedName"
8861 // InternalSolverLanguageParser.g:3442:1: ruleQualifiedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* ) | this_QUOTED_ID_3= RULE_QUOTED_ID ) ; 10497 // InternalSolverLanguageParser.g:4141:1: ruleQualifiedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* ) | this_QUOTED_ID_3= RULE_QUOTED_ID ) ;
8862 public final AntlrDatatypeRuleToken ruleQualifiedName() throws RecognitionException { 10498 public final AntlrDatatypeRuleToken ruleQualifiedName() throws RecognitionException {
8863 AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); 10499 AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
8864 10500
@@ -8872,60 +10508,60 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8872 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); 10508 HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
8873 10509
8874 try { 10510 try {
8875 // InternalSolverLanguageParser.g:3449:2: ( ( (this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* ) | this_QUOTED_ID_3= RULE_QUOTED_ID ) ) 10511 // InternalSolverLanguageParser.g:4148:2: ( ( (this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* ) | this_QUOTED_ID_3= RULE_QUOTED_ID ) )
8876 // InternalSolverLanguageParser.g:3450:2: ( (this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* ) | this_QUOTED_ID_3= RULE_QUOTED_ID ) 10512 // InternalSolverLanguageParser.g:4149:2: ( (this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* ) | this_QUOTED_ID_3= RULE_QUOTED_ID )
8877 { 10513 {
8878 // InternalSolverLanguageParser.g:3450:2: ( (this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* ) | this_QUOTED_ID_3= RULE_QUOTED_ID ) 10514 // InternalSolverLanguageParser.g:4149:2: ( (this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* ) | this_QUOTED_ID_3= RULE_QUOTED_ID )
8879 int alt43=2; 10515 int alt52=2;
8880 int LA43_0 = input.LA(1); 10516 int LA52_0 = input.LA(1);
8881 10517
8882 if ( (LA43_0==RULE_ID) ) { 10518 if ( (LA52_0==RULE_ID) ) {
8883 alt43=1; 10519 alt52=1;
8884 } 10520 }
8885 else if ( (LA43_0==RULE_QUOTED_ID) ) { 10521 else if ( (LA52_0==RULE_QUOTED_ID) ) {
8886 alt43=2; 10522 alt52=2;
8887 } 10523 }
8888 else { 10524 else {
8889 NoViableAltException nvae = 10525 NoViableAltException nvae =
8890 new NoViableAltException("", 43, 0, input); 10526 new NoViableAltException("", 52, 0, input);
8891 10527
8892 throw nvae; 10528 throw nvae;
8893 } 10529 }
8894 switch (alt43) { 10530 switch (alt52) {
8895 case 1 : 10531 case 1 :
8896 // InternalSolverLanguageParser.g:3451:3: (this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* ) 10532 // InternalSolverLanguageParser.g:4150:3: (this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* )
8897 { 10533 {
8898 // InternalSolverLanguageParser.g:3451:3: (this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* ) 10534 // InternalSolverLanguageParser.g:4150:3: (this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* )
8899 // InternalSolverLanguageParser.g:3452:4: this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* 10535 // InternalSolverLanguageParser.g:4151:4: this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )*
8900 { 10536 {
8901 this_ID_0=(Token)match(input,RULE_ID,FOLLOW_51); 10537 this_ID_0=(Token)match(input,RULE_ID,FOLLOW_59);
8902 10538
8903 current.merge(this_ID_0); 10539 current.merge(this_ID_0);
8904 10540
8905 10541
8906 newLeafNode(this_ID_0, grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0_0()); 10542 newLeafNode(this_ID_0, grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0_0());
8907 10543
8908 // InternalSolverLanguageParser.g:3459:4: (kw= FullStop this_ID_2= RULE_ID )* 10544 // InternalSolverLanguageParser.g:4158:4: (kw= FullStop this_ID_2= RULE_ID )*
8909 loop42: 10545 loop51:
8910 do { 10546 do {
8911 int alt42=2; 10547 int alt51=2;
8912 int LA42_0 = input.LA(1); 10548 int LA51_0 = input.LA(1);
8913 10549
8914 if ( (LA42_0==FullStop) ) { 10550 if ( (LA51_0==FullStop) ) {
8915 alt42=1; 10551 alt51=1;
8916 } 10552 }
8917 10553
8918 10554
8919 switch (alt42) { 10555 switch (alt51) {
8920 case 1 : 10556 case 1 :
8921 // InternalSolverLanguageParser.g:3460:5: kw= FullStop this_ID_2= RULE_ID 10557 // InternalSolverLanguageParser.g:4159:5: kw= FullStop this_ID_2= RULE_ID
8922 { 10558 {
8923 kw=(Token)match(input,FullStop,FOLLOW_38); 10559 kw=(Token)match(input,FullStop,FOLLOW_20);
8924 10560
8925 current.merge(kw); 10561 current.merge(kw);
8926 newLeafNode(kw, grammarAccess.getQualifiedNameAccess().getFullStopKeyword_0_1_0()); 10562 newLeafNode(kw, grammarAccess.getQualifiedNameAccess().getFullStopKeyword_0_1_0());
8927 10563
8928 this_ID_2=(Token)match(input,RULE_ID,FOLLOW_51); 10564 this_ID_2=(Token)match(input,RULE_ID,FOLLOW_59);
8929 10565
8930 current.merge(this_ID_2); 10566 current.merge(this_ID_2);
8931 10567
@@ -8937,7 +10573,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8937 break; 10573 break;
8938 10574
8939 default : 10575 default :
8940 break loop42; 10576 break loop51;
8941 } 10577 }
8942 } while (true); 10578 } while (true);
8943 10579
@@ -8948,7 +10584,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8948 } 10584 }
8949 break; 10585 break;
8950 case 2 : 10586 case 2 :
8951 // InternalSolverLanguageParser.g:3475:3: this_QUOTED_ID_3= RULE_QUOTED_ID 10587 // InternalSolverLanguageParser.g:4174:3: this_QUOTED_ID_3= RULE_QUOTED_ID
8952 { 10588 {
8953 this_QUOTED_ID_3=(Token)match(input,RULE_QUOTED_ID,FOLLOW_2); 10589 this_QUOTED_ID_3=(Token)match(input,RULE_QUOTED_ID,FOLLOW_2);
8954 10590
@@ -8985,72 +10621,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
8985 // $ANTLR end "ruleQualifiedName" 10621 // $ANTLR end "ruleQualifiedName"
8986 10622
8987 10623
8988 // $ANTLR start "ruleMetricType" 10624 // $ANTLR start "ruleImplicationOperator"
8989 // InternalSolverLanguageParser.g:3489:1: ruleMetricType returns [Enumerator current=null] : ( (enumLiteral_0= Int ) | (enumLiteral_1= Real ) ) ; 10625 // InternalSolverLanguageParser.g:4188:1: ruleImplicationOperator returns [Enumerator current=null] : (enumLiteral_0= EqualsSignGreaterThanSign ) ;
8990 public final Enumerator ruleMetricType() throws RecognitionException { 10626 public final Enumerator ruleImplicationOperator() throws RecognitionException {
8991 Enumerator current = null; 10627 Enumerator current = null;
8992 10628
8993 Token enumLiteral_0=null; 10629 Token enumLiteral_0=null;
8994 Token enumLiteral_1=null;
8995 10630
8996 10631
8997 enterRule(); 10632 enterRule();
8998 10633
8999 try { 10634 try {
9000 // InternalSolverLanguageParser.g:3495:2: ( ( (enumLiteral_0= Int ) | (enumLiteral_1= Real ) ) ) 10635 // InternalSolverLanguageParser.g:4194:2: ( (enumLiteral_0= EqualsSignGreaterThanSign ) )
9001 // InternalSolverLanguageParser.g:3496:2: ( (enumLiteral_0= Int ) | (enumLiteral_1= Real ) ) 10636 // InternalSolverLanguageParser.g:4195:2: (enumLiteral_0= EqualsSignGreaterThanSign )
9002 { 10637 {
9003 // InternalSolverLanguageParser.g:3496:2: ( (enumLiteral_0= Int ) | (enumLiteral_1= Real ) ) 10638 // InternalSolverLanguageParser.g:4195:2: (enumLiteral_0= EqualsSignGreaterThanSign )
9004 int alt44=2; 10639 // InternalSolverLanguageParser.g:4196:3: enumLiteral_0= EqualsSignGreaterThanSign
9005 int LA44_0 = input.LA(1); 10640 {
9006 10641 enumLiteral_0=(Token)match(input,EqualsSignGreaterThanSign,FOLLOW_2);
9007 if ( (LA44_0==Int) ) {
9008 alt44=1;
9009 }
9010 else if ( (LA44_0==Real) ) {
9011 alt44=2;
9012 }
9013 else {
9014 NoViableAltException nvae =
9015 new NoViableAltException("", 44, 0, input);
9016
9017 throw nvae;
9018 }
9019 switch (alt44) {
9020 case 1 :
9021 // InternalSolverLanguageParser.g:3497:3: (enumLiteral_0= Int )
9022 {
9023 // InternalSolverLanguageParser.g:3497:3: (enumLiteral_0= Int )
9024 // InternalSolverLanguageParser.g:3498:4: enumLiteral_0= Int
9025 {
9026 enumLiteral_0=(Token)match(input,Int,FOLLOW_2);
9027
9028 current = grammarAccess.getMetricTypeAccess().getINTEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
9029 newLeafNode(enumLiteral_0, grammarAccess.getMetricTypeAccess().getINTEnumLiteralDeclaration_0());
9030
9031
9032 }
9033
9034
9035 }
9036 break;
9037 case 2 :
9038 // InternalSolverLanguageParser.g:3505:3: (enumLiteral_1= Real )
9039 {
9040 // InternalSolverLanguageParser.g:3505:3: (enumLiteral_1= Real )
9041 // InternalSolverLanguageParser.g:3506:4: enumLiteral_1= Real
9042 {
9043 enumLiteral_1=(Token)match(input,Real,FOLLOW_2);
9044
9045 current = grammarAccess.getMetricTypeAccess().getREALEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
9046 newLeafNode(enumLiteral_1, grammarAccess.getMetricTypeAccess().getREALEnumLiteralDeclaration_1());
9047
9048
9049 }
9050
9051 10642
9052 } 10643 current = grammarAccess.getImplicationOperatorAccess().getIMPLIESEnumLiteralDeclaration().getEnumLiteral().getInstance();
9053 break; 10644 newLeafNode(enumLiteral_0, grammarAccess.getImplicationOperatorAccess().getIMPLIESEnumLiteralDeclaration());
10645
9054 10646
9055 } 10647 }
9056 10648
@@ -9070,11 +10662,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9070 } 10662 }
9071 return current; 10663 return current;
9072 } 10664 }
9073 // $ANTLR end "ruleMetricType" 10665 // $ANTLR end "ruleImplicationOperator"
9074 10666
9075 10667
9076 // $ANTLR start "ruleComparisonOperator" 10668 // $ANTLR start "ruleComparisonOperator"
9077 // InternalSolverLanguageParser.g:3516:1: ruleComparisonOperator returns [Enumerator current=null] : ( (enumLiteral_0= EqualsSignEqualsSign ) | (enumLiteral_1= ExclamationMarkEqualsSign ) | (enumLiteral_2= LessThanSign ) | (enumLiteral_3= LessThanSignEqualsSign ) | (enumLiteral_4= GreaterThanSign ) | (enumLiteral_5= GreaterThanSignEqualsSign ) | (enumLiteral_6= In ) ) ; 10669 // InternalSolverLanguageParser.g:4205:1: ruleComparisonOperator returns [Enumerator current=null] : ( (enumLiteral_0= EqualsSignEqualsSign ) | (enumLiteral_1= ExclamationMarkEqualsSign ) | (enumLiteral_2= LessThanSign ) | (enumLiteral_3= LessThanSignEqualsSign ) | (enumLiteral_4= GreaterThanSign ) | (enumLiteral_5= GreaterThanSignEqualsSign ) | (enumLiteral_6= In ) ) ;
9078 public final Enumerator ruleComparisonOperator() throws RecognitionException { 10670 public final Enumerator ruleComparisonOperator() throws RecognitionException {
9079 Enumerator current = null; 10671 Enumerator current = null;
9080 10672
@@ -9090,60 +10682,60 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9090 enterRule(); 10682 enterRule();
9091 10683
9092 try { 10684 try {
9093 // InternalSolverLanguageParser.g:3522:2: ( ( (enumLiteral_0= EqualsSignEqualsSign ) | (enumLiteral_1= ExclamationMarkEqualsSign ) | (enumLiteral_2= LessThanSign ) | (enumLiteral_3= LessThanSignEqualsSign ) | (enumLiteral_4= GreaterThanSign ) | (enumLiteral_5= GreaterThanSignEqualsSign ) | (enumLiteral_6= In ) ) ) 10685 // InternalSolverLanguageParser.g:4211:2: ( ( (enumLiteral_0= EqualsSignEqualsSign ) | (enumLiteral_1= ExclamationMarkEqualsSign ) | (enumLiteral_2= LessThanSign ) | (enumLiteral_3= LessThanSignEqualsSign ) | (enumLiteral_4= GreaterThanSign ) | (enumLiteral_5= GreaterThanSignEqualsSign ) | (enumLiteral_6= In ) ) )
9094 // InternalSolverLanguageParser.g:3523:2: ( (enumLiteral_0= EqualsSignEqualsSign ) | (enumLiteral_1= ExclamationMarkEqualsSign ) | (enumLiteral_2= LessThanSign ) | (enumLiteral_3= LessThanSignEqualsSign ) | (enumLiteral_4= GreaterThanSign ) | (enumLiteral_5= GreaterThanSignEqualsSign ) | (enumLiteral_6= In ) ) 10686 // InternalSolverLanguageParser.g:4212:2: ( (enumLiteral_0= EqualsSignEqualsSign ) | (enumLiteral_1= ExclamationMarkEqualsSign ) | (enumLiteral_2= LessThanSign ) | (enumLiteral_3= LessThanSignEqualsSign ) | (enumLiteral_4= GreaterThanSign ) | (enumLiteral_5= GreaterThanSignEqualsSign ) | (enumLiteral_6= In ) )
9095 { 10687 {
9096 // InternalSolverLanguageParser.g:3523:2: ( (enumLiteral_0= EqualsSignEqualsSign ) | (enumLiteral_1= ExclamationMarkEqualsSign ) | (enumLiteral_2= LessThanSign ) | (enumLiteral_3= LessThanSignEqualsSign ) | (enumLiteral_4= GreaterThanSign ) | (enumLiteral_5= GreaterThanSignEqualsSign ) | (enumLiteral_6= In ) ) 10688 // InternalSolverLanguageParser.g:4212:2: ( (enumLiteral_0= EqualsSignEqualsSign ) | (enumLiteral_1= ExclamationMarkEqualsSign ) | (enumLiteral_2= LessThanSign ) | (enumLiteral_3= LessThanSignEqualsSign ) | (enumLiteral_4= GreaterThanSign ) | (enumLiteral_5= GreaterThanSignEqualsSign ) | (enumLiteral_6= In ) )
9097 int alt45=7; 10689 int alt53=7;
9098 switch ( input.LA(1) ) { 10690 switch ( input.LA(1) ) {
9099 case EqualsSignEqualsSign: 10691 case EqualsSignEqualsSign:
9100 { 10692 {
9101 alt45=1; 10693 alt53=1;
9102 } 10694 }
9103 break; 10695 break;
9104 case ExclamationMarkEqualsSign: 10696 case ExclamationMarkEqualsSign:
9105 { 10697 {
9106 alt45=2; 10698 alt53=2;
9107 } 10699 }
9108 break; 10700 break;
9109 case LessThanSign: 10701 case LessThanSign:
9110 { 10702 {
9111 alt45=3; 10703 alt53=3;
9112 } 10704 }
9113 break; 10705 break;
9114 case LessThanSignEqualsSign: 10706 case LessThanSignEqualsSign:
9115 { 10707 {
9116 alt45=4; 10708 alt53=4;
9117 } 10709 }
9118 break; 10710 break;
9119 case GreaterThanSign: 10711 case GreaterThanSign:
9120 { 10712 {
9121 alt45=5; 10713 alt53=5;
9122 } 10714 }
9123 break; 10715 break;
9124 case GreaterThanSignEqualsSign: 10716 case GreaterThanSignEqualsSign:
9125 { 10717 {
9126 alt45=6; 10718 alt53=6;
9127 } 10719 }
9128 break; 10720 break;
9129 case In: 10721 case In:
9130 { 10722 {
9131 alt45=7; 10723 alt53=7;
9132 } 10724 }
9133 break; 10725 break;
9134 default: 10726 default:
9135 NoViableAltException nvae = 10727 NoViableAltException nvae =
9136 new NoViableAltException("", 45, 0, input); 10728 new NoViableAltException("", 53, 0, input);
9137 10729
9138 throw nvae; 10730 throw nvae;
9139 } 10731 }
9140 10732
9141 switch (alt45) { 10733 switch (alt53) {
9142 case 1 : 10734 case 1 :
9143 // InternalSolverLanguageParser.g:3524:3: (enumLiteral_0= EqualsSignEqualsSign ) 10735 // InternalSolverLanguageParser.g:4213:3: (enumLiteral_0= EqualsSignEqualsSign )
9144 { 10736 {
9145 // InternalSolverLanguageParser.g:3524:3: (enumLiteral_0= EqualsSignEqualsSign ) 10737 // InternalSolverLanguageParser.g:4213:3: (enumLiteral_0= EqualsSignEqualsSign )
9146 // InternalSolverLanguageParser.g:3525:4: enumLiteral_0= EqualsSignEqualsSign 10738 // InternalSolverLanguageParser.g:4214:4: enumLiteral_0= EqualsSignEqualsSign
9147 { 10739 {
9148 enumLiteral_0=(Token)match(input,EqualsSignEqualsSign,FOLLOW_2); 10740 enumLiteral_0=(Token)match(input,EqualsSignEqualsSign,FOLLOW_2);
9149 10741
@@ -9157,10 +10749,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9157 } 10749 }
9158 break; 10750 break;
9159 case 2 : 10751 case 2 :
9160 // InternalSolverLanguageParser.g:3532:3: (enumLiteral_1= ExclamationMarkEqualsSign ) 10752 // InternalSolverLanguageParser.g:4221:3: (enumLiteral_1= ExclamationMarkEqualsSign )
9161 { 10753 {
9162 // InternalSolverLanguageParser.g:3532:3: (enumLiteral_1= ExclamationMarkEqualsSign ) 10754 // InternalSolverLanguageParser.g:4221:3: (enumLiteral_1= ExclamationMarkEqualsSign )
9163 // InternalSolverLanguageParser.g:3533:4: enumLiteral_1= ExclamationMarkEqualsSign 10755 // InternalSolverLanguageParser.g:4222:4: enumLiteral_1= ExclamationMarkEqualsSign
9164 { 10756 {
9165 enumLiteral_1=(Token)match(input,ExclamationMarkEqualsSign,FOLLOW_2); 10757 enumLiteral_1=(Token)match(input,ExclamationMarkEqualsSign,FOLLOW_2);
9166 10758
@@ -9174,10 +10766,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9174 } 10766 }
9175 break; 10767 break;
9176 case 3 : 10768 case 3 :
9177 // InternalSolverLanguageParser.g:3540:3: (enumLiteral_2= LessThanSign ) 10769 // InternalSolverLanguageParser.g:4229:3: (enumLiteral_2= LessThanSign )
9178 { 10770 {
9179 // InternalSolverLanguageParser.g:3540:3: (enumLiteral_2= LessThanSign ) 10771 // InternalSolverLanguageParser.g:4229:3: (enumLiteral_2= LessThanSign )
9180 // InternalSolverLanguageParser.g:3541:4: enumLiteral_2= LessThanSign 10772 // InternalSolverLanguageParser.g:4230:4: enumLiteral_2= LessThanSign
9181 { 10773 {
9182 enumLiteral_2=(Token)match(input,LessThanSign,FOLLOW_2); 10774 enumLiteral_2=(Token)match(input,LessThanSign,FOLLOW_2);
9183 10775
@@ -9191,10 +10783,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9191 } 10783 }
9192 break; 10784 break;
9193 case 4 : 10785 case 4 :
9194 // InternalSolverLanguageParser.g:3548:3: (enumLiteral_3= LessThanSignEqualsSign ) 10786 // InternalSolverLanguageParser.g:4237:3: (enumLiteral_3= LessThanSignEqualsSign )
9195 { 10787 {
9196 // InternalSolverLanguageParser.g:3548:3: (enumLiteral_3= LessThanSignEqualsSign ) 10788 // InternalSolverLanguageParser.g:4237:3: (enumLiteral_3= LessThanSignEqualsSign )
9197 // InternalSolverLanguageParser.g:3549:4: enumLiteral_3= LessThanSignEqualsSign 10789 // InternalSolverLanguageParser.g:4238:4: enumLiteral_3= LessThanSignEqualsSign
9198 { 10790 {
9199 enumLiteral_3=(Token)match(input,LessThanSignEqualsSign,FOLLOW_2); 10791 enumLiteral_3=(Token)match(input,LessThanSignEqualsSign,FOLLOW_2);
9200 10792
@@ -9208,10 +10800,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9208 } 10800 }
9209 break; 10801 break;
9210 case 5 : 10802 case 5 :
9211 // InternalSolverLanguageParser.g:3556:3: (enumLiteral_4= GreaterThanSign ) 10803 // InternalSolverLanguageParser.g:4245:3: (enumLiteral_4= GreaterThanSign )
9212 { 10804 {
9213 // InternalSolverLanguageParser.g:3556:3: (enumLiteral_4= GreaterThanSign ) 10805 // InternalSolverLanguageParser.g:4245:3: (enumLiteral_4= GreaterThanSign )
9214 // InternalSolverLanguageParser.g:3557:4: enumLiteral_4= GreaterThanSign 10806 // InternalSolverLanguageParser.g:4246:4: enumLiteral_4= GreaterThanSign
9215 { 10807 {
9216 enumLiteral_4=(Token)match(input,GreaterThanSign,FOLLOW_2); 10808 enumLiteral_4=(Token)match(input,GreaterThanSign,FOLLOW_2);
9217 10809
@@ -9225,10 +10817,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9225 } 10817 }
9226 break; 10818 break;
9227 case 6 : 10819 case 6 :
9228 // InternalSolverLanguageParser.g:3564:3: (enumLiteral_5= GreaterThanSignEqualsSign ) 10820 // InternalSolverLanguageParser.g:4253:3: (enumLiteral_5= GreaterThanSignEqualsSign )
9229 { 10821 {
9230 // InternalSolverLanguageParser.g:3564:3: (enumLiteral_5= GreaterThanSignEqualsSign ) 10822 // InternalSolverLanguageParser.g:4253:3: (enumLiteral_5= GreaterThanSignEqualsSign )
9231 // InternalSolverLanguageParser.g:3565:4: enumLiteral_5= GreaterThanSignEqualsSign 10823 // InternalSolverLanguageParser.g:4254:4: enumLiteral_5= GreaterThanSignEqualsSign
9232 { 10824 {
9233 enumLiteral_5=(Token)match(input,GreaterThanSignEqualsSign,FOLLOW_2); 10825 enumLiteral_5=(Token)match(input,GreaterThanSignEqualsSign,FOLLOW_2);
9234 10826
@@ -9242,10 +10834,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9242 } 10834 }
9243 break; 10835 break;
9244 case 7 : 10836 case 7 :
9245 // InternalSolverLanguageParser.g:3572:3: (enumLiteral_6= In ) 10837 // InternalSolverLanguageParser.g:4261:3: (enumLiteral_6= In )
9246 { 10838 {
9247 // InternalSolverLanguageParser.g:3572:3: (enumLiteral_6= In ) 10839 // InternalSolverLanguageParser.g:4261:3: (enumLiteral_6= In )
9248 // InternalSolverLanguageParser.g:3573:4: enumLiteral_6= In 10840 // InternalSolverLanguageParser.g:4262:4: enumLiteral_6= In
9249 { 10841 {
9250 enumLiteral_6=(Token)match(input,In,FOLLOW_2); 10842 enumLiteral_6=(Token)match(input,In,FOLLOW_2);
9251 10843
@@ -9281,7 +10873,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9281 10873
9282 10874
9283 // $ANTLR start "ruleAdditiveBinaryOperator" 10875 // $ANTLR start "ruleAdditiveBinaryOperator"
9284 // InternalSolverLanguageParser.g:3583:1: ruleAdditiveBinaryOperator returns [Enumerator current=null] : ( (enumLiteral_0= PlusSign ) | (enumLiteral_1= HyphenMinus ) ) ; 10876 // InternalSolverLanguageParser.g:4272:1: ruleAdditiveBinaryOperator returns [Enumerator current=null] : ( (enumLiteral_0= PlusSign ) | (enumLiteral_1= HyphenMinus ) ) ;
9285 public final Enumerator ruleAdditiveBinaryOperator() throws RecognitionException { 10877 public final Enumerator ruleAdditiveBinaryOperator() throws RecognitionException {
9286 Enumerator current = null; 10878 Enumerator current = null;
9287 10879
@@ -9292,31 +10884,31 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9292 enterRule(); 10884 enterRule();
9293 10885
9294 try { 10886 try {
9295 // InternalSolverLanguageParser.g:3589:2: ( ( (enumLiteral_0= PlusSign ) | (enumLiteral_1= HyphenMinus ) ) ) 10887 // InternalSolverLanguageParser.g:4278:2: ( ( (enumLiteral_0= PlusSign ) | (enumLiteral_1= HyphenMinus ) ) )
9296 // InternalSolverLanguageParser.g:3590:2: ( (enumLiteral_0= PlusSign ) | (enumLiteral_1= HyphenMinus ) ) 10888 // InternalSolverLanguageParser.g:4279:2: ( (enumLiteral_0= PlusSign ) | (enumLiteral_1= HyphenMinus ) )
9297 { 10889 {
9298 // InternalSolverLanguageParser.g:3590:2: ( (enumLiteral_0= PlusSign ) | (enumLiteral_1= HyphenMinus ) ) 10890 // InternalSolverLanguageParser.g:4279:2: ( (enumLiteral_0= PlusSign ) | (enumLiteral_1= HyphenMinus ) )
9299 int alt46=2; 10891 int alt54=2;
9300 int LA46_0 = input.LA(1); 10892 int LA54_0 = input.LA(1);
9301 10893
9302 if ( (LA46_0==PlusSign) ) { 10894 if ( (LA54_0==PlusSign) ) {
9303 alt46=1; 10895 alt54=1;
9304 } 10896 }
9305 else if ( (LA46_0==HyphenMinus) ) { 10897 else if ( (LA54_0==HyphenMinus) ) {
9306 alt46=2; 10898 alt54=2;
9307 } 10899 }
9308 else { 10900 else {
9309 NoViableAltException nvae = 10901 NoViableAltException nvae =
9310 new NoViableAltException("", 46, 0, input); 10902 new NoViableAltException("", 54, 0, input);
9311 10903
9312 throw nvae; 10904 throw nvae;
9313 } 10905 }
9314 switch (alt46) { 10906 switch (alt54) {
9315 case 1 : 10907 case 1 :
9316 // InternalSolverLanguageParser.g:3591:3: (enumLiteral_0= PlusSign ) 10908 // InternalSolverLanguageParser.g:4280:3: (enumLiteral_0= PlusSign )
9317 { 10909 {
9318 // InternalSolverLanguageParser.g:3591:3: (enumLiteral_0= PlusSign ) 10910 // InternalSolverLanguageParser.g:4280:3: (enumLiteral_0= PlusSign )
9319 // InternalSolverLanguageParser.g:3592:4: enumLiteral_0= PlusSign 10911 // InternalSolverLanguageParser.g:4281:4: enumLiteral_0= PlusSign
9320 { 10912 {
9321 enumLiteral_0=(Token)match(input,PlusSign,FOLLOW_2); 10913 enumLiteral_0=(Token)match(input,PlusSign,FOLLOW_2);
9322 10914
@@ -9330,10 +10922,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9330 } 10922 }
9331 break; 10923 break;
9332 case 2 : 10924 case 2 :
9333 // InternalSolverLanguageParser.g:3599:3: (enumLiteral_1= HyphenMinus ) 10925 // InternalSolverLanguageParser.g:4288:3: (enumLiteral_1= HyphenMinus )
9334 { 10926 {
9335 // InternalSolverLanguageParser.g:3599:3: (enumLiteral_1= HyphenMinus ) 10927 // InternalSolverLanguageParser.g:4288:3: (enumLiteral_1= HyphenMinus )
9336 // InternalSolverLanguageParser.g:3600:4: enumLiteral_1= HyphenMinus 10928 // InternalSolverLanguageParser.g:4289:4: enumLiteral_1= HyphenMinus
9337 { 10929 {
9338 enumLiteral_1=(Token)match(input,HyphenMinus,FOLLOW_2); 10930 enumLiteral_1=(Token)match(input,HyphenMinus,FOLLOW_2);
9339 10931
@@ -9369,7 +10961,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9369 10961
9370 10962
9371 // $ANTLR start "ruleMultiplicativeBinaryOperator" 10963 // $ANTLR start "ruleMultiplicativeBinaryOperator"
9372 // InternalSolverLanguageParser.g:3610:1: ruleMultiplicativeBinaryOperator returns [Enumerator current=null] : ( (enumLiteral_0= Asterisk ) | (enumLiteral_1= Solidus ) ) ; 10964 // InternalSolverLanguageParser.g:4299:1: ruleMultiplicativeBinaryOperator returns [Enumerator current=null] : ( (enumLiteral_0= Asterisk ) | (enumLiteral_1= Solidus ) ) ;
9373 public final Enumerator ruleMultiplicativeBinaryOperator() throws RecognitionException { 10965 public final Enumerator ruleMultiplicativeBinaryOperator() throws RecognitionException {
9374 Enumerator current = null; 10966 Enumerator current = null;
9375 10967
@@ -9380,31 +10972,31 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9380 enterRule(); 10972 enterRule();
9381 10973
9382 try { 10974 try {
9383 // InternalSolverLanguageParser.g:3616:2: ( ( (enumLiteral_0= Asterisk ) | (enumLiteral_1= Solidus ) ) ) 10975 // InternalSolverLanguageParser.g:4305:2: ( ( (enumLiteral_0= Asterisk ) | (enumLiteral_1= Solidus ) ) )
9384 // InternalSolverLanguageParser.g:3617:2: ( (enumLiteral_0= Asterisk ) | (enumLiteral_1= Solidus ) ) 10976 // InternalSolverLanguageParser.g:4306:2: ( (enumLiteral_0= Asterisk ) | (enumLiteral_1= Solidus ) )
9385 { 10977 {
9386 // InternalSolverLanguageParser.g:3617:2: ( (enumLiteral_0= Asterisk ) | (enumLiteral_1= Solidus ) ) 10978 // InternalSolverLanguageParser.g:4306:2: ( (enumLiteral_0= Asterisk ) | (enumLiteral_1= Solidus ) )
9387 int alt47=2; 10979 int alt55=2;
9388 int LA47_0 = input.LA(1); 10980 int LA55_0 = input.LA(1);
9389 10981
9390 if ( (LA47_0==Asterisk) ) { 10982 if ( (LA55_0==Asterisk) ) {
9391 alt47=1; 10983 alt55=1;
9392 } 10984 }
9393 else if ( (LA47_0==Solidus) ) { 10985 else if ( (LA55_0==Solidus) ) {
9394 alt47=2; 10986 alt55=2;
9395 } 10987 }
9396 else { 10988 else {
9397 NoViableAltException nvae = 10989 NoViableAltException nvae =
9398 new NoViableAltException("", 47, 0, input); 10990 new NoViableAltException("", 55, 0, input);
9399 10991
9400 throw nvae; 10992 throw nvae;
9401 } 10993 }
9402 switch (alt47) { 10994 switch (alt55) {
9403 case 1 : 10995 case 1 :
9404 // InternalSolverLanguageParser.g:3618:3: (enumLiteral_0= Asterisk ) 10996 // InternalSolverLanguageParser.g:4307:3: (enumLiteral_0= Asterisk )
9405 { 10997 {
9406 // InternalSolverLanguageParser.g:3618:3: (enumLiteral_0= Asterisk ) 10998 // InternalSolverLanguageParser.g:4307:3: (enumLiteral_0= Asterisk )
9407 // InternalSolverLanguageParser.g:3619:4: enumLiteral_0= Asterisk 10999 // InternalSolverLanguageParser.g:4308:4: enumLiteral_0= Asterisk
9408 { 11000 {
9409 enumLiteral_0=(Token)match(input,Asterisk,FOLLOW_2); 11001 enumLiteral_0=(Token)match(input,Asterisk,FOLLOW_2);
9410 11002
@@ -9418,10 +11010,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9418 } 11010 }
9419 break; 11011 break;
9420 case 2 : 11012 case 2 :
9421 // InternalSolverLanguageParser.g:3626:3: (enumLiteral_1= Solidus ) 11013 // InternalSolverLanguageParser.g:4315:3: (enumLiteral_1= Solidus )
9422 { 11014 {
9423 // InternalSolverLanguageParser.g:3626:3: (enumLiteral_1= Solidus ) 11015 // InternalSolverLanguageParser.g:4315:3: (enumLiteral_1= Solidus )
9424 // InternalSolverLanguageParser.g:3627:4: enumLiteral_1= Solidus 11016 // InternalSolverLanguageParser.g:4316:4: enumLiteral_1= Solidus
9425 { 11017 {
9426 enumLiteral_1=(Token)match(input,Solidus,FOLLOW_2); 11018 enumLiteral_1=(Token)match(input,Solidus,FOLLOW_2);
9427 11019
@@ -9457,7 +11049,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9457 11049
9458 11050
9459 // $ANTLR start "ruleExponentialOp" 11051 // $ANTLR start "ruleExponentialOp"
9460 // InternalSolverLanguageParser.g:3637:1: ruleExponentialOp returns [Enumerator current=null] : (enumLiteral_0= CircumflexAccent ) ; 11052 // InternalSolverLanguageParser.g:4326:1: ruleExponentialOp returns [Enumerator current=null] : (enumLiteral_0= CircumflexAccent ) ;
9461 public final Enumerator ruleExponentialOp() throws RecognitionException { 11053 public final Enumerator ruleExponentialOp() throws RecognitionException {
9462 Enumerator current = null; 11054 Enumerator current = null;
9463 11055
@@ -9467,11 +11059,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9467 enterRule(); 11059 enterRule();
9468 11060
9469 try { 11061 try {
9470 // InternalSolverLanguageParser.g:3643:2: ( (enumLiteral_0= CircumflexAccent ) ) 11062 // InternalSolverLanguageParser.g:4332:2: ( (enumLiteral_0= CircumflexAccent ) )
9471 // InternalSolverLanguageParser.g:3644:2: (enumLiteral_0= CircumflexAccent ) 11063 // InternalSolverLanguageParser.g:4333:2: (enumLiteral_0= CircumflexAccent )
9472 { 11064 {
9473 // InternalSolverLanguageParser.g:3644:2: (enumLiteral_0= CircumflexAccent ) 11065 // InternalSolverLanguageParser.g:4333:2: (enumLiteral_0= CircumflexAccent )
9474 // InternalSolverLanguageParser.g:3645:3: enumLiteral_0= CircumflexAccent 11066 // InternalSolverLanguageParser.g:4334:3: enumLiteral_0= CircumflexAccent
9475 { 11067 {
9476 enumLiteral_0=(Token)match(input,CircumflexAccent,FOLLOW_2); 11068 enumLiteral_0=(Token)match(input,CircumflexAccent,FOLLOW_2);
9477 11069
@@ -9501,7 +11093,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9501 11093
9502 11094
9503 // $ANTLR start "ruleUnaryOp" 11095 // $ANTLR start "ruleUnaryOp"
9504 // InternalSolverLanguageParser.g:3654:1: ruleUnaryOp returns [Enumerator current=null] : ( (enumLiteral_0= ExclamationMark ) | (enumLiteral_1= PlusSign ) | (enumLiteral_2= HyphenMinus ) | (enumLiteral_3= May ) | (enumLiteral_4= Must ) | (enumLiteral_5= Current ) ) ; 11096 // InternalSolverLanguageParser.g:4343:1: ruleUnaryOp returns [Enumerator current=null] : ( (enumLiteral_0= ExclamationMark ) | (enumLiteral_1= PlusSign ) | (enumLiteral_2= HyphenMinus ) | (enumLiteral_3= May ) | (enumLiteral_4= Must ) | (enumLiteral_5= Current ) ) ;
9505 public final Enumerator ruleUnaryOp() throws RecognitionException { 11097 public final Enumerator ruleUnaryOp() throws RecognitionException {
9506 Enumerator current = null; 11098 Enumerator current = null;
9507 11099
@@ -9516,55 +11108,55 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9516 enterRule(); 11108 enterRule();
9517 11109
9518 try { 11110 try {
9519 // InternalSolverLanguageParser.g:3660:2: ( ( (enumLiteral_0= ExclamationMark ) | (enumLiteral_1= PlusSign ) | (enumLiteral_2= HyphenMinus ) | (enumLiteral_3= May ) | (enumLiteral_4= Must ) | (enumLiteral_5= Current ) ) ) 11111 // InternalSolverLanguageParser.g:4349:2: ( ( (enumLiteral_0= ExclamationMark ) | (enumLiteral_1= PlusSign ) | (enumLiteral_2= HyphenMinus ) | (enumLiteral_3= May ) | (enumLiteral_4= Must ) | (enumLiteral_5= Current ) ) )
9520 // InternalSolverLanguageParser.g:3661:2: ( (enumLiteral_0= ExclamationMark ) | (enumLiteral_1= PlusSign ) | (enumLiteral_2= HyphenMinus ) | (enumLiteral_3= May ) | (enumLiteral_4= Must ) | (enumLiteral_5= Current ) ) 11112 // InternalSolverLanguageParser.g:4350:2: ( (enumLiteral_0= ExclamationMark ) | (enumLiteral_1= PlusSign ) | (enumLiteral_2= HyphenMinus ) | (enumLiteral_3= May ) | (enumLiteral_4= Must ) | (enumLiteral_5= Current ) )
9521 { 11113 {
9522 // InternalSolverLanguageParser.g:3661:2: ( (enumLiteral_0= ExclamationMark ) | (enumLiteral_1= PlusSign ) | (enumLiteral_2= HyphenMinus ) | (enumLiteral_3= May ) | (enumLiteral_4= Must ) | (enumLiteral_5= Current ) ) 11114 // InternalSolverLanguageParser.g:4350:2: ( (enumLiteral_0= ExclamationMark ) | (enumLiteral_1= PlusSign ) | (enumLiteral_2= HyphenMinus ) | (enumLiteral_3= May ) | (enumLiteral_4= Must ) | (enumLiteral_5= Current ) )
9523 int alt48=6; 11115 int alt56=6;
9524 switch ( input.LA(1) ) { 11116 switch ( input.LA(1) ) {
9525 case ExclamationMark: 11117 case ExclamationMark:
9526 { 11118 {
9527 alt48=1; 11119 alt56=1;
9528 } 11120 }
9529 break; 11121 break;
9530 case PlusSign: 11122 case PlusSign:
9531 { 11123 {
9532 alt48=2; 11124 alt56=2;
9533 } 11125 }
9534 break; 11126 break;
9535 case HyphenMinus: 11127 case HyphenMinus:
9536 { 11128 {
9537 alt48=3; 11129 alt56=3;
9538 } 11130 }
9539 break; 11131 break;
9540 case May: 11132 case May:
9541 { 11133 {
9542 alt48=4; 11134 alt56=4;
9543 } 11135 }
9544 break; 11136 break;
9545 case Must: 11137 case Must:
9546 { 11138 {
9547 alt48=5; 11139 alt56=5;
9548 } 11140 }
9549 break; 11141 break;
9550 case Current: 11142 case Current:
9551 { 11143 {
9552 alt48=6; 11144 alt56=6;
9553 } 11145 }
9554 break; 11146 break;
9555 default: 11147 default:
9556 NoViableAltException nvae = 11148 NoViableAltException nvae =
9557 new NoViableAltException("", 48, 0, input); 11149 new NoViableAltException("", 56, 0, input);
9558 11150
9559 throw nvae; 11151 throw nvae;
9560 } 11152 }
9561 11153
9562 switch (alt48) { 11154 switch (alt56) {
9563 case 1 : 11155 case 1 :
9564 // InternalSolverLanguageParser.g:3662:3: (enumLiteral_0= ExclamationMark ) 11156 // InternalSolverLanguageParser.g:4351:3: (enumLiteral_0= ExclamationMark )
9565 { 11157 {
9566 // InternalSolverLanguageParser.g:3662:3: (enumLiteral_0= ExclamationMark ) 11158 // InternalSolverLanguageParser.g:4351:3: (enumLiteral_0= ExclamationMark )
9567 // InternalSolverLanguageParser.g:3663:4: enumLiteral_0= ExclamationMark 11159 // InternalSolverLanguageParser.g:4352:4: enumLiteral_0= ExclamationMark
9568 { 11160 {
9569 enumLiteral_0=(Token)match(input,ExclamationMark,FOLLOW_2); 11161 enumLiteral_0=(Token)match(input,ExclamationMark,FOLLOW_2);
9570 11162
@@ -9578,10 +11170,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9578 } 11170 }
9579 break; 11171 break;
9580 case 2 : 11172 case 2 :
9581 // InternalSolverLanguageParser.g:3670:3: (enumLiteral_1= PlusSign ) 11173 // InternalSolverLanguageParser.g:4359:3: (enumLiteral_1= PlusSign )
9582 { 11174 {
9583 // InternalSolverLanguageParser.g:3670:3: (enumLiteral_1= PlusSign ) 11175 // InternalSolverLanguageParser.g:4359:3: (enumLiteral_1= PlusSign )
9584 // InternalSolverLanguageParser.g:3671:4: enumLiteral_1= PlusSign 11176 // InternalSolverLanguageParser.g:4360:4: enumLiteral_1= PlusSign
9585 { 11177 {
9586 enumLiteral_1=(Token)match(input,PlusSign,FOLLOW_2); 11178 enumLiteral_1=(Token)match(input,PlusSign,FOLLOW_2);
9587 11179
@@ -9595,10 +11187,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9595 } 11187 }
9596 break; 11188 break;
9597 case 3 : 11189 case 3 :
9598 // InternalSolverLanguageParser.g:3678:3: (enumLiteral_2= HyphenMinus ) 11190 // InternalSolverLanguageParser.g:4367:3: (enumLiteral_2= HyphenMinus )
9599 { 11191 {
9600 // InternalSolverLanguageParser.g:3678:3: (enumLiteral_2= HyphenMinus ) 11192 // InternalSolverLanguageParser.g:4367:3: (enumLiteral_2= HyphenMinus )
9601 // InternalSolverLanguageParser.g:3679:4: enumLiteral_2= HyphenMinus 11193 // InternalSolverLanguageParser.g:4368:4: enumLiteral_2= HyphenMinus
9602 { 11194 {
9603 enumLiteral_2=(Token)match(input,HyphenMinus,FOLLOW_2); 11195 enumLiteral_2=(Token)match(input,HyphenMinus,FOLLOW_2);
9604 11196
@@ -9612,10 +11204,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9612 } 11204 }
9613 break; 11205 break;
9614 case 4 : 11206 case 4 :
9615 // InternalSolverLanguageParser.g:3686:3: (enumLiteral_3= May ) 11207 // InternalSolverLanguageParser.g:4375:3: (enumLiteral_3= May )
9616 { 11208 {
9617 // InternalSolverLanguageParser.g:3686:3: (enumLiteral_3= May ) 11209 // InternalSolverLanguageParser.g:4375:3: (enumLiteral_3= May )
9618 // InternalSolverLanguageParser.g:3687:4: enumLiteral_3= May 11210 // InternalSolverLanguageParser.g:4376:4: enumLiteral_3= May
9619 { 11211 {
9620 enumLiteral_3=(Token)match(input,May,FOLLOW_2); 11212 enumLiteral_3=(Token)match(input,May,FOLLOW_2);
9621 11213
@@ -9629,10 +11221,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9629 } 11221 }
9630 break; 11222 break;
9631 case 5 : 11223 case 5 :
9632 // InternalSolverLanguageParser.g:3694:3: (enumLiteral_4= Must ) 11224 // InternalSolverLanguageParser.g:4383:3: (enumLiteral_4= Must )
9633 { 11225 {
9634 // InternalSolverLanguageParser.g:3694:3: (enumLiteral_4= Must ) 11226 // InternalSolverLanguageParser.g:4383:3: (enumLiteral_4= Must )
9635 // InternalSolverLanguageParser.g:3695:4: enumLiteral_4= Must 11227 // InternalSolverLanguageParser.g:4384:4: enumLiteral_4= Must
9636 { 11228 {
9637 enumLiteral_4=(Token)match(input,Must,FOLLOW_2); 11229 enumLiteral_4=(Token)match(input,Must,FOLLOW_2);
9638 11230
@@ -9646,10 +11238,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9646 } 11238 }
9647 break; 11239 break;
9648 case 6 : 11240 case 6 :
9649 // InternalSolverLanguageParser.g:3702:3: (enumLiteral_5= Current ) 11241 // InternalSolverLanguageParser.g:4391:3: (enumLiteral_5= Current )
9650 { 11242 {
9651 // InternalSolverLanguageParser.g:3702:3: (enumLiteral_5= Current ) 11243 // InternalSolverLanguageParser.g:4391:3: (enumLiteral_5= Current )
9652 // InternalSolverLanguageParser.g:3703:4: enumLiteral_5= Current 11244 // InternalSolverLanguageParser.g:4392:4: enumLiteral_5= Current
9653 { 11245 {
9654 enumLiteral_5=(Token)match(input,Current,FOLLOW_2); 11246 enumLiteral_5=(Token)match(input,Current,FOLLOW_2);
9655 11247
@@ -9684,76 +11276,58 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9684 // $ANTLR end "ruleUnaryOp" 11276 // $ANTLR end "ruleUnaryOp"
9685 11277
9686 11278
9687 // $ANTLR start "ruleAggregationOp" 11279 // $ANTLR start "ruleQuantifier"
9688 // InternalSolverLanguageParser.g:3713:1: ruleAggregationOp returns [Enumerator current=null] : ( (enumLiteral_0= Only ) | (enumLiteral_1= Sum ) | (enumLiteral_2= Prod ) | (enumLiteral_3= Avg ) | (enumLiteral_4= Min ) | (enumLiteral_5= Max ) ) ; 11280 // InternalSolverLanguageParser.g:4402:1: ruleQuantifier returns [Enumerator current=null] : ( (enumLiteral_0= Exists ) | (enumLiteral_1= Forall ) | (enumLiteral_2= Count ) ) ;
9689 public final Enumerator ruleAggregationOp() throws RecognitionException { 11281 public final Enumerator ruleQuantifier() throws RecognitionException {
9690 Enumerator current = null; 11282 Enumerator current = null;
9691 11283
9692 Token enumLiteral_0=null; 11284 Token enumLiteral_0=null;
9693 Token enumLiteral_1=null; 11285 Token enumLiteral_1=null;
9694 Token enumLiteral_2=null; 11286 Token enumLiteral_2=null;
9695 Token enumLiteral_3=null;
9696 Token enumLiteral_4=null;
9697 Token enumLiteral_5=null;
9698 11287
9699 11288
9700 enterRule(); 11289 enterRule();
9701 11290
9702 try { 11291 try {
9703 // InternalSolverLanguageParser.g:3719:2: ( ( (enumLiteral_0= Only ) | (enumLiteral_1= Sum ) | (enumLiteral_2= Prod ) | (enumLiteral_3= Avg ) | (enumLiteral_4= Min ) | (enumLiteral_5= Max ) ) ) 11292 // InternalSolverLanguageParser.g:4408:2: ( ( (enumLiteral_0= Exists ) | (enumLiteral_1= Forall ) | (enumLiteral_2= Count ) ) )
9704 // InternalSolverLanguageParser.g:3720:2: ( (enumLiteral_0= Only ) | (enumLiteral_1= Sum ) | (enumLiteral_2= Prod ) | (enumLiteral_3= Avg ) | (enumLiteral_4= Min ) | (enumLiteral_5= Max ) ) 11293 // InternalSolverLanguageParser.g:4409:2: ( (enumLiteral_0= Exists ) | (enumLiteral_1= Forall ) | (enumLiteral_2= Count ) )
9705 { 11294 {
9706 // InternalSolverLanguageParser.g:3720:2: ( (enumLiteral_0= Only ) | (enumLiteral_1= Sum ) | (enumLiteral_2= Prod ) | (enumLiteral_3= Avg ) | (enumLiteral_4= Min ) | (enumLiteral_5= Max ) ) 11295 // InternalSolverLanguageParser.g:4409:2: ( (enumLiteral_0= Exists ) | (enumLiteral_1= Forall ) | (enumLiteral_2= Count ) )
9707 int alt49=6; 11296 int alt57=3;
9708 switch ( input.LA(1) ) { 11297 switch ( input.LA(1) ) {
9709 case Only: 11298 case Exists:
9710 {
9711 alt49=1;
9712 }
9713 break;
9714 case Sum:
9715 { 11299 {
9716 alt49=2; 11300 alt57=1;
9717 }
9718 break;
9719 case Prod:
9720 {
9721 alt49=3;
9722 }
9723 break;
9724 case Avg:
9725 {
9726 alt49=4;
9727 } 11301 }
9728 break; 11302 break;
9729 case Min: 11303 case Forall:
9730 { 11304 {
9731 alt49=5; 11305 alt57=2;
9732 } 11306 }
9733 break; 11307 break;
9734 case Max: 11308 case Count:
9735 { 11309 {
9736 alt49=6; 11310 alt57=3;
9737 } 11311 }
9738 break; 11312 break;
9739 default: 11313 default:
9740 NoViableAltException nvae = 11314 NoViableAltException nvae =
9741 new NoViableAltException("", 49, 0, input); 11315 new NoViableAltException("", 57, 0, input);
9742 11316
9743 throw nvae; 11317 throw nvae;
9744 } 11318 }
9745 11319
9746 switch (alt49) { 11320 switch (alt57) {
9747 case 1 : 11321 case 1 :
9748 // InternalSolverLanguageParser.g:3721:3: (enumLiteral_0= Only ) 11322 // InternalSolverLanguageParser.g:4410:3: (enumLiteral_0= Exists )
9749 { 11323 {
9750 // InternalSolverLanguageParser.g:3721:3: (enumLiteral_0= Only ) 11324 // InternalSolverLanguageParser.g:4410:3: (enumLiteral_0= Exists )
9751 // InternalSolverLanguageParser.g:3722:4: enumLiteral_0= Only 11325 // InternalSolverLanguageParser.g:4411:4: enumLiteral_0= Exists
9752 { 11326 {
9753 enumLiteral_0=(Token)match(input,Only,FOLLOW_2); 11327 enumLiteral_0=(Token)match(input,Exists,FOLLOW_2);
9754 11328
9755 current = grammarAccess.getAggregationOpAccess().getONLYEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); 11329 current = grammarAccess.getQuantifierAccess().getEXISTSEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
9756 newLeafNode(enumLiteral_0, grammarAccess.getAggregationOpAccess().getONLYEnumLiteralDeclaration_0()); 11330 newLeafNode(enumLiteral_0, grammarAccess.getQuantifierAccess().getEXISTSEnumLiteralDeclaration_0());
9757 11331
9758 11332
9759 } 11333 }
@@ -9762,15 +11336,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9762 } 11336 }
9763 break; 11337 break;
9764 case 2 : 11338 case 2 :
9765 // InternalSolverLanguageParser.g:3729:3: (enumLiteral_1= Sum ) 11339 // InternalSolverLanguageParser.g:4418:3: (enumLiteral_1= Forall )
9766 { 11340 {
9767 // InternalSolverLanguageParser.g:3729:3: (enumLiteral_1= Sum ) 11341 // InternalSolverLanguageParser.g:4418:3: (enumLiteral_1= Forall )
9768 // InternalSolverLanguageParser.g:3730:4: enumLiteral_1= Sum 11342 // InternalSolverLanguageParser.g:4419:4: enumLiteral_1= Forall
9769 { 11343 {
9770 enumLiteral_1=(Token)match(input,Sum,FOLLOW_2); 11344 enumLiteral_1=(Token)match(input,Forall,FOLLOW_2);
9771 11345
9772 current = grammarAccess.getAggregationOpAccess().getSUMEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); 11346 current = grammarAccess.getQuantifierAccess().getFORALLEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
9773 newLeafNode(enumLiteral_1, grammarAccess.getAggregationOpAccess().getSUMEnumLiteralDeclaration_1()); 11347 newLeafNode(enumLiteral_1, grammarAccess.getQuantifierAccess().getFORALLEnumLiteralDeclaration_1());
9774 11348
9775 11349
9776 } 11350 }
@@ -9779,66 +11353,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9779 } 11353 }
9780 break; 11354 break;
9781 case 3 : 11355 case 3 :
9782 // InternalSolverLanguageParser.g:3737:3: (enumLiteral_2= Prod ) 11356 // InternalSolverLanguageParser.g:4426:3: (enumLiteral_2= Count )
9783 {
9784 // InternalSolverLanguageParser.g:3737:3: (enumLiteral_2= Prod )
9785 // InternalSolverLanguageParser.g:3738:4: enumLiteral_2= Prod
9786 {
9787 enumLiteral_2=(Token)match(input,Prod,FOLLOW_2);
9788
9789 current = grammarAccess.getAggregationOpAccess().getPRODEnumLiteralDeclaration_2().getEnumLiteral().getInstance();
9790 newLeafNode(enumLiteral_2, grammarAccess.getAggregationOpAccess().getPRODEnumLiteralDeclaration_2());
9791
9792
9793 }
9794
9795
9796 }
9797 break;
9798 case 4 :
9799 // InternalSolverLanguageParser.g:3745:3: (enumLiteral_3= Avg )
9800 { 11357 {
9801 // InternalSolverLanguageParser.g:3745:3: (enumLiteral_3= Avg ) 11358 // InternalSolverLanguageParser.g:4426:3: (enumLiteral_2= Count )
9802 // InternalSolverLanguageParser.g:3746:4: enumLiteral_3= Avg 11359 // InternalSolverLanguageParser.g:4427:4: enumLiteral_2= Count
9803 { 11360 {
9804 enumLiteral_3=(Token)match(input,Avg,FOLLOW_2); 11361 enumLiteral_2=(Token)match(input,Count,FOLLOW_2);
9805 11362
9806 current = grammarAccess.getAggregationOpAccess().getAVGEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); 11363 current = grammarAccess.getQuantifierAccess().getCOUNTEnumLiteralDeclaration_2().getEnumLiteral().getInstance();
9807 newLeafNode(enumLiteral_3, grammarAccess.getAggregationOpAccess().getAVGEnumLiteralDeclaration_3()); 11364 newLeafNode(enumLiteral_2, grammarAccess.getQuantifierAccess().getCOUNTEnumLiteralDeclaration_2());
9808
9809
9810 }
9811
9812
9813 }
9814 break;
9815 case 5 :
9816 // InternalSolverLanguageParser.g:3753:3: (enumLiteral_4= Min )
9817 {
9818 // InternalSolverLanguageParser.g:3753:3: (enumLiteral_4= Min )
9819 // InternalSolverLanguageParser.g:3754:4: enumLiteral_4= Min
9820 {
9821 enumLiteral_4=(Token)match(input,Min,FOLLOW_2);
9822
9823 current = grammarAccess.getAggregationOpAccess().getMINEnumLiteralDeclaration_4().getEnumLiteral().getInstance();
9824 newLeafNode(enumLiteral_4, grammarAccess.getAggregationOpAccess().getMINEnumLiteralDeclaration_4());
9825
9826
9827 }
9828
9829
9830 }
9831 break;
9832 case 6 :
9833 // InternalSolverLanguageParser.g:3761:3: (enumLiteral_5= Max )
9834 {
9835 // InternalSolverLanguageParser.g:3761:3: (enumLiteral_5= Max )
9836 // InternalSolverLanguageParser.g:3762:4: enumLiteral_5= Max
9837 {
9838 enumLiteral_5=(Token)match(input,Max,FOLLOW_2);
9839
9840 current = grammarAccess.getAggregationOpAccess().getMAXEnumLiteralDeclaration_5().getEnumLiteral().getInstance();
9841 newLeafNode(enumLiteral_5, grammarAccess.getAggregationOpAccess().getMAXEnumLiteralDeclaration_5());
9842 11365
9843 11366
9844 } 11367 }
@@ -9865,11 +11388,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9865 } 11388 }
9866 return current; 11389 return current;
9867 } 11390 }
9868 // $ANTLR end "ruleAggregationOp" 11391 // $ANTLR end "ruleQuantifier"
9869 11392
9870 11393
9871 // $ANTLR start "ruleLogicValue" 11394 // $ANTLR start "ruleLogicValue"
9872 // InternalSolverLanguageParser.g:3772:1: ruleLogicValue returns [Enumerator current=null] : ( (enumLiteral_0= True ) | (enumLiteral_1= False ) | (enumLiteral_2= Unknown ) | (enumLiteral_3= Error ) ) ; 11395 // InternalSolverLanguageParser.g:4437:1: ruleLogicValue returns [Enumerator current=null] : ( (enumLiteral_0= True ) | (enumLiteral_1= False ) | (enumLiteral_2= Unknown ) | (enumLiteral_3= Error ) ) ;
9873 public final Enumerator ruleLogicValue() throws RecognitionException { 11396 public final Enumerator ruleLogicValue() throws RecognitionException {
9874 Enumerator current = null; 11397 Enumerator current = null;
9875 11398
@@ -9882,45 +11405,45 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9882 enterRule(); 11405 enterRule();
9883 11406
9884 try { 11407 try {
9885 // InternalSolverLanguageParser.g:3778:2: ( ( (enumLiteral_0= True ) | (enumLiteral_1= False ) | (enumLiteral_2= Unknown ) | (enumLiteral_3= Error ) ) ) 11408 // InternalSolverLanguageParser.g:4443:2: ( ( (enumLiteral_0= True ) | (enumLiteral_1= False ) | (enumLiteral_2= Unknown ) | (enumLiteral_3= Error ) ) )
9886 // InternalSolverLanguageParser.g:3779:2: ( (enumLiteral_0= True ) | (enumLiteral_1= False ) | (enumLiteral_2= Unknown ) | (enumLiteral_3= Error ) ) 11409 // InternalSolverLanguageParser.g:4444:2: ( (enumLiteral_0= True ) | (enumLiteral_1= False ) | (enumLiteral_2= Unknown ) | (enumLiteral_3= Error ) )
9887 { 11410 {
9888 // InternalSolverLanguageParser.g:3779:2: ( (enumLiteral_0= True ) | (enumLiteral_1= False ) | (enumLiteral_2= Unknown ) | (enumLiteral_3= Error ) ) 11411 // InternalSolverLanguageParser.g:4444:2: ( (enumLiteral_0= True ) | (enumLiteral_1= False ) | (enumLiteral_2= Unknown ) | (enumLiteral_3= Error ) )
9889 int alt50=4; 11412 int alt58=4;
9890 switch ( input.LA(1) ) { 11413 switch ( input.LA(1) ) {
9891 case True: 11414 case True:
9892 { 11415 {
9893 alt50=1; 11416 alt58=1;
9894 } 11417 }
9895 break; 11418 break;
9896 case False: 11419 case False:
9897 { 11420 {
9898 alt50=2; 11421 alt58=2;
9899 } 11422 }
9900 break; 11423 break;
9901 case Unknown: 11424 case Unknown:
9902 { 11425 {
9903 alt50=3; 11426 alt58=3;
9904 } 11427 }
9905 break; 11428 break;
9906 case Error: 11429 case Error:
9907 { 11430 {
9908 alt50=4; 11431 alt58=4;
9909 } 11432 }
9910 break; 11433 break;
9911 default: 11434 default:
9912 NoViableAltException nvae = 11435 NoViableAltException nvae =
9913 new NoViableAltException("", 50, 0, input); 11436 new NoViableAltException("", 58, 0, input);
9914 11437
9915 throw nvae; 11438 throw nvae;
9916 } 11439 }
9917 11440
9918 switch (alt50) { 11441 switch (alt58) {
9919 case 1 : 11442 case 1 :
9920 // InternalSolverLanguageParser.g:3780:3: (enumLiteral_0= True ) 11443 // InternalSolverLanguageParser.g:4445:3: (enumLiteral_0= True )
9921 { 11444 {
9922 // InternalSolverLanguageParser.g:3780:3: (enumLiteral_0= True ) 11445 // InternalSolverLanguageParser.g:4445:3: (enumLiteral_0= True )
9923 // InternalSolverLanguageParser.g:3781:4: enumLiteral_0= True 11446 // InternalSolverLanguageParser.g:4446:4: enumLiteral_0= True
9924 { 11447 {
9925 enumLiteral_0=(Token)match(input,True,FOLLOW_2); 11448 enumLiteral_0=(Token)match(input,True,FOLLOW_2);
9926 11449
@@ -9934,10 +11457,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9934 } 11457 }
9935 break; 11458 break;
9936 case 2 : 11459 case 2 :
9937 // InternalSolverLanguageParser.g:3788:3: (enumLiteral_1= False ) 11460 // InternalSolverLanguageParser.g:4453:3: (enumLiteral_1= False )
9938 { 11461 {
9939 // InternalSolverLanguageParser.g:3788:3: (enumLiteral_1= False ) 11462 // InternalSolverLanguageParser.g:4453:3: (enumLiteral_1= False )
9940 // InternalSolverLanguageParser.g:3789:4: enumLiteral_1= False 11463 // InternalSolverLanguageParser.g:4454:4: enumLiteral_1= False
9941 { 11464 {
9942 enumLiteral_1=(Token)match(input,False,FOLLOW_2); 11465 enumLiteral_1=(Token)match(input,False,FOLLOW_2);
9943 11466
@@ -9951,10 +11474,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9951 } 11474 }
9952 break; 11475 break;
9953 case 3 : 11476 case 3 :
9954 // InternalSolverLanguageParser.g:3796:3: (enumLiteral_2= Unknown ) 11477 // InternalSolverLanguageParser.g:4461:3: (enumLiteral_2= Unknown )
9955 { 11478 {
9956 // InternalSolverLanguageParser.g:3796:3: (enumLiteral_2= Unknown ) 11479 // InternalSolverLanguageParser.g:4461:3: (enumLiteral_2= Unknown )
9957 // InternalSolverLanguageParser.g:3797:4: enumLiteral_2= Unknown 11480 // InternalSolverLanguageParser.g:4462:4: enumLiteral_2= Unknown
9958 { 11481 {
9959 enumLiteral_2=(Token)match(input,Unknown,FOLLOW_2); 11482 enumLiteral_2=(Token)match(input,Unknown,FOLLOW_2);
9960 11483
@@ -9968,10 +11491,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
9968 } 11491 }
9969 break; 11492 break;
9970 case 4 : 11493 case 4 :
9971 // InternalSolverLanguageParser.g:3804:3: (enumLiteral_3= Error ) 11494 // InternalSolverLanguageParser.g:4469:3: (enumLiteral_3= Error )
9972 { 11495 {
9973 // InternalSolverLanguageParser.g:3804:3: (enumLiteral_3= Error ) 11496 // InternalSolverLanguageParser.g:4469:3: (enumLiteral_3= Error )
9974 // InternalSolverLanguageParser.g:3805:4: enumLiteral_3= Error 11497 // InternalSolverLanguageParser.g:4470:4: enumLiteral_3= Error
9975 { 11498 {
9976 enumLiteral_3=(Token)match(input,Error,FOLLOW_2); 11499 enumLiteral_3=(Token)match(input,Error,FOLLOW_2);
9977 11500
@@ -10007,7 +11530,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
10007 11530
10008 11531
10009 // $ANTLR start "ruleObjectiveKind" 11532 // $ANTLR start "ruleObjectiveKind"
10010 // InternalSolverLanguageParser.g:3815:1: ruleObjectiveKind returns [Enumerator current=null] : ( (enumLiteral_0= Minimize ) | (enumLiteral_1= Maximize ) ) ; 11533 // InternalSolverLanguageParser.g:4480:1: ruleObjectiveKind returns [Enumerator current=null] : ( (enumLiteral_0= Minimize ) | (enumLiteral_1= Maximize ) ) ;
10011 public final Enumerator ruleObjectiveKind() throws RecognitionException { 11534 public final Enumerator ruleObjectiveKind() throws RecognitionException {
10012 Enumerator current = null; 11535 Enumerator current = null;
10013 11536
@@ -10018,31 +11541,31 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
10018 enterRule(); 11541 enterRule();
10019 11542
10020 try { 11543 try {
10021 // InternalSolverLanguageParser.g:3821:2: ( ( (enumLiteral_0= Minimize ) | (enumLiteral_1= Maximize ) ) ) 11544 // InternalSolverLanguageParser.g:4486:2: ( ( (enumLiteral_0= Minimize ) | (enumLiteral_1= Maximize ) ) )
10022 // InternalSolverLanguageParser.g:3822:2: ( (enumLiteral_0= Minimize ) | (enumLiteral_1= Maximize ) ) 11545 // InternalSolverLanguageParser.g:4487:2: ( (enumLiteral_0= Minimize ) | (enumLiteral_1= Maximize ) )
10023 { 11546 {
10024 // InternalSolverLanguageParser.g:3822:2: ( (enumLiteral_0= Minimize ) | (enumLiteral_1= Maximize ) ) 11547 // InternalSolverLanguageParser.g:4487:2: ( (enumLiteral_0= Minimize ) | (enumLiteral_1= Maximize ) )
10025 int alt51=2; 11548 int alt59=2;
10026 int LA51_0 = input.LA(1); 11549 int LA59_0 = input.LA(1);
10027 11550
10028 if ( (LA51_0==Minimize) ) { 11551 if ( (LA59_0==Minimize) ) {
10029 alt51=1; 11552 alt59=1;
10030 } 11553 }
10031 else if ( (LA51_0==Maximize) ) { 11554 else if ( (LA59_0==Maximize) ) {
10032 alt51=2; 11555 alt59=2;
10033 } 11556 }
10034 else { 11557 else {
10035 NoViableAltException nvae = 11558 NoViableAltException nvae =
10036 new NoViableAltException("", 51, 0, input); 11559 new NoViableAltException("", 59, 0, input);
10037 11560
10038 throw nvae; 11561 throw nvae;
10039 } 11562 }
10040 switch (alt51) { 11563 switch (alt59) {
10041 case 1 : 11564 case 1 :
10042 // InternalSolverLanguageParser.g:3823:3: (enumLiteral_0= Minimize ) 11565 // InternalSolverLanguageParser.g:4488:3: (enumLiteral_0= Minimize )
10043 { 11566 {
10044 // InternalSolverLanguageParser.g:3823:3: (enumLiteral_0= Minimize ) 11567 // InternalSolverLanguageParser.g:4488:3: (enumLiteral_0= Minimize )
10045 // InternalSolverLanguageParser.g:3824:4: enumLiteral_0= Minimize 11568 // InternalSolverLanguageParser.g:4489:4: enumLiteral_0= Minimize
10046 { 11569 {
10047 enumLiteral_0=(Token)match(input,Minimize,FOLLOW_2); 11570 enumLiteral_0=(Token)match(input,Minimize,FOLLOW_2);
10048 11571
@@ -10056,10 +11579,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
10056 } 11579 }
10057 break; 11580 break;
10058 case 2 : 11581 case 2 :
10059 // InternalSolverLanguageParser.g:3831:3: (enumLiteral_1= Maximize ) 11582 // InternalSolverLanguageParser.g:4496:3: (enumLiteral_1= Maximize )
10060 { 11583 {
10061 // InternalSolverLanguageParser.g:3831:3: (enumLiteral_1= Maximize ) 11584 // InternalSolverLanguageParser.g:4496:3: (enumLiteral_1= Maximize )
10062 // InternalSolverLanguageParser.g:3832:4: enumLiteral_1= Maximize 11585 // InternalSolverLanguageParser.g:4497:4: enumLiteral_1= Maximize
10063 { 11586 {
10064 enumLiteral_1=(Token)match(input,Maximize,FOLLOW_2); 11587 enumLiteral_1=(Token)match(input,Maximize,FOLLOW_2);
10065 11588
@@ -10097,28 +11620,43 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
10097 11620
10098 11621
10099 protected DFA2 dfa2 = new DFA2(this); 11622 protected DFA2 dfa2 = new DFA2(this);
10100 protected DFA20 dfa20 = new DFA20(this); 11623 protected DFA23 dfa23 = new DFA23(this);
10101 protected DFA24 dfa24 = new DFA24(this); 11624 protected DFA29 dfa29 = new DFA29(this);
10102 protected DFA35 dfa35 = new DFA35(this); 11625 protected DFA33 dfa33 = new DFA33(this);
10103 static final String dfa_1s = "\15\uffff"; 11626 protected DFA44 dfa44 = new DFA44(this);
10104 static final String dfa_2s = "\1\5\1\uffff\1\5\2\uffff\1\36\7\uffff"; 11627 static final String dfa_1s = "\33\uffff";
10105 static final String dfa_3s = "\1\123\1\uffff\1\122\2\uffff\1\122\7\uffff"; 11628 static final String dfa_2s = "\1\4\1\uffff\2\40\1\4\2\uffff\1\7\3\uffff\1\105\2\uffff\2\54\1\uffff\1\40\1\105\2\54\1\uffff\1\54\1\105\2\uffff\1\54";
10106 static final String dfa_4s = "\1\uffff\1\1\1\uffff\1\2\1\4\1\uffff\1\6\1\10\1\11\1\12\1\3\1\5\1\7"; 11629 static final String dfa_3s = "\1\106\1\uffff\3\105\2\uffff\1\105\3\uffff\1\105\2\uffff\2\105\1\uffff\2\105\2\74\1\uffff\2\105\2\uffff\1\74";
10107 static final String dfa_5s = "\15\uffff}>"; 11630 static final String dfa_4s = "\1\uffff\1\1\3\uffff\1\2\1\4\1\uffff\1\12\1\13\1\14\1\uffff\1\5\1\3\2\uffff\1\11\4\uffff\1\6\2\uffff\1\7\1\10\1\uffff";
11631 static final String dfa_5s = "\33\uffff}>";
10108 static final String[] dfa_6s = { 11632 static final String[] dfa_6s = {
10109 "\1\3\1\7\1\uffff\2\11\3\uffff\1\1\1\4\1\uffff\1\1\1\uffff\1\5\1\7\2\1\1\2\1\1\1\10\2\uffff\3\1\1\6\1\uffff\1\1\5\uffff\2\1\1\6\4\1\11\uffff\1\1\1\uffff\2\1\2\uffff\1\1\1\uffff\1\1\7\uffff\1\1\5\uffff\2\1\4\uffff\2\1", 11633 "\1\5\1\10\2\uffff\2\12\1\uffff\1\1\1\6\1\uffff\2\1\1\7\1\1\1\10\2\1\1\4\1\1\1\11\1\uffff\1\1\1\uffff\1\1\1\uffff\3\1\11\uffff\1\1\1\uffff\2\1\2\uffff\1\1\1\uffff\1\1\7\uffff\1\1\5\uffff\1\1\1\3\4\uffff\1\2\1\1",
10110 "", 11634 "",
10111 "\1\3\47\uffff\2\1\1\uffff\4\1\3\uffff\1\1\1\uffff\1\12\1\uffff\4\1\1\uffff\6\1\2\uffff\1\1\4\uffff\1\3\3\uffff\1\1\1\3", 11635 "\2\1\1\uffff\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\4\1\1\13\7\1\1\uffff\2\1\3\uffff\1\14\1\uffff\3\1\1\14",
11636 "\2\1\1\uffff\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\4\1\1\uffff\7\1\1\uffff\2\1\3\uffff\1\14\1\uffff\3\1\1\14",
11637 "\1\5\33\uffff\2\1\1\uffff\6\1\1\uffff\1\1\1\uffff\1\15\1\uffff\4\1\1\uffff\6\1\2\uffff\1\1\4\uffff\1\5\3\uffff\1\1\1\5",
10112 "", 11638 "",
10113 "", 11639 "",
10114 "\1\14\11\uffff\1\14\44\uffff\1\13\4\uffff\1\13", 11640 "\1\20\70\uffff\1\17\4\uffff\1\16",
10115 "", 11641 "",
10116 "", 11642 "",
10117 "", 11643 "",
11644 "\1\21",
10118 "", 11645 "",
10119 "", 11646 "",
11647 "\1\25\5\uffff\1\22\15\uffff\1\24\4\uffff\1\23",
11648 "\1\25\23\uffff\1\24\4\uffff\1\23",
10120 "", 11649 "",
10121 "" 11650 "\2\1\1\uffff\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\4\1\1\13\7\1\1\uffff\2\1\3\uffff\1\14\1\uffff\3\1\1\14",
11651 "\1\26",
11652 "\1\30\5\uffff\1\27\11\uffff\1\31",
11653 "\1\30\17\uffff\1\31",
11654 "",
11655 "\1\25\5\uffff\1\22\15\uffff\1\24\4\uffff\1\23",
11656 "\1\32",
11657 "",
11658 "",
11659 "\1\30\5\uffff\1\27\11\uffff\1\31"
10122 }; 11660 };
10123 11661
10124 static final short[] dfa_1 = DFA.unpackEncodedString(dfa_1s); 11662 static final short[] dfa_1 = DFA.unpackEncodedString(dfa_1s);
@@ -10142,26 +11680,24 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
10142 this.transition = dfa_6; 11680 this.transition = dfa_6;
10143 } 11681 }
10144 public String getDescription() { 11682 public String getDescription() {
10145 return "109:3: (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_ExternPredicateDefinition_4= ruleExternPredicateDefinition | this_MetricDefinition_5= ruleMetricDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ClassDefinition_7= ruleClassDefinition | this_ScopeDefinition_8= ruleScopeDefinition | this_ObjectiveDefinition_9= ruleObjectiveDefinition )"; 11683 return "109:3: (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_MetricDefinition_4= ruleMetricDefinition | this_ExternPredicateDefinition_5= ruleExternPredicateDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ExternAggregatorDefinition_7= ruleExternAggregatorDefinition | this_ExternDatatypeDefinition_8= ruleExternDatatypeDefinition | this_ClassDefinition_9= ruleClassDefinition | this_ScopeDefinition_10= ruleScopeDefinition | this_ObjectiveDefinition_11= ruleObjectiveDefinition )";
10146 } 11684 }
10147 } 11685 }
10148 static final String dfa_7s = "\12\uffff"; 11686 static final String dfa_7s = "\10\uffff";
10149 static final String dfa_8s = "\1\uffff\2\10\6\uffff\1\10"; 11687 static final String dfa_8s = "\1\uffff\2\3\4\uffff\1\3";
10150 static final String dfa_9s = "\1\20\2\32\3\uffff\1\122\2\uffff\1\32"; 11688 static final String dfa_9s = "\1\16\2\30\2\uffff\1\105\1\uffff\1\30";
10151 static final String dfa_10s = "\1\123\2\121\3\uffff\1\122\2\uffff\1\121"; 11689 static final String dfa_10s = "\1\106\2\104\2\uffff\1\105\1\uffff\1\104";
10152 static final String dfa_11s = "\3\uffff\1\3\1\4\1\5\1\uffff\1\2\1\1\1\uffff"; 11690 static final String dfa_11s = "\3\uffff\1\1\1\2\1\uffff\1\3\1\uffff";
10153 static final String dfa_12s = "\12\uffff}>"; 11691 static final String dfa_12s = "\10\uffff}>";
10154 static final String[] dfa_13s = { 11692 static final String[] dfa_13s = {
10155 "\1\4\4\uffff\3\4\10\uffff\1\4\6\uffff\1\4\21\uffff\1\5\14\uffff\1\3\5\uffff\1\4\1\2\4\uffff\1\1\1\4", 11693 "\1\3\1\4\1\uffff\1\4\1\uffff\1\4\3\3\4\uffff\1\3\1\uffff\1\3\16\uffff\1\3\14\uffff\1\3\5\uffff\1\3\1\2\4\uffff\1\1\1\3",
10156 "\1\10\4\uffff\1\10\15\uffff\7\10\3\uffff\1\10\1\uffff\1\7\5\10\1\6\6\10\1\uffff\2\10\1\uffff\2\10\3\uffff\2\7\1\10", 11694 "\1\3\1\uffff\1\3\5\uffff\11\3\1\uffff\1\3\1\uffff\6\3\1\5\6\3\1\6\2\3\1\6\2\3\3\uffff\3\3",
10157 "\1\10\4\uffff\1\10\15\uffff\7\10\3\uffff\1\10\1\uffff\1\7\5\10\1\uffff\6\10\1\uffff\2\10\1\uffff\2\10\3\uffff\2\7\1\10", 11695 "\1\3\1\uffff\1\3\5\uffff\11\3\1\uffff\1\3\1\uffff\6\3\1\uffff\6\3\1\6\2\3\1\6\2\3\3\uffff\3\3",
10158 "", 11696 "",
10159 "", 11697 "",
11698 "\1\7",
10160 "", 11699 "",
10161 "\1\11", 11700 "\1\3\1\uffff\1\3\5\uffff\11\3\1\uffff\1\3\1\uffff\6\3\1\5\6\3\1\6\2\3\1\6\2\3\3\uffff\3\3"
10162 "",
10163 "",
10164 "\1\10\4\uffff\1\10\15\uffff\7\10\3\uffff\1\10\1\uffff\1\7\5\10\1\6\6\10\1\uffff\2\10\1\uffff\2\10\3\uffff\2\7\1\10"
10165 }; 11701 };
10166 11702
10167 static final short[] dfa_7 = DFA.unpackEncodedString(dfa_7s); 11703 static final short[] dfa_7 = DFA.unpackEncodedString(dfa_7s);
@@ -10172,11 +11708,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
10172 static final short[] dfa_12 = DFA.unpackEncodedString(dfa_12s); 11708 static final short[] dfa_12 = DFA.unpackEncodedString(dfa_12s);
10173 static final short[][] dfa_13 = unpackEncodedStringArray(dfa_13s); 11709 static final short[][] dfa_13 = unpackEncodedStringArray(dfa_13s);
10174 11710
10175 class DFA20 extends DFA { 11711 class DFA23 extends DFA {
10176 11712
10177 public DFA20(BaseRecognizer recognizer) { 11713 public DFA23(BaseRecognizer recognizer) {
10178 this.recognizer = recognizer; 11714 this.recognizer = recognizer;
10179 this.decisionNumber = 20; 11715 this.decisionNumber = 23;
10180 this.eot = dfa_7; 11716 this.eot = dfa_7;
10181 this.eof = dfa_8; 11717 this.eof = dfa_8;
10182 this.min = dfa_9; 11718 this.min = dfa_9;
@@ -10186,60 +11722,104 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
10186 this.transition = dfa_13; 11722 this.transition = dfa_13;
10187 } 11723 }
10188 public String getDescription() { 11724 public String getDescription() {
10189 return "1716:2: (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) )"; 11725 return "2100:2: (this_AtomicExpression_0= ruleAtomicExpression | this_QuantifiedExpression_1= ruleQuantifiedExpression | this_Aggregation_2= ruleAggregation )";
10190 } 11726 }
10191 } 11727 }
10192 static final String dfa_14s = "\1\uffff\2\3\3\uffff\1\11\1\uffff\1\3\1\uffff"; 11728 static final String dfa_14s = "\12\uffff";
10193 static final String dfa_15s = "\1\15\2\55\2\uffff\1\122\1\15\1\uffff\1\55\1\uffff"; 11729 static final String dfa_15s = "\1\uffff\2\10\6\uffff\1\10";
10194 static final String dfa_16s = "\1\123\2\122\2\uffff\1\122\1\123\1\uffff\1\122\1\uffff"; 11730 static final String dfa_16s = "\1\16\2\30\3\uffff\1\105\2\uffff\1\30";
10195 static final String dfa_17s = "\3\uffff\1\1\1\2\2\uffff\1\3\1\uffff\1\4"; 11731 static final String dfa_17s = "\1\106\2\104\3\uffff\1\105\2\uffff\1\104";
10196 static final String[] dfa_18s = { 11732 static final String dfa_18s = "\3\uffff\1\3\1\4\1\5\1\uffff\1\2\1\1\1\uffff";
10197 "\1\3\2\uffff\1\3\3\uffff\4\3\3\uffff\3\3\2\uffff\1\3\5\uffff\2\3\1\uffff\4\3\13\uffff\2\3\1\uffff\1\4\1\3\1\uffff\1\3\7\uffff\1\3\5\uffff\1\3\1\2\4\uffff\1\1\1\3", 11733 static final String dfa_19s = "\12\uffff}>";
10198 "\1\3\3\uffff\3\3\3\uffff\1\3\1\uffff\2\3\1\6\3\3\1\5\1\3\2\uffff\1\3\1\uffff\1\3\2\uffff\1\3\4\uffff\1\7\1\uffff\2\3\1\uffff\1\7", 11734 static final String[] dfa_20s = {
10199 "\1\3\3\uffff\3\3\3\uffff\1\3\1\uffff\2\3\1\6\3\3\1\uffff\1\3\2\uffff\1\3\1\uffff\1\3\2\uffff\1\3\4\uffff\1\7\1\uffff\2\3\1\uffff\1\7", 11735 "\1\4\5\uffff\3\4\4\uffff\1\4\1\uffff\1\4\16\uffff\1\5\14\uffff\1\3\5\uffff\1\4\1\2\4\uffff\1\1\1\4",
11736 "\1\10\1\uffff\1\10\5\uffff\11\10\1\uffff\1\10\1\uffff\1\7\5\10\1\6\6\10\1\uffff\2\10\1\uffff\2\10\3\uffff\2\7\1\10",
11737 "\1\10\1\uffff\1\10\5\uffff\11\10\1\uffff\1\10\1\uffff\1\7\5\10\1\uffff\6\10\1\uffff\2\10\1\uffff\2\10\3\uffff\2\7\1\10",
10200 "", 11738 "",
10201 "", 11739 "",
10202 "\1\10",
10203 "\1\3\2\uffff\1\3\3\uffff\4\3\3\uffff\3\3\2\uffff\1\3\5\uffff\2\3\1\uffff\4\3\13\uffff\2\3\1\11\1\uffff\1\3\1\11\1\3\7\uffff\1\3\5\uffff\2\3\4\uffff\2\3",
10204 "", 11740 "",
10205 "\1\3\3\uffff\3\3\3\uffff\1\3\1\uffff\2\3\1\6\3\3\1\5\1\3\2\uffff\1\3\1\uffff\1\3\2\uffff\1\3\4\uffff\1\7\1\uffff\2\3\1\uffff\1\7", 11741 "\1\11",
10206 "" 11742 "",
11743 "",
11744 "\1\10\1\uffff\1\10\5\uffff\11\10\1\uffff\1\10\1\uffff\1\7\5\10\1\6\6\10\1\uffff\2\10\1\uffff\2\10\3\uffff\2\7\1\10"
10207 }; 11745 };
11746
10208 static final short[] dfa_14 = DFA.unpackEncodedString(dfa_14s); 11747 static final short[] dfa_14 = DFA.unpackEncodedString(dfa_14s);
10209 static final char[] dfa_15 = DFA.unpackEncodedStringToUnsignedChars(dfa_15s); 11748 static final short[] dfa_15 = DFA.unpackEncodedString(dfa_15s);
10210 static final char[] dfa_16 = DFA.unpackEncodedStringToUnsignedChars(dfa_16s); 11749 static final char[] dfa_16 = DFA.unpackEncodedStringToUnsignedChars(dfa_16s);
10211 static final short[] dfa_17 = DFA.unpackEncodedString(dfa_17s); 11750 static final char[] dfa_17 = DFA.unpackEncodedStringToUnsignedChars(dfa_17s);
10212 static final short[][] dfa_18 = unpackEncodedStringArray(dfa_18s); 11751 static final short[] dfa_18 = DFA.unpackEncodedString(dfa_18s);
11752 static final short[] dfa_19 = DFA.unpackEncodedString(dfa_19s);
11753 static final short[][] dfa_20 = unpackEncodedStringArray(dfa_20s);
10213 11754
10214 class DFA24 extends DFA { 11755 class DFA29 extends DFA {
10215 11756
10216 public DFA24(BaseRecognizer recognizer) { 11757 public DFA29(BaseRecognizer recognizer) {
10217 this.recognizer = recognizer; 11758 this.recognizer = recognizer;
10218 this.decisionNumber = 24; 11759 this.decisionNumber = 29;
10219 this.eot = dfa_7; 11760 this.eot = dfa_14;
10220 this.eof = dfa_14; 11761 this.eof = dfa_15;
10221 this.min = dfa_15; 11762 this.min = dfa_16;
10222 this.max = dfa_16; 11763 this.max = dfa_17;
10223 this.accept = dfa_17; 11764 this.accept = dfa_18;
10224 this.special = dfa_12; 11765 this.special = dfa_19;
10225 this.transition = dfa_18; 11766 this.transition = dfa_20;
10226 } 11767 }
10227 public String getDescription() { 11768 public String getDescription() {
10228 return "1965:2: (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedArgument_2= ruleTypedArgument | this_TypedStarArgument_3= ruleTypedStarArgument )"; 11769 return "2415:2: (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) )";
10229 } 11770 }
10230 } 11771 }
10231 static final String dfa_19s = "\17\uffff"; 11772 static final String dfa_21s = "\1\uffff\2\3\3\uffff\1\11\1\uffff\1\3\1\uffff";
10232 static final String dfa_20s = "\12\uffff\2\10\2\uffff\1\10"; 11773 static final String dfa_22s = "\1\13\2\40\2\uffff\1\105\1\13\1\uffff\1\40\1\uffff";
10233 static final String dfa_21s = "\1\30\1\115\3\61\1\115\1\uffff\1\122\2\uffff\3\61\1\122\1\61"; 11774 static final String dfa_23s = "\1\106\2\105\2\uffff\1\105\1\106\1\uffff\1\105\1\uffff";
10234 static final String dfa_22s = "\1\30\1\123\1\63\1\77\1\63\1\122\1\uffff\1\122\2\uffff\2\121\1\77\1\122\1\121"; 11775 static final String dfa_24s = "\3\uffff\1\1\1\2\2\uffff\1\3\1\uffff\1\4";
10235 static final String dfa_23s = "\6\uffff\1\2\1\uffff\1\3\1\1\5\uffff";
10236 static final String dfa_24s = "\17\uffff}>";
10237 static final String[] dfa_25s = { 11776 static final String[] dfa_25s = {
11777 "\1\3\2\uffff\2\3\1\uffff\1\3\1\uffff\4\3\2\uffff\1\3\1\uffff\1\3\1\uffff\1\3\1\uffff\1\3\13\uffff\2\3\1\uffff\1\4\1\3\1\uffff\1\3\7\uffff\1\3\5\uffff\1\3\1\2\4\uffff\1\1\1\3",
11778 "\1\3\3\uffff\2\3\1\uffff\2\3\1\uffff\1\3\1\uffff\2\3\1\6\3\3\1\5\1\3\2\uffff\1\3\1\uffff\2\3\1\uffff\2\3\3\uffff\1\7\1\uffff\2\3\1\uffff\1\7",
11779 "\1\3\3\uffff\2\3\1\uffff\2\3\1\uffff\1\3\1\uffff\2\3\1\6\3\3\1\uffff\1\3\2\uffff\1\3\1\uffff\2\3\1\uffff\2\3\3\uffff\1\7\1\uffff\2\3\1\uffff\1\7",
11780 "",
11781 "",
11782 "\1\10",
11783 "\1\3\2\uffff\2\3\1\uffff\1\3\1\uffff\4\3\2\uffff\1\3\1\uffff\1\3\1\uffff\1\3\1\uffff\1\3\13\uffff\2\3\1\11\1\uffff\1\3\1\11\1\3\7\uffff\1\3\5\uffff\2\3\4\uffff\2\3",
11784 "",
11785 "\1\3\3\uffff\2\3\1\uffff\2\3\1\uffff\1\3\1\uffff\2\3\1\6\3\3\1\5\1\3\2\uffff\1\3\1\uffff\2\3\1\uffff\2\3\3\uffff\1\7\1\uffff\2\3\1\uffff\1\7",
11786 ""
11787 };
11788 static final short[] dfa_21 = DFA.unpackEncodedString(dfa_21s);
11789 static final char[] dfa_22 = DFA.unpackEncodedStringToUnsignedChars(dfa_22s);
11790 static final char[] dfa_23 = DFA.unpackEncodedStringToUnsignedChars(dfa_23s);
11791 static final short[] dfa_24 = DFA.unpackEncodedString(dfa_24s);
11792 static final short[][] dfa_25 = unpackEncodedStringArray(dfa_25s);
11793
11794 class DFA33 extends DFA {
11795
11796 public DFA33(BaseRecognizer recognizer) {
11797 this.recognizer = recognizer;
11798 this.decisionNumber = 33;
11799 this.eot = dfa_14;
11800 this.eof = dfa_21;
11801 this.min = dfa_22;
11802 this.max = dfa_23;
11803 this.accept = dfa_24;
11804 this.special = dfa_19;
11805 this.transition = dfa_25;
11806 }
11807 public String getDescription() {
11808 return "2664:2: (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedArgument_2= ruleTypedArgument | this_TypedStarArgument_3= ruleTypedStarArgument )";
11809 }
11810 }
11811 static final String dfa_26s = "\17\uffff";
11812 static final String dfa_27s = "\12\uffff\2\10\2\uffff\1\10";
11813 static final String dfa_28s = "\1\27\1\100\3\44\1\100\1\uffff\1\105\2\uffff\3\44\1\105\1\44";
11814 static final String dfa_29s = "\1\27\1\106\1\47\1\62\1\47\1\105\1\uffff\1\105\2\uffff\2\104\1\62\1\105\1\104";
11815 static final String dfa_30s = "\6\uffff\1\2\1\uffff\1\3\1\1\5\uffff";
11816 static final String dfa_31s = "\17\uffff}>";
11817 static final String[] dfa_32s = {
10238 "\1\1", 11818 "\1\1",
10239 "\1\4\4\uffff\1\3\1\2", 11819 "\1\4\4\uffff\1\3\1\2",
10240 "\1\5\1\uffff\1\6", 11820 "\1\5\2\uffff\1\6",
10241 "\1\6\1\11\1\10\13\uffff\1\7", 11821 "\1\6\1\11\1\uffff\1\10\12\uffff\1\7",
10242 "\1\6\1\11\1\10", 11822 "\1\6\1\11\1\uffff\1\10",
10243 "\1\13\4\uffff\1\12", 11823 "\1\13\4\uffff\1\12",
10244 "", 11824 "",
10245 "\1\14", 11825 "\1\14",
@@ -10247,88 +11827,96 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser {
10247 "", 11827 "",
10248 "\1\6\15\uffff\1\15\21\uffff\1\10", 11828 "\1\6\15\uffff\1\15\21\uffff\1\10",
10249 "\1\6\37\uffff\1\10", 11829 "\1\6\37\uffff\1\10",
10250 "\1\6\1\11\1\10\13\uffff\1\7", 11830 "\1\6\1\11\1\uffff\1\10\12\uffff\1\7",
10251 "\1\16", 11831 "\1\16",
10252 "\1\6\15\uffff\1\15\21\uffff\1\10" 11832 "\1\6\15\uffff\1\15\21\uffff\1\10"
10253 }; 11833 };
10254 11834
10255 static final short[] dfa_19 = DFA.unpackEncodedString(dfa_19s); 11835 static final short[] dfa_26 = DFA.unpackEncodedString(dfa_26s);
10256 static final short[] dfa_20 = DFA.unpackEncodedString(dfa_20s); 11836 static final short[] dfa_27 = DFA.unpackEncodedString(dfa_27s);
10257 static final char[] dfa_21 = DFA.unpackEncodedStringToUnsignedChars(dfa_21s); 11837 static final char[] dfa_28 = DFA.unpackEncodedStringToUnsignedChars(dfa_28s);
10258 static final char[] dfa_22 = DFA.unpackEncodedStringToUnsignedChars(dfa_22s); 11838 static final char[] dfa_29 = DFA.unpackEncodedStringToUnsignedChars(dfa_29s);
10259 static final short[] dfa_23 = DFA.unpackEncodedString(dfa_23s); 11839 static final short[] dfa_30 = DFA.unpackEncodedString(dfa_30s);
10260 static final short[] dfa_24 = DFA.unpackEncodedString(dfa_24s); 11840 static final short[] dfa_31 = DFA.unpackEncodedString(dfa_31s);
10261 static final short[][] dfa_25 = unpackEncodedStringArray(dfa_25s); 11841 static final short[][] dfa_32 = unpackEncodedStringArray(dfa_32s);
10262 11842
10263 class DFA35 extends DFA { 11843 class DFA44 extends DFA {
10264 11844
10265 public DFA35(BaseRecognizer recognizer) { 11845 public DFA44(BaseRecognizer recognizer) {
10266 this.recognizer = recognizer; 11846 this.recognizer = recognizer;
10267 this.decisionNumber = 35; 11847 this.decisionNumber = 44;
10268 this.eot = dfa_19; 11848 this.eot = dfa_26;
10269 this.eof = dfa_20; 11849 this.eof = dfa_27;
10270 this.min = dfa_21; 11850 this.min = dfa_28;
10271 this.max = dfa_22; 11851 this.max = dfa_29;
10272 this.accept = dfa_23; 11852 this.accept = dfa_30;
10273 this.special = dfa_24; 11853 this.special = dfa_31;
10274 this.transition = dfa_25; 11854 this.transition = dfa_32;
10275 } 11855 }
10276 public String getDescription() { 11856 public String getDescription() {
10277 return "2940:2: (this_ExactScopeDefinition_0= ruleExactScopeDefinition | this_BoundedScopeDefinition_1= ruleBoundedScopeDefinition | this_LowerBoundedScopeDefinition_2= ruleLowerBoundedScopeDefinition )"; 11857 return "3639:2: (this_ExactScopeDefinition_0= ruleExactScopeDefinition | this_BoundedScopeDefinition_1= ruleBoundedScopeDefinition | this_LowerBoundedScopeDefinition_2= ruleLowerBoundedScopeDefinition )";
10278 } 11858 }
10279 } 11859 }
10280 11860
10281 11861
10282 public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L}); 11862 public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
10283 public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L}); 11863 public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
10284 public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x53401FC179FD6362L,0x00000000000C3040L}); 11864 public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x82029A00EAFFDB32L,0x0000000000000061L});
10285 public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000000000L,0x0000000000020000L}); 11865 public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
10286 public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0001000000000002L,0x0000000000000012L}); 11866 public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0090000800000002L});
10287 public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x53401EC138F12000L,0x00000000000C3040L}); 11867 public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x82029A00EA7AC800L,0x0000000000000061L});
10288 public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000000000400000L,0x0000000000042000L}); 11868 public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000000000200000L,0x0000000000000021L});
10289 public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000000000000L,0x0000000000042000L}); 11869 public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000021L});
10290 public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000000020L,0x0000000000042000L}); 11870 public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000000010L,0x0000000000000021L});
10291 public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0001000000000000L}); 11871 public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0000000800000000L});
10292 public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0200000000000000L}); 11872 public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000100000000000L});
10293 public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L}); 11873 public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0010000000000000L});
10294 public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L}); 11874 public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0080000000000000L});
10295 public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000010040000000L}); 11875 public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x1000000000000000L});
10296 public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000080000000L}); 11876 public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000010000000L});
10297 public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0000000004000000L}); 11877 public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x4000000000000000L});
10298 public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000400000000002L,0x0000000000000004L}); 11878 public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000000000080L});
10299 public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000004L}); 11879 public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000000002000L});
10300 public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000400000000000L}); 11880 public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0001000000000002L});
10301 public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x2000000000000002L}); 11881 public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000020L});
10302 public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x008E200000000002L,0x0000000000000028L}); 11882 public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000004000000L});
10303 public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x5000000000000002L}); 11883 public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x0000000001000000L});
10304 public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0800000000000002L,0x0000000000000001L}); 11884 public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0001040000000000L});
10305 public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000100L}); 11885 public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x0000004000000002L});
10306 public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x02001AC130F10000L,0x00000000000C3040L}); 11886 public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x0020000200000002L});
10307 public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000200L}); 11887 public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0020000000000002L});
10308 public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000800L}); 11888 public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000000200000000L});
10309 public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000400L}); 11889 public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x014004B100000002L});
10310 public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0400000000000000L}); 11890 public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0002800000000002L});
10311 public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x0200000000000000L,0x0000000000018000L}); 11891 public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x0008400000000002L});
10312 public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x5F401EC138F12000L,0x00000000000C3040L}); 11892 public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0800000000000002L});
10313 public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x2400000000000000L}); 11893 public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0000010000000002L});
10314 public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x5B401EC138F12000L,0x00000000000C3040L}); 11894 public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x82001000287AC000L,0x0000000000000061L});
10315 public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x0800000000000000L}); 11895 public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x0400000000000000L,0x0000000000000021L});
10316 public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x0000800000000000L}); 11896 public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x0401000000000000L});
10317 public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L}); 11897 public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x1200000000000000L});
10318 public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x0000000000080000L}); 11898 public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x6000000000000000L});
10319 public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x0000000000000000L,0x0000000000040000L}); 11899 public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x0000200000000000L});
10320 public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x0000000000008000L,0x0000000000000200L}); 11900 public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x0000100000000000L,0x000000000000000CL});
10321 public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x2000000000000000L,0x0000000000000200L}); 11901 public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x8202FA00EA7AC800L,0x0000000000000061L});
10322 public static final BitSet FOLLOW_41 = new BitSet(new long[]{0x0000000000000080L,0x0000000000042800L}); 11902 public static final BitSet FOLLOW_41 = new BitSet(new long[]{0x0001200000000000L});
10323 public static final BitSet FOLLOW_42 = new BitSet(new long[]{0x0000000000000000L,0x0000000000040040L}); 11903 public static final BitSet FOLLOW_42 = new BitSet(new long[]{0x8202DA00EA7AC800L,0x0000000000000061L});
10324 public static final BitSet FOLLOW_43 = new BitSet(new long[]{0x0000000000000402L,0x0000000000000004L}); 11904 public static final BitSet FOLLOW_43 = new BitSet(new long[]{0x0000400000000000L});
10325 public static final BitSet FOLLOW_44 = new BitSet(new long[]{0x0800000000000000L,0x0000000000080000L}); 11905 public static final BitSet FOLLOW_44 = new BitSet(new long[]{0x0000000400000000L});
10326 public static final BitSet FOLLOW_45 = new BitSet(new long[]{0x0000000000000000L,0x0000000000080000L}); 11906 public static final BitSet FOLLOW_45 = new BitSet(new long[]{0x0400000000000000L});
10327 public static final BitSet FOLLOW_46 = new BitSet(new long[]{0x0004000000000000L}); 11907 public static final BitSet FOLLOW_46 = new BitSet(new long[]{0x0000000000040000L});
10328 public static final BitSet FOLLOW_47 = new BitSet(new long[]{0x0000000000000000L,0x00000000000C2000L}); 11908 public static final BitSet FOLLOW_47 = new BitSet(new long[]{0x1000000000002000L});
10329 public static final BitSet FOLLOW_48 = new BitSet(new long[]{0x0002000000000000L}); 11909 public static final BitSet FOLLOW_48 = new BitSet(new long[]{0x1001000000000000L});
10330 public static final BitSet FOLLOW_49 = new BitSet(new long[]{0x0008000000000000L}); 11910 public static final BitSet FOLLOW_49 = new BitSet(new long[]{0x4000000000000040L,0x0000000000000021L});
10331 public static final BitSet FOLLOW_50 = new BitSet(new long[]{0x0008000000000002L}); 11911 public static final BitSet FOLLOW_50 = new BitSet(new long[]{0x0200000000000000L,0x0000000000000020L});
10332 public static final BitSet FOLLOW_51 = new BitSet(new long[]{0x8000000000000002L}); 11912 public static final BitSet FOLLOW_51 = new BitSet(new long[]{0x0020000000000402L});
11913 public static final BitSet FOLLOW_52 = new BitSet(new long[]{0x0000400000000000L,0x0000000000000040L});
11914 public static final BitSet FOLLOW_53 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L});
11915 public static final BitSet FOLLOW_54 = new BitSet(new long[]{0x0000002000000000L});
11916 public static final BitSet FOLLOW_55 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000061L});
11917 public static final BitSet FOLLOW_56 = new BitSet(new long[]{0x0000001000000000L});
11918 public static final BitSet FOLLOW_57 = new BitSet(new long[]{0x0000008000000000L});
11919 public static final BitSet FOLLOW_58 = new BitSet(new long[]{0x0000008000000002L});
11920 public static final BitSet FOLLOW_59 = new BitSet(new long[]{0x0004000000000002L});
10333 11921
10334} \ No newline at end of file 11922} \ No newline at end of file