diff options
author | Kristóf Marussy <marussy@mit.bme.hu> | 2021-06-28 17:16:56 +0200 |
---|---|---|
committer | Kristóf Marussy <marussy@mit.bme.hu> | 2021-06-28 17:16:56 +0200 |
commit | 82a2ca3c963e47611d1ba55f6938e7665488fc5a (patch) | |
tree | 6913165e6941526730c60f2cd3ed6678c387df44 /language | |
parent | Add scoping tests and simplify implicit nodes (diff) | |
download | refinery-82a2ca3c963e47611d1ba55f6938e7665488fc5a.tar.gz refinery-82a2ca3c963e47611d1ba55f6938e7665488fc5a.tar.zst refinery-82a2ca3c963e47611d1ba55f6938e7665488fc5a.zip |
Fix real literals
Diffstat (limited to 'language')
11 files changed, 1077 insertions, 1316 deletions
diff --git a/language/src/main/java/org/eclipse/viatra/solver/language/Problem.xtext b/language/src/main/java/org/eclipse/viatra/solver/language/Problem.xtext index 495f50e4..4aeb0acd 100644 --- a/language/src/main/java/org/eclipse/viatra/solver/language/Problem.xtext +++ b/language/src/main/java/org/eclipse/viatra/solver/language/Problem.xtext | |||
@@ -92,7 +92,7 @@ NodeValueAssertion: | |||
92 | node=[Node|QualifiedName] ":" value=Constant "."; | 92 | node=[Node|QualifiedName] ":" value=Constant "."; |
93 | 93 | ||
94 | Constant: | 94 | Constant: |
95 | IntConstant | RealConstant | StringConstant; | 95 | RealConstant | IntConstant | StringConstant; |
96 | 96 | ||
97 | IntConstant: | 97 | IntConstant: |
98 | intValue=Integer; | 98 | intValue=Integer; |
@@ -133,18 +133,21 @@ QualifiedName hidden(): | |||
133 | QUOTED_ID | Identifier ("::" Identifier)*; | 133 | QUOTED_ID | Identifier ("::" Identifier)*; |
134 | 134 | ||
135 | Identifier: | 135 | Identifier: |
136 | ID | "true" | "false" | "e" | "E"; | 136 | ID | "true" | "false"; |
137 | 137 | ||
138 | Integer returns ecore::EInt hidden(): | 138 | Integer returns ecore::EInt hidden(): |
139 | "-"? INT; | 139 | "-"? INT; |
140 | 140 | ||
141 | Real returns ecore::EDouble hidden(): | 141 | Real returns ecore::EDouble: |
142 | "-"? INT ("." INT | ("." INT)? ("e" | "E") ("-" | "+")? INT); | 142 | "-"? (EXPONENTIAL | INT "." (INT | EXPONENTIAL)); |
143 | 143 | ||
144 | @Override | 144 | @Override |
145 | terminal ID: | 145 | terminal ID: |
146 | ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; | 146 | ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; |
147 | 147 | ||
148 | terminal EXPONENTIAL: | ||
149 | INT ("e" | "E") ("+" | "-")? INT; | ||
150 | |||
148 | @Override | 151 | @Override |
149 | terminal STRING: | 152 | terminal STRING: |
150 | '"' ('\\' . /* 'b'|'t'|'n'|'f'|'r'|'u'|'"'|"'"|'\\' */ | !('\\' | '"'))* '"'; | 153 | '"' ('\\' . /* 'b'|'t'|'n'|'f'|'r'|'u'|'"'|"'"|'\\' */ | !('\\' | '"'))* '"'; |
diff --git a/language/src/main/resources/org/eclipse/viatra/solver/language/builtin.problem b/language/src/main/resources/org/eclipse/viatra/solver/language/builtin.problem index 7ece2db0..7c4f6685 100644 --- a/language/src/main/resources/org/eclipse/viatra/solver/language/builtin.problem +++ b/language/src/main/resources/org/eclipse/viatra/solver/language/builtin.problem | |||
@@ -16,6 +16,6 @@ enum bool { | |||
16 | 16 | ||
17 | class real extends data. | 17 | class real extends data. |
18 | 18 | ||
19 | class int extends real. | 19 | class int extends data. |
20 | 20 | ||
21 | class string extends data. | 21 | class string extends data. |
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/Problem.xtextbin b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/Problem.xtextbin index 9528b778..0b613873 100644 --- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/Problem.xtextbin +++ b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/Problem.xtextbin | |||
Binary files differ | |||
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblem.g b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblem.g index f9372e7b..583f8c1c 100644 --- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblem.g +++ b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblem.g | |||
@@ -1596,20 +1596,20 @@ ruleConstant returns [EObject current=null] | |||
1596 | }: | 1596 | }: |
1597 | ( | 1597 | ( |
1598 | { | 1598 | { |
1599 | newCompositeNode(grammarAccess.getConstantAccess().getIntConstantParserRuleCall_0()); | 1599 | newCompositeNode(grammarAccess.getConstantAccess().getRealConstantParserRuleCall_0()); |
1600 | } | 1600 | } |
1601 | this_IntConstant_0=ruleIntConstant | 1601 | this_RealConstant_0=ruleRealConstant |
1602 | { | 1602 | { |
1603 | $current = $this_IntConstant_0.current; | 1603 | $current = $this_RealConstant_0.current; |
1604 | afterParserOrEnumRuleCall(); | 1604 | afterParserOrEnumRuleCall(); |
1605 | } | 1605 | } |
1606 | | | 1606 | | |
1607 | { | 1607 | { |
1608 | newCompositeNode(grammarAccess.getConstantAccess().getRealConstantParserRuleCall_1()); | 1608 | newCompositeNode(grammarAccess.getConstantAccess().getIntConstantParserRuleCall_1()); |
1609 | } | 1609 | } |
1610 | this_RealConstant_1=ruleRealConstant | 1610 | this_IntConstant_1=ruleIntConstant |
1611 | { | 1611 | { |
1612 | $current = $this_RealConstant_1.current; | 1612 | $current = $this_IntConstant_1.current; |
1613 | afterParserOrEnumRuleCall(); | 1613 | afterParserOrEnumRuleCall(); |
1614 | } | 1614 | } |
1615 | | | 1615 | | |
@@ -2197,18 +2197,6 @@ ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToke | |||
2197 | $current.merge(kw); | 2197 | $current.merge(kw); |
2198 | newLeafNode(kw, grammarAccess.getIdentifierAccess().getFalseKeyword_2()); | 2198 | newLeafNode(kw, grammarAccess.getIdentifierAccess().getFalseKeyword_2()); |
2199 | } | 2199 | } |
2200 | | | ||
2201 | kw='e' | ||
2202 | { | ||
2203 | $current.merge(kw); | ||
2204 | newLeafNode(kw, grammarAccess.getIdentifierAccess().getEKeyword_3()); | ||
2205 | } | ||
2206 | | | ||
2207 | kw='E' | ||
2208 | { | ||
2209 | $current.merge(kw); | ||
2210 | newLeafNode(kw, grammarAccess.getIdentifierAccess().getEKeyword_4()); | ||
2211 | } | ||
2212 | ) | 2200 | ) |
2213 | ; | 2201 | ; |
2214 | 2202 | ||
@@ -2255,22 +2243,16 @@ finally { | |||
2255 | } | 2243 | } |
2256 | 2244 | ||
2257 | // Entry rule entryRuleReal | 2245 | // Entry rule entryRuleReal |
2258 | entryRuleReal returns [String current=null]@init { | 2246 | entryRuleReal returns [String current=null]: |
2259 | HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); | ||
2260 | }: | ||
2261 | { newCompositeNode(grammarAccess.getRealRule()); } | 2247 | { newCompositeNode(grammarAccess.getRealRule()); } |
2262 | iv_ruleReal=ruleReal | 2248 | iv_ruleReal=ruleReal |
2263 | { $current=$iv_ruleReal.current.getText(); } | 2249 | { $current=$iv_ruleReal.current.getText(); } |
2264 | EOF; | 2250 | EOF; |
2265 | finally { | ||
2266 | myHiddenTokenState.restore(); | ||
2267 | } | ||
2268 | 2251 | ||
2269 | // Rule Real | 2252 | // Rule Real |
2270 | ruleReal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] | 2253 | ruleReal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] |
2271 | @init { | 2254 | @init { |
2272 | enterRule(); | 2255 | enterRule(); |
2273 | HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); | ||
2274 | } | 2256 | } |
2275 | @after { | 2257 | @after { |
2276 | leaveRule(); | 2258 | leaveRule(); |
@@ -2283,84 +2265,49 @@ ruleReal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] | |||
2283 | newLeafNode(kw, grammarAccess.getRealAccess().getHyphenMinusKeyword_0()); | 2265 | newLeafNode(kw, grammarAccess.getRealAccess().getHyphenMinusKeyword_0()); |
2284 | } | 2266 | } |
2285 | )? | 2267 | )? |
2286 | this_INT_1=RULE_INT | ||
2287 | { | ||
2288 | $current.merge(this_INT_1); | ||
2289 | } | ||
2290 | { | ||
2291 | newLeafNode(this_INT_1, grammarAccess.getRealAccess().getINTTerminalRuleCall_1()); | ||
2292 | } | ||
2293 | ( | 2268 | ( |
2269 | this_EXPONENTIAL_1=RULE_EXPONENTIAL | ||
2270 | { | ||
2271 | $current.merge(this_EXPONENTIAL_1); | ||
2272 | } | ||
2273 | { | ||
2274 | newLeafNode(this_EXPONENTIAL_1, grammarAccess.getRealAccess().getEXPONENTIALTerminalRuleCall_1_0()); | ||
2275 | } | ||
2276 | | | ||
2294 | ( | 2277 | ( |
2295 | kw='.' | 2278 | this_INT_2=RULE_INT |
2296 | { | 2279 | { |
2297 | $current.merge(kw); | 2280 | $current.merge(this_INT_2); |
2298 | newLeafNode(kw, grammarAccess.getRealAccess().getFullStopKeyword_2_0_0()); | ||
2299 | } | 2281 | } |
2300 | this_INT_3=RULE_INT | ||
2301 | { | 2282 | { |
2302 | $current.merge(this_INT_3); | 2283 | newLeafNode(this_INT_2, grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1_0()); |
2303 | } | 2284 | } |
2285 | kw='.' | ||
2304 | { | 2286 | { |
2305 | newLeafNode(this_INT_3, grammarAccess.getRealAccess().getINTTerminalRuleCall_2_0_1()); | 2287 | $current.merge(kw); |
2288 | newLeafNode(kw, grammarAccess.getRealAccess().getFullStopKeyword_1_1_1()); | ||
2306 | } | 2289 | } |
2307 | ) | ||
2308 | | | ||
2309 | ( | ||
2310 | ( | 2290 | ( |
2311 | kw='.' | 2291 | this_INT_4=RULE_INT |
2312 | { | ||
2313 | $current.merge(kw); | ||
2314 | newLeafNode(kw, grammarAccess.getRealAccess().getFullStopKeyword_2_1_0_0()); | ||
2315 | } | ||
2316 | this_INT_5=RULE_INT | ||
2317 | { | 2292 | { |
2318 | $current.merge(this_INT_5); | 2293 | $current.merge(this_INT_4); |
2319 | } | 2294 | } |
2320 | { | 2295 | { |
2321 | newLeafNode(this_INT_5, grammarAccess.getRealAccess().getINTTerminalRuleCall_2_1_0_1()); | 2296 | newLeafNode(this_INT_4, grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1_2_0()); |
2322 | } | ||
2323 | )? | ||
2324 | ( | ||
2325 | kw='e' | ||
2326 | { | ||
2327 | $current.merge(kw); | ||
2328 | newLeafNode(kw, grammarAccess.getRealAccess().getEKeyword_2_1_1_0()); | ||
2329 | } | 2297 | } |
2330 | | | 2298 | | |
2331 | kw='E' | 2299 | this_EXPONENTIAL_5=RULE_EXPONENTIAL |
2332 | { | ||
2333 | $current.merge(kw); | ||
2334 | newLeafNode(kw, grammarAccess.getRealAccess().getEKeyword_2_1_1_1()); | ||
2335 | } | ||
2336 | ) | ||
2337 | ( | ||
2338 | kw='-' | ||
2339 | { | 2300 | { |
2340 | $current.merge(kw); | 2301 | $current.merge(this_EXPONENTIAL_5); |
2341 | newLeafNode(kw, grammarAccess.getRealAccess().getHyphenMinusKeyword_2_1_2_0()); | ||
2342 | } | 2302 | } |
2343 | | | ||
2344 | kw='+' | ||
2345 | { | 2303 | { |
2346 | $current.merge(kw); | 2304 | newLeafNode(this_EXPONENTIAL_5, grammarAccess.getRealAccess().getEXPONENTIALTerminalRuleCall_1_1_2_1()); |
2347 | newLeafNode(kw, grammarAccess.getRealAccess().getPlusSignKeyword_2_1_2_1()); | ||
2348 | } | 2305 | } |
2349 | )? | 2306 | ) |
2350 | this_INT_10=RULE_INT | ||
2351 | { | ||
2352 | $current.merge(this_INT_10); | ||
2353 | } | ||
2354 | { | ||
2355 | newLeafNode(this_INT_10, grammarAccess.getRealAccess().getINTTerminalRuleCall_2_1_3()); | ||
2356 | } | ||
2357 | ) | 2307 | ) |
2358 | ) | 2308 | ) |
2359 | ) | 2309 | ) |
2360 | ; | 2310 | ; |
2361 | finally { | ||
2362 | myHiddenTokenState.restore(); | ||
2363 | } | ||
2364 | 2311 | ||
2365 | // Rule LogicValue | 2312 | // Rule LogicValue |
2366 | ruleLogicValue returns [Enumerator current=null] | 2313 | ruleLogicValue returns [Enumerator current=null] |
@@ -2426,6 +2373,8 @@ ruleShortLogicValue returns [Enumerator current=null] | |||
2426 | 2373 | ||
2427 | RULE_ID : ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; | 2374 | RULE_ID : ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; |
2428 | 2375 | ||
2376 | RULE_EXPONENTIAL : RULE_INT ('e'|'E') ('+'|'-')? RULE_INT; | ||
2377 | |||
2429 | RULE_STRING : '"' ('\\' .|~(('\\'|'"')))* '"'; | 2378 | RULE_STRING : '"' ('\\' .|~(('\\'|'"')))* '"'; |
2430 | 2379 | ||
2431 | RULE_QUOTED_ID : '\'' ('\\' .|~(('\\'|'\'')))* '\''; | 2380 | RULE_QUOTED_ID : '\'' ('\\' .|~(('\\'|'\'')))* '\''; |
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblem.tokens b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblem.tokens index 763a9cc8..7ceb60d6 100644 --- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblem.tokens +++ b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblem.tokens | |||
@@ -1,48 +1,46 @@ | |||
1 | '!'=32 | 1 | '!'=33 |
2 | '('=29 | 2 | '('=30 |
3 | ')'=30 | 3 | ')'=31 |
4 | '*'=39 | 4 | '*'=40 |
5 | '+'=33 | 5 | '+'=34 |
6 | '+='=36 | 6 | '+='=37 |
7 | ','=17 | 7 | ','=18 |
8 | '-'=45 | 8 | '-'=44 |
9 | '.'=13 | 9 | '.'=14 |
10 | '..'=38 | 10 | '..'=39 |
11 | ':'=34 | 11 | ':'=35 |
12 | ':-'=31 | 12 | ':-'=32 |
13 | '::'=40 | 13 | '::'=41 |
14 | ';'=19 | 14 | ';'=20 |
15 | '='=37 | 15 | '='=38 |
16 | '?'=47 | 16 | '?'=46 |
17 | 'E'=44 | 17 | '['=25 |
18 | '['=24 | 18 | ']'=26 |
19 | ']'=25 | 19 | 'abstract'=15 |
20 | 'abstract'=14 | 20 | 'class'=16 |
21 | 'class'=15 | 21 | 'contains'=23 |
22 | 'contains'=22 | 22 | 'enum'=22 |
23 | 'e'=43 | 23 | 'error'=28 |
24 | 'enum'=21 | 24 | 'extends'=17 |
25 | 'error'=27 | 25 | 'false'=43 |
26 | 'extends'=16 | 26 | 'opposite'=27 |
27 | 'false'=42 | 27 | 'pred'=29 |
28 | 'opposite'=26 | 28 | 'problem'=13 |
29 | 'pred'=28 | 29 | 'refers'=24 |
30 | 'problem'=12 | 30 | 'scope'=36 |
31 | 'refers'=23 | 31 | 'true'=42 |
32 | 'scope'=35 | 32 | 'unknown'=45 |
33 | 'true'=41 | 33 | '{'=19 |
34 | 'unknown'=46 | 34 | '}'=21 |
35 | '{'=18 | 35 | RULE_ANY_OTHER=12 |
36 | '}'=20 | 36 | RULE_EXPONENTIAL=8 |
37 | RULE_ANY_OTHER=11 | ||
38 | RULE_ID=5 | 37 | RULE_ID=5 |
39 | RULE_INT=6 | 38 | RULE_INT=6 |
40 | RULE_ML_COMMENT=9 | 39 | RULE_ML_COMMENT=10 |
41 | RULE_QUOTED_ID=7 | 40 | RULE_QUOTED_ID=7 |
42 | RULE_SL_COMMENT=8 | 41 | RULE_SL_COMMENT=9 |
43 | RULE_STRING=4 | 42 | RULE_STRING=4 |
44 | RULE_WS=10 | 43 | RULE_WS=11 |
45 | T__12=12 | ||
46 | T__13=13 | 44 | T__13=13 |
47 | T__14=14 | 45 | T__14=14 |
48 | T__15=15 | 46 | T__15=15 |
@@ -77,4 +75,3 @@ T__43=43 | |||
77 | T__44=44 | 75 | T__44=44 |
78 | T__45=45 | 76 | T__45=45 |
79 | T__46=46 | 77 | T__46=46 |
80 | T__47=47 | ||
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblemLexer.java b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblemLexer.java index 8adc6935..cc9b39b6 100644 --- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblemLexer.java +++ b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblemLexer.java | |||
@@ -17,9 +17,9 @@ public class InternalProblemLexer extends Lexer { | |||
17 | public static final int T__16=16; | 17 | public static final int T__16=16; |
18 | public static final int T__17=17; | 18 | public static final int T__17=17; |
19 | public static final int T__18=18; | 19 | public static final int T__18=18; |
20 | public static final int T__12=12; | ||
21 | public static final int T__13=13; | 20 | public static final int T__13=13; |
22 | public static final int T__14=14; | 21 | public static final int T__14=14; |
22 | public static final int RULE_EXPONENTIAL=8; | ||
23 | public static final int RULE_ID=5; | 23 | public static final int RULE_ID=5; |
24 | public static final int RULE_QUOTED_ID=7; | 24 | public static final int RULE_QUOTED_ID=7; |
25 | public static final int T__26=26; | 25 | public static final int T__26=26; |
@@ -28,14 +28,14 @@ public class InternalProblemLexer extends Lexer { | |||
28 | public static final int RULE_INT=6; | 28 | public static final int RULE_INT=6; |
29 | public static final int T__29=29; | 29 | public static final int T__29=29; |
30 | public static final int T__22=22; | 30 | public static final int T__22=22; |
31 | public static final int RULE_ML_COMMENT=9; | 31 | public static final int RULE_ML_COMMENT=10; |
32 | public static final int T__23=23; | 32 | public static final int T__23=23; |
33 | public static final int T__24=24; | 33 | public static final int T__24=24; |
34 | public static final int T__25=25; | 34 | public static final int T__25=25; |
35 | public static final int T__20=20; | 35 | public static final int T__20=20; |
36 | public static final int T__21=21; | 36 | public static final int T__21=21; |
37 | public static final int RULE_STRING=4; | 37 | public static final int RULE_STRING=4; |
38 | public static final int RULE_SL_COMMENT=8; | 38 | public static final int RULE_SL_COMMENT=9; |
39 | public static final int T__37=37; | 39 | public static final int T__37=37; |
40 | public static final int T__38=38; | 40 | public static final int T__38=38; |
41 | public static final int T__39=39; | 41 | public static final int T__39=39; |
@@ -47,12 +47,11 @@ public class InternalProblemLexer extends Lexer { | |||
47 | public static final int T__30=30; | 47 | public static final int T__30=30; |
48 | public static final int T__31=31; | 48 | public static final int T__31=31; |
49 | public static final int T__32=32; | 49 | public static final int T__32=32; |
50 | public static final int RULE_WS=10; | 50 | public static final int RULE_WS=11; |
51 | public static final int RULE_ANY_OTHER=11; | 51 | public static final int RULE_ANY_OTHER=12; |
52 | public static final int T__44=44; | 52 | public static final int T__44=44; |
53 | public static final int T__45=45; | 53 | public static final int T__45=45; |
54 | public static final int T__46=46; | 54 | public static final int T__46=46; |
55 | public static final int T__47=47; | ||
56 | public static final int T__40=40; | 55 | public static final int T__40=40; |
57 | public static final int T__41=41; | 56 | public static final int T__41=41; |
58 | public static final int T__42=42; | 57 | public static final int T__42=42; |
@@ -71,10 +70,10 @@ public class InternalProblemLexer extends Lexer { | |||
71 | } | 70 | } |
72 | public String getGrammarFileName() { return "InternalProblem.g"; } | 71 | public String getGrammarFileName() { return "InternalProblem.g"; } |
73 | 72 | ||
74 | // $ANTLR start "T__12" | 73 | // $ANTLR start "T__13" |
75 | public final void mT__12() throws RecognitionException { | 74 | public final void mT__13() throws RecognitionException { |
76 | try { | 75 | try { |
77 | int _type = T__12; | 76 | int _type = T__13; |
78 | int _channel = DEFAULT_TOKEN_CHANNEL; | 77 | int _channel = DEFAULT_TOKEN_CHANNEL; |
79 | // InternalProblem.g:11:7: ( 'problem' ) | 78 | // InternalProblem.g:11:7: ( 'problem' ) |
80 | // InternalProblem.g:11:9: 'problem' | 79 | // InternalProblem.g:11:9: 'problem' |
@@ -90,26 +89,6 @@ public class InternalProblemLexer extends Lexer { | |||
90 | finally { | 89 | finally { |
91 | } | 90 | } |
92 | } | 91 | } |
93 | // $ANTLR end "T__12" | ||
94 | |||
95 | // $ANTLR start "T__13" | ||
96 | public final void mT__13() throws RecognitionException { | ||
97 | try { | ||
98 | int _type = T__13; | ||
99 | int _channel = DEFAULT_TOKEN_CHANNEL; | ||
100 | // InternalProblem.g:12:7: ( '.' ) | ||
101 | // InternalProblem.g:12:9: '.' | ||
102 | { | ||
103 | match('.'); | ||
104 | |||
105 | } | ||
106 | |||
107 | state.type = _type; | ||
108 | state.channel = _channel; | ||
109 | } | ||
110 | finally { | ||
111 | } | ||
112 | } | ||
113 | // $ANTLR end "T__13" | 92 | // $ANTLR end "T__13" |
114 | 93 | ||
115 | // $ANTLR start "T__14" | 94 | // $ANTLR start "T__14" |
@@ -117,11 +96,10 @@ public class InternalProblemLexer extends Lexer { | |||
117 | try { | 96 | try { |
118 | int _type = T__14; | 97 | int _type = T__14; |
119 | int _channel = DEFAULT_TOKEN_CHANNEL; | 98 | int _channel = DEFAULT_TOKEN_CHANNEL; |
120 | // InternalProblem.g:13:7: ( 'abstract' ) | 99 | // InternalProblem.g:12:7: ( '.' ) |
121 | // InternalProblem.g:13:9: 'abstract' | 100 | // InternalProblem.g:12:9: '.' |
122 | { | 101 | { |
123 | match("abstract"); | 102 | match('.'); |
124 | |||
125 | 103 | ||
126 | } | 104 | } |
127 | 105 | ||
@@ -138,10 +116,10 @@ public class InternalProblemLexer extends Lexer { | |||
138 | try { | 116 | try { |
139 | int _type = T__15; | 117 | int _type = T__15; |
140 | int _channel = DEFAULT_TOKEN_CHANNEL; | 118 | int _channel = DEFAULT_TOKEN_CHANNEL; |
141 | // InternalProblem.g:14:7: ( 'class' ) | 119 | // InternalProblem.g:13:7: ( 'abstract' ) |
142 | // InternalProblem.g:14:9: 'class' | 120 | // InternalProblem.g:13:9: 'abstract' |
143 | { | 121 | { |
144 | match("class"); | 122 | match("abstract"); |
145 | 123 | ||
146 | 124 | ||
147 | } | 125 | } |
@@ -159,10 +137,10 @@ public class InternalProblemLexer extends Lexer { | |||
159 | try { | 137 | try { |
160 | int _type = T__16; | 138 | int _type = T__16; |
161 | int _channel = DEFAULT_TOKEN_CHANNEL; | 139 | int _channel = DEFAULT_TOKEN_CHANNEL; |
162 | // InternalProblem.g:15:7: ( 'extends' ) | 140 | // InternalProblem.g:14:7: ( 'class' ) |
163 | // InternalProblem.g:15:9: 'extends' | 141 | // InternalProblem.g:14:9: 'class' |
164 | { | 142 | { |
165 | match("extends"); | 143 | match("class"); |
166 | 144 | ||
167 | 145 | ||
168 | } | 146 | } |
@@ -180,10 +158,11 @@ public class InternalProblemLexer extends Lexer { | |||
180 | try { | 158 | try { |
181 | int _type = T__17; | 159 | int _type = T__17; |
182 | int _channel = DEFAULT_TOKEN_CHANNEL; | 160 | int _channel = DEFAULT_TOKEN_CHANNEL; |
183 | // InternalProblem.g:16:7: ( ',' ) | 161 | // InternalProblem.g:15:7: ( 'extends' ) |
184 | // InternalProblem.g:16:9: ',' | 162 | // InternalProblem.g:15:9: 'extends' |
185 | { | 163 | { |
186 | match(','); | 164 | match("extends"); |
165 | |||
187 | 166 | ||
188 | } | 167 | } |
189 | 168 | ||
@@ -200,10 +179,10 @@ public class InternalProblemLexer extends Lexer { | |||
200 | try { | 179 | try { |
201 | int _type = T__18; | 180 | int _type = T__18; |
202 | int _channel = DEFAULT_TOKEN_CHANNEL; | 181 | int _channel = DEFAULT_TOKEN_CHANNEL; |
203 | // InternalProblem.g:17:7: ( '{' ) | 182 | // InternalProblem.g:16:7: ( ',' ) |
204 | // InternalProblem.g:17:9: '{' | 183 | // InternalProblem.g:16:9: ',' |
205 | { | 184 | { |
206 | match('{'); | 185 | match(','); |
207 | 186 | ||
208 | } | 187 | } |
209 | 188 | ||
@@ -220,10 +199,10 @@ public class InternalProblemLexer extends Lexer { | |||
220 | try { | 199 | try { |
221 | int _type = T__19; | 200 | int _type = T__19; |
222 | int _channel = DEFAULT_TOKEN_CHANNEL; | 201 | int _channel = DEFAULT_TOKEN_CHANNEL; |
223 | // InternalProblem.g:18:7: ( ';' ) | 202 | // InternalProblem.g:17:7: ( '{' ) |
224 | // InternalProblem.g:18:9: ';' | 203 | // InternalProblem.g:17:9: '{' |
225 | { | 204 | { |
226 | match(';'); | 205 | match('{'); |
227 | 206 | ||
228 | } | 207 | } |
229 | 208 | ||
@@ -240,10 +219,10 @@ public class InternalProblemLexer extends Lexer { | |||
240 | try { | 219 | try { |
241 | int _type = T__20; | 220 | int _type = T__20; |
242 | int _channel = DEFAULT_TOKEN_CHANNEL; | 221 | int _channel = DEFAULT_TOKEN_CHANNEL; |
243 | // InternalProblem.g:19:7: ( '}' ) | 222 | // InternalProblem.g:18:7: ( ';' ) |
244 | // InternalProblem.g:19:9: '}' | 223 | // InternalProblem.g:18:9: ';' |
245 | { | 224 | { |
246 | match('}'); | 225 | match(';'); |
247 | 226 | ||
248 | } | 227 | } |
249 | 228 | ||
@@ -260,11 +239,10 @@ public class InternalProblemLexer extends Lexer { | |||
260 | try { | 239 | try { |
261 | int _type = T__21; | 240 | int _type = T__21; |
262 | int _channel = DEFAULT_TOKEN_CHANNEL; | 241 | int _channel = DEFAULT_TOKEN_CHANNEL; |
263 | // InternalProblem.g:20:7: ( 'enum' ) | 242 | // InternalProblem.g:19:7: ( '}' ) |
264 | // InternalProblem.g:20:9: 'enum' | 243 | // InternalProblem.g:19:9: '}' |
265 | { | 244 | { |
266 | match("enum"); | 245 | match('}'); |
267 | |||
268 | 246 | ||
269 | } | 247 | } |
270 | 248 | ||
@@ -281,10 +259,10 @@ public class InternalProblemLexer extends Lexer { | |||
281 | try { | 259 | try { |
282 | int _type = T__22; | 260 | int _type = T__22; |
283 | int _channel = DEFAULT_TOKEN_CHANNEL; | 261 | int _channel = DEFAULT_TOKEN_CHANNEL; |
284 | // InternalProblem.g:21:7: ( 'contains' ) | 262 | // InternalProblem.g:20:7: ( 'enum' ) |
285 | // InternalProblem.g:21:9: 'contains' | 263 | // InternalProblem.g:20:9: 'enum' |
286 | { | 264 | { |
287 | match("contains"); | 265 | match("enum"); |
288 | 266 | ||
289 | 267 | ||
290 | } | 268 | } |
@@ -302,10 +280,10 @@ public class InternalProblemLexer extends Lexer { | |||
302 | try { | 280 | try { |
303 | int _type = T__23; | 281 | int _type = T__23; |
304 | int _channel = DEFAULT_TOKEN_CHANNEL; | 282 | int _channel = DEFAULT_TOKEN_CHANNEL; |
305 | // InternalProblem.g:22:7: ( 'refers' ) | 283 | // InternalProblem.g:21:7: ( 'contains' ) |
306 | // InternalProblem.g:22:9: 'refers' | 284 | // InternalProblem.g:21:9: 'contains' |
307 | { | 285 | { |
308 | match("refers"); | 286 | match("contains"); |
309 | 287 | ||
310 | 288 | ||
311 | } | 289 | } |
@@ -323,10 +301,11 @@ public class InternalProblemLexer extends Lexer { | |||
323 | try { | 301 | try { |
324 | int _type = T__24; | 302 | int _type = T__24; |
325 | int _channel = DEFAULT_TOKEN_CHANNEL; | 303 | int _channel = DEFAULT_TOKEN_CHANNEL; |
326 | // InternalProblem.g:23:7: ( '[' ) | 304 | // InternalProblem.g:22:7: ( 'refers' ) |
327 | // InternalProblem.g:23:9: '[' | 305 | // InternalProblem.g:22:9: 'refers' |
328 | { | 306 | { |
329 | match('['); | 307 | match("refers"); |
308 | |||
330 | 309 | ||
331 | } | 310 | } |
332 | 311 | ||
@@ -343,10 +322,10 @@ public class InternalProblemLexer extends Lexer { | |||
343 | try { | 322 | try { |
344 | int _type = T__25; | 323 | int _type = T__25; |
345 | int _channel = DEFAULT_TOKEN_CHANNEL; | 324 | int _channel = DEFAULT_TOKEN_CHANNEL; |
346 | // InternalProblem.g:24:7: ( ']' ) | 325 | // InternalProblem.g:23:7: ( '[' ) |
347 | // InternalProblem.g:24:9: ']' | 326 | // InternalProblem.g:23:9: '[' |
348 | { | 327 | { |
349 | match(']'); | 328 | match('['); |
350 | 329 | ||
351 | } | 330 | } |
352 | 331 | ||
@@ -363,11 +342,10 @@ public class InternalProblemLexer extends Lexer { | |||
363 | try { | 342 | try { |
364 | int _type = T__26; | 343 | int _type = T__26; |
365 | int _channel = DEFAULT_TOKEN_CHANNEL; | 344 | int _channel = DEFAULT_TOKEN_CHANNEL; |
366 | // InternalProblem.g:25:7: ( 'opposite' ) | 345 | // InternalProblem.g:24:7: ( ']' ) |
367 | // InternalProblem.g:25:9: 'opposite' | 346 | // InternalProblem.g:24:9: ']' |
368 | { | 347 | { |
369 | match("opposite"); | 348 | match(']'); |
370 | |||
371 | 349 | ||
372 | } | 350 | } |
373 | 351 | ||
@@ -384,10 +362,10 @@ public class InternalProblemLexer extends Lexer { | |||
384 | try { | 362 | try { |
385 | int _type = T__27; | 363 | int _type = T__27; |
386 | int _channel = DEFAULT_TOKEN_CHANNEL; | 364 | int _channel = DEFAULT_TOKEN_CHANNEL; |
387 | // InternalProblem.g:26:7: ( 'error' ) | 365 | // InternalProblem.g:25:7: ( 'opposite' ) |
388 | // InternalProblem.g:26:9: 'error' | 366 | // InternalProblem.g:25:9: 'opposite' |
389 | { | 367 | { |
390 | match("error"); | 368 | match("opposite"); |
391 | 369 | ||
392 | 370 | ||
393 | } | 371 | } |
@@ -405,10 +383,10 @@ public class InternalProblemLexer extends Lexer { | |||
405 | try { | 383 | try { |
406 | int _type = T__28; | 384 | int _type = T__28; |
407 | int _channel = DEFAULT_TOKEN_CHANNEL; | 385 | int _channel = DEFAULT_TOKEN_CHANNEL; |
408 | // InternalProblem.g:27:7: ( 'pred' ) | 386 | // InternalProblem.g:26:7: ( 'error' ) |
409 | // InternalProblem.g:27:9: 'pred' | 387 | // InternalProblem.g:26:9: 'error' |
410 | { | 388 | { |
411 | match("pred"); | 389 | match("error"); |
412 | 390 | ||
413 | 391 | ||
414 | } | 392 | } |
@@ -426,10 +404,11 @@ public class InternalProblemLexer extends Lexer { | |||
426 | try { | 404 | try { |
427 | int _type = T__29; | 405 | int _type = T__29; |
428 | int _channel = DEFAULT_TOKEN_CHANNEL; | 406 | int _channel = DEFAULT_TOKEN_CHANNEL; |
429 | // InternalProblem.g:28:7: ( '(' ) | 407 | // InternalProblem.g:27:7: ( 'pred' ) |
430 | // InternalProblem.g:28:9: '(' | 408 | // InternalProblem.g:27:9: 'pred' |
431 | { | 409 | { |
432 | match('('); | 410 | match("pred"); |
411 | |||
433 | 412 | ||
434 | } | 413 | } |
435 | 414 | ||
@@ -446,10 +425,10 @@ public class InternalProblemLexer extends Lexer { | |||
446 | try { | 425 | try { |
447 | int _type = T__30; | 426 | int _type = T__30; |
448 | int _channel = DEFAULT_TOKEN_CHANNEL; | 427 | int _channel = DEFAULT_TOKEN_CHANNEL; |
449 | // InternalProblem.g:29:7: ( ')' ) | 428 | // InternalProblem.g:28:7: ( '(' ) |
450 | // InternalProblem.g:29:9: ')' | 429 | // InternalProblem.g:28:9: '(' |
451 | { | 430 | { |
452 | match(')'); | 431 | match('('); |
453 | 432 | ||
454 | } | 433 | } |
455 | 434 | ||
@@ -466,11 +445,10 @@ public class InternalProblemLexer extends Lexer { | |||
466 | try { | 445 | try { |
467 | int _type = T__31; | 446 | int _type = T__31; |
468 | int _channel = DEFAULT_TOKEN_CHANNEL; | 447 | int _channel = DEFAULT_TOKEN_CHANNEL; |
469 | // InternalProblem.g:30:7: ( ':-' ) | 448 | // InternalProblem.g:29:7: ( ')' ) |
470 | // InternalProblem.g:30:9: ':-' | 449 | // InternalProblem.g:29:9: ')' |
471 | { | 450 | { |
472 | match(":-"); | 451 | match(')'); |
473 | |||
474 | 452 | ||
475 | } | 453 | } |
476 | 454 | ||
@@ -487,10 +465,11 @@ public class InternalProblemLexer extends Lexer { | |||
487 | try { | 465 | try { |
488 | int _type = T__32; | 466 | int _type = T__32; |
489 | int _channel = DEFAULT_TOKEN_CHANNEL; | 467 | int _channel = DEFAULT_TOKEN_CHANNEL; |
490 | // InternalProblem.g:31:7: ( '!' ) | 468 | // InternalProblem.g:30:7: ( ':-' ) |
491 | // InternalProblem.g:31:9: '!' | 469 | // InternalProblem.g:30:9: ':-' |
492 | { | 470 | { |
493 | match('!'); | 471 | match(":-"); |
472 | |||
494 | 473 | ||
495 | } | 474 | } |
496 | 475 | ||
@@ -507,10 +486,10 @@ public class InternalProblemLexer extends Lexer { | |||
507 | try { | 486 | try { |
508 | int _type = T__33; | 487 | int _type = T__33; |
509 | int _channel = DEFAULT_TOKEN_CHANNEL; | 488 | int _channel = DEFAULT_TOKEN_CHANNEL; |
510 | // InternalProblem.g:32:7: ( '+' ) | 489 | // InternalProblem.g:31:7: ( '!' ) |
511 | // InternalProblem.g:32:9: '+' | 490 | // InternalProblem.g:31:9: '!' |
512 | { | 491 | { |
513 | match('+'); | 492 | match('!'); |
514 | 493 | ||
515 | } | 494 | } |
516 | 495 | ||
@@ -527,10 +506,10 @@ public class InternalProblemLexer extends Lexer { | |||
527 | try { | 506 | try { |
528 | int _type = T__34; | 507 | int _type = T__34; |
529 | int _channel = DEFAULT_TOKEN_CHANNEL; | 508 | int _channel = DEFAULT_TOKEN_CHANNEL; |
530 | // InternalProblem.g:33:7: ( ':' ) | 509 | // InternalProblem.g:32:7: ( '+' ) |
531 | // InternalProblem.g:33:9: ':' | 510 | // InternalProblem.g:32:9: '+' |
532 | { | 511 | { |
533 | match(':'); | 512 | match('+'); |
534 | 513 | ||
535 | } | 514 | } |
536 | 515 | ||
@@ -547,11 +526,10 @@ public class InternalProblemLexer extends Lexer { | |||
547 | try { | 526 | try { |
548 | int _type = T__35; | 527 | int _type = T__35; |
549 | int _channel = DEFAULT_TOKEN_CHANNEL; | 528 | int _channel = DEFAULT_TOKEN_CHANNEL; |
550 | // InternalProblem.g:34:7: ( 'scope' ) | 529 | // InternalProblem.g:33:7: ( ':' ) |
551 | // InternalProblem.g:34:9: 'scope' | 530 | // InternalProblem.g:33:9: ':' |
552 | { | 531 | { |
553 | match("scope"); | 532 | match(':'); |
554 | |||
555 | 533 | ||
556 | } | 534 | } |
557 | 535 | ||
@@ -568,10 +546,10 @@ public class InternalProblemLexer extends Lexer { | |||
568 | try { | 546 | try { |
569 | int _type = T__36; | 547 | int _type = T__36; |
570 | int _channel = DEFAULT_TOKEN_CHANNEL; | 548 | int _channel = DEFAULT_TOKEN_CHANNEL; |
571 | // InternalProblem.g:35:7: ( '+=' ) | 549 | // InternalProblem.g:34:7: ( 'scope' ) |
572 | // InternalProblem.g:35:9: '+=' | 550 | // InternalProblem.g:34:9: 'scope' |
573 | { | 551 | { |
574 | match("+="); | 552 | match("scope"); |
575 | 553 | ||
576 | 554 | ||
577 | } | 555 | } |
@@ -589,10 +567,11 @@ public class InternalProblemLexer extends Lexer { | |||
589 | try { | 567 | try { |
590 | int _type = T__37; | 568 | int _type = T__37; |
591 | int _channel = DEFAULT_TOKEN_CHANNEL; | 569 | int _channel = DEFAULT_TOKEN_CHANNEL; |
592 | // InternalProblem.g:36:7: ( '=' ) | 570 | // InternalProblem.g:35:7: ( '+=' ) |
593 | // InternalProblem.g:36:9: '=' | 571 | // InternalProblem.g:35:9: '+=' |
594 | { | 572 | { |
595 | match('='); | 573 | match("+="); |
574 | |||
596 | 575 | ||
597 | } | 576 | } |
598 | 577 | ||
@@ -609,11 +588,10 @@ public class InternalProblemLexer extends Lexer { | |||
609 | try { | 588 | try { |
610 | int _type = T__38; | 589 | int _type = T__38; |
611 | int _channel = DEFAULT_TOKEN_CHANNEL; | 590 | int _channel = DEFAULT_TOKEN_CHANNEL; |
612 | // InternalProblem.g:37:7: ( '..' ) | 591 | // InternalProblem.g:36:7: ( '=' ) |
613 | // InternalProblem.g:37:9: '..' | 592 | // InternalProblem.g:36:9: '=' |
614 | { | 593 | { |
615 | match(".."); | 594 | match('='); |
616 | |||
617 | 595 | ||
618 | } | 596 | } |
619 | 597 | ||
@@ -630,10 +608,11 @@ public class InternalProblemLexer extends Lexer { | |||
630 | try { | 608 | try { |
631 | int _type = T__39; | 609 | int _type = T__39; |
632 | int _channel = DEFAULT_TOKEN_CHANNEL; | 610 | int _channel = DEFAULT_TOKEN_CHANNEL; |
633 | // InternalProblem.g:38:7: ( '*' ) | 611 | // InternalProblem.g:37:7: ( '..' ) |
634 | // InternalProblem.g:38:9: '*' | 612 | // InternalProblem.g:37:9: '..' |
635 | { | 613 | { |
636 | match('*'); | 614 | match(".."); |
615 | |||
637 | 616 | ||
638 | } | 617 | } |
639 | 618 | ||
@@ -650,11 +629,10 @@ public class InternalProblemLexer extends Lexer { | |||
650 | try { | 629 | try { |
651 | int _type = T__40; | 630 | int _type = T__40; |
652 | int _channel = DEFAULT_TOKEN_CHANNEL; | 631 | int _channel = DEFAULT_TOKEN_CHANNEL; |
653 | // InternalProblem.g:39:7: ( '::' ) | 632 | // InternalProblem.g:38:7: ( '*' ) |
654 | // InternalProblem.g:39:9: '::' | 633 | // InternalProblem.g:38:9: '*' |
655 | { | 634 | { |
656 | match("::"); | 635 | match('*'); |
657 | |||
658 | 636 | ||
659 | } | 637 | } |
660 | 638 | ||
@@ -671,10 +649,10 @@ public class InternalProblemLexer extends Lexer { | |||
671 | try { | 649 | try { |
672 | int _type = T__41; | 650 | int _type = T__41; |
673 | int _channel = DEFAULT_TOKEN_CHANNEL; | 651 | int _channel = DEFAULT_TOKEN_CHANNEL; |
674 | // InternalProblem.g:40:7: ( 'true' ) | 652 | // InternalProblem.g:39:7: ( '::' ) |
675 | // InternalProblem.g:40:9: 'true' | 653 | // InternalProblem.g:39:9: '::' |
676 | { | 654 | { |
677 | match("true"); | 655 | match("::"); |
678 | 656 | ||
679 | 657 | ||
680 | } | 658 | } |
@@ -692,10 +670,10 @@ public class InternalProblemLexer extends Lexer { | |||
692 | try { | 670 | try { |
693 | int _type = T__42; | 671 | int _type = T__42; |
694 | int _channel = DEFAULT_TOKEN_CHANNEL; | 672 | int _channel = DEFAULT_TOKEN_CHANNEL; |
695 | // InternalProblem.g:41:7: ( 'false' ) | 673 | // InternalProblem.g:40:7: ( 'true' ) |
696 | // InternalProblem.g:41:9: 'false' | 674 | // InternalProblem.g:40:9: 'true' |
697 | { | 675 | { |
698 | match("false"); | 676 | match("true"); |
699 | 677 | ||
700 | 678 | ||
701 | } | 679 | } |
@@ -713,10 +691,11 @@ public class InternalProblemLexer extends Lexer { | |||
713 | try { | 691 | try { |
714 | int _type = T__43; | 692 | int _type = T__43; |
715 | int _channel = DEFAULT_TOKEN_CHANNEL; | 693 | int _channel = DEFAULT_TOKEN_CHANNEL; |
716 | // InternalProblem.g:42:7: ( 'e' ) | 694 | // InternalProblem.g:41:7: ( 'false' ) |
717 | // InternalProblem.g:42:9: 'e' | 695 | // InternalProblem.g:41:9: 'false' |
718 | { | 696 | { |
719 | match('e'); | 697 | match("false"); |
698 | |||
720 | 699 | ||
721 | } | 700 | } |
722 | 701 | ||
@@ -733,10 +712,10 @@ public class InternalProblemLexer extends Lexer { | |||
733 | try { | 712 | try { |
734 | int _type = T__44; | 713 | int _type = T__44; |
735 | int _channel = DEFAULT_TOKEN_CHANNEL; | 714 | int _channel = DEFAULT_TOKEN_CHANNEL; |
736 | // InternalProblem.g:43:7: ( 'E' ) | 715 | // InternalProblem.g:42:7: ( '-' ) |
737 | // InternalProblem.g:43:9: 'E' | 716 | // InternalProblem.g:42:9: '-' |
738 | { | 717 | { |
739 | match('E'); | 718 | match('-'); |
740 | 719 | ||
741 | } | 720 | } |
742 | 721 | ||
@@ -753,10 +732,11 @@ public class InternalProblemLexer extends Lexer { | |||
753 | try { | 732 | try { |
754 | int _type = T__45; | 733 | int _type = T__45; |
755 | int _channel = DEFAULT_TOKEN_CHANNEL; | 734 | int _channel = DEFAULT_TOKEN_CHANNEL; |
756 | // InternalProblem.g:44:7: ( '-' ) | 735 | // InternalProblem.g:43:7: ( 'unknown' ) |
757 | // InternalProblem.g:44:9: '-' | 736 | // InternalProblem.g:43:9: 'unknown' |
758 | { | 737 | { |
759 | match('-'); | 738 | match("unknown"); |
739 | |||
760 | 740 | ||
761 | } | 741 | } |
762 | 742 | ||
@@ -773,29 +753,8 @@ public class InternalProblemLexer extends Lexer { | |||
773 | try { | 753 | try { |
774 | int _type = T__46; | 754 | int _type = T__46; |
775 | int _channel = DEFAULT_TOKEN_CHANNEL; | 755 | int _channel = DEFAULT_TOKEN_CHANNEL; |
776 | // InternalProblem.g:45:7: ( 'unknown' ) | 756 | // InternalProblem.g:44:7: ( '?' ) |
777 | // InternalProblem.g:45:9: 'unknown' | 757 | // InternalProblem.g:44:9: '?' |
778 | { | ||
779 | match("unknown"); | ||
780 | |||
781 | |||
782 | } | ||
783 | |||
784 | state.type = _type; | ||
785 | state.channel = _channel; | ||
786 | } | ||
787 | finally { | ||
788 | } | ||
789 | } | ||
790 | // $ANTLR end "T__46" | ||
791 | |||
792 | // $ANTLR start "T__47" | ||
793 | public final void mT__47() throws RecognitionException { | ||
794 | try { | ||
795 | int _type = T__47; | ||
796 | int _channel = DEFAULT_TOKEN_CHANNEL; | ||
797 | // InternalProblem.g:46:7: ( '?' ) | ||
798 | // InternalProblem.g:46:9: '?' | ||
799 | { | 758 | { |
800 | match('?'); | 759 | match('?'); |
801 | 760 | ||
@@ -807,15 +766,15 @@ public class InternalProblemLexer extends Lexer { | |||
807 | finally { | 766 | finally { |
808 | } | 767 | } |
809 | } | 768 | } |
810 | // $ANTLR end "T__47" | 769 | // $ANTLR end "T__46" |
811 | 770 | ||
812 | // $ANTLR start "RULE_ID" | 771 | // $ANTLR start "RULE_ID" |
813 | public final void mRULE_ID() throws RecognitionException { | 772 | public final void mRULE_ID() throws RecognitionException { |
814 | try { | 773 | try { |
815 | int _type = RULE_ID; | 774 | int _type = RULE_ID; |
816 | int _channel = DEFAULT_TOKEN_CHANNEL; | 775 | int _channel = DEFAULT_TOKEN_CHANNEL; |
817 | // InternalProblem.g:2427:9: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* ) | 776 | // InternalProblem.g:2374:9: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* ) |
818 | // InternalProblem.g:2427:11: ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* | 777 | // InternalProblem.g:2374:11: ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* |
819 | { | 778 | { |
820 | if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) { | 779 | if ( (input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) { |
821 | input.consume(); | 780 | input.consume(); |
@@ -826,7 +785,7 @@ public class InternalProblemLexer extends Lexer { | |||
826 | recover(mse); | 785 | recover(mse); |
827 | throw mse;} | 786 | throw mse;} |
828 | 787 | ||
829 | // InternalProblem.g:2427:35: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* | 788 | // InternalProblem.g:2374:35: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* |
830 | loop1: | 789 | loop1: |
831 | do { | 790 | do { |
832 | int alt1=2; | 791 | int alt1=2; |
@@ -870,32 +829,88 @@ public class InternalProblemLexer extends Lexer { | |||
870 | } | 829 | } |
871 | // $ANTLR end "RULE_ID" | 830 | // $ANTLR end "RULE_ID" |
872 | 831 | ||
832 | // $ANTLR start "RULE_EXPONENTIAL" | ||
833 | public final void mRULE_EXPONENTIAL() throws RecognitionException { | ||
834 | try { | ||
835 | int _type = RULE_EXPONENTIAL; | ||
836 | int _channel = DEFAULT_TOKEN_CHANNEL; | ||
837 | // InternalProblem.g:2376:18: ( RULE_INT ( 'e' | 'E' ) ( '+' | '-' )? RULE_INT ) | ||
838 | // InternalProblem.g:2376:20: RULE_INT ( 'e' | 'E' ) ( '+' | '-' )? RULE_INT | ||
839 | { | ||
840 | mRULE_INT(); | ||
841 | if ( input.LA(1)=='E'||input.LA(1)=='e' ) { | ||
842 | input.consume(); | ||
843 | |||
844 | } | ||
845 | else { | ||
846 | MismatchedSetException mse = new MismatchedSetException(null,input); | ||
847 | recover(mse); | ||
848 | throw mse;} | ||
849 | |||
850 | // InternalProblem.g:2376:39: ( '+' | '-' )? | ||
851 | int alt2=2; | ||
852 | int LA2_0 = input.LA(1); | ||
853 | |||
854 | if ( (LA2_0=='+'||LA2_0=='-') ) { | ||
855 | alt2=1; | ||
856 | } | ||
857 | switch (alt2) { | ||
858 | case 1 : | ||
859 | // InternalProblem.g: | ||
860 | { | ||
861 | if ( input.LA(1)=='+'||input.LA(1)=='-' ) { | ||
862 | input.consume(); | ||
863 | |||
864 | } | ||
865 | else { | ||
866 | MismatchedSetException mse = new MismatchedSetException(null,input); | ||
867 | recover(mse); | ||
868 | throw mse;} | ||
869 | |||
870 | |||
871 | } | ||
872 | break; | ||
873 | |||
874 | } | ||
875 | |||
876 | mRULE_INT(); | ||
877 | |||
878 | } | ||
879 | |||
880 | state.type = _type; | ||
881 | state.channel = _channel; | ||
882 | } | ||
883 | finally { | ||
884 | } | ||
885 | } | ||
886 | // $ANTLR end "RULE_EXPONENTIAL" | ||
887 | |||
873 | // $ANTLR start "RULE_STRING" | 888 | // $ANTLR start "RULE_STRING" |
874 | public final void mRULE_STRING() throws RecognitionException { | 889 | public final void mRULE_STRING() throws RecognitionException { |
875 | try { | 890 | try { |
876 | int _type = RULE_STRING; | 891 | int _type = RULE_STRING; |
877 | int _channel = DEFAULT_TOKEN_CHANNEL; | 892 | int _channel = DEFAULT_TOKEN_CHANNEL; |
878 | // InternalProblem.g:2429:13: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' ) | 893 | // InternalProblem.g:2378:13: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' ) |
879 | // InternalProblem.g:2429:15: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | 894 | // InternalProblem.g:2378:15: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' |
880 | { | 895 | { |
881 | match('\"'); | 896 | match('\"'); |
882 | // InternalProblem.g:2429:19: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* | 897 | // InternalProblem.g:2378:19: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* |
883 | loop2: | 898 | loop3: |
884 | do { | 899 | do { |
885 | int alt2=3; | 900 | int alt3=3; |
886 | int LA2_0 = input.LA(1); | 901 | int LA3_0 = input.LA(1); |
887 | 902 | ||
888 | if ( (LA2_0=='\\') ) { | 903 | if ( (LA3_0=='\\') ) { |
889 | alt2=1; | 904 | alt3=1; |
890 | } | 905 | } |
891 | else if ( ((LA2_0>='\u0000' && LA2_0<='!')||(LA2_0>='#' && LA2_0<='[')||(LA2_0>=']' && LA2_0<='\uFFFF')) ) { | 906 | else if ( ((LA3_0>='\u0000' && LA3_0<='!')||(LA3_0>='#' && LA3_0<='[')||(LA3_0>=']' && LA3_0<='\uFFFF')) ) { |
892 | alt2=2; | 907 | alt3=2; |
893 | } | 908 | } |
894 | 909 | ||
895 | 910 | ||
896 | switch (alt2) { | 911 | switch (alt3) { |
897 | case 1 : | 912 | case 1 : |
898 | // InternalProblem.g:2429:20: '\\\\' . | 913 | // InternalProblem.g:2378:20: '\\\\' . |
899 | { | 914 | { |
900 | match('\\'); | 915 | match('\\'); |
901 | matchAny(); | 916 | matchAny(); |
@@ -903,7 +918,7 @@ public class InternalProblemLexer extends Lexer { | |||
903 | } | 918 | } |
904 | break; | 919 | break; |
905 | case 2 : | 920 | case 2 : |
906 | // InternalProblem.g:2429:27: ~ ( ( '\\\\' | '\"' ) ) | 921 | // InternalProblem.g:2378:27: ~ ( ( '\\\\' | '\"' ) ) |
907 | { | 922 | { |
908 | if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { | 923 | if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { |
909 | input.consume(); | 924 | input.consume(); |
@@ -919,7 +934,7 @@ public class InternalProblemLexer extends Lexer { | |||
919 | break; | 934 | break; |
920 | 935 | ||
921 | default : | 936 | default : |
922 | break loop2; | 937 | break loop3; |
923 | } | 938 | } |
924 | } while (true); | 939 | } while (true); |
925 | 940 | ||
@@ -940,27 +955,27 @@ public class InternalProblemLexer extends Lexer { | |||
940 | try { | 955 | try { |
941 | int _type = RULE_QUOTED_ID; | 956 | int _type = RULE_QUOTED_ID; |
942 | int _channel = DEFAULT_TOKEN_CHANNEL; | 957 | int _channel = DEFAULT_TOKEN_CHANNEL; |
943 | // InternalProblem.g:2431:16: ( '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) | 958 | // InternalProblem.g:2380:16: ( '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) |
944 | // InternalProblem.g:2431:18: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' | 959 | // InternalProblem.g:2380:18: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' |
945 | { | 960 | { |
946 | match('\''); | 961 | match('\''); |
947 | // InternalProblem.g:2431:23: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* | 962 | // InternalProblem.g:2380:23: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* |
948 | loop3: | 963 | loop4: |
949 | do { | 964 | do { |
950 | int alt3=3; | 965 | int alt4=3; |
951 | int LA3_0 = input.LA(1); | 966 | int LA4_0 = input.LA(1); |
952 | 967 | ||
953 | if ( (LA3_0=='\\') ) { | 968 | if ( (LA4_0=='\\') ) { |
954 | alt3=1; | 969 | alt4=1; |
955 | } | 970 | } |
956 | else if ( ((LA3_0>='\u0000' && LA3_0<='&')||(LA3_0>='(' && LA3_0<='[')||(LA3_0>=']' && LA3_0<='\uFFFF')) ) { | 971 | else if ( ((LA4_0>='\u0000' && LA4_0<='&')||(LA4_0>='(' && LA4_0<='[')||(LA4_0>=']' && LA4_0<='\uFFFF')) ) { |
957 | alt3=2; | 972 | alt4=2; |
958 | } | 973 | } |
959 | 974 | ||
960 | 975 | ||
961 | switch (alt3) { | 976 | switch (alt4) { |
962 | case 1 : | 977 | case 1 : |
963 | // InternalProblem.g:2431:24: '\\\\' . | 978 | // InternalProblem.g:2380:24: '\\\\' . |
964 | { | 979 | { |
965 | match('\\'); | 980 | match('\\'); |
966 | matchAny(); | 981 | matchAny(); |
@@ -968,7 +983,7 @@ public class InternalProblemLexer extends Lexer { | |||
968 | } | 983 | } |
969 | break; | 984 | break; |
970 | case 2 : | 985 | case 2 : |
971 | // InternalProblem.g:2431:31: ~ ( ( '\\\\' | '\\'' ) ) | 986 | // InternalProblem.g:2380:31: ~ ( ( '\\\\' | '\\'' ) ) |
972 | { | 987 | { |
973 | if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { | 988 | if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { |
974 | input.consume(); | 989 | input.consume(); |
@@ -984,7 +999,7 @@ public class InternalProblemLexer extends Lexer { | |||
984 | break; | 999 | break; |
985 | 1000 | ||
986 | default : | 1001 | default : |
987 | break loop3; | 1002 | break loop4; |
988 | } | 1003 | } |
989 | } while (true); | 1004 | } while (true); |
990 | 1005 | ||
@@ -1005,35 +1020,35 @@ public class InternalProblemLexer extends Lexer { | |||
1005 | try { | 1020 | try { |
1006 | int _type = RULE_SL_COMMENT; | 1021 | int _type = RULE_SL_COMMENT; |
1007 | int _channel = DEFAULT_TOKEN_CHANNEL; | 1022 | int _channel = DEFAULT_TOKEN_CHANNEL; |
1008 | // InternalProblem.g:2433:17: ( ( '%' | '//' ) (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? ) | 1023 | // InternalProblem.g:2382:17: ( ( '%' | '//' ) (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? ) |
1009 | // InternalProblem.g:2433:19: ( '%' | '//' ) (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? | 1024 | // InternalProblem.g:2382:19: ( '%' | '//' ) (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? |
1010 | { | 1025 | { |
1011 | // InternalProblem.g:2433:19: ( '%' | '//' ) | 1026 | // InternalProblem.g:2382:19: ( '%' | '//' ) |
1012 | int alt4=2; | 1027 | int alt5=2; |
1013 | int LA4_0 = input.LA(1); | 1028 | int LA5_0 = input.LA(1); |
1014 | 1029 | ||
1015 | if ( (LA4_0=='%') ) { | 1030 | if ( (LA5_0=='%') ) { |
1016 | alt4=1; | 1031 | alt5=1; |
1017 | } | 1032 | } |
1018 | else if ( (LA4_0=='/') ) { | 1033 | else if ( (LA5_0=='/') ) { |
1019 | alt4=2; | 1034 | alt5=2; |
1020 | } | 1035 | } |
1021 | else { | 1036 | else { |
1022 | NoViableAltException nvae = | 1037 | NoViableAltException nvae = |
1023 | new NoViableAltException("", 4, 0, input); | 1038 | new NoViableAltException("", 5, 0, input); |
1024 | 1039 | ||
1025 | throw nvae; | 1040 | throw nvae; |
1026 | } | 1041 | } |
1027 | switch (alt4) { | 1042 | switch (alt5) { |
1028 | case 1 : | 1043 | case 1 : |
1029 | // InternalProblem.g:2433:20: '%' | 1044 | // InternalProblem.g:2382:20: '%' |
1030 | { | 1045 | { |
1031 | match('%'); | 1046 | match('%'); |
1032 | 1047 | ||
1033 | } | 1048 | } |
1034 | break; | 1049 | break; |
1035 | case 2 : | 1050 | case 2 : |
1036 | // InternalProblem.g:2433:24: '//' | 1051 | // InternalProblem.g:2382:24: '//' |
1037 | { | 1052 | { |
1038 | match("//"); | 1053 | match("//"); |
1039 | 1054 | ||
@@ -1043,20 +1058,20 @@ public class InternalProblemLexer extends Lexer { | |||
1043 | 1058 | ||
1044 | } | 1059 | } |
1045 | 1060 | ||
1046 | // InternalProblem.g:2433:30: (~ ( ( '\\n' | '\\r' ) ) )* | 1061 | // InternalProblem.g:2382:30: (~ ( ( '\\n' | '\\r' ) ) )* |
1047 | loop5: | 1062 | loop6: |
1048 | do { | 1063 | do { |
1049 | int alt5=2; | 1064 | int alt6=2; |
1050 | int LA5_0 = input.LA(1); | 1065 | int LA6_0 = input.LA(1); |
1051 | 1066 | ||
1052 | if ( ((LA5_0>='\u0000' && LA5_0<='\t')||(LA5_0>='\u000B' && LA5_0<='\f')||(LA5_0>='\u000E' && LA5_0<='\uFFFF')) ) { | 1067 | if ( ((LA6_0>='\u0000' && LA6_0<='\t')||(LA6_0>='\u000B' && LA6_0<='\f')||(LA6_0>='\u000E' && LA6_0<='\uFFFF')) ) { |
1053 | alt5=1; | 1068 | alt6=1; |
1054 | } | 1069 | } |
1055 | 1070 | ||
1056 | 1071 | ||
1057 | switch (alt5) { | 1072 | switch (alt6) { |
1058 | case 1 : | 1073 | case 1 : |
1059 | // InternalProblem.g:2433:30: ~ ( ( '\\n' | '\\r' ) ) | 1074 | // InternalProblem.g:2382:30: ~ ( ( '\\n' | '\\r' ) ) |
1060 | { | 1075 | { |
1061 | if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) { | 1076 | if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) { |
1062 | input.consume(); | 1077 | input.consume(); |
@@ -1072,31 +1087,31 @@ public class InternalProblemLexer extends Lexer { | |||
1072 | break; | 1087 | break; |
1073 | 1088 | ||
1074 | default : | 1089 | default : |
1075 | break loop5; | 1090 | break loop6; |
1076 | } | 1091 | } |
1077 | } while (true); | 1092 | } while (true); |
1078 | 1093 | ||
1079 | // InternalProblem.g:2433:46: ( ( '\\r' )? '\\n' )? | 1094 | // InternalProblem.g:2382:46: ( ( '\\r' )? '\\n' )? |
1080 | int alt7=2; | 1095 | int alt8=2; |
1081 | int LA7_0 = input.LA(1); | 1096 | int LA8_0 = input.LA(1); |
1082 | 1097 | ||
1083 | if ( (LA7_0=='\n'||LA7_0=='\r') ) { | 1098 | if ( (LA8_0=='\n'||LA8_0=='\r') ) { |
1084 | alt7=1; | 1099 | alt8=1; |
1085 | } | 1100 | } |
1086 | switch (alt7) { | 1101 | switch (alt8) { |
1087 | case 1 : | 1102 | case 1 : |
1088 | // InternalProblem.g:2433:47: ( '\\r' )? '\\n' | 1103 | // InternalProblem.g:2382:47: ( '\\r' )? '\\n' |
1089 | { | 1104 | { |
1090 | // InternalProblem.g:2433:47: ( '\\r' )? | 1105 | // InternalProblem.g:2382:47: ( '\\r' )? |
1091 | int alt6=2; | 1106 | int alt7=2; |
1092 | int LA6_0 = input.LA(1); | 1107 | int LA7_0 = input.LA(1); |
1093 | 1108 | ||
1094 | if ( (LA6_0=='\r') ) { | 1109 | if ( (LA7_0=='\r') ) { |
1095 | alt6=1; | 1110 | alt7=1; |
1096 | } | 1111 | } |
1097 | switch (alt6) { | 1112 | switch (alt7) { |
1098 | case 1 : | 1113 | case 1 : |
1099 | // InternalProblem.g:2433:47: '\\r' | 1114 | // InternalProblem.g:2382:47: '\\r' |
1100 | { | 1115 | { |
1101 | match('\r'); | 1116 | match('\r'); |
1102 | 1117 | ||
@@ -1128,24 +1143,24 @@ public class InternalProblemLexer extends Lexer { | |||
1128 | try { | 1143 | try { |
1129 | int _type = RULE_INT; | 1144 | int _type = RULE_INT; |
1130 | int _channel = DEFAULT_TOKEN_CHANNEL; | 1145 | int _channel = DEFAULT_TOKEN_CHANNEL; |
1131 | // InternalProblem.g:2435:10: ( ( '0' .. '9' )+ ) | 1146 | // InternalProblem.g:2384:10: ( ( '0' .. '9' )+ ) |
1132 | // InternalProblem.g:2435:12: ( '0' .. '9' )+ | 1147 | // InternalProblem.g:2384:12: ( '0' .. '9' )+ |
1133 | { | 1148 | { |
1134 | // InternalProblem.g:2435:12: ( '0' .. '9' )+ | 1149 | // InternalProblem.g:2384:12: ( '0' .. '9' )+ |
1135 | int cnt8=0; | 1150 | int cnt9=0; |
1136 | loop8: | 1151 | loop9: |
1137 | do { | 1152 | do { |
1138 | int alt8=2; | 1153 | int alt9=2; |
1139 | int LA8_0 = input.LA(1); | 1154 | int LA9_0 = input.LA(1); |
1140 | 1155 | ||
1141 | if ( ((LA8_0>='0' && LA8_0<='9')) ) { | 1156 | if ( ((LA9_0>='0' && LA9_0<='9')) ) { |
1142 | alt8=1; | 1157 | alt9=1; |
1143 | } | 1158 | } |
1144 | 1159 | ||
1145 | 1160 | ||
1146 | switch (alt8) { | 1161 | switch (alt9) { |
1147 | case 1 : | 1162 | case 1 : |
1148 | // InternalProblem.g:2435:13: '0' .. '9' | 1163 | // InternalProblem.g:2384:13: '0' .. '9' |
1149 | { | 1164 | { |
1150 | matchRange('0','9'); | 1165 | matchRange('0','9'); |
1151 | 1166 | ||
@@ -1153,12 +1168,12 @@ public class InternalProblemLexer extends Lexer { | |||
1153 | break; | 1168 | break; |
1154 | 1169 | ||
1155 | default : | 1170 | default : |
1156 | if ( cnt8 >= 1 ) break loop8; | 1171 | if ( cnt9 >= 1 ) break loop9; |
1157 | EarlyExitException eee = | 1172 | EarlyExitException eee = |
1158 | new EarlyExitException(8, input); | 1173 | new EarlyExitException(9, input); |
1159 | throw eee; | 1174 | throw eee; |
1160 | } | 1175 | } |
1161 | cnt8++; | 1176 | cnt9++; |
1162 | } while (true); | 1177 | } while (true); |
1163 | 1178 | ||
1164 | 1179 | ||
@@ -1177,37 +1192,37 @@ public class InternalProblemLexer extends Lexer { | |||
1177 | try { | 1192 | try { |
1178 | int _type = RULE_ML_COMMENT; | 1193 | int _type = RULE_ML_COMMENT; |
1179 | int _channel = DEFAULT_TOKEN_CHANNEL; | 1194 | int _channel = DEFAULT_TOKEN_CHANNEL; |
1180 | // InternalProblem.g:2437:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) | 1195 | // InternalProblem.g:2386:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) |
1181 | // InternalProblem.g:2437:19: '/*' ( options {greedy=false; } : . )* '*/' | 1196 | // InternalProblem.g:2386:19: '/*' ( options {greedy=false; } : . )* '*/' |
1182 | { | 1197 | { |
1183 | match("/*"); | 1198 | match("/*"); |
1184 | 1199 | ||
1185 | // InternalProblem.g:2437:24: ( options {greedy=false; } : . )* | 1200 | // InternalProblem.g:2386:24: ( options {greedy=false; } : . )* |
1186 | loop9: | 1201 | loop10: |
1187 | do { | 1202 | do { |
1188 | int alt9=2; | 1203 | int alt10=2; |
1189 | int LA9_0 = input.LA(1); | 1204 | int LA10_0 = input.LA(1); |
1190 | 1205 | ||
1191 | if ( (LA9_0=='*') ) { | 1206 | if ( (LA10_0=='*') ) { |
1192 | int LA9_1 = input.LA(2); | 1207 | int LA10_1 = input.LA(2); |
1193 | 1208 | ||
1194 | if ( (LA9_1=='/') ) { | 1209 | if ( (LA10_1=='/') ) { |
1195 | alt9=2; | 1210 | alt10=2; |
1196 | } | 1211 | } |
1197 | else if ( ((LA9_1>='\u0000' && LA9_1<='.')||(LA9_1>='0' && LA9_1<='\uFFFF')) ) { | 1212 | else if ( ((LA10_1>='\u0000' && LA10_1<='.')||(LA10_1>='0' && LA10_1<='\uFFFF')) ) { |
1198 | alt9=1; | 1213 | alt10=1; |
1199 | } | 1214 | } |
1200 | 1215 | ||
1201 | 1216 | ||
1202 | } | 1217 | } |
1203 | else if ( ((LA9_0>='\u0000' && LA9_0<=')')||(LA9_0>='+' && LA9_0<='\uFFFF')) ) { | 1218 | else if ( ((LA10_0>='\u0000' && LA10_0<=')')||(LA10_0>='+' && LA10_0<='\uFFFF')) ) { |
1204 | alt9=1; | 1219 | alt10=1; |
1205 | } | 1220 | } |
1206 | 1221 | ||
1207 | 1222 | ||
1208 | switch (alt9) { | 1223 | switch (alt10) { |
1209 | case 1 : | 1224 | case 1 : |
1210 | // InternalProblem.g:2437:52: . | 1225 | // InternalProblem.g:2386:52: . |
1211 | { | 1226 | { |
1212 | matchAny(); | 1227 | matchAny(); |
1213 | 1228 | ||
@@ -1215,7 +1230,7 @@ public class InternalProblemLexer extends Lexer { | |||
1215 | break; | 1230 | break; |
1216 | 1231 | ||
1217 | default : | 1232 | default : |
1218 | break loop9; | 1233 | break loop10; |
1219 | } | 1234 | } |
1220 | } while (true); | 1235 | } while (true); |
1221 | 1236 | ||
@@ -1237,22 +1252,22 @@ public class InternalProblemLexer extends Lexer { | |||
1237 | try { | 1252 | try { |
1238 | int _type = RULE_WS; | 1253 | int _type = RULE_WS; |
1239 | int _channel = DEFAULT_TOKEN_CHANNEL; | 1254 | int _channel = DEFAULT_TOKEN_CHANNEL; |
1240 | // InternalProblem.g:2439:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) | 1255 | // InternalProblem.g:2388:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) |
1241 | // InternalProblem.g:2439:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ | 1256 | // InternalProblem.g:2388:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ |
1242 | { | 1257 | { |
1243 | // InternalProblem.g:2439:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ | 1258 | // InternalProblem.g:2388:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ |
1244 | int cnt10=0; | 1259 | int cnt11=0; |
1245 | loop10: | 1260 | loop11: |
1246 | do { | 1261 | do { |
1247 | int alt10=2; | 1262 | int alt11=2; |
1248 | int LA10_0 = input.LA(1); | 1263 | int LA11_0 = input.LA(1); |
1249 | 1264 | ||
1250 | if ( ((LA10_0>='\t' && LA10_0<='\n')||LA10_0=='\r'||LA10_0==' ') ) { | 1265 | if ( ((LA11_0>='\t' && LA11_0<='\n')||LA11_0=='\r'||LA11_0==' ') ) { |
1251 | alt10=1; | 1266 | alt11=1; |
1252 | } | 1267 | } |
1253 | 1268 | ||
1254 | 1269 | ||
1255 | switch (alt10) { | 1270 | switch (alt11) { |
1256 | case 1 : | 1271 | case 1 : |
1257 | // InternalProblem.g: | 1272 | // InternalProblem.g: |
1258 | { | 1273 | { |
@@ -1270,12 +1285,12 @@ public class InternalProblemLexer extends Lexer { | |||
1270 | break; | 1285 | break; |
1271 | 1286 | ||
1272 | default : | 1287 | default : |
1273 | if ( cnt10 >= 1 ) break loop10; | 1288 | if ( cnt11 >= 1 ) break loop11; |
1274 | EarlyExitException eee = | 1289 | EarlyExitException eee = |
1275 | new EarlyExitException(10, input); | 1290 | new EarlyExitException(11, input); |
1276 | throw eee; | 1291 | throw eee; |
1277 | } | 1292 | } |
1278 | cnt10++; | 1293 | cnt11++; |
1279 | } while (true); | 1294 | } while (true); |
1280 | 1295 | ||
1281 | 1296 | ||
@@ -1294,8 +1309,8 @@ public class InternalProblemLexer extends Lexer { | |||
1294 | try { | 1309 | try { |
1295 | int _type = RULE_ANY_OTHER; | 1310 | int _type = RULE_ANY_OTHER; |
1296 | int _channel = DEFAULT_TOKEN_CHANNEL; | 1311 | int _channel = DEFAULT_TOKEN_CHANNEL; |
1297 | // InternalProblem.g:2441:16: ( . ) | 1312 | // InternalProblem.g:2390:16: ( . ) |
1298 | // InternalProblem.g:2441:18: . | 1313 | // InternalProblem.g:2390:18: . |
1299 | { | 1314 | { |
1300 | matchAny(); | 1315 | matchAny(); |
1301 | 1316 | ||
@@ -1310,313 +1325,306 @@ public class InternalProblemLexer extends Lexer { | |||
1310 | // $ANTLR end "RULE_ANY_OTHER" | 1325 | // $ANTLR end "RULE_ANY_OTHER" |
1311 | 1326 | ||
1312 | public void mTokens() throws RecognitionException { | 1327 | public void mTokens() throws RecognitionException { |
1313 | // InternalProblem.g:1:8: ( T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | RULE_ID | RULE_STRING | RULE_QUOTED_ID | RULE_SL_COMMENT | RULE_INT | RULE_ML_COMMENT | RULE_WS | RULE_ANY_OTHER ) | 1328 | // InternalProblem.g:1:8: ( T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | RULE_ID | RULE_EXPONENTIAL | RULE_STRING | RULE_QUOTED_ID | RULE_SL_COMMENT | RULE_INT | RULE_ML_COMMENT | RULE_WS | RULE_ANY_OTHER ) |
1314 | int alt11=44; | 1329 | int alt12=43; |
1315 | alt11 = dfa11.predict(input); | 1330 | alt12 = dfa12.predict(input); |
1316 | switch (alt11) { | 1331 | switch (alt12) { |
1317 | case 1 : | 1332 | case 1 : |
1318 | // InternalProblem.g:1:10: T__12 | 1333 | // InternalProblem.g:1:10: T__13 |
1319 | { | 1334 | { |
1320 | mT__12(); | 1335 | mT__13(); |
1321 | 1336 | ||
1322 | } | 1337 | } |
1323 | break; | 1338 | break; |
1324 | case 2 : | 1339 | case 2 : |
1325 | // InternalProblem.g:1:16: T__13 | 1340 | // InternalProblem.g:1:16: T__14 |
1326 | { | 1341 | { |
1327 | mT__13(); | 1342 | mT__14(); |
1328 | 1343 | ||
1329 | } | 1344 | } |
1330 | break; | 1345 | break; |
1331 | case 3 : | 1346 | case 3 : |
1332 | // InternalProblem.g:1:22: T__14 | 1347 | // InternalProblem.g:1:22: T__15 |
1333 | { | 1348 | { |
1334 | mT__14(); | 1349 | mT__15(); |
1335 | 1350 | ||
1336 | } | 1351 | } |
1337 | break; | 1352 | break; |
1338 | case 4 : | 1353 | case 4 : |
1339 | // InternalProblem.g:1:28: T__15 | 1354 | // InternalProblem.g:1:28: T__16 |
1340 | { | 1355 | { |
1341 | mT__15(); | 1356 | mT__16(); |
1342 | 1357 | ||
1343 | } | 1358 | } |
1344 | break; | 1359 | break; |
1345 | case 5 : | 1360 | case 5 : |
1346 | // InternalProblem.g:1:34: T__16 | 1361 | // InternalProblem.g:1:34: T__17 |
1347 | { | 1362 | { |
1348 | mT__16(); | 1363 | mT__17(); |
1349 | 1364 | ||
1350 | } | 1365 | } |
1351 | break; | 1366 | break; |
1352 | case 6 : | 1367 | case 6 : |
1353 | // InternalProblem.g:1:40: T__17 | 1368 | // InternalProblem.g:1:40: T__18 |
1354 | { | 1369 | { |
1355 | mT__17(); | 1370 | mT__18(); |
1356 | 1371 | ||
1357 | } | 1372 | } |
1358 | break; | 1373 | break; |
1359 | case 7 : | 1374 | case 7 : |
1360 | // InternalProblem.g:1:46: T__18 | 1375 | // InternalProblem.g:1:46: T__19 |
1361 | { | 1376 | { |
1362 | mT__18(); | 1377 | mT__19(); |
1363 | 1378 | ||
1364 | } | 1379 | } |
1365 | break; | 1380 | break; |
1366 | case 8 : | 1381 | case 8 : |
1367 | // InternalProblem.g:1:52: T__19 | 1382 | // InternalProblem.g:1:52: T__20 |
1368 | { | 1383 | { |
1369 | mT__19(); | 1384 | mT__20(); |
1370 | 1385 | ||
1371 | } | 1386 | } |
1372 | break; | 1387 | break; |
1373 | case 9 : | 1388 | case 9 : |
1374 | // InternalProblem.g:1:58: T__20 | 1389 | // InternalProblem.g:1:58: T__21 |
1375 | { | 1390 | { |
1376 | mT__20(); | 1391 | mT__21(); |
1377 | 1392 | ||
1378 | } | 1393 | } |
1379 | break; | 1394 | break; |
1380 | case 10 : | 1395 | case 10 : |
1381 | // InternalProblem.g:1:64: T__21 | 1396 | // InternalProblem.g:1:64: T__22 |
1382 | { | 1397 | { |
1383 | mT__21(); | 1398 | mT__22(); |
1384 | 1399 | ||
1385 | } | 1400 | } |
1386 | break; | 1401 | break; |
1387 | case 11 : | 1402 | case 11 : |
1388 | // InternalProblem.g:1:70: T__22 | 1403 | // InternalProblem.g:1:70: T__23 |
1389 | { | 1404 | { |
1390 | mT__22(); | 1405 | mT__23(); |
1391 | 1406 | ||
1392 | } | 1407 | } |
1393 | break; | 1408 | break; |
1394 | case 12 : | 1409 | case 12 : |
1395 | // InternalProblem.g:1:76: T__23 | 1410 | // InternalProblem.g:1:76: T__24 |
1396 | { | 1411 | { |
1397 | mT__23(); | 1412 | mT__24(); |
1398 | 1413 | ||
1399 | } | 1414 | } |
1400 | break; | 1415 | break; |
1401 | case 13 : | 1416 | case 13 : |
1402 | // InternalProblem.g:1:82: T__24 | 1417 | // InternalProblem.g:1:82: T__25 |
1403 | { | 1418 | { |
1404 | mT__24(); | 1419 | mT__25(); |
1405 | 1420 | ||
1406 | } | 1421 | } |
1407 | break; | 1422 | break; |
1408 | case 14 : | 1423 | case 14 : |
1409 | // InternalProblem.g:1:88: T__25 | 1424 | // InternalProblem.g:1:88: T__26 |
1410 | { | 1425 | { |
1411 | mT__25(); | 1426 | mT__26(); |
1412 | 1427 | ||
1413 | } | 1428 | } |
1414 | break; | 1429 | break; |
1415 | case 15 : | 1430 | case 15 : |
1416 | // InternalProblem.g:1:94: T__26 | 1431 | // InternalProblem.g:1:94: T__27 |
1417 | { | 1432 | { |
1418 | mT__26(); | 1433 | mT__27(); |
1419 | 1434 | ||
1420 | } | 1435 | } |
1421 | break; | 1436 | break; |
1422 | case 16 : | 1437 | case 16 : |
1423 | // InternalProblem.g:1:100: T__27 | 1438 | // InternalProblem.g:1:100: T__28 |
1424 | { | 1439 | { |
1425 | mT__27(); | 1440 | mT__28(); |
1426 | 1441 | ||
1427 | } | 1442 | } |
1428 | break; | 1443 | break; |
1429 | case 17 : | 1444 | case 17 : |
1430 | // InternalProblem.g:1:106: T__28 | 1445 | // InternalProblem.g:1:106: T__29 |
1431 | { | 1446 | { |
1432 | mT__28(); | 1447 | mT__29(); |
1433 | 1448 | ||
1434 | } | 1449 | } |
1435 | break; | 1450 | break; |
1436 | case 18 : | 1451 | case 18 : |
1437 | // InternalProblem.g:1:112: T__29 | 1452 | // InternalProblem.g:1:112: T__30 |
1438 | { | 1453 | { |
1439 | mT__29(); | 1454 | mT__30(); |
1440 | 1455 | ||
1441 | } | 1456 | } |
1442 | break; | 1457 | break; |
1443 | case 19 : | 1458 | case 19 : |
1444 | // InternalProblem.g:1:118: T__30 | 1459 | // InternalProblem.g:1:118: T__31 |
1445 | { | 1460 | { |
1446 | mT__30(); | 1461 | mT__31(); |
1447 | 1462 | ||
1448 | } | 1463 | } |
1449 | break; | 1464 | break; |
1450 | case 20 : | 1465 | case 20 : |
1451 | // InternalProblem.g:1:124: T__31 | 1466 | // InternalProblem.g:1:124: T__32 |
1452 | { | 1467 | { |
1453 | mT__31(); | 1468 | mT__32(); |
1454 | 1469 | ||
1455 | } | 1470 | } |
1456 | break; | 1471 | break; |
1457 | case 21 : | 1472 | case 21 : |
1458 | // InternalProblem.g:1:130: T__32 | 1473 | // InternalProblem.g:1:130: T__33 |
1459 | { | 1474 | { |
1460 | mT__32(); | 1475 | mT__33(); |
1461 | 1476 | ||
1462 | } | 1477 | } |
1463 | break; | 1478 | break; |
1464 | case 22 : | 1479 | case 22 : |
1465 | // InternalProblem.g:1:136: T__33 | 1480 | // InternalProblem.g:1:136: T__34 |
1466 | { | 1481 | { |
1467 | mT__33(); | 1482 | mT__34(); |
1468 | 1483 | ||
1469 | } | 1484 | } |
1470 | break; | 1485 | break; |
1471 | case 23 : | 1486 | case 23 : |
1472 | // InternalProblem.g:1:142: T__34 | 1487 | // InternalProblem.g:1:142: T__35 |
1473 | { | 1488 | { |
1474 | mT__34(); | 1489 | mT__35(); |
1475 | 1490 | ||
1476 | } | 1491 | } |
1477 | break; | 1492 | break; |
1478 | case 24 : | 1493 | case 24 : |
1479 | // InternalProblem.g:1:148: T__35 | 1494 | // InternalProblem.g:1:148: T__36 |
1480 | { | 1495 | { |
1481 | mT__35(); | 1496 | mT__36(); |
1482 | 1497 | ||
1483 | } | 1498 | } |
1484 | break; | 1499 | break; |
1485 | case 25 : | 1500 | case 25 : |
1486 | // InternalProblem.g:1:154: T__36 | 1501 | // InternalProblem.g:1:154: T__37 |
1487 | { | 1502 | { |
1488 | mT__36(); | 1503 | mT__37(); |
1489 | 1504 | ||
1490 | } | 1505 | } |
1491 | break; | 1506 | break; |
1492 | case 26 : | 1507 | case 26 : |
1493 | // InternalProblem.g:1:160: T__37 | 1508 | // InternalProblem.g:1:160: T__38 |
1494 | { | 1509 | { |
1495 | mT__37(); | 1510 | mT__38(); |
1496 | 1511 | ||
1497 | } | 1512 | } |
1498 | break; | 1513 | break; |
1499 | case 27 : | 1514 | case 27 : |
1500 | // InternalProblem.g:1:166: T__38 | 1515 | // InternalProblem.g:1:166: T__39 |
1501 | { | 1516 | { |
1502 | mT__38(); | 1517 | mT__39(); |
1503 | 1518 | ||
1504 | } | 1519 | } |
1505 | break; | 1520 | break; |
1506 | case 28 : | 1521 | case 28 : |
1507 | // InternalProblem.g:1:172: T__39 | 1522 | // InternalProblem.g:1:172: T__40 |
1508 | { | 1523 | { |
1509 | mT__39(); | 1524 | mT__40(); |
1510 | 1525 | ||
1511 | } | 1526 | } |
1512 | break; | 1527 | break; |
1513 | case 29 : | 1528 | case 29 : |
1514 | // InternalProblem.g:1:178: T__40 | 1529 | // InternalProblem.g:1:178: T__41 |
1515 | { | 1530 | { |
1516 | mT__40(); | 1531 | mT__41(); |
1517 | 1532 | ||
1518 | } | 1533 | } |
1519 | break; | 1534 | break; |
1520 | case 30 : | 1535 | case 30 : |
1521 | // InternalProblem.g:1:184: T__41 | 1536 | // InternalProblem.g:1:184: T__42 |
1522 | { | 1537 | { |
1523 | mT__41(); | 1538 | mT__42(); |
1524 | 1539 | ||
1525 | } | 1540 | } |
1526 | break; | 1541 | break; |
1527 | case 31 : | 1542 | case 31 : |
1528 | // InternalProblem.g:1:190: T__42 | 1543 | // InternalProblem.g:1:190: T__43 |
1529 | { | 1544 | { |
1530 | mT__42(); | 1545 | mT__43(); |
1531 | 1546 | ||
1532 | } | 1547 | } |
1533 | break; | 1548 | break; |
1534 | case 32 : | 1549 | case 32 : |
1535 | // InternalProblem.g:1:196: T__43 | 1550 | // InternalProblem.g:1:196: T__44 |
1536 | { | 1551 | { |
1537 | mT__43(); | 1552 | mT__44(); |
1538 | 1553 | ||
1539 | } | 1554 | } |
1540 | break; | 1555 | break; |
1541 | case 33 : | 1556 | case 33 : |
1542 | // InternalProblem.g:1:202: T__44 | 1557 | // InternalProblem.g:1:202: T__45 |
1543 | { | 1558 | { |
1544 | mT__44(); | 1559 | mT__45(); |
1545 | 1560 | ||
1546 | } | 1561 | } |
1547 | break; | 1562 | break; |
1548 | case 34 : | 1563 | case 34 : |
1549 | // InternalProblem.g:1:208: T__45 | 1564 | // InternalProblem.g:1:208: T__46 |
1550 | { | 1565 | { |
1551 | mT__45(); | 1566 | mT__46(); |
1552 | 1567 | ||
1553 | } | 1568 | } |
1554 | break; | 1569 | break; |
1555 | case 35 : | 1570 | case 35 : |
1556 | // InternalProblem.g:1:214: T__46 | 1571 | // InternalProblem.g:1:214: RULE_ID |
1557 | { | 1572 | { |
1558 | mT__46(); | 1573 | mRULE_ID(); |
1559 | 1574 | ||
1560 | } | 1575 | } |
1561 | break; | 1576 | break; |
1562 | case 36 : | 1577 | case 36 : |
1563 | // InternalProblem.g:1:220: T__47 | 1578 | // InternalProblem.g:1:222: RULE_EXPONENTIAL |
1564 | { | 1579 | { |
1565 | mT__47(); | 1580 | mRULE_EXPONENTIAL(); |
1566 | 1581 | ||
1567 | } | 1582 | } |
1568 | break; | 1583 | break; |
1569 | case 37 : | 1584 | case 37 : |
1570 | // InternalProblem.g:1:226: RULE_ID | 1585 | // InternalProblem.g:1:239: RULE_STRING |
1571 | { | ||
1572 | mRULE_ID(); | ||
1573 | |||
1574 | } | ||
1575 | break; | ||
1576 | case 38 : | ||
1577 | // InternalProblem.g:1:234: RULE_STRING | ||
1578 | { | 1586 | { |
1579 | mRULE_STRING(); | 1587 | mRULE_STRING(); |
1580 | 1588 | ||
1581 | } | 1589 | } |
1582 | break; | 1590 | break; |
1583 | case 39 : | 1591 | case 38 : |
1584 | // InternalProblem.g:1:246: RULE_QUOTED_ID | 1592 | // InternalProblem.g:1:251: RULE_QUOTED_ID |
1585 | { | 1593 | { |
1586 | mRULE_QUOTED_ID(); | 1594 | mRULE_QUOTED_ID(); |
1587 | 1595 | ||
1588 | } | 1596 | } |
1589 | break; | 1597 | break; |
1590 | case 40 : | 1598 | case 39 : |
1591 | // InternalProblem.g:1:261: RULE_SL_COMMENT | 1599 | // InternalProblem.g:1:266: RULE_SL_COMMENT |
1592 | { | 1600 | { |
1593 | mRULE_SL_COMMENT(); | 1601 | mRULE_SL_COMMENT(); |
1594 | 1602 | ||
1595 | } | 1603 | } |
1596 | break; | 1604 | break; |
1597 | case 41 : | 1605 | case 40 : |
1598 | // InternalProblem.g:1:277: RULE_INT | 1606 | // InternalProblem.g:1:282: RULE_INT |
1599 | { | 1607 | { |
1600 | mRULE_INT(); | 1608 | mRULE_INT(); |
1601 | 1609 | ||
1602 | } | 1610 | } |
1603 | break; | 1611 | break; |
1604 | case 42 : | 1612 | case 41 : |
1605 | // InternalProblem.g:1:286: RULE_ML_COMMENT | 1613 | // InternalProblem.g:1:291: RULE_ML_COMMENT |
1606 | { | 1614 | { |
1607 | mRULE_ML_COMMENT(); | 1615 | mRULE_ML_COMMENT(); |
1608 | 1616 | ||
1609 | } | 1617 | } |
1610 | break; | 1618 | break; |
1611 | case 43 : | 1619 | case 42 : |
1612 | // InternalProblem.g:1:302: RULE_WS | 1620 | // InternalProblem.g:1:307: RULE_WS |
1613 | { | 1621 | { |
1614 | mRULE_WS(); | 1622 | mRULE_WS(); |
1615 | 1623 | ||
1616 | } | 1624 | } |
1617 | break; | 1625 | break; |
1618 | case 44 : | 1626 | case 43 : |
1619 | // InternalProblem.g:1:310: RULE_ANY_OTHER | 1627 | // InternalProblem.g:1:315: RULE_ANY_OTHER |
1620 | { | 1628 | { |
1621 | mRULE_ANY_OTHER(); | 1629 | mRULE_ANY_OTHER(); |
1622 | 1630 | ||
@@ -1628,98 +1636,98 @@ public class InternalProblemLexer extends Lexer { | |||
1628 | } | 1636 | } |
1629 | 1637 | ||
1630 | 1638 | ||
1631 | protected DFA11 dfa11 = new DFA11(this); | 1639 | protected DFA12 dfa12 = new DFA12(this); |
1632 | static final String DFA11_eotS = | 1640 | static final String DFA12_eotS = |
1633 | "\1\uffff\1\45\1\47\2\45\1\56\4\uffff\1\45\2\uffff\1\45\2\uffff\1\73\1\uffff\1\76\1\45\2\uffff\2\45\1\104\1\uffff\1\45\2\uffff\2\43\1\uffff\1\43\3\uffff\1\45\3\uffff\6\45\5\uffff\1\45\2\uffff\1\45\10\uffff\1\45\2\uffff\2\45\2\uffff\1\45\7\uffff\17\45\1\153\4\45\1\160\4\45\1\165\3\45\1\uffff\1\45\1\172\2\45\1\uffff\1\175\2\45\1\u0080\1\uffff\1\u0081\3\45\1\uffff\2\45\1\uffff\1\u0087\1\45\2\uffff\1\45\1\u008a\2\45\1\u008d\1\uffff\1\45\1\u008f\1\uffff\1\u0090\1\u0091\1\uffff\1\u0092\4\uffff"; | 1641 | "\1\uffff\1\44\1\46\3\44\4\uffff\1\44\2\uffff\1\44\2\uffff\1\71\1\uffff\1\74\1\44\2\uffff\2\44\1\uffff\1\44\2\uffff\1\105\2\42\1\uffff\1\42\2\uffff\1\44\3\uffff\6\44\4\uffff\1\44\2\uffff\1\44\10\uffff\1\44\2\uffff\2\44\1\uffff\1\44\2\uffff\1\105\6\uffff\17\44\1\152\4\44\1\157\4\44\1\164\3\44\1\uffff\1\44\1\171\2\44\1\uffff\1\174\2\44\1\177\1\uffff\1\u0080\3\44\1\uffff\2\44\1\uffff\1\u0086\1\44\2\uffff\1\44\1\u0089\2\44\1\u008c\1\uffff\1\44\1\u008e\1\uffff\1\u008f\1\u0090\1\uffff\1\u0091\4\uffff"; |
1634 | static final String DFA11_eofS = | 1642 | static final String DFA12_eofS = |
1635 | "\u0093\uffff"; | 1643 | "\u0092\uffff"; |
1636 | static final String DFA11_minS = | 1644 | static final String DFA12_minS = |
1637 | "\1\0\1\162\1\56\1\142\1\154\1\60\4\uffff\1\145\2\uffff\1\160\2\uffff\1\55\1\uffff\1\75\1\143\2\uffff\1\162\1\141\1\60\1\uffff\1\156\2\uffff\2\0\1\uffff\1\52\3\uffff\1\145\3\uffff\1\163\1\141\1\156\1\164\1\165\1\162\5\uffff\1\146\2\uffff\1\160\10\uffff\1\157\2\uffff\1\165\1\154\2\uffff\1\153\7\uffff\1\142\1\144\1\164\1\163\1\164\1\145\1\155\1\157\1\145\1\157\1\160\1\145\1\163\1\156\1\154\1\60\1\162\1\163\1\141\1\156\1\60\2\162\1\163\1\145\1\60\1\145\1\157\1\145\1\uffff\1\141\1\60\1\151\1\144\1\uffff\1\60\1\163\1\151\1\60\1\uffff\1\60\1\167\1\155\1\143\1\uffff\1\156\1\163\1\uffff\1\60\1\164\2\uffff\1\156\1\60\1\164\1\163\1\60\1\uffff\1\145\1\60\1\uffff\2\60\1\uffff\1\60\4\uffff"; | 1645 | "\1\0\1\162\1\56\1\142\1\154\1\156\4\uffff\1\145\2\uffff\1\160\2\uffff\1\55\1\uffff\1\75\1\143\2\uffff\1\162\1\141\1\uffff\1\156\2\uffff\1\60\2\0\1\uffff\1\52\2\uffff\1\145\3\uffff\1\163\1\141\1\156\1\164\1\165\1\162\4\uffff\1\146\2\uffff\1\160\10\uffff\1\157\2\uffff\1\165\1\154\1\uffff\1\153\2\uffff\1\60\6\uffff\1\142\1\144\1\164\1\163\1\164\1\145\1\155\1\157\1\145\1\157\1\160\1\145\1\163\1\156\1\154\1\60\1\162\1\163\1\141\1\156\1\60\2\162\1\163\1\145\1\60\1\145\1\157\1\145\1\uffff\1\141\1\60\1\151\1\144\1\uffff\1\60\1\163\1\151\1\60\1\uffff\1\60\1\167\1\155\1\143\1\uffff\1\156\1\163\1\uffff\1\60\1\164\2\uffff\1\156\1\60\1\164\1\163\1\60\1\uffff\1\145\1\60\1\uffff\2\60\1\uffff\1\60\4\uffff"; |
1638 | static final String DFA11_maxS = | 1646 | static final String DFA12_maxS = |
1639 | "\1\uffff\1\162\1\56\1\142\1\157\1\172\4\uffff\1\145\2\uffff\1\160\2\uffff\1\72\1\uffff\1\75\1\143\2\uffff\1\162\1\141\1\172\1\uffff\1\156\2\uffff\2\uffff\1\uffff\1\57\3\uffff\1\157\3\uffff\1\163\1\141\1\156\1\164\1\165\1\162\5\uffff\1\146\2\uffff\1\160\10\uffff\1\157\2\uffff\1\165\1\154\2\uffff\1\153\7\uffff\1\142\1\144\1\164\1\163\1\164\1\145\1\155\1\157\1\145\1\157\1\160\1\145\1\163\1\156\1\154\1\172\1\162\1\163\1\141\1\156\1\172\2\162\1\163\1\145\1\172\1\145\1\157\1\145\1\uffff\1\141\1\172\1\151\1\144\1\uffff\1\172\1\163\1\151\1\172\1\uffff\1\172\1\167\1\155\1\143\1\uffff\1\156\1\163\1\uffff\1\172\1\164\2\uffff\1\156\1\172\1\164\1\163\1\172\1\uffff\1\145\1\172\1\uffff\2\172\1\uffff\1\172\4\uffff"; | 1647 | "\1\uffff\1\162\1\56\1\142\1\157\1\170\4\uffff\1\145\2\uffff\1\160\2\uffff\1\72\1\uffff\1\75\1\143\2\uffff\1\162\1\141\1\uffff\1\156\2\uffff\1\145\2\uffff\1\uffff\1\57\2\uffff\1\157\3\uffff\1\163\1\141\1\156\1\164\1\165\1\162\4\uffff\1\146\2\uffff\1\160\10\uffff\1\157\2\uffff\1\165\1\154\1\uffff\1\153\2\uffff\1\145\6\uffff\1\142\1\144\1\164\1\163\1\164\1\145\1\155\1\157\1\145\1\157\1\160\1\145\1\163\1\156\1\154\1\172\1\162\1\163\1\141\1\156\1\172\2\162\1\163\1\145\1\172\1\145\1\157\1\145\1\uffff\1\141\1\172\1\151\1\144\1\uffff\1\172\1\163\1\151\1\172\1\uffff\1\172\1\167\1\155\1\143\1\uffff\1\156\1\163\1\uffff\1\172\1\164\2\uffff\1\156\1\172\1\164\1\163\1\172\1\uffff\1\145\1\172\1\uffff\2\172\1\uffff\1\172\4\uffff"; |
1640 | static final String DFA11_acceptS = | 1648 | static final String DFA12_acceptS = |
1641 | "\6\uffff\1\6\1\7\1\10\1\11\1\uffff\1\15\1\16\1\uffff\1\22\1\23\1\uffff\1\25\2\uffff\1\32\1\34\3\uffff\1\42\1\uffff\1\44\1\45\2\uffff\1\50\1\uffff\1\51\1\53\1\54\1\uffff\1\45\1\33\1\2\6\uffff\1\40\1\6\1\7\1\10\1\11\1\uffff\1\15\1\16\1\uffff\1\22\1\23\1\24\1\35\1\27\1\25\1\31\1\26\1\uffff\1\32\1\34\2\uffff\1\41\1\42\1\uffff\1\44\1\46\1\47\1\50\1\52\1\51\1\53\35\uffff\1\21\4\uffff\1\12\4\uffff\1\36\4\uffff\1\4\2\uffff\1\20\2\uffff\1\30\1\37\5\uffff\1\14\2\uffff\1\1\2\uffff\1\5\1\uffff\1\43\1\3\1\13\1\17"; | 1649 | "\6\uffff\1\6\1\7\1\10\1\11\1\uffff\1\15\1\16\1\uffff\1\22\1\23\1\uffff\1\25\2\uffff\1\32\1\34\2\uffff\1\40\1\uffff\1\42\1\43\3\uffff\1\47\1\uffff\1\52\1\53\1\uffff\1\43\1\33\1\2\6\uffff\1\6\1\7\1\10\1\11\1\uffff\1\15\1\16\1\uffff\1\22\1\23\1\24\1\35\1\27\1\25\1\31\1\26\1\uffff\1\32\1\34\2\uffff\1\40\1\uffff\1\42\1\50\1\uffff\1\44\1\45\1\46\1\47\1\51\1\52\35\uffff\1\21\4\uffff\1\12\4\uffff\1\36\4\uffff\1\4\2\uffff\1\20\2\uffff\1\30\1\37\5\uffff\1\14\2\uffff\1\1\2\uffff\1\5\1\uffff\1\41\1\3\1\13\1\17"; |
1642 | static final String DFA11_specialS = | 1650 | static final String DFA12_specialS = |
1643 | "\1\1\34\uffff\1\2\1\0\164\uffff}>"; | 1651 | "\1\2\34\uffff\1\0\1\1\163\uffff}>"; |
1644 | static final String[] DFA11_transitionS = { | 1652 | static final String[] DFA12_transitionS = { |
1645 | "\11\43\2\42\2\43\1\42\22\43\1\42\1\21\1\35\2\43\1\37\1\43\1\36\1\16\1\17\1\25\1\22\1\6\1\31\1\2\1\40\12\41\1\20\1\10\1\43\1\24\1\43\1\33\1\43\4\34\1\30\25\34\1\13\1\43\1\14\1\43\1\34\1\43\1\3\1\34\1\4\1\34\1\5\1\27\10\34\1\15\1\1\1\34\1\12\1\23\1\26\1\32\5\34\1\7\1\43\1\11\uff82\43", | 1653 | "\11\42\2\41\2\42\1\41\22\42\1\41\1\21\1\35\2\42\1\37\1\42\1\36\1\16\1\17\1\25\1\22\1\6\1\30\1\2\1\40\12\34\1\20\1\10\1\42\1\24\1\42\1\32\1\42\32\33\1\13\1\42\1\14\1\42\1\33\1\42\1\3\1\33\1\4\1\33\1\5\1\27\10\33\1\15\1\1\1\33\1\12\1\23\1\26\1\31\5\33\1\7\1\42\1\11\uff82\42", |
1646 | "\1\44", | 1654 | "\1\43", |
1647 | "\1\46", | 1655 | "\1\45", |
1648 | "\1\50", | 1656 | "\1\47", |
1649 | "\1\51\2\uffff\1\52", | 1657 | "\1\50\2\uffff\1\51", |
1650 | "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\15\45\1\54\3\45\1\55\5\45\1\53\2\45", | 1658 | "\1\53\3\uffff\1\54\5\uffff\1\52", |
1651 | "", | 1659 | "", |
1652 | "", | 1660 | "", |
1653 | "", | 1661 | "", |
1654 | "", | 1662 | "", |
1655 | "\1\63", | 1663 | "\1\61", |
1656 | "", | 1664 | "", |
1657 | "", | 1665 | "", |
1658 | "\1\66", | 1666 | "\1\64", |
1659 | "", | 1667 | "", |
1660 | "", | 1668 | "", |
1661 | "\1\71\14\uffff\1\72", | 1669 | "\1\67\14\uffff\1\70", |
1662 | "", | 1670 | "", |
1671 | "\1\73", | ||
1663 | "\1\75", | 1672 | "\1\75", |
1664 | "\1\77", | ||
1665 | "", | 1673 | "", |
1666 | "", | 1674 | "", |
1667 | "\1\102", | 1675 | "\1\100", |
1668 | "\1\103", | 1676 | "\1\101", |
1669 | "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", | ||
1670 | "", | 1677 | "", |
1671 | "\1\106", | 1678 | "\1\103", |
1672 | "", | 1679 | "", |
1673 | "", | 1680 | "", |
1681 | "\12\106\13\uffff\1\107\37\uffff\1\107", | ||
1674 | "\0\110", | 1682 | "\0\110", |
1675 | "\0\111", | 1683 | "\0\111", |
1676 | "", | 1684 | "", |
1677 | "\1\113\4\uffff\1\112", | 1685 | "\1\113\4\uffff\1\112", |
1678 | "", | 1686 | "", |
1679 | "", | 1687 | "", |
1680 | "", | 1688 | "\1\116\11\uffff\1\115", |
1681 | "\1\117\11\uffff\1\116", | ||
1682 | "", | 1689 | "", |
1683 | "", | 1690 | "", |
1684 | "", | 1691 | "", |
1692 | "\1\117", | ||
1685 | "\1\120", | 1693 | "\1\120", |
1686 | "\1\121", | 1694 | "\1\121", |
1687 | "\1\122", | 1695 | "\1\122", |
1688 | "\1\123", | 1696 | "\1\123", |
1689 | "\1\124", | 1697 | "\1\124", |
1690 | "\1\125", | ||
1691 | "", | 1698 | "", |
1692 | "", | 1699 | "", |
1693 | "", | 1700 | "", |
1694 | "", | 1701 | "", |
1702 | "\1\125", | ||
1703 | "", | ||
1695 | "", | 1704 | "", |
1696 | "\1\126", | 1705 | "\1\126", |
1697 | "", | 1706 | "", |
1698 | "", | 1707 | "", |
1699 | "\1\127", | ||
1700 | "", | 1708 | "", |
1701 | "", | 1709 | "", |
1702 | "", | 1710 | "", |
1703 | "", | 1711 | "", |
1704 | "", | 1712 | "", |
1705 | "", | 1713 | "", |
1714 | "\1\127", | ||
1706 | "", | 1715 | "", |
1707 | "", | 1716 | "", |
1708 | "\1\130", | 1717 | "\1\130", |
1709 | "", | ||
1710 | "", | ||
1711 | "\1\131", | 1718 | "\1\131", |
1712 | "\1\132", | ||
1713 | "", | 1719 | "", |
1720 | "\1\132", | ||
1714 | "", | 1721 | "", |
1715 | "\1\133", | ||
1716 | "", | 1722 | "", |
1723 | "\12\106\13\uffff\1\107\37\uffff\1\107", | ||
1717 | "", | 1724 | "", |
1718 | "", | 1725 | "", |
1719 | "", | 1726 | "", |
1720 | "", | 1727 | "", |
1721 | "", | 1728 | "", |
1722 | "", | 1729 | "", |
1730 | "\1\133", | ||
1723 | "\1\134", | 1731 | "\1\134", |
1724 | "\1\135", | 1732 | "\1\135", |
1725 | "\1\136", | 1733 | "\1\136", |
@@ -1734,198 +1742,195 @@ public class InternalProblemLexer extends Lexer { | |||
1734 | "\1\147", | 1742 | "\1\147", |
1735 | "\1\150", | 1743 | "\1\150", |
1736 | "\1\151", | 1744 | "\1\151", |
1737 | "\1\152", | 1745 | "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44", |
1738 | "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", | 1746 | "\1\153", |
1739 | "\1\154", | 1747 | "\1\154", |
1740 | "\1\155", | 1748 | "\1\155", |
1741 | "\1\156", | 1749 | "\1\156", |
1742 | "\1\157", | 1750 | "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44", |
1743 | "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", | 1751 | "\1\160", |
1744 | "\1\161", | 1752 | "\1\161", |
1745 | "\1\162", | 1753 | "\1\162", |
1746 | "\1\163", | 1754 | "\1\163", |
1747 | "\1\164", | 1755 | "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44", |
1748 | "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", | 1756 | "\1\165", |
1749 | "\1\166", | 1757 | "\1\166", |
1750 | "\1\167", | 1758 | "\1\167", |
1751 | "\1\170", | ||
1752 | "", | 1759 | "", |
1753 | "\1\171", | 1760 | "\1\170", |
1754 | "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", | 1761 | "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44", |
1762 | "\1\172", | ||
1755 | "\1\173", | 1763 | "\1\173", |
1756 | "\1\174", | ||
1757 | "", | 1764 | "", |
1758 | "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", | 1765 | "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44", |
1766 | "\1\175", | ||
1759 | "\1\176", | 1767 | "\1\176", |
1760 | "\1\177", | 1768 | "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44", |
1761 | "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", | ||
1762 | "", | 1769 | "", |
1763 | "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", | 1770 | "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44", |
1771 | "\1\u0081", | ||
1764 | "\1\u0082", | 1772 | "\1\u0082", |
1765 | "\1\u0083", | 1773 | "\1\u0083", |
1766 | "\1\u0084", | ||
1767 | "", | 1774 | "", |
1775 | "\1\u0084", | ||
1768 | "\1\u0085", | 1776 | "\1\u0085", |
1769 | "\1\u0086", | ||
1770 | "", | 1777 | "", |
1771 | "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", | 1778 | "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44", |
1772 | "\1\u0088", | 1779 | "\1\u0087", |
1773 | "", | 1780 | "", |
1774 | "", | 1781 | "", |
1775 | "\1\u0089", | 1782 | "\1\u0088", |
1776 | "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", | 1783 | "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44", |
1784 | "\1\u008a", | ||
1777 | "\1\u008b", | 1785 | "\1\u008b", |
1778 | "\1\u008c", | 1786 | "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44", |
1779 | "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", | ||
1780 | "", | 1787 | "", |
1781 | "\1\u008e", | 1788 | "\1\u008d", |
1782 | "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", | 1789 | "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44", |
1783 | "", | 1790 | "", |
1784 | "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", | 1791 | "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44", |
1785 | "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", | 1792 | "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44", |
1786 | "", | 1793 | "", |
1787 | "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", | 1794 | "\12\44\7\uffff\32\44\4\uffff\1\44\1\uffff\32\44", |
1788 | "", | 1795 | "", |
1789 | "", | 1796 | "", |
1790 | "", | 1797 | "", |
1791 | "" | 1798 | "" |
1792 | }; | 1799 | }; |
1793 | 1800 | ||
1794 | static final short[] DFA11_eot = DFA.unpackEncodedString(DFA11_eotS); | 1801 | static final short[] DFA12_eot = DFA.unpackEncodedString(DFA12_eotS); |
1795 | static final short[] DFA11_eof = DFA.unpackEncodedString(DFA11_eofS); | 1802 | static final short[] DFA12_eof = DFA.unpackEncodedString(DFA12_eofS); |
1796 | static final char[] DFA11_min = DFA.unpackEncodedStringToUnsignedChars(DFA11_minS); | 1803 | static final char[] DFA12_min = DFA.unpackEncodedStringToUnsignedChars(DFA12_minS); |
1797 | static final char[] DFA11_max = DFA.unpackEncodedStringToUnsignedChars(DFA11_maxS); | 1804 | static final char[] DFA12_max = DFA.unpackEncodedStringToUnsignedChars(DFA12_maxS); |
1798 | static final short[] DFA11_accept = DFA.unpackEncodedString(DFA11_acceptS); | 1805 | static final short[] DFA12_accept = DFA.unpackEncodedString(DFA12_acceptS); |
1799 | static final short[] DFA11_special = DFA.unpackEncodedString(DFA11_specialS); | 1806 | static final short[] DFA12_special = DFA.unpackEncodedString(DFA12_specialS); |
1800 | static final short[][] DFA11_transition; | 1807 | static final short[][] DFA12_transition; |
1801 | 1808 | ||
1802 | static { | 1809 | static { |
1803 | int numStates = DFA11_transitionS.length; | 1810 | int numStates = DFA12_transitionS.length; |
1804 | DFA11_transition = new short[numStates][]; | 1811 | DFA12_transition = new short[numStates][]; |
1805 | for (int i=0; i<numStates; i++) { | 1812 | for (int i=0; i<numStates; i++) { |
1806 | DFA11_transition[i] = DFA.unpackEncodedString(DFA11_transitionS[i]); | 1813 | DFA12_transition[i] = DFA.unpackEncodedString(DFA12_transitionS[i]); |
1807 | } | 1814 | } |
1808 | } | 1815 | } |
1809 | 1816 | ||
1810 | class DFA11 extends DFA { | 1817 | class DFA12 extends DFA { |
1811 | 1818 | ||
1812 | public DFA11(BaseRecognizer recognizer) { | 1819 | public DFA12(BaseRecognizer recognizer) { |
1813 | this.recognizer = recognizer; | 1820 | this.recognizer = recognizer; |
1814 | this.decisionNumber = 11; | 1821 | this.decisionNumber = 12; |
1815 | this.eot = DFA11_eot; | 1822 | this.eot = DFA12_eot; |
1816 | this.eof = DFA11_eof; | 1823 | this.eof = DFA12_eof; |
1817 | this.min = DFA11_min; | 1824 | this.min = DFA12_min; |
1818 | this.max = DFA11_max; | 1825 | this.max = DFA12_max; |
1819 | this.accept = DFA11_accept; | 1826 | this.accept = DFA12_accept; |
1820 | this.special = DFA11_special; | 1827 | this.special = DFA12_special; |
1821 | this.transition = DFA11_transition; | 1828 | this.transition = DFA12_transition; |
1822 | } | 1829 | } |
1823 | public String getDescription() { | 1830 | public String getDescription() { |
1824 | return "1:1: Tokens : ( T__12 | T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | T__47 | RULE_ID | RULE_STRING | RULE_QUOTED_ID | RULE_SL_COMMENT | RULE_INT | RULE_ML_COMMENT | RULE_WS | RULE_ANY_OTHER );"; | 1831 | return "1:1: Tokens : ( T__13 | T__14 | T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | T__25 | T__26 | T__27 | T__28 | T__29 | T__30 | T__31 | T__32 | T__33 | T__34 | T__35 | T__36 | T__37 | T__38 | T__39 | T__40 | T__41 | T__42 | T__43 | T__44 | T__45 | T__46 | RULE_ID | RULE_EXPONENTIAL | RULE_STRING | RULE_QUOTED_ID | RULE_SL_COMMENT | RULE_INT | RULE_ML_COMMENT | RULE_WS | RULE_ANY_OTHER );"; |
1825 | } | 1832 | } |
1826 | public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { | 1833 | public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { |
1827 | IntStream input = _input; | 1834 | IntStream input = _input; |
1828 | int _s = s; | 1835 | int _s = s; |
1829 | switch ( s ) { | 1836 | switch ( s ) { |
1830 | case 0 : | 1837 | case 0 : |
1831 | int LA11_30 = input.LA(1); | 1838 | int LA12_29 = input.LA(1); |
1832 | 1839 | ||
1833 | s = -1; | 1840 | s = -1; |
1834 | if ( ((LA11_30>='\u0000' && LA11_30<='\uFFFF')) ) {s = 73;} | 1841 | if ( ((LA12_29>='\u0000' && LA12_29<='\uFFFF')) ) {s = 72;} |
1835 | 1842 | ||
1836 | else s = 35; | 1843 | else s = 34; |
1837 | 1844 | ||
1838 | if ( s>=0 ) return s; | 1845 | if ( s>=0 ) return s; |
1839 | break; | 1846 | break; |
1840 | case 1 : | 1847 | case 1 : |
1841 | int LA11_0 = input.LA(1); | 1848 | int LA12_30 = input.LA(1); |
1842 | 1849 | ||
1843 | s = -1; | 1850 | s = -1; |
1844 | if ( (LA11_0=='p') ) {s = 1;} | 1851 | if ( ((LA12_30>='\u0000' && LA12_30<='\uFFFF')) ) {s = 73;} |
1845 | 1852 | ||
1846 | else if ( (LA11_0=='.') ) {s = 2;} | 1853 | else s = 34; |
1847 | 1854 | ||
1848 | else if ( (LA11_0=='a') ) {s = 3;} | 1855 | if ( s>=0 ) return s; |
1849 | 1856 | break; | |
1850 | else if ( (LA11_0=='c') ) {s = 4;} | 1857 | case 2 : |
1858 | int LA12_0 = input.LA(1); | ||
1851 | 1859 | ||
1852 | else if ( (LA11_0=='e') ) {s = 5;} | 1860 | s = -1; |
1861 | if ( (LA12_0=='p') ) {s = 1;} | ||
1853 | 1862 | ||
1854 | else if ( (LA11_0==',') ) {s = 6;} | 1863 | else if ( (LA12_0=='.') ) {s = 2;} |
1855 | 1864 | ||
1856 | else if ( (LA11_0=='{') ) {s = 7;} | 1865 | else if ( (LA12_0=='a') ) {s = 3;} |
1857 | 1866 | ||
1858 | else if ( (LA11_0==';') ) {s = 8;} | 1867 | else if ( (LA12_0=='c') ) {s = 4;} |
1859 | 1868 | ||
1860 | else if ( (LA11_0=='}') ) {s = 9;} | 1869 | else if ( (LA12_0=='e') ) {s = 5;} |
1861 | 1870 | ||
1862 | else if ( (LA11_0=='r') ) {s = 10;} | 1871 | else if ( (LA12_0==',') ) {s = 6;} |
1863 | 1872 | ||
1864 | else if ( (LA11_0=='[') ) {s = 11;} | 1873 | else if ( (LA12_0=='{') ) {s = 7;} |
1865 | 1874 | ||
1866 | else if ( (LA11_0==']') ) {s = 12;} | 1875 | else if ( (LA12_0==';') ) {s = 8;} |
1867 | 1876 | ||
1868 | else if ( (LA11_0=='o') ) {s = 13;} | 1877 | else if ( (LA12_0=='}') ) {s = 9;} |
1869 | 1878 | ||
1870 | else if ( (LA11_0=='(') ) {s = 14;} | 1879 | else if ( (LA12_0=='r') ) {s = 10;} |
1871 | 1880 | ||
1872 | else if ( (LA11_0==')') ) {s = 15;} | 1881 | else if ( (LA12_0=='[') ) {s = 11;} |
1873 | 1882 | ||
1874 | else if ( (LA11_0==':') ) {s = 16;} | 1883 | else if ( (LA12_0==']') ) {s = 12;} |
1875 | 1884 | ||
1876 | else if ( (LA11_0=='!') ) {s = 17;} | 1885 | else if ( (LA12_0=='o') ) {s = 13;} |
1877 | 1886 | ||
1878 | else if ( (LA11_0=='+') ) {s = 18;} | 1887 | else if ( (LA12_0=='(') ) {s = 14;} |
1879 | 1888 | ||
1880 | else if ( (LA11_0=='s') ) {s = 19;} | 1889 | else if ( (LA12_0==')') ) {s = 15;} |
1881 | 1890 | ||
1882 | else if ( (LA11_0=='=') ) {s = 20;} | 1891 | else if ( (LA12_0==':') ) {s = 16;} |
1883 | 1892 | ||
1884 | else if ( (LA11_0=='*') ) {s = 21;} | 1893 | else if ( (LA12_0=='!') ) {s = 17;} |
1885 | 1894 | ||
1886 | else if ( (LA11_0=='t') ) {s = 22;} | 1895 | else if ( (LA12_0=='+') ) {s = 18;} |
1887 | 1896 | ||
1888 | else if ( (LA11_0=='f') ) {s = 23;} | 1897 | else if ( (LA12_0=='s') ) {s = 19;} |
1889 | 1898 | ||
1890 | else if ( (LA11_0=='E') ) {s = 24;} | 1899 | else if ( (LA12_0=='=') ) {s = 20;} |
1891 | 1900 | ||
1892 | else if ( (LA11_0=='-') ) {s = 25;} | 1901 | else if ( (LA12_0=='*') ) {s = 21;} |
1893 | 1902 | ||
1894 | else if ( (LA11_0=='u') ) {s = 26;} | 1903 | else if ( (LA12_0=='t') ) {s = 22;} |
1895 | 1904 | ||
1896 | else if ( (LA11_0=='?') ) {s = 27;} | 1905 | else if ( (LA12_0=='f') ) {s = 23;} |
1897 | 1906 | ||
1898 | else if ( ((LA11_0>='A' && LA11_0<='D')||(LA11_0>='F' && LA11_0<='Z')||LA11_0=='_'||LA11_0=='b'||LA11_0=='d'||(LA11_0>='g' && LA11_0<='n')||LA11_0=='q'||(LA11_0>='v' && LA11_0<='z')) ) {s = 28;} | 1907 | else if ( (LA12_0=='-') ) {s = 24;} |
1899 | 1908 | ||
1900 | else if ( (LA11_0=='\"') ) {s = 29;} | 1909 | else if ( (LA12_0=='u') ) {s = 25;} |
1901 | 1910 | ||
1902 | else if ( (LA11_0=='\'') ) {s = 30;} | 1911 | else if ( (LA12_0=='?') ) {s = 26;} |
1903 | 1912 | ||
1904 | else if ( (LA11_0=='%') ) {s = 31;} | 1913 | else if ( ((LA12_0>='A' && LA12_0<='Z')||LA12_0=='_'||LA12_0=='b'||LA12_0=='d'||(LA12_0>='g' && LA12_0<='n')||LA12_0=='q'||(LA12_0>='v' && LA12_0<='z')) ) {s = 27;} |
1905 | 1914 | ||
1906 | else if ( (LA11_0=='/') ) {s = 32;} | 1915 | else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 28;} |
1907 | 1916 | ||
1908 | else if ( ((LA11_0>='0' && LA11_0<='9')) ) {s = 33;} | 1917 | else if ( (LA12_0=='\"') ) {s = 29;} |
1909 | 1918 | ||
1910 | else if ( ((LA11_0>='\t' && LA11_0<='\n')||LA11_0=='\r'||LA11_0==' ') ) {s = 34;} | 1919 | else if ( (LA12_0=='\'') ) {s = 30;} |
1911 | 1920 | ||
1912 | else if ( ((LA11_0>='\u0000' && LA11_0<='\b')||(LA11_0>='\u000B' && LA11_0<='\f')||(LA11_0>='\u000E' && LA11_0<='\u001F')||(LA11_0>='#' && LA11_0<='$')||LA11_0=='&'||LA11_0=='<'||LA11_0=='>'||LA11_0=='@'||LA11_0=='\\'||LA11_0=='^'||LA11_0=='`'||LA11_0=='|'||(LA11_0>='~' && LA11_0<='\uFFFF')) ) {s = 35;} | 1921 | else if ( (LA12_0=='%') ) {s = 31;} |
1913 | 1922 | ||
1914 | if ( s>=0 ) return s; | 1923 | else if ( (LA12_0=='/') ) {s = 32;} |
1915 | break; | ||
1916 | case 2 : | ||
1917 | int LA11_29 = input.LA(1); | ||
1918 | 1924 | ||
1919 | s = -1; | 1925 | else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 33;} |
1920 | if ( ((LA11_29>='\u0000' && LA11_29<='\uFFFF')) ) {s = 72;} | ||
1921 | 1926 | ||
1922 | else s = 35; | 1927 | else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||(LA12_0>='#' && LA12_0<='$')||LA12_0=='&'||LA12_0=='<'||LA12_0=='>'||LA12_0=='@'||LA12_0=='\\'||LA12_0=='^'||LA12_0=='`'||LA12_0=='|'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 34;} |
1923 | 1928 | ||
1924 | if ( s>=0 ) return s; | 1929 | if ( s>=0 ) return s; |
1925 | break; | 1930 | break; |
1926 | } | 1931 | } |
1927 | NoViableAltException nvae = | 1932 | NoViableAltException nvae = |
1928 | new NoViableAltException(getDescription(), 11, _s, input); | 1933 | new NoViableAltException(getDescription(), 12, _s, input); |
1929 | error(nvae); | 1934 | error(nvae); |
1930 | throw nvae; | 1935 | throw nvae; |
1931 | } | 1936 | } |
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblemParser.java b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblemParser.java index f0a69c90..cddaa9c1 100644 --- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblemParser.java +++ b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalProblemParser.java | |||
@@ -22,16 +22,16 @@ import java.util.ArrayList; | |||
22 | @SuppressWarnings("all") | 22 | @SuppressWarnings("all") |
23 | public class InternalProblemParser extends AbstractInternalAntlrParser { | 23 | public class InternalProblemParser extends AbstractInternalAntlrParser { |
24 | public static final String[] tokenNames = new String[] { | 24 | public static final String[] tokenNames = new String[] { |
25 | "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INT", "RULE_QUOTED_ID", "RULE_SL_COMMENT", "RULE_ML_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'problem'", "'.'", "'abstract'", "'class'", "'extends'", "','", "'{'", "';'", "'}'", "'enum'", "'contains'", "'refers'", "'['", "']'", "'opposite'", "'error'", "'pred'", "'('", "')'", "':-'", "'!'", "'+'", "':'", "'scope'", "'+='", "'='", "'..'", "'*'", "'::'", "'true'", "'false'", "'e'", "'E'", "'-'", "'unknown'", "'?'" | 25 | "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INT", "RULE_QUOTED_ID", "RULE_EXPONENTIAL", "RULE_SL_COMMENT", "RULE_ML_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'problem'", "'.'", "'abstract'", "'class'", "'extends'", "','", "'{'", "';'", "'}'", "'enum'", "'contains'", "'refers'", "'['", "']'", "'opposite'", "'error'", "'pred'", "'('", "')'", "':-'", "'!'", "'+'", "':'", "'scope'", "'+='", "'='", "'..'", "'*'", "'::'", "'true'", "'false'", "'-'", "'unknown'", "'?'" |
26 | }; | 26 | }; |
27 | public static final int T__19=19; | 27 | public static final int T__19=19; |
28 | public static final int T__15=15; | 28 | public static final int T__15=15; |
29 | public static final int T__16=16; | 29 | public static final int T__16=16; |
30 | public static final int T__17=17; | 30 | public static final int T__17=17; |
31 | public static final int T__18=18; | 31 | public static final int T__18=18; |
32 | public static final int T__12=12; | ||
33 | public static final int T__13=13; | 32 | public static final int T__13=13; |
34 | public static final int T__14=14; | 33 | public static final int T__14=14; |
34 | public static final int RULE_EXPONENTIAL=8; | ||
35 | public static final int RULE_ID=5; | 35 | public static final int RULE_ID=5; |
36 | public static final int RULE_QUOTED_ID=7; | 36 | public static final int RULE_QUOTED_ID=7; |
37 | public static final int T__26=26; | 37 | public static final int T__26=26; |
@@ -40,14 +40,14 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
40 | public static final int RULE_INT=6; | 40 | public static final int RULE_INT=6; |
41 | public static final int T__29=29; | 41 | public static final int T__29=29; |
42 | public static final int T__22=22; | 42 | public static final int T__22=22; |
43 | public static final int RULE_ML_COMMENT=9; | 43 | public static final int RULE_ML_COMMENT=10; |
44 | public static final int T__23=23; | 44 | public static final int T__23=23; |
45 | public static final int T__24=24; | 45 | public static final int T__24=24; |
46 | public static final int T__25=25; | 46 | public static final int T__25=25; |
47 | public static final int T__20=20; | 47 | public static final int T__20=20; |
48 | public static final int T__21=21; | 48 | public static final int T__21=21; |
49 | public static final int RULE_STRING=4; | 49 | public static final int RULE_STRING=4; |
50 | public static final int RULE_SL_COMMENT=8; | 50 | public static final int RULE_SL_COMMENT=9; |
51 | public static final int T__37=37; | 51 | public static final int T__37=37; |
52 | public static final int T__38=38; | 52 | public static final int T__38=38; |
53 | public static final int T__39=39; | 53 | public static final int T__39=39; |
@@ -59,12 +59,11 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
59 | public static final int T__30=30; | 59 | public static final int T__30=30; |
60 | public static final int T__31=31; | 60 | public static final int T__31=31; |
61 | public static final int T__32=32; | 61 | public static final int T__32=32; |
62 | public static final int RULE_WS=10; | 62 | public static final int RULE_WS=11; |
63 | public static final int RULE_ANY_OTHER=11; | 63 | public static final int RULE_ANY_OTHER=12; |
64 | public static final int T__44=44; | 64 | public static final int T__44=44; |
65 | public static final int T__45=45; | 65 | public static final int T__45=45; |
66 | public static final int T__46=46; | 66 | public static final int T__46=46; |
67 | public static final int T__47=47; | ||
68 | public static final int T__40=40; | 67 | public static final int T__40=40; |
69 | public static final int T__41=41; | 68 | public static final int T__41=41; |
70 | public static final int T__42=42; | 69 | public static final int T__42=42; |
@@ -171,14 +170,14 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
171 | int alt1=2; | 170 | int alt1=2; |
172 | int LA1_0 = input.LA(1); | 171 | int LA1_0 = input.LA(1); |
173 | 172 | ||
174 | if ( (LA1_0==12) ) { | 173 | if ( (LA1_0==13) ) { |
175 | alt1=1; | 174 | alt1=1; |
176 | } | 175 | } |
177 | switch (alt1) { | 176 | switch (alt1) { |
178 | case 1 : | 177 | case 1 : |
179 | // InternalProblem.g:81:4: otherlv_0= 'problem' ( (lv_name_1_0= ruleIdentifier ) ) otherlv_2= '.' | 178 | // InternalProblem.g:81:4: otherlv_0= 'problem' ( (lv_name_1_0= ruleIdentifier ) ) otherlv_2= '.' |
180 | { | 179 | { |
181 | otherlv_0=(Token)match(input,12,FOLLOW_3); | 180 | otherlv_0=(Token)match(input,13,FOLLOW_3); |
182 | 181 | ||
183 | newLeafNode(otherlv_0, grammarAccess.getProblemAccess().getProblemKeyword_0_0()); | 182 | newLeafNode(otherlv_0, grammarAccess.getProblemAccess().getProblemKeyword_0_0()); |
184 | 183 | ||
@@ -213,7 +212,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
213 | 212 | ||
214 | } | 213 | } |
215 | 214 | ||
216 | otherlv_2=(Token)match(input,13,FOLLOW_5); | 215 | otherlv_2=(Token)match(input,14,FOLLOW_5); |
217 | 216 | ||
218 | newLeafNode(otherlv_2, grammarAccess.getProblemAccess().getFullStopKeyword_0_2()); | 217 | newLeafNode(otherlv_2, grammarAccess.getProblemAccess().getFullStopKeyword_0_2()); |
219 | 218 | ||
@@ -229,7 +228,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
229 | int alt2=2; | 228 | int alt2=2; |
230 | int LA2_0 = input.LA(1); | 229 | int LA2_0 = input.LA(1); |
231 | 230 | ||
232 | if ( (LA2_0==RULE_ID||LA2_0==RULE_QUOTED_ID||(LA2_0>=14 && LA2_0<=15)||LA2_0==21||(LA2_0>=27 && LA2_0<=28)||LA2_0==32||LA2_0==35||(LA2_0>=41 && LA2_0<=44)||LA2_0==47) ) { | 231 | if ( (LA2_0==RULE_ID||LA2_0==RULE_QUOTED_ID||(LA2_0>=15 && LA2_0<=16)||LA2_0==22||(LA2_0>=28 && LA2_0<=29)||LA2_0==33||LA2_0==36||(LA2_0>=42 && LA2_0<=43)||LA2_0==46) ) { |
233 | alt2=1; | 232 | alt2=1; |
234 | } | 233 | } |
235 | 234 | ||
@@ -557,7 +556,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
557 | int alt4=2; | 556 | int alt4=2; |
558 | int LA4_0 = input.LA(1); | 557 | int LA4_0 = input.LA(1); |
559 | 558 | ||
560 | if ( (LA4_0==14) ) { | 559 | if ( (LA4_0==15) ) { |
561 | alt4=1; | 560 | alt4=1; |
562 | } | 561 | } |
563 | switch (alt4) { | 562 | switch (alt4) { |
@@ -567,7 +566,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
567 | // InternalProblem.g:220:4: (lv_abstract_0_0= 'abstract' ) | 566 | // InternalProblem.g:220:4: (lv_abstract_0_0= 'abstract' ) |
568 | // InternalProblem.g:221:5: lv_abstract_0_0= 'abstract' | 567 | // InternalProblem.g:221:5: lv_abstract_0_0= 'abstract' |
569 | { | 568 | { |
570 | lv_abstract_0_0=(Token)match(input,14,FOLLOW_6); | 569 | lv_abstract_0_0=(Token)match(input,15,FOLLOW_6); |
571 | 570 | ||
572 | newLeafNode(lv_abstract_0_0, grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0()); | 571 | newLeafNode(lv_abstract_0_0, grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0()); |
573 | 572 | ||
@@ -586,7 +585,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
586 | 585 | ||
587 | } | 586 | } |
588 | 587 | ||
589 | otherlv_1=(Token)match(input,15,FOLLOW_3); | 588 | otherlv_1=(Token)match(input,16,FOLLOW_3); |
590 | 589 | ||
591 | newLeafNode(otherlv_1, grammarAccess.getClassDeclarationAccess().getClassKeyword_1()); | 590 | newLeafNode(otherlv_1, grammarAccess.getClassDeclarationAccess().getClassKeyword_1()); |
592 | 591 | ||
@@ -625,14 +624,14 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
625 | int alt6=2; | 624 | int alt6=2; |
626 | int LA6_0 = input.LA(1); | 625 | int LA6_0 = input.LA(1); |
627 | 626 | ||
628 | if ( (LA6_0==16) ) { | 627 | if ( (LA6_0==17) ) { |
629 | alt6=1; | 628 | alt6=1; |
630 | } | 629 | } |
631 | switch (alt6) { | 630 | switch (alt6) { |
632 | case 1 : | 631 | case 1 : |
633 | // InternalProblem.g:257:4: otherlv_3= 'extends' ( ( ruleQualifiedName ) ) (otherlv_5= ',' ( ( ruleQualifiedName ) ) )* | 632 | // InternalProblem.g:257:4: otherlv_3= 'extends' ( ( ruleQualifiedName ) ) (otherlv_5= ',' ( ( ruleQualifiedName ) ) )* |
634 | { | 633 | { |
635 | otherlv_3=(Token)match(input,16,FOLLOW_8); | 634 | otherlv_3=(Token)match(input,17,FOLLOW_8); |
636 | 635 | ||
637 | newLeafNode(otherlv_3, grammarAccess.getClassDeclarationAccess().getExtendsKeyword_3_0()); | 636 | newLeafNode(otherlv_3, grammarAccess.getClassDeclarationAccess().getExtendsKeyword_3_0()); |
638 | 637 | ||
@@ -670,7 +669,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
670 | int alt5=2; | 669 | int alt5=2; |
671 | int LA5_0 = input.LA(1); | 670 | int LA5_0 = input.LA(1); |
672 | 671 | ||
673 | if ( (LA5_0==17) ) { | 672 | if ( (LA5_0==18) ) { |
674 | alt5=1; | 673 | alt5=1; |
675 | } | 674 | } |
676 | 675 | ||
@@ -679,7 +678,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
679 | case 1 : | 678 | case 1 : |
680 | // InternalProblem.g:278:5: otherlv_5= ',' ( ( ruleQualifiedName ) ) | 679 | // InternalProblem.g:278:5: otherlv_5= ',' ( ( ruleQualifiedName ) ) |
681 | { | 680 | { |
682 | otherlv_5=(Token)match(input,17,FOLLOW_8); | 681 | otherlv_5=(Token)match(input,18,FOLLOW_8); |
683 | 682 | ||
684 | newLeafNode(otherlv_5, grammarAccess.getClassDeclarationAccess().getCommaKeyword_3_2_0()); | 683 | newLeafNode(otherlv_5, grammarAccess.getClassDeclarationAccess().getCommaKeyword_3_2_0()); |
685 | 684 | ||
@@ -730,10 +729,10 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
730 | int alt9=2; | 729 | int alt9=2; |
731 | int LA9_0 = input.LA(1); | 730 | int LA9_0 = input.LA(1); |
732 | 731 | ||
733 | if ( (LA9_0==18) ) { | 732 | if ( (LA9_0==19) ) { |
734 | alt9=1; | 733 | alt9=1; |
735 | } | 734 | } |
736 | else if ( (LA9_0==13) ) { | 735 | else if ( (LA9_0==14) ) { |
737 | alt9=2; | 736 | alt9=2; |
738 | } | 737 | } |
739 | else { | 738 | else { |
@@ -749,7 +748,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
749 | // InternalProblem.g:301:4: (otherlv_7= '{' ( ( (lv_referenceDeclarations_8_0= ruleReferenceDeclaration ) ) (otherlv_9= ';' )? )* otherlv_10= '}' ) | 748 | // InternalProblem.g:301:4: (otherlv_7= '{' ( ( (lv_referenceDeclarations_8_0= ruleReferenceDeclaration ) ) (otherlv_9= ';' )? )* otherlv_10= '}' ) |
750 | // InternalProblem.g:302:5: otherlv_7= '{' ( ( (lv_referenceDeclarations_8_0= ruleReferenceDeclaration ) ) (otherlv_9= ';' )? )* otherlv_10= '}' | 749 | // InternalProblem.g:302:5: otherlv_7= '{' ( ( (lv_referenceDeclarations_8_0= ruleReferenceDeclaration ) ) (otherlv_9= ';' )? )* otherlv_10= '}' |
751 | { | 750 | { |
752 | otherlv_7=(Token)match(input,18,FOLLOW_10); | 751 | otherlv_7=(Token)match(input,19,FOLLOW_10); |
753 | 752 | ||
754 | newLeafNode(otherlv_7, grammarAccess.getClassDeclarationAccess().getLeftCurlyBracketKeyword_4_0_0()); | 753 | newLeafNode(otherlv_7, grammarAccess.getClassDeclarationAccess().getLeftCurlyBracketKeyword_4_0_0()); |
755 | 754 | ||
@@ -759,7 +758,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
759 | int alt8=2; | 758 | int alt8=2; |
760 | int LA8_0 = input.LA(1); | 759 | int LA8_0 = input.LA(1); |
761 | 760 | ||
762 | if ( (LA8_0==RULE_ID||LA8_0==RULE_QUOTED_ID||(LA8_0>=22 && LA8_0<=23)||(LA8_0>=41 && LA8_0<=44)) ) { | 761 | if ( (LA8_0==RULE_ID||LA8_0==RULE_QUOTED_ID||(LA8_0>=23 && LA8_0<=24)||(LA8_0>=42 && LA8_0<=43)) ) { |
763 | alt8=1; | 762 | alt8=1; |
764 | } | 763 | } |
765 | 764 | ||
@@ -803,14 +802,14 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
803 | int alt7=2; | 802 | int alt7=2; |
804 | int LA7_0 = input.LA(1); | 803 | int LA7_0 = input.LA(1); |
805 | 804 | ||
806 | if ( (LA7_0==19) ) { | 805 | if ( (LA7_0==20) ) { |
807 | alt7=1; | 806 | alt7=1; |
808 | } | 807 | } |
809 | switch (alt7) { | 808 | switch (alt7) { |
810 | case 1 : | 809 | case 1 : |
811 | // InternalProblem.g:327:7: otherlv_9= ';' | 810 | // InternalProblem.g:327:7: otherlv_9= ';' |
812 | { | 811 | { |
813 | otherlv_9=(Token)match(input,19,FOLLOW_10); | 812 | otherlv_9=(Token)match(input,20,FOLLOW_10); |
814 | 813 | ||
815 | newLeafNode(otherlv_9, grammarAccess.getClassDeclarationAccess().getSemicolonKeyword_4_0_1_1()); | 814 | newLeafNode(otherlv_9, grammarAccess.getClassDeclarationAccess().getSemicolonKeyword_4_0_1_1()); |
816 | 815 | ||
@@ -829,7 +828,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
829 | } | 828 | } |
830 | } while (true); | 829 | } while (true); |
831 | 830 | ||
832 | otherlv_10=(Token)match(input,20,FOLLOW_2); | 831 | otherlv_10=(Token)match(input,21,FOLLOW_2); |
833 | 832 | ||
834 | newLeafNode(otherlv_10, grammarAccess.getClassDeclarationAccess().getRightCurlyBracketKeyword_4_0_2()); | 833 | newLeafNode(otherlv_10, grammarAccess.getClassDeclarationAccess().getRightCurlyBracketKeyword_4_0_2()); |
835 | 834 | ||
@@ -842,7 +841,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
842 | case 2 : | 841 | case 2 : |
843 | // InternalProblem.g:339:4: otherlv_11= '.' | 842 | // InternalProblem.g:339:4: otherlv_11= '.' |
844 | { | 843 | { |
845 | otherlv_11=(Token)match(input,13,FOLLOW_2); | 844 | otherlv_11=(Token)match(input,14,FOLLOW_2); |
846 | 845 | ||
847 | newLeafNode(otherlv_11, grammarAccess.getClassDeclarationAccess().getFullStopKeyword_4_1()); | 846 | newLeafNode(otherlv_11, grammarAccess.getClassDeclarationAccess().getFullStopKeyword_4_1()); |
848 | 847 | ||
@@ -939,7 +938,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
939 | // InternalProblem.g:362:2: (otherlv_0= 'enum' ( (lv_name_1_0= ruleIdentifier ) ) ( (otherlv_2= '{' ( ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )? )? otherlv_8= '}' ) | otherlv_9= '.' ) ) | 938 | // InternalProblem.g:362:2: (otherlv_0= 'enum' ( (lv_name_1_0= ruleIdentifier ) ) ( (otherlv_2= '{' ( ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )? )? otherlv_8= '}' ) | otherlv_9= '.' ) ) |
940 | // InternalProblem.g:363:3: otherlv_0= 'enum' ( (lv_name_1_0= ruleIdentifier ) ) ( (otherlv_2= '{' ( ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )? )? otherlv_8= '}' ) | otherlv_9= '.' ) | 939 | // InternalProblem.g:363:3: otherlv_0= 'enum' ( (lv_name_1_0= ruleIdentifier ) ) ( (otherlv_2= '{' ( ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )? )? otherlv_8= '}' ) | otherlv_9= '.' ) |
941 | { | 940 | { |
942 | otherlv_0=(Token)match(input,21,FOLLOW_3); | 941 | otherlv_0=(Token)match(input,22,FOLLOW_3); |
943 | 942 | ||
944 | newLeafNode(otherlv_0, grammarAccess.getEnumDeclarationAccess().getEnumKeyword_0()); | 943 | newLeafNode(otherlv_0, grammarAccess.getEnumDeclarationAccess().getEnumKeyword_0()); |
945 | 944 | ||
@@ -978,10 +977,10 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
978 | int alt13=2; | 977 | int alt13=2; |
979 | int LA13_0 = input.LA(1); | 978 | int LA13_0 = input.LA(1); |
980 | 979 | ||
981 | if ( (LA13_0==18) ) { | 980 | if ( (LA13_0==19) ) { |
982 | alt13=1; | 981 | alt13=1; |
983 | } | 982 | } |
984 | else if ( (LA13_0==13) ) { | 983 | else if ( (LA13_0==14) ) { |
985 | alt13=2; | 984 | alt13=2; |
986 | } | 985 | } |
987 | else { | 986 | else { |
@@ -997,7 +996,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
997 | // InternalProblem.g:387:4: (otherlv_2= '{' ( ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )? )? otherlv_8= '}' ) | 996 | // InternalProblem.g:387:4: (otherlv_2= '{' ( ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )? )? otherlv_8= '}' ) |
998 | // InternalProblem.g:388:5: otherlv_2= '{' ( ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )? )? otherlv_8= '}' | 997 | // InternalProblem.g:388:5: otherlv_2= '{' ( ( (lv_literals_3_0= ruleEnumLiteral ) ) (otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) )* (otherlv_6= ',' | otherlv_7= ';' )? )? otherlv_8= '}' |
999 | { | 998 | { |
1000 | otherlv_2=(Token)match(input,18,FOLLOW_13); | 999 | otherlv_2=(Token)match(input,19,FOLLOW_13); |
1001 | 1000 | ||
1002 | newLeafNode(otherlv_2, grammarAccess.getEnumDeclarationAccess().getLeftCurlyBracketKeyword_2_0_0()); | 1001 | newLeafNode(otherlv_2, grammarAccess.getEnumDeclarationAccess().getLeftCurlyBracketKeyword_2_0_0()); |
1003 | 1002 | ||
@@ -1005,7 +1004,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1005 | int alt12=2; | 1004 | int alt12=2; |
1006 | int LA12_0 = input.LA(1); | 1005 | int LA12_0 = input.LA(1); |
1007 | 1006 | ||
1008 | if ( (LA12_0==RULE_ID||(LA12_0>=41 && LA12_0<=44)) ) { | 1007 | if ( (LA12_0==RULE_ID||(LA12_0>=42 && LA12_0<=43)) ) { |
1009 | alt12=1; | 1008 | alt12=1; |
1010 | } | 1009 | } |
1011 | switch (alt12) { | 1010 | switch (alt12) { |
@@ -1049,10 +1048,10 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1049 | int alt10=2; | 1048 | int alt10=2; |
1050 | int LA10_0 = input.LA(1); | 1049 | int LA10_0 = input.LA(1); |
1051 | 1050 | ||
1052 | if ( (LA10_0==17) ) { | 1051 | if ( (LA10_0==18) ) { |
1053 | int LA10_1 = input.LA(2); | 1052 | int LA10_1 = input.LA(2); |
1054 | 1053 | ||
1055 | if ( (LA10_1==RULE_ID||(LA10_1>=41 && LA10_1<=44)) ) { | 1054 | if ( (LA10_1==RULE_ID||(LA10_1>=42 && LA10_1<=43)) ) { |
1056 | alt10=1; | 1055 | alt10=1; |
1057 | } | 1056 | } |
1058 | 1057 | ||
@@ -1064,7 +1063,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1064 | case 1 : | 1063 | case 1 : |
1065 | // InternalProblem.g:413:7: otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) | 1064 | // InternalProblem.g:413:7: otherlv_4= ',' ( (lv_literals_5_0= ruleEnumLiteral ) ) |
1066 | { | 1065 | { |
1067 | otherlv_4=(Token)match(input,17,FOLLOW_3); | 1066 | otherlv_4=(Token)match(input,18,FOLLOW_3); |
1068 | 1067 | ||
1069 | newLeafNode(otherlv_4, grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_1_0()); | 1068 | newLeafNode(otherlv_4, grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_1_0()); |
1070 | 1069 | ||
@@ -1112,17 +1111,17 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1112 | int alt11=3; | 1111 | int alt11=3; |
1113 | int LA11_0 = input.LA(1); | 1112 | int LA11_0 = input.LA(1); |
1114 | 1113 | ||
1115 | if ( (LA11_0==17) ) { | 1114 | if ( (LA11_0==18) ) { |
1116 | alt11=1; | 1115 | alt11=1; |
1117 | } | 1116 | } |
1118 | else if ( (LA11_0==19) ) { | 1117 | else if ( (LA11_0==20) ) { |
1119 | alt11=2; | 1118 | alt11=2; |
1120 | } | 1119 | } |
1121 | switch (alt11) { | 1120 | switch (alt11) { |
1122 | case 1 : | 1121 | case 1 : |
1123 | // InternalProblem.g:438:7: otherlv_6= ',' | 1122 | // InternalProblem.g:438:7: otherlv_6= ',' |
1124 | { | 1123 | { |
1125 | otherlv_6=(Token)match(input,17,FOLLOW_15); | 1124 | otherlv_6=(Token)match(input,18,FOLLOW_15); |
1126 | 1125 | ||
1127 | newLeafNode(otherlv_6, grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_2_0()); | 1126 | newLeafNode(otherlv_6, grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_2_0()); |
1128 | 1127 | ||
@@ -1132,7 +1131,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1132 | case 2 : | 1131 | case 2 : |
1133 | // InternalProblem.g:443:7: otherlv_7= ';' | 1132 | // InternalProblem.g:443:7: otherlv_7= ';' |
1134 | { | 1133 | { |
1135 | otherlv_7=(Token)match(input,19,FOLLOW_15); | 1134 | otherlv_7=(Token)match(input,20,FOLLOW_15); |
1136 | 1135 | ||
1137 | newLeafNode(otherlv_7, grammarAccess.getEnumDeclarationAccess().getSemicolonKeyword_2_0_1_2_1()); | 1136 | newLeafNode(otherlv_7, grammarAccess.getEnumDeclarationAccess().getSemicolonKeyword_2_0_1_2_1()); |
1138 | 1137 | ||
@@ -1148,7 +1147,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1148 | 1147 | ||
1149 | } | 1148 | } |
1150 | 1149 | ||
1151 | otherlv_8=(Token)match(input,20,FOLLOW_2); | 1150 | otherlv_8=(Token)match(input,21,FOLLOW_2); |
1152 | 1151 | ||
1153 | newLeafNode(otherlv_8, grammarAccess.getEnumDeclarationAccess().getRightCurlyBracketKeyword_2_0_2()); | 1152 | newLeafNode(otherlv_8, grammarAccess.getEnumDeclarationAccess().getRightCurlyBracketKeyword_2_0_2()); |
1154 | 1153 | ||
@@ -1161,7 +1160,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1161 | case 2 : | 1160 | case 2 : |
1162 | // InternalProblem.g:455:4: otherlv_9= '.' | 1161 | // InternalProblem.g:455:4: otherlv_9= '.' |
1163 | { | 1162 | { |
1164 | otherlv_9=(Token)match(input,13,FOLLOW_2); | 1163 | otherlv_9=(Token)match(input,14,FOLLOW_2); |
1165 | 1164 | ||
1166 | newLeafNode(otherlv_9, grammarAccess.getEnumDeclarationAccess().getFullStopKeyword_2_1()); | 1165 | newLeafNode(otherlv_9, grammarAccess.getEnumDeclarationAccess().getFullStopKeyword_2_1()); |
1167 | 1166 | ||
@@ -1359,10 +1358,10 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1359 | int alt14=3; | 1358 | int alt14=3; |
1360 | int LA14_0 = input.LA(1); | 1359 | int LA14_0 = input.LA(1); |
1361 | 1360 | ||
1362 | if ( (LA14_0==22) ) { | 1361 | if ( (LA14_0==23) ) { |
1363 | alt14=1; | 1362 | alt14=1; |
1364 | } | 1363 | } |
1365 | else if ( (LA14_0==23) ) { | 1364 | else if ( (LA14_0==24) ) { |
1366 | alt14=2; | 1365 | alt14=2; |
1367 | } | 1366 | } |
1368 | switch (alt14) { | 1367 | switch (alt14) { |
@@ -1375,7 +1374,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1375 | // InternalProblem.g:517:5: (lv_containment_0_0= 'contains' ) | 1374 | // InternalProblem.g:517:5: (lv_containment_0_0= 'contains' ) |
1376 | // InternalProblem.g:518:6: lv_containment_0_0= 'contains' | 1375 | // InternalProblem.g:518:6: lv_containment_0_0= 'contains' |
1377 | { | 1376 | { |
1378 | lv_containment_0_0=(Token)match(input,22,FOLLOW_8); | 1377 | lv_containment_0_0=(Token)match(input,23,FOLLOW_8); |
1379 | 1378 | ||
1380 | newLeafNode(lv_containment_0_0, grammarAccess.getReferenceDeclarationAccess().getContainmentContainsKeyword_0_0_0()); | 1379 | newLeafNode(lv_containment_0_0, grammarAccess.getReferenceDeclarationAccess().getContainmentContainsKeyword_0_0_0()); |
1381 | 1380 | ||
@@ -1397,7 +1396,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1397 | case 2 : | 1396 | case 2 : |
1398 | // InternalProblem.g:531:4: otherlv_1= 'refers' | 1397 | // InternalProblem.g:531:4: otherlv_1= 'refers' |
1399 | { | 1398 | { |
1400 | otherlv_1=(Token)match(input,23,FOLLOW_8); | 1399 | otherlv_1=(Token)match(input,24,FOLLOW_8); |
1401 | 1400 | ||
1402 | newLeafNode(otherlv_1, grammarAccess.getReferenceDeclarationAccess().getRefersKeyword_0_1()); | 1401 | newLeafNode(otherlv_1, grammarAccess.getReferenceDeclarationAccess().getRefersKeyword_0_1()); |
1403 | 1402 | ||
@@ -1439,14 +1438,14 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1439 | int alt15=2; | 1438 | int alt15=2; |
1440 | int LA15_0 = input.LA(1); | 1439 | int LA15_0 = input.LA(1); |
1441 | 1440 | ||
1442 | if ( (LA15_0==24) ) { | 1441 | if ( (LA15_0==25) ) { |
1443 | alt15=1; | 1442 | alt15=1; |
1444 | } | 1443 | } |
1445 | switch (alt15) { | 1444 | switch (alt15) { |
1446 | case 1 : | 1445 | case 1 : |
1447 | // InternalProblem.g:553:4: otherlv_3= '[' ( (lv_multiplicity_4_0= ruleMultiplicity ) ) otherlv_5= ']' | 1446 | // InternalProblem.g:553:4: otherlv_3= '[' ( (lv_multiplicity_4_0= ruleMultiplicity ) ) otherlv_5= ']' |
1448 | { | 1447 | { |
1449 | otherlv_3=(Token)match(input,24,FOLLOW_17); | 1448 | otherlv_3=(Token)match(input,25,FOLLOW_17); |
1450 | 1449 | ||
1451 | newLeafNode(otherlv_3, grammarAccess.getReferenceDeclarationAccess().getLeftSquareBracketKeyword_2_0()); | 1450 | newLeafNode(otherlv_3, grammarAccess.getReferenceDeclarationAccess().getLeftSquareBracketKeyword_2_0()); |
1452 | 1451 | ||
@@ -1481,7 +1480,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1481 | 1480 | ||
1482 | } | 1481 | } |
1483 | 1482 | ||
1484 | otherlv_5=(Token)match(input,25,FOLLOW_3); | 1483 | otherlv_5=(Token)match(input,26,FOLLOW_3); |
1485 | 1484 | ||
1486 | newLeafNode(otherlv_5, grammarAccess.getReferenceDeclarationAccess().getRightSquareBracketKeyword_2_2()); | 1485 | newLeafNode(otherlv_5, grammarAccess.getReferenceDeclarationAccess().getRightSquareBracketKeyword_2_2()); |
1487 | 1486 | ||
@@ -1526,14 +1525,14 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1526 | int alt16=2; | 1525 | int alt16=2; |
1527 | int LA16_0 = input.LA(1); | 1526 | int LA16_0 = input.LA(1); |
1528 | 1527 | ||
1529 | if ( (LA16_0==26) ) { | 1528 | if ( (LA16_0==27) ) { |
1530 | alt16=1; | 1529 | alt16=1; |
1531 | } | 1530 | } |
1532 | switch (alt16) { | 1531 | switch (alt16) { |
1533 | case 1 : | 1532 | case 1 : |
1534 | // InternalProblem.g:601:4: otherlv_7= 'opposite' ( ( ruleQualifiedName ) ) | 1533 | // InternalProblem.g:601:4: otherlv_7= 'opposite' ( ( ruleQualifiedName ) ) |
1535 | { | 1534 | { |
1536 | otherlv_7=(Token)match(input,26,FOLLOW_8); | 1535 | otherlv_7=(Token)match(input,27,FOLLOW_8); |
1537 | 1536 | ||
1538 | newLeafNode(otherlv_7, grammarAccess.getReferenceDeclarationAccess().getOppositeKeyword_4_0()); | 1537 | newLeafNode(otherlv_7, grammarAccess.getReferenceDeclarationAccess().getOppositeKeyword_4_0()); |
1539 | 1538 | ||
@@ -1668,10 +1667,10 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1668 | int alt18=2; | 1667 | int alt18=2; |
1669 | int LA18_0 = input.LA(1); | 1668 | int LA18_0 = input.LA(1); |
1670 | 1669 | ||
1671 | if ( (LA18_0==27) ) { | 1670 | if ( (LA18_0==28) ) { |
1672 | alt18=1; | 1671 | alt18=1; |
1673 | } | 1672 | } |
1674 | else if ( (LA18_0==28) ) { | 1673 | else if ( (LA18_0==29) ) { |
1675 | alt18=2; | 1674 | alt18=2; |
1676 | } | 1675 | } |
1677 | else { | 1676 | else { |
@@ -1693,7 +1692,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1693 | // InternalProblem.g:644:6: (lv_error_0_0= 'error' ) | 1692 | // InternalProblem.g:644:6: (lv_error_0_0= 'error' ) |
1694 | // InternalProblem.g:645:7: lv_error_0_0= 'error' | 1693 | // InternalProblem.g:645:7: lv_error_0_0= 'error' |
1695 | { | 1694 | { |
1696 | lv_error_0_0=(Token)match(input,27,FOLLOW_20); | 1695 | lv_error_0_0=(Token)match(input,28,FOLLOW_20); |
1697 | 1696 | ||
1698 | newLeafNode(lv_error_0_0, grammarAccess.getPredicateDefinitionAccess().getErrorErrorKeyword_0_0_0_0()); | 1697 | newLeafNode(lv_error_0_0, grammarAccess.getPredicateDefinitionAccess().getErrorErrorKeyword_0_0_0_0()); |
1699 | 1698 | ||
@@ -1713,14 +1712,14 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1713 | int alt17=2; | 1712 | int alt17=2; |
1714 | int LA17_0 = input.LA(1); | 1713 | int LA17_0 = input.LA(1); |
1715 | 1714 | ||
1716 | if ( (LA17_0==28) ) { | 1715 | if ( (LA17_0==29) ) { |
1717 | alt17=1; | 1716 | alt17=1; |
1718 | } | 1717 | } |
1719 | switch (alt17) { | 1718 | switch (alt17) { |
1720 | case 1 : | 1719 | case 1 : |
1721 | // InternalProblem.g:658:6: otherlv_1= 'pred' | 1720 | // InternalProblem.g:658:6: otherlv_1= 'pred' |
1722 | { | 1721 | { |
1723 | otherlv_1=(Token)match(input,28,FOLLOW_3); | 1722 | otherlv_1=(Token)match(input,29,FOLLOW_3); |
1724 | 1723 | ||
1725 | newLeafNode(otherlv_1, grammarAccess.getPredicateDefinitionAccess().getPredKeyword_0_0_1()); | 1724 | newLeafNode(otherlv_1, grammarAccess.getPredicateDefinitionAccess().getPredKeyword_0_0_1()); |
1726 | 1725 | ||
@@ -1739,7 +1738,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1739 | case 2 : | 1738 | case 2 : |
1740 | // InternalProblem.g:665:4: otherlv_2= 'pred' | 1739 | // InternalProblem.g:665:4: otherlv_2= 'pred' |
1741 | { | 1740 | { |
1742 | otherlv_2=(Token)match(input,28,FOLLOW_3); | 1741 | otherlv_2=(Token)match(input,29,FOLLOW_3); |
1743 | 1742 | ||
1744 | newLeafNode(otherlv_2, grammarAccess.getPredicateDefinitionAccess().getPredKeyword_0_1()); | 1743 | newLeafNode(otherlv_2, grammarAccess.getPredicateDefinitionAccess().getPredKeyword_0_1()); |
1745 | 1744 | ||
@@ -1780,7 +1779,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1780 | 1779 | ||
1781 | } | 1780 | } |
1782 | 1781 | ||
1783 | otherlv_4=(Token)match(input,29,FOLLOW_22); | 1782 | otherlv_4=(Token)match(input,30,FOLLOW_22); |
1784 | 1783 | ||
1785 | newLeafNode(otherlv_4, grammarAccess.getPredicateDefinitionAccess().getLeftParenthesisKeyword_2()); | 1784 | newLeafNode(otherlv_4, grammarAccess.getPredicateDefinitionAccess().getLeftParenthesisKeyword_2()); |
1786 | 1785 | ||
@@ -1788,7 +1787,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1788 | int alt20=2; | 1787 | int alt20=2; |
1789 | int LA20_0 = input.LA(1); | 1788 | int LA20_0 = input.LA(1); |
1790 | 1789 | ||
1791 | if ( (LA20_0==RULE_ID||LA20_0==RULE_QUOTED_ID||(LA20_0>=41 && LA20_0<=44)) ) { | 1790 | if ( (LA20_0==RULE_ID||LA20_0==RULE_QUOTED_ID||(LA20_0>=42 && LA20_0<=43)) ) { |
1792 | alt20=1; | 1791 | alt20=1; |
1793 | } | 1792 | } |
1794 | switch (alt20) { | 1793 | switch (alt20) { |
@@ -1832,7 +1831,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1832 | int alt19=2; | 1831 | int alt19=2; |
1833 | int LA19_0 = input.LA(1); | 1832 | int LA19_0 = input.LA(1); |
1834 | 1833 | ||
1835 | if ( (LA19_0==17) ) { | 1834 | if ( (LA19_0==18) ) { |
1836 | alt19=1; | 1835 | alt19=1; |
1837 | } | 1836 | } |
1838 | 1837 | ||
@@ -1841,7 +1840,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1841 | case 1 : | 1840 | case 1 : |
1842 | // InternalProblem.g:714:5: otherlv_6= ',' ( (lv_parameters_7_0= ruleParameter ) ) | 1841 | // InternalProblem.g:714:5: otherlv_6= ',' ( (lv_parameters_7_0= ruleParameter ) ) |
1843 | { | 1842 | { |
1844 | otherlv_6=(Token)match(input,17,FOLLOW_8); | 1843 | otherlv_6=(Token)match(input,18,FOLLOW_8); |
1845 | 1844 | ||
1846 | newLeafNode(otherlv_6, grammarAccess.getPredicateDefinitionAccess().getCommaKeyword_3_1_0()); | 1845 | newLeafNode(otherlv_6, grammarAccess.getPredicateDefinitionAccess().getCommaKeyword_3_1_0()); |
1847 | 1846 | ||
@@ -1891,7 +1890,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1891 | 1890 | ||
1892 | } | 1891 | } |
1893 | 1892 | ||
1894 | otherlv_8=(Token)match(input,30,FOLLOW_24); | 1893 | otherlv_8=(Token)match(input,31,FOLLOW_24); |
1895 | 1894 | ||
1896 | newLeafNode(otherlv_8, grammarAccess.getPredicateDefinitionAccess().getRightParenthesisKeyword_4()); | 1895 | newLeafNode(otherlv_8, grammarAccess.getPredicateDefinitionAccess().getRightParenthesisKeyword_4()); |
1897 | 1896 | ||
@@ -1899,14 +1898,14 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1899 | int alt22=2; | 1898 | int alt22=2; |
1900 | int LA22_0 = input.LA(1); | 1899 | int LA22_0 = input.LA(1); |
1901 | 1900 | ||
1902 | if ( (LA22_0==31) ) { | 1901 | if ( (LA22_0==32) ) { |
1903 | alt22=1; | 1902 | alt22=1; |
1904 | } | 1903 | } |
1905 | switch (alt22) { | 1904 | switch (alt22) { |
1906 | case 1 : | 1905 | case 1 : |
1907 | // InternalProblem.g:744:4: otherlv_9= ':-' ( (lv_bodies_10_0= ruleConjunction ) ) (otherlv_11= ';' ( (lv_bodies_12_0= ruleConjunction ) ) )* | 1906 | // InternalProblem.g:744:4: otherlv_9= ':-' ( (lv_bodies_10_0= ruleConjunction ) ) (otherlv_11= ';' ( (lv_bodies_12_0= ruleConjunction ) ) )* |
1908 | { | 1907 | { |
1909 | otherlv_9=(Token)match(input,31,FOLLOW_25); | 1908 | otherlv_9=(Token)match(input,32,FOLLOW_25); |
1910 | 1909 | ||
1911 | newLeafNode(otherlv_9, grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_5_0()); | 1910 | newLeafNode(otherlv_9, grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_5_0()); |
1912 | 1911 | ||
@@ -1947,7 +1946,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1947 | int alt21=2; | 1946 | int alt21=2; |
1948 | int LA21_0 = input.LA(1); | 1947 | int LA21_0 = input.LA(1); |
1949 | 1948 | ||
1950 | if ( (LA21_0==19) ) { | 1949 | if ( (LA21_0==20) ) { |
1951 | alt21=1; | 1950 | alt21=1; |
1952 | } | 1951 | } |
1953 | 1952 | ||
@@ -1956,7 +1955,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
1956 | case 1 : | 1955 | case 1 : |
1957 | // InternalProblem.g:768:5: otherlv_11= ';' ( (lv_bodies_12_0= ruleConjunction ) ) | 1956 | // InternalProblem.g:768:5: otherlv_11= ';' ( (lv_bodies_12_0= ruleConjunction ) ) |
1958 | { | 1957 | { |
1959 | otherlv_11=(Token)match(input,19,FOLLOW_25); | 1958 | otherlv_11=(Token)match(input,20,FOLLOW_25); |
1960 | 1959 | ||
1961 | newLeafNode(otherlv_11, grammarAccess.getPredicateDefinitionAccess().getSemicolonKeyword_5_2_0()); | 1960 | newLeafNode(otherlv_11, grammarAccess.getPredicateDefinitionAccess().getSemicolonKeyword_5_2_0()); |
1962 | 1961 | ||
@@ -2006,7 +2005,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
2006 | 2005 | ||
2007 | } | 2006 | } |
2008 | 2007 | ||
2009 | otherlv_13=(Token)match(input,13,FOLLOW_2); | 2008 | otherlv_13=(Token)match(input,14,FOLLOW_2); |
2010 | 2009 | ||
2011 | newLeafNode(otherlv_13, grammarAccess.getPredicateDefinitionAccess().getFullStopKeyword_6()); | 2010 | newLeafNode(otherlv_13, grammarAccess.getPredicateDefinitionAccess().getFullStopKeyword_6()); |
2012 | 2011 | ||
@@ -2098,43 +2097,25 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
2098 | { | 2097 | { |
2099 | int LA23_2 = input.LA(2); | 2098 | int LA23_2 = input.LA(2); |
2100 | 2099 | ||
2101 | if ( (LA23_2==RULE_ID||(LA23_2>=40 && LA23_2<=44)) ) { | 2100 | if ( (LA23_2==RULE_ID||(LA23_2>=41 && LA23_2<=43)) ) { |
2102 | alt23=1; | ||
2103 | } | ||
2104 | } | ||
2105 | break; | ||
2106 | case 41: | ||
2107 | { | ||
2108 | int LA23_3 = input.LA(2); | ||
2109 | |||
2110 | if ( (LA23_3==RULE_ID||(LA23_3>=40 && LA23_3<=44)) ) { | ||
2111 | alt23=1; | 2101 | alt23=1; |
2112 | } | 2102 | } |
2113 | } | 2103 | } |
2114 | break; | 2104 | break; |
2115 | case 42: | 2105 | case 42: |
2116 | { | 2106 | { |
2117 | int LA23_4 = input.LA(2); | 2107 | int LA23_3 = input.LA(2); |
2118 | 2108 | ||
2119 | if ( (LA23_4==RULE_ID||(LA23_4>=40 && LA23_4<=44)) ) { | 2109 | if ( (LA23_3==RULE_ID||(LA23_3>=41 && LA23_3<=43)) ) { |
2120 | alt23=1; | 2110 | alt23=1; |
2121 | } | 2111 | } |
2122 | } | 2112 | } |
2123 | break; | 2113 | break; |
2124 | case 43: | 2114 | case 43: |
2125 | { | 2115 | { |
2126 | int LA23_5 = input.LA(2); | 2116 | int LA23_4 = input.LA(2); |
2127 | |||
2128 | if ( (LA23_5==RULE_ID||(LA23_5>=40 && LA23_5<=44)) ) { | ||
2129 | alt23=1; | ||
2130 | } | ||
2131 | } | ||
2132 | break; | ||
2133 | case 44: | ||
2134 | { | ||
2135 | int LA23_6 = input.LA(2); | ||
2136 | 2117 | ||
2137 | if ( (LA23_6==RULE_ID||(LA23_6>=40 && LA23_6<=44)) ) { | 2118 | if ( (LA23_4==RULE_ID||(LA23_4>=41 && LA23_4<=43)) ) { |
2138 | alt23=1; | 2119 | alt23=1; |
2139 | } | 2120 | } |
2140 | } | 2121 | } |
@@ -2320,7 +2301,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
2320 | int alt24=2; | 2301 | int alt24=2; |
2321 | int LA24_0 = input.LA(1); | 2302 | int LA24_0 = input.LA(1); |
2322 | 2303 | ||
2323 | if ( (LA24_0==17) ) { | 2304 | if ( (LA24_0==18) ) { |
2324 | alt24=1; | 2305 | alt24=1; |
2325 | } | 2306 | } |
2326 | 2307 | ||
@@ -2329,7 +2310,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
2329 | case 1 : | 2310 | case 1 : |
2330 | // InternalProblem.g:890:4: otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) | 2311 | // InternalProblem.g:890:4: otherlv_1= ',' ( (lv_literals_2_0= ruleLiteral ) ) |
2331 | { | 2312 | { |
2332 | otherlv_1=(Token)match(input,17,FOLLOW_25); | 2313 | otherlv_1=(Token)match(input,18,FOLLOW_25); |
2333 | 2314 | ||
2334 | newLeafNode(otherlv_1, grammarAccess.getConjunctionAccess().getCommaKeyword_1_0()); | 2315 | newLeafNode(otherlv_1, grammarAccess.getConjunctionAccess().getCommaKeyword_1_0()); |
2335 | 2316 | ||
@@ -2452,10 +2433,10 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
2452 | int alt25=2; | 2433 | int alt25=2; |
2453 | int LA25_0 = input.LA(1); | 2434 | int LA25_0 = input.LA(1); |
2454 | 2435 | ||
2455 | if ( (LA25_0==RULE_ID||LA25_0==RULE_QUOTED_ID||(LA25_0>=41 && LA25_0<=44)) ) { | 2436 | if ( (LA25_0==RULE_ID||LA25_0==RULE_QUOTED_ID||(LA25_0>=42 && LA25_0<=43)) ) { |
2456 | alt25=1; | 2437 | alt25=1; |
2457 | } | 2438 | } |
2458 | else if ( (LA25_0==32) ) { | 2439 | else if ( (LA25_0==33) ) { |
2459 | alt25=2; | 2440 | alt25=2; |
2460 | } | 2441 | } |
2461 | else { | 2442 | else { |
@@ -2578,7 +2559,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
2578 | // InternalProblem.g:968:2: (otherlv_0= '!' ( (lv_atom_1_0= ruleAtom ) ) ) | 2559 | // InternalProblem.g:968:2: (otherlv_0= '!' ( (lv_atom_1_0= ruleAtom ) ) ) |
2579 | // InternalProblem.g:969:3: otherlv_0= '!' ( (lv_atom_1_0= ruleAtom ) ) | 2560 | // InternalProblem.g:969:3: otherlv_0= '!' ( (lv_atom_1_0= ruleAtom ) ) |
2580 | { | 2561 | { |
2581 | otherlv_0=(Token)match(input,32,FOLLOW_8); | 2562 | otherlv_0=(Token)match(input,33,FOLLOW_8); |
2582 | 2563 | ||
2583 | newLeafNode(otherlv_0, grammarAccess.getNegativeLiteralAccess().getExclamationMarkKeyword_0()); | 2564 | newLeafNode(otherlv_0, grammarAccess.getNegativeLiteralAccess().getExclamationMarkKeyword_0()); |
2584 | 2565 | ||
@@ -2727,7 +2708,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
2727 | int alt26=2; | 2708 | int alt26=2; |
2728 | int LA26_0 = input.LA(1); | 2709 | int LA26_0 = input.LA(1); |
2729 | 2710 | ||
2730 | if ( (LA26_0==33) ) { | 2711 | if ( (LA26_0==34) ) { |
2731 | alt26=1; | 2712 | alt26=1; |
2732 | } | 2713 | } |
2733 | switch (alt26) { | 2714 | switch (alt26) { |
@@ -2737,7 +2718,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
2737 | // InternalProblem.g:1028:4: (lv_transitiveClosure_1_0= '+' ) | 2718 | // InternalProblem.g:1028:4: (lv_transitiveClosure_1_0= '+' ) |
2738 | // InternalProblem.g:1029:5: lv_transitiveClosure_1_0= '+' | 2719 | // InternalProblem.g:1029:5: lv_transitiveClosure_1_0= '+' |
2739 | { | 2720 | { |
2740 | lv_transitiveClosure_1_0=(Token)match(input,33,FOLLOW_21); | 2721 | lv_transitiveClosure_1_0=(Token)match(input,34,FOLLOW_21); |
2741 | 2722 | ||
2742 | newLeafNode(lv_transitiveClosure_1_0, grammarAccess.getAtomAccess().getTransitiveClosurePlusSignKeyword_1_0()); | 2723 | newLeafNode(lv_transitiveClosure_1_0, grammarAccess.getAtomAccess().getTransitiveClosurePlusSignKeyword_1_0()); |
2743 | 2724 | ||
@@ -2756,7 +2737,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
2756 | 2737 | ||
2757 | } | 2738 | } |
2758 | 2739 | ||
2759 | otherlv_2=(Token)match(input,29,FOLLOW_29); | 2740 | otherlv_2=(Token)match(input,30,FOLLOW_29); |
2760 | 2741 | ||
2761 | newLeafNode(otherlv_2, grammarAccess.getAtomAccess().getLeftParenthesisKeyword_2()); | 2742 | newLeafNode(otherlv_2, grammarAccess.getAtomAccess().getLeftParenthesisKeyword_2()); |
2762 | 2743 | ||
@@ -2764,7 +2745,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
2764 | int alt28=2; | 2745 | int alt28=2; |
2765 | int LA28_0 = input.LA(1); | 2746 | int LA28_0 = input.LA(1); |
2766 | 2747 | ||
2767 | if ( ((LA28_0>=RULE_STRING && LA28_0<=RULE_QUOTED_ID)||(LA28_0>=41 && LA28_0<=45)) ) { | 2748 | if ( ((LA28_0>=RULE_STRING && LA28_0<=RULE_EXPONENTIAL)||(LA28_0>=42 && LA28_0<=44)) ) { |
2768 | alt28=1; | 2749 | alt28=1; |
2769 | } | 2750 | } |
2770 | switch (alt28) { | 2751 | switch (alt28) { |
@@ -2808,7 +2789,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
2808 | int alt27=2; | 2789 | int alt27=2; |
2809 | int LA27_0 = input.LA(1); | 2790 | int LA27_0 = input.LA(1); |
2810 | 2791 | ||
2811 | if ( (LA27_0==17) ) { | 2792 | if ( (LA27_0==18) ) { |
2812 | alt27=1; | 2793 | alt27=1; |
2813 | } | 2794 | } |
2814 | 2795 | ||
@@ -2817,7 +2798,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
2817 | case 1 : | 2798 | case 1 : |
2818 | // InternalProblem.g:1066:5: otherlv_4= ',' ( (lv_arguments_5_0= ruleArgument ) ) | 2799 | // InternalProblem.g:1066:5: otherlv_4= ',' ( (lv_arguments_5_0= ruleArgument ) ) |
2819 | { | 2800 | { |
2820 | otherlv_4=(Token)match(input,17,FOLLOW_30); | 2801 | otherlv_4=(Token)match(input,18,FOLLOW_30); |
2821 | 2802 | ||
2822 | newLeafNode(otherlv_4, grammarAccess.getAtomAccess().getCommaKeyword_3_1_0()); | 2803 | newLeafNode(otherlv_4, grammarAccess.getAtomAccess().getCommaKeyword_3_1_0()); |
2823 | 2804 | ||
@@ -2867,7 +2848,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
2867 | 2848 | ||
2868 | } | 2849 | } |
2869 | 2850 | ||
2870 | otherlv_6=(Token)match(input,30,FOLLOW_2); | 2851 | otherlv_6=(Token)match(input,31,FOLLOW_2); |
2871 | 2852 | ||
2872 | newLeafNode(otherlv_6, grammarAccess.getAtomAccess().getRightParenthesisKeyword_4()); | 2853 | newLeafNode(otherlv_6, grammarAccess.getAtomAccess().getRightParenthesisKeyword_4()); |
2873 | 2854 | ||
@@ -2950,10 +2931,10 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
2950 | int alt29=2; | 2931 | int alt29=2; |
2951 | int LA29_0 = input.LA(1); | 2932 | int LA29_0 = input.LA(1); |
2952 | 2933 | ||
2953 | if ( (LA29_0==RULE_ID||LA29_0==RULE_QUOTED_ID||(LA29_0>=41 && LA29_0<=44)) ) { | 2934 | if ( (LA29_0==RULE_ID||LA29_0==RULE_QUOTED_ID||(LA29_0>=42 && LA29_0<=43)) ) { |
2954 | alt29=1; | 2935 | alt29=1; |
2955 | } | 2936 | } |
2956 | else if ( (LA29_0==RULE_STRING||LA29_0==RULE_INT||LA29_0==45) ) { | 2937 | else if ( (LA29_0==RULE_STRING||LA29_0==RULE_INT||LA29_0==RULE_EXPONENTIAL||LA29_0==44) ) { |
2957 | alt29=2; | 2938 | alt29=2; |
2958 | } | 2939 | } |
2959 | else { | 2940 | else { |
@@ -3327,7 +3308,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
3327 | 3308 | ||
3328 | } | 3309 | } |
3329 | 3310 | ||
3330 | otherlv_1=(Token)match(input,29,FOLLOW_29); | 3311 | otherlv_1=(Token)match(input,30,FOLLOW_29); |
3331 | 3312 | ||
3332 | newLeafNode(otherlv_1, grammarAccess.getAssertionAccess().getLeftParenthesisKeyword_0_0_1()); | 3313 | newLeafNode(otherlv_1, grammarAccess.getAssertionAccess().getLeftParenthesisKeyword_0_0_1()); |
3333 | 3314 | ||
@@ -3335,7 +3316,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
3335 | int alt31=2; | 3316 | int alt31=2; |
3336 | int LA31_0 = input.LA(1); | 3317 | int LA31_0 = input.LA(1); |
3337 | 3318 | ||
3338 | if ( ((LA31_0>=RULE_STRING && LA31_0<=RULE_QUOTED_ID)||(LA31_0>=41 && LA31_0<=45)) ) { | 3319 | if ( ((LA31_0>=RULE_STRING && LA31_0<=RULE_EXPONENTIAL)||(LA31_0>=42 && LA31_0<=44)) ) { |
3339 | alt31=1; | 3320 | alt31=1; |
3340 | } | 3321 | } |
3341 | switch (alt31) { | 3322 | switch (alt31) { |
@@ -3379,7 +3360,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
3379 | int alt30=2; | 3360 | int alt30=2; |
3380 | int LA30_0 = input.LA(1); | 3361 | int LA30_0 = input.LA(1); |
3381 | 3362 | ||
3382 | if ( (LA30_0==17) ) { | 3363 | if ( (LA30_0==18) ) { |
3383 | alt30=1; | 3364 | alt30=1; |
3384 | } | 3365 | } |
3385 | 3366 | ||
@@ -3388,7 +3369,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
3388 | case 1 : | 3369 | case 1 : |
3389 | // InternalProblem.g:1262:7: otherlv_3= ',' ( (lv_arguments_4_0= ruleAssertionArgument ) ) | 3370 | // InternalProblem.g:1262:7: otherlv_3= ',' ( (lv_arguments_4_0= ruleAssertionArgument ) ) |
3390 | { | 3371 | { |
3391 | otherlv_3=(Token)match(input,17,FOLLOW_30); | 3372 | otherlv_3=(Token)match(input,18,FOLLOW_30); |
3392 | 3373 | ||
3393 | newLeafNode(otherlv_3, grammarAccess.getAssertionAccess().getCommaKeyword_0_0_2_1_0()); | 3374 | newLeafNode(otherlv_3, grammarAccess.getAssertionAccess().getCommaKeyword_0_0_2_1_0()); |
3394 | 3375 | ||
@@ -3438,11 +3419,11 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
3438 | 3419 | ||
3439 | } | 3420 | } |
3440 | 3421 | ||
3441 | otherlv_5=(Token)match(input,30,FOLLOW_31); | 3422 | otherlv_5=(Token)match(input,31,FOLLOW_31); |
3442 | 3423 | ||
3443 | newLeafNode(otherlv_5, grammarAccess.getAssertionAccess().getRightParenthesisKeyword_0_0_3()); | 3424 | newLeafNode(otherlv_5, grammarAccess.getAssertionAccess().getRightParenthesisKeyword_0_0_3()); |
3444 | 3425 | ||
3445 | otherlv_6=(Token)match(input,34,FOLLOW_32); | 3426 | otherlv_6=(Token)match(input,35,FOLLOW_32); |
3446 | 3427 | ||
3447 | newLeafNode(otherlv_6, grammarAccess.getAssertionAccess().getColonKeyword_0_0_4()); | 3428 | newLeafNode(otherlv_6, grammarAccess.getAssertionAccess().getColonKeyword_0_0_4()); |
3448 | 3429 | ||
@@ -3493,7 +3474,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
3493 | int alt32=2; | 3474 | int alt32=2; |
3494 | int LA32_0 = input.LA(1); | 3475 | int LA32_0 = input.LA(1); |
3495 | 3476 | ||
3496 | if ( (LA32_0==32||LA32_0==47) ) { | 3477 | if ( (LA32_0==33||LA32_0==46) ) { |
3497 | alt32=1; | 3478 | alt32=1; |
3498 | } | 3479 | } |
3499 | switch (alt32) { | 3480 | switch (alt32) { |
@@ -3559,7 +3540,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
3559 | 3540 | ||
3560 | } | 3541 | } |
3561 | 3542 | ||
3562 | otherlv_10=(Token)match(input,29,FOLLOW_29); | 3543 | otherlv_10=(Token)match(input,30,FOLLOW_29); |
3563 | 3544 | ||
3564 | newLeafNode(otherlv_10, grammarAccess.getAssertionAccess().getLeftParenthesisKeyword_0_1_2()); | 3545 | newLeafNode(otherlv_10, grammarAccess.getAssertionAccess().getLeftParenthesisKeyword_0_1_2()); |
3565 | 3546 | ||
@@ -3567,7 +3548,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
3567 | int alt34=2; | 3548 | int alt34=2; |
3568 | int LA34_0 = input.LA(1); | 3549 | int LA34_0 = input.LA(1); |
3569 | 3550 | ||
3570 | if ( ((LA34_0>=RULE_STRING && LA34_0<=RULE_QUOTED_ID)||(LA34_0>=41 && LA34_0<=45)) ) { | 3551 | if ( ((LA34_0>=RULE_STRING && LA34_0<=RULE_EXPONENTIAL)||(LA34_0>=42 && LA34_0<=44)) ) { |
3571 | alt34=1; | 3552 | alt34=1; |
3572 | } | 3553 | } |
3573 | switch (alt34) { | 3554 | switch (alt34) { |
@@ -3611,7 +3592,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
3611 | int alt33=2; | 3592 | int alt33=2; |
3612 | int LA33_0 = input.LA(1); | 3593 | int LA33_0 = input.LA(1); |
3613 | 3594 | ||
3614 | if ( (LA33_0==17) ) { | 3595 | if ( (LA33_0==18) ) { |
3615 | alt33=1; | 3596 | alt33=1; |
3616 | } | 3597 | } |
3617 | 3598 | ||
@@ -3620,7 +3601,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
3620 | case 1 : | 3601 | case 1 : |
3621 | // InternalProblem.g:1377:7: otherlv_12= ',' ( (lv_arguments_13_0= ruleAssertionArgument ) ) | 3602 | // InternalProblem.g:1377:7: otherlv_12= ',' ( (lv_arguments_13_0= ruleAssertionArgument ) ) |
3622 | { | 3603 | { |
3623 | otherlv_12=(Token)match(input,17,FOLLOW_30); | 3604 | otherlv_12=(Token)match(input,18,FOLLOW_30); |
3624 | 3605 | ||
3625 | newLeafNode(otherlv_12, grammarAccess.getAssertionAccess().getCommaKeyword_0_1_3_1_0()); | 3606 | newLeafNode(otherlv_12, grammarAccess.getAssertionAccess().getCommaKeyword_0_1_3_1_0()); |
3626 | 3607 | ||
@@ -3670,7 +3651,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
3670 | 3651 | ||
3671 | } | 3652 | } |
3672 | 3653 | ||
3673 | otherlv_14=(Token)match(input,30,FOLLOW_4); | 3654 | otherlv_14=(Token)match(input,31,FOLLOW_4); |
3674 | 3655 | ||
3675 | newLeafNode(otherlv_14, grammarAccess.getAssertionAccess().getRightParenthesisKeyword_0_1_4()); | 3656 | newLeafNode(otherlv_14, grammarAccess.getAssertionAccess().getRightParenthesisKeyword_0_1_4()); |
3676 | 3657 | ||
@@ -3683,7 +3664,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
3683 | 3664 | ||
3684 | } | 3665 | } |
3685 | 3666 | ||
3686 | otherlv_15=(Token)match(input,13,FOLLOW_2); | 3667 | otherlv_15=(Token)match(input,14,FOLLOW_2); |
3687 | 3668 | ||
3688 | newLeafNode(otherlv_15, grammarAccess.getAssertionAccess().getFullStopKeyword_1()); | 3669 | newLeafNode(otherlv_15, grammarAccess.getAssertionAccess().getFullStopKeyword_1()); |
3689 | 3670 | ||
@@ -3766,10 +3747,10 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
3766 | int alt36=2; | 3747 | int alt36=2; |
3767 | int LA36_0 = input.LA(1); | 3748 | int LA36_0 = input.LA(1); |
3768 | 3749 | ||
3769 | if ( (LA36_0==RULE_ID||LA36_0==RULE_QUOTED_ID||(LA36_0>=41 && LA36_0<=44)) ) { | 3750 | if ( (LA36_0==RULE_ID||LA36_0==RULE_QUOTED_ID||(LA36_0>=42 && LA36_0<=43)) ) { |
3770 | alt36=1; | 3751 | alt36=1; |
3771 | } | 3752 | } |
3772 | else if ( (LA36_0==RULE_STRING||LA36_0==RULE_INT||LA36_0==45) ) { | 3753 | else if ( (LA36_0==RULE_STRING||LA36_0==RULE_INT||LA36_0==RULE_EXPONENTIAL||LA36_0==44) ) { |
3773 | alt36=2; | 3754 | alt36=2; |
3774 | } | 3755 | } |
3775 | else { | 3756 | else { |
@@ -4117,7 +4098,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
4117 | 4098 | ||
4118 | } | 4099 | } |
4119 | 4100 | ||
4120 | otherlv_1=(Token)match(input,34,FOLLOW_30); | 4101 | otherlv_1=(Token)match(input,35,FOLLOW_30); |
4121 | 4102 | ||
4122 | newLeafNode(otherlv_1, grammarAccess.getNodeValueAssertionAccess().getColonKeyword_1()); | 4103 | newLeafNode(otherlv_1, grammarAccess.getNodeValueAssertionAccess().getColonKeyword_1()); |
4123 | 4104 | ||
@@ -4152,7 +4133,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
4152 | 4133 | ||
4153 | } | 4134 | } |
4154 | 4135 | ||
4155 | otherlv_3=(Token)match(input,13,FOLLOW_2); | 4136 | otherlv_3=(Token)match(input,14,FOLLOW_2); |
4156 | 4137 | ||
4157 | newLeafNode(otherlv_3, grammarAccess.getNodeValueAssertionAccess().getFullStopKeyword_3()); | 4138 | newLeafNode(otherlv_3, grammarAccess.getNodeValueAssertionAccess().getFullStopKeyword_3()); |
4158 | 4139 | ||
@@ -4215,13 +4196,13 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
4215 | 4196 | ||
4216 | 4197 | ||
4217 | // $ANTLR start "ruleConstant" | 4198 | // $ANTLR start "ruleConstant" |
4218 | // InternalProblem.g:1590:1: ruleConstant returns [EObject current=null] : (this_IntConstant_0= ruleIntConstant | this_RealConstant_1= ruleRealConstant | this_StringConstant_2= ruleStringConstant ) ; | 4199 | // InternalProblem.g:1590:1: ruleConstant returns [EObject current=null] : (this_RealConstant_0= ruleRealConstant | this_IntConstant_1= ruleIntConstant | this_StringConstant_2= ruleStringConstant ) ; |
4219 | public final EObject ruleConstant() throws RecognitionException { | 4200 | public final EObject ruleConstant() throws RecognitionException { |
4220 | EObject current = null; | 4201 | EObject current = null; |
4221 | 4202 | ||
4222 | EObject this_IntConstant_0 = null; | 4203 | EObject this_RealConstant_0 = null; |
4223 | 4204 | ||
4224 | EObject this_RealConstant_1 = null; | 4205 | EObject this_IntConstant_1 = null; |
4225 | 4206 | ||
4226 | EObject this_StringConstant_2 = null; | 4207 | EObject this_StringConstant_2 = null; |
4227 | 4208 | ||
@@ -4230,56 +4211,47 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
4230 | enterRule(); | 4211 | enterRule(); |
4231 | 4212 | ||
4232 | try { | 4213 | try { |
4233 | // InternalProblem.g:1596:2: ( (this_IntConstant_0= ruleIntConstant | this_RealConstant_1= ruleRealConstant | this_StringConstant_2= ruleStringConstant ) ) | 4214 | // InternalProblem.g:1596:2: ( (this_RealConstant_0= ruleRealConstant | this_IntConstant_1= ruleIntConstant | this_StringConstant_2= ruleStringConstant ) ) |
4234 | // InternalProblem.g:1597:2: (this_IntConstant_0= ruleIntConstant | this_RealConstant_1= ruleRealConstant | this_StringConstant_2= ruleStringConstant ) | 4215 | // InternalProblem.g:1597:2: (this_RealConstant_0= ruleRealConstant | this_IntConstant_1= ruleIntConstant | this_StringConstant_2= ruleStringConstant ) |
4235 | { | 4216 | { |
4236 | // InternalProblem.g:1597:2: (this_IntConstant_0= ruleIntConstant | this_RealConstant_1= ruleRealConstant | this_StringConstant_2= ruleStringConstant ) | 4217 | // InternalProblem.g:1597:2: (this_RealConstant_0= ruleRealConstant | this_IntConstant_1= ruleIntConstant | this_StringConstant_2= ruleStringConstant ) |
4237 | int alt37=3; | 4218 | int alt37=3; |
4238 | switch ( input.LA(1) ) { | 4219 | switch ( input.LA(1) ) { |
4239 | case 45: | 4220 | case 44: |
4240 | { | 4221 | { |
4241 | int LA37_1 = input.LA(2); | 4222 | int LA37_1 = input.LA(2); |
4242 | 4223 | ||
4243 | if ( (LA37_1==RULE_INT) ) { | 4224 | if ( (LA37_1==RULE_INT) ) { |
4244 | switch ( input.LA(3) ) { | 4225 | int LA37_3 = input.LA(3); |
4245 | case EOF: | 4226 | |
4246 | case 17: | 4227 | if ( (LA37_3==14) ) { |
4247 | case 30: | ||
4248 | { | ||
4249 | alt37=1; | ||
4250 | } | ||
4251 | break; | ||
4252 | case 13: | ||
4253 | { | ||
4254 | int LA37_5 = input.LA(4); | 4228 | int LA37_5 = input.LA(4); |
4255 | 4229 | ||
4256 | if ( (LA37_5==EOF||LA37_5==RULE_ID||LA37_5==RULE_QUOTED_ID||(LA37_5>=14 && LA37_5<=15)||LA37_5==21||(LA37_5>=27 && LA37_5<=28)||LA37_5==32||LA37_5==35||(LA37_5>=41 && LA37_5<=44)||LA37_5==47) ) { | 4230 | if ( (LA37_5==EOF||LA37_5==RULE_ID||LA37_5==RULE_QUOTED_ID||(LA37_5>=15 && LA37_5<=16)||LA37_5==22||(LA37_5>=28 && LA37_5<=29)||LA37_5==33||LA37_5==36||(LA37_5>=42 && LA37_5<=43)||LA37_5==46) ) { |
4257 | alt37=1; | ||
4258 | } | ||
4259 | else if ( (LA37_5==RULE_INT) ) { | ||
4260 | alt37=2; | 4231 | alt37=2; |
4261 | } | 4232 | } |
4233 | else if ( (LA37_5==RULE_INT||LA37_5==RULE_EXPONENTIAL) ) { | ||
4234 | alt37=1; | ||
4235 | } | ||
4262 | else { | 4236 | else { |
4263 | NoViableAltException nvae = | 4237 | NoViableAltException nvae = |
4264 | new NoViableAltException("", 37, 5, input); | 4238 | new NoViableAltException("", 37, 5, input); |
4265 | 4239 | ||
4266 | throw nvae; | 4240 | throw nvae; |
4267 | } | 4241 | } |
4268 | } | 4242 | } |
4269 | break; | 4243 | else if ( (LA37_3==EOF||LA37_3==18||LA37_3==31) ) { |
4270 | case 43: | ||
4271 | case 44: | ||
4272 | { | ||
4273 | alt37=2; | 4244 | alt37=2; |
4274 | } | 4245 | } |
4275 | break; | 4246 | else { |
4276 | default: | ||
4277 | NoViableAltException nvae = | 4247 | NoViableAltException nvae = |
4278 | new NoViableAltException("", 37, 2, input); | 4248 | new NoViableAltException("", 37, 3, input); |
4279 | 4249 | ||
4280 | throw nvae; | 4250 | throw nvae; |
4281 | } | 4251 | } |
4282 | 4252 | } | |
4253 | else if ( (LA37_1==RULE_EXPONENTIAL) ) { | ||
4254 | alt37=1; | ||
4283 | } | 4255 | } |
4284 | else { | 4256 | else { |
4285 | NoViableAltException nvae = | 4257 | NoViableAltException nvae = |
@@ -4289,47 +4261,40 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
4289 | } | 4261 | } |
4290 | } | 4262 | } |
4291 | break; | 4263 | break; |
4264 | case RULE_EXPONENTIAL: | ||
4265 | { | ||
4266 | alt37=1; | ||
4267 | } | ||
4268 | break; | ||
4292 | case RULE_INT: | 4269 | case RULE_INT: |
4293 | { | 4270 | { |
4294 | switch ( input.LA(2) ) { | 4271 | int LA37_3 = input.LA(2); |
4295 | case EOF: | 4272 | |
4296 | case 17: | 4273 | if ( (LA37_3==14) ) { |
4297 | case 30: | ||
4298 | { | ||
4299 | alt37=1; | ||
4300 | } | ||
4301 | break; | ||
4302 | case 13: | ||
4303 | { | ||
4304 | int LA37_5 = input.LA(3); | 4274 | int LA37_5 = input.LA(3); |
4305 | 4275 | ||
4306 | if ( (LA37_5==EOF||LA37_5==RULE_ID||LA37_5==RULE_QUOTED_ID||(LA37_5>=14 && LA37_5<=15)||LA37_5==21||(LA37_5>=27 && LA37_5<=28)||LA37_5==32||LA37_5==35||(LA37_5>=41 && LA37_5<=44)||LA37_5==47) ) { | 4276 | if ( (LA37_5==EOF||LA37_5==RULE_ID||LA37_5==RULE_QUOTED_ID||(LA37_5>=15 && LA37_5<=16)||LA37_5==22||(LA37_5>=28 && LA37_5<=29)||LA37_5==33||LA37_5==36||(LA37_5>=42 && LA37_5<=43)||LA37_5==46) ) { |
4307 | alt37=1; | ||
4308 | } | ||
4309 | else if ( (LA37_5==RULE_INT) ) { | ||
4310 | alt37=2; | 4277 | alt37=2; |
4311 | } | 4278 | } |
4279 | else if ( (LA37_5==RULE_INT||LA37_5==RULE_EXPONENTIAL) ) { | ||
4280 | alt37=1; | ||
4281 | } | ||
4312 | else { | 4282 | else { |
4313 | NoViableAltException nvae = | 4283 | NoViableAltException nvae = |
4314 | new NoViableAltException("", 37, 5, input); | 4284 | new NoViableAltException("", 37, 5, input); |
4315 | 4285 | ||
4316 | throw nvae; | 4286 | throw nvae; |
4317 | } | 4287 | } |
4318 | } | 4288 | } |
4319 | break; | 4289 | else if ( (LA37_3==EOF||LA37_3==18||LA37_3==31) ) { |
4320 | case 43: | ||
4321 | case 44: | ||
4322 | { | ||
4323 | alt37=2; | 4290 | alt37=2; |
4324 | } | 4291 | } |
4325 | break; | 4292 | else { |
4326 | default: | ||
4327 | NoViableAltException nvae = | 4293 | NoViableAltException nvae = |
4328 | new NoViableAltException("", 37, 2, input); | 4294 | new NoViableAltException("", 37, 3, input); |
4329 | 4295 | ||
4330 | throw nvae; | 4296 | throw nvae; |
4331 | } | 4297 | } |
4332 | |||
4333 | } | 4298 | } |
4334 | break; | 4299 | break; |
4335 | case RULE_STRING: | 4300 | case RULE_STRING: |
@@ -4346,36 +4311,36 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
4346 | 4311 | ||
4347 | switch (alt37) { | 4312 | switch (alt37) { |
4348 | case 1 : | 4313 | case 1 : |
4349 | // InternalProblem.g:1598:3: this_IntConstant_0= ruleIntConstant | 4314 | // InternalProblem.g:1598:3: this_RealConstant_0= ruleRealConstant |
4350 | { | 4315 | { |
4351 | 4316 | ||
4352 | newCompositeNode(grammarAccess.getConstantAccess().getIntConstantParserRuleCall_0()); | 4317 | newCompositeNode(grammarAccess.getConstantAccess().getRealConstantParserRuleCall_0()); |
4353 | 4318 | ||
4354 | pushFollow(FOLLOW_2); | 4319 | pushFollow(FOLLOW_2); |
4355 | this_IntConstant_0=ruleIntConstant(); | 4320 | this_RealConstant_0=ruleRealConstant(); |
4356 | 4321 | ||
4357 | state._fsp--; | 4322 | state._fsp--; |
4358 | 4323 | ||
4359 | 4324 | ||
4360 | current = this_IntConstant_0; | 4325 | current = this_RealConstant_0; |
4361 | afterParserOrEnumRuleCall(); | 4326 | afterParserOrEnumRuleCall(); |
4362 | 4327 | ||
4363 | 4328 | ||
4364 | } | 4329 | } |
4365 | break; | 4330 | break; |
4366 | case 2 : | 4331 | case 2 : |
4367 | // InternalProblem.g:1607:3: this_RealConstant_1= ruleRealConstant | 4332 | // InternalProblem.g:1607:3: this_IntConstant_1= ruleIntConstant |
4368 | { | 4333 | { |
4369 | 4334 | ||
4370 | newCompositeNode(grammarAccess.getConstantAccess().getRealConstantParserRuleCall_1()); | 4335 | newCompositeNode(grammarAccess.getConstantAccess().getIntConstantParserRuleCall_1()); |
4371 | 4336 | ||
4372 | pushFollow(FOLLOW_2); | 4337 | pushFollow(FOLLOW_2); |
4373 | this_RealConstant_1=ruleRealConstant(); | 4338 | this_IntConstant_1=ruleIntConstant(); |
4374 | 4339 | ||
4375 | state._fsp--; | 4340 | state._fsp--; |
4376 | 4341 | ||
4377 | 4342 | ||
4378 | current = this_RealConstant_1; | 4343 | current = this_IntConstant_1; |
4379 | afterParserOrEnumRuleCall(); | 4344 | afterParserOrEnumRuleCall(); |
4380 | 4345 | ||
4381 | 4346 | ||
@@ -4777,7 +4742,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
4777 | // InternalProblem.g:1749:2: (otherlv_0= 'scope' ( (lv_typeScopes_1_0= ruleTypeScope ) ) (otherlv_2= ',' ( (lv_typeScopes_3_0= ruleTypeScope ) ) )* otherlv_4= '.' ) | 4742 | // InternalProblem.g:1749:2: (otherlv_0= 'scope' ( (lv_typeScopes_1_0= ruleTypeScope ) ) (otherlv_2= ',' ( (lv_typeScopes_3_0= ruleTypeScope ) ) )* otherlv_4= '.' ) |
4778 | // InternalProblem.g:1750:3: otherlv_0= 'scope' ( (lv_typeScopes_1_0= ruleTypeScope ) ) (otherlv_2= ',' ( (lv_typeScopes_3_0= ruleTypeScope ) ) )* otherlv_4= '.' | 4743 | // InternalProblem.g:1750:3: otherlv_0= 'scope' ( (lv_typeScopes_1_0= ruleTypeScope ) ) (otherlv_2= ',' ( (lv_typeScopes_3_0= ruleTypeScope ) ) )* otherlv_4= '.' |
4779 | { | 4744 | { |
4780 | otherlv_0=(Token)match(input,35,FOLLOW_33); | 4745 | otherlv_0=(Token)match(input,36,FOLLOW_33); |
4781 | 4746 | ||
4782 | newLeafNode(otherlv_0, grammarAccess.getScopeDeclarationAccess().getScopeKeyword_0()); | 4747 | newLeafNode(otherlv_0, grammarAccess.getScopeDeclarationAccess().getScopeKeyword_0()); |
4783 | 4748 | ||
@@ -4818,7 +4783,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
4818 | int alt38=2; | 4783 | int alt38=2; |
4819 | int LA38_0 = input.LA(1); | 4784 | int LA38_0 = input.LA(1); |
4820 | 4785 | ||
4821 | if ( (LA38_0==17) ) { | 4786 | if ( (LA38_0==18) ) { |
4822 | alt38=1; | 4787 | alt38=1; |
4823 | } | 4788 | } |
4824 | 4789 | ||
@@ -4827,7 +4792,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
4827 | case 1 : | 4792 | case 1 : |
4828 | // InternalProblem.g:1774:4: otherlv_2= ',' ( (lv_typeScopes_3_0= ruleTypeScope ) ) | 4793 | // InternalProblem.g:1774:4: otherlv_2= ',' ( (lv_typeScopes_3_0= ruleTypeScope ) ) |
4829 | { | 4794 | { |
4830 | otherlv_2=(Token)match(input,17,FOLLOW_33); | 4795 | otherlv_2=(Token)match(input,18,FOLLOW_33); |
4831 | 4796 | ||
4832 | newLeafNode(otherlv_2, grammarAccess.getScopeDeclarationAccess().getCommaKeyword_2_0()); | 4797 | newLeafNode(otherlv_2, grammarAccess.getScopeDeclarationAccess().getCommaKeyword_2_0()); |
4833 | 4798 | ||
@@ -4871,7 +4836,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
4871 | } | 4836 | } |
4872 | } while (true); | 4837 | } while (true); |
4873 | 4838 | ||
4874 | otherlv_4=(Token)match(input,13,FOLLOW_2); | 4839 | otherlv_4=(Token)match(input,14,FOLLOW_2); |
4875 | 4840 | ||
4876 | newLeafNode(otherlv_4, grammarAccess.getScopeDeclarationAccess().getFullStopKeyword_3()); | 4841 | newLeafNode(otherlv_4, grammarAccess.getScopeDeclarationAccess().getFullStopKeyword_3()); |
4877 | 4842 | ||
@@ -4979,10 +4944,10 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
4979 | int alt39=2; | 4944 | int alt39=2; |
4980 | int LA39_0 = input.LA(1); | 4945 | int LA39_0 = input.LA(1); |
4981 | 4946 | ||
4982 | if ( (LA39_0==36) ) { | 4947 | if ( (LA39_0==37) ) { |
4983 | alt39=1; | 4948 | alt39=1; |
4984 | } | 4949 | } |
4985 | else if ( (LA39_0==37) ) { | 4950 | else if ( (LA39_0==38) ) { |
4986 | alt39=2; | 4951 | alt39=2; |
4987 | } | 4952 | } |
4988 | else { | 4953 | else { |
@@ -5001,7 +4966,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
5001 | // InternalProblem.g:1836:5: (lv_increment_1_0= '+=' ) | 4966 | // InternalProblem.g:1836:5: (lv_increment_1_0= '+=' ) |
5002 | // InternalProblem.g:1837:6: lv_increment_1_0= '+=' | 4967 | // InternalProblem.g:1837:6: lv_increment_1_0= '+=' |
5003 | { | 4968 | { |
5004 | lv_increment_1_0=(Token)match(input,36,FOLLOW_17); | 4969 | lv_increment_1_0=(Token)match(input,37,FOLLOW_17); |
5005 | 4970 | ||
5006 | newLeafNode(lv_increment_1_0, grammarAccess.getTypeScopeAccess().getIncrementPlusSignEqualsSignKeyword_1_0_0()); | 4971 | newLeafNode(lv_increment_1_0, grammarAccess.getTypeScopeAccess().getIncrementPlusSignEqualsSignKeyword_1_0_0()); |
5007 | 4972 | ||
@@ -5023,7 +4988,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
5023 | case 2 : | 4988 | case 2 : |
5024 | // InternalProblem.g:1850:4: otherlv_2= '=' | 4989 | // InternalProblem.g:1850:4: otherlv_2= '=' |
5025 | { | 4990 | { |
5026 | otherlv_2=(Token)match(input,37,FOLLOW_17); | 4991 | otherlv_2=(Token)match(input,38,FOLLOW_17); |
5027 | 4992 | ||
5028 | newLeafNode(otherlv_2, grammarAccess.getTypeScopeAccess().getEqualsSignKeyword_1_1()); | 4993 | newLeafNode(otherlv_2, grammarAccess.getTypeScopeAccess().getEqualsSignKeyword_1_1()); |
5029 | 4994 | ||
@@ -5143,7 +5108,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
5143 | int alt40=2; | 5108 | int alt40=2; |
5144 | int LA40_0 = input.LA(1); | 5109 | int LA40_0 = input.LA(1); |
5145 | 5110 | ||
5146 | if ( (LA40_0==EOF||LA40_0==25) ) { | 5111 | if ( (LA40_0==EOF||LA40_0==26) ) { |
5147 | alt40=1; | 5112 | alt40=1; |
5148 | } | 5113 | } |
5149 | else if ( (LA40_0==RULE_INT) ) { | 5114 | else if ( (LA40_0==RULE_INT) ) { |
@@ -5274,10 +5239,10 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
5274 | if ( (LA41_0==RULE_INT) ) { | 5239 | if ( (LA41_0==RULE_INT) ) { |
5275 | int LA41_1 = input.LA(2); | 5240 | int LA41_1 = input.LA(2); |
5276 | 5241 | ||
5277 | if ( (LA41_1==38) ) { | 5242 | if ( (LA41_1==39) ) { |
5278 | alt41=1; | 5243 | alt41=1; |
5279 | } | 5244 | } |
5280 | else if ( (LA41_1==EOF||LA41_1==13||LA41_1==17||LA41_1==25) ) { | 5245 | else if ( (LA41_1==EOF||LA41_1==14||LA41_1==18||LA41_1==26) ) { |
5281 | alt41=2; | 5246 | alt41=2; |
5282 | } | 5247 | } |
5283 | else { | 5248 | else { |
@@ -5507,7 +5472,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
5507 | 5472 | ||
5508 | } | 5473 | } |
5509 | 5474 | ||
5510 | otherlv_1=(Token)match(input,38,FOLLOW_37); | 5475 | otherlv_1=(Token)match(input,39,FOLLOW_37); |
5511 | 5476 | ||
5512 | newLeafNode(otherlv_1, grammarAccess.getRangeMultiplicityAccess().getFullStopFullStopKeyword_1()); | 5477 | newLeafNode(otherlv_1, grammarAccess.getRangeMultiplicityAccess().getFullStopFullStopKeyword_1()); |
5513 | 5478 | ||
@@ -5717,7 +5682,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
5717 | if ( (LA42_0==RULE_INT) ) { | 5682 | if ( (LA42_0==RULE_INT) ) { |
5718 | alt42=1; | 5683 | alt42=1; |
5719 | } | 5684 | } |
5720 | else if ( (LA42_0==39) ) { | 5685 | else if ( (LA42_0==40) ) { |
5721 | alt42=2; | 5686 | alt42=2; |
5722 | } | 5687 | } |
5723 | else { | 5688 | else { |
@@ -5743,7 +5708,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
5743 | case 2 : | 5708 | case 2 : |
5744 | // InternalProblem.g:2092:3: kw= '*' | 5709 | // InternalProblem.g:2092:3: kw= '*' |
5745 | { | 5710 | { |
5746 | kw=(Token)match(input,39,FOLLOW_2); | 5711 | kw=(Token)match(input,40,FOLLOW_2); |
5747 | 5712 | ||
5748 | current.merge(kw); | 5713 | current.merge(kw); |
5749 | newLeafNode(kw, grammarAccess.getUpperBoundAccess().getAsteriskKeyword_1()); | 5714 | newLeafNode(kw, grammarAccess.getUpperBoundAccess().getAsteriskKeyword_1()); |
@@ -5842,7 +5807,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
5842 | if ( (LA44_0==RULE_QUOTED_ID) ) { | 5807 | if ( (LA44_0==RULE_QUOTED_ID) ) { |
5843 | alt44=1; | 5808 | alt44=1; |
5844 | } | 5809 | } |
5845 | else if ( (LA44_0==RULE_ID||(LA44_0>=41 && LA44_0<=44)) ) { | 5810 | else if ( (LA44_0==RULE_ID||(LA44_0>=42 && LA44_0<=43)) ) { |
5846 | alt44=2; | 5811 | alt44=2; |
5847 | } | 5812 | } |
5848 | else { | 5813 | else { |
@@ -5891,7 +5856,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
5891 | int alt43=2; | 5856 | int alt43=2; |
5892 | int LA43_0 = input.LA(1); | 5857 | int LA43_0 = input.LA(1); |
5893 | 5858 | ||
5894 | if ( (LA43_0==40) ) { | 5859 | if ( (LA43_0==41) ) { |
5895 | alt43=1; | 5860 | alt43=1; |
5896 | } | 5861 | } |
5897 | 5862 | ||
@@ -5900,7 +5865,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
5900 | case 1 : | 5865 | case 1 : |
5901 | // InternalProblem.g:2142:5: kw= '::' this_Identifier_3= ruleIdentifier | 5866 | // InternalProblem.g:2142:5: kw= '::' this_Identifier_3= ruleIdentifier |
5902 | { | 5867 | { |
5903 | kw=(Token)match(input,40,FOLLOW_3); | 5868 | kw=(Token)match(input,41,FOLLOW_3); |
5904 | 5869 | ||
5905 | current.merge(kw); | 5870 | current.merge(kw); |
5906 | newLeafNode(kw, grammarAccess.getQualifiedNameAccess().getColonColonKeyword_1_1_0()); | 5871 | newLeafNode(kw, grammarAccess.getQualifiedNameAccess().getColonColonKeyword_1_1_0()); |
@@ -5996,7 +5961,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
5996 | 5961 | ||
5997 | 5962 | ||
5998 | // $ANTLR start "ruleIdentifier" | 5963 | // $ANTLR start "ruleIdentifier" |
5999 | // InternalProblem.g:2173:1: ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_ID_0= RULE_ID | kw= 'true' | kw= 'false' | kw= 'e' | kw= 'E' ) ; | 5964 | // InternalProblem.g:2173:1: ruleIdentifier returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_ID_0= RULE_ID | kw= 'true' | kw= 'false' ) ; |
6000 | public final AntlrDatatypeRuleToken ruleIdentifier() throws RecognitionException { | 5965 | public final AntlrDatatypeRuleToken ruleIdentifier() throws RecognitionException { |
6001 | AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); | 5966 | AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
6002 | 5967 | ||
@@ -6007,35 +5972,25 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6007 | enterRule(); | 5972 | enterRule(); |
6008 | 5973 | ||
6009 | try { | 5974 | try { |
6010 | // InternalProblem.g:2179:2: ( (this_ID_0= RULE_ID | kw= 'true' | kw= 'false' | kw= 'e' | kw= 'E' ) ) | 5975 | // InternalProblem.g:2179:2: ( (this_ID_0= RULE_ID | kw= 'true' | kw= 'false' ) ) |
6011 | // InternalProblem.g:2180:2: (this_ID_0= RULE_ID | kw= 'true' | kw= 'false' | kw= 'e' | kw= 'E' ) | 5976 | // InternalProblem.g:2180:2: (this_ID_0= RULE_ID | kw= 'true' | kw= 'false' ) |
6012 | { | 5977 | { |
6013 | // InternalProblem.g:2180:2: (this_ID_0= RULE_ID | kw= 'true' | kw= 'false' | kw= 'e' | kw= 'E' ) | 5978 | // InternalProblem.g:2180:2: (this_ID_0= RULE_ID | kw= 'true' | kw= 'false' ) |
6014 | int alt45=5; | 5979 | int alt45=3; |
6015 | switch ( input.LA(1) ) { | 5980 | switch ( input.LA(1) ) { |
6016 | case RULE_ID: | 5981 | case RULE_ID: |
6017 | { | 5982 | { |
6018 | alt45=1; | 5983 | alt45=1; |
6019 | } | 5984 | } |
6020 | break; | 5985 | break; |
6021 | case 41: | ||
6022 | { | ||
6023 | alt45=2; | ||
6024 | } | ||
6025 | break; | ||
6026 | case 42: | 5986 | case 42: |
6027 | { | 5987 | { |
6028 | alt45=3; | 5988 | alt45=2; |
6029 | } | 5989 | } |
6030 | break; | 5990 | break; |
6031 | case 43: | 5991 | case 43: |
6032 | { | 5992 | { |
6033 | alt45=4; | 5993 | alt45=3; |
6034 | } | ||
6035 | break; | ||
6036 | case 44: | ||
6037 | { | ||
6038 | alt45=5; | ||
6039 | } | 5994 | } |
6040 | break; | 5995 | break; |
6041 | default: | 5996 | default: |
@@ -6062,7 +6017,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6062 | case 2 : | 6017 | case 2 : |
6063 | // InternalProblem.g:2189:3: kw= 'true' | 6018 | // InternalProblem.g:2189:3: kw= 'true' |
6064 | { | 6019 | { |
6065 | kw=(Token)match(input,41,FOLLOW_2); | 6020 | kw=(Token)match(input,42,FOLLOW_2); |
6066 | 6021 | ||
6067 | current.merge(kw); | 6022 | current.merge(kw); |
6068 | newLeafNode(kw, grammarAccess.getIdentifierAccess().getTrueKeyword_1()); | 6023 | newLeafNode(kw, grammarAccess.getIdentifierAccess().getTrueKeyword_1()); |
@@ -6073,32 +6028,10 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6073 | case 3 : | 6028 | case 3 : |
6074 | // InternalProblem.g:2195:3: kw= 'false' | 6029 | // InternalProblem.g:2195:3: kw= 'false' |
6075 | { | 6030 | { |
6076 | kw=(Token)match(input,42,FOLLOW_2); | ||
6077 | |||
6078 | current.merge(kw); | ||
6079 | newLeafNode(kw, grammarAccess.getIdentifierAccess().getFalseKeyword_2()); | ||
6080 | |||
6081 | |||
6082 | } | ||
6083 | break; | ||
6084 | case 4 : | ||
6085 | // InternalProblem.g:2201:3: kw= 'e' | ||
6086 | { | ||
6087 | kw=(Token)match(input,43,FOLLOW_2); | 6031 | kw=(Token)match(input,43,FOLLOW_2); |
6088 | 6032 | ||
6089 | current.merge(kw); | 6033 | current.merge(kw); |
6090 | newLeafNode(kw, grammarAccess.getIdentifierAccess().getEKeyword_3()); | 6034 | newLeafNode(kw, grammarAccess.getIdentifierAccess().getFalseKeyword_2()); |
6091 | |||
6092 | |||
6093 | } | ||
6094 | break; | ||
6095 | case 5 : | ||
6096 | // InternalProblem.g:2207:3: kw= 'E' | ||
6097 | { | ||
6098 | kw=(Token)match(input,44,FOLLOW_2); | ||
6099 | |||
6100 | current.merge(kw); | ||
6101 | newLeafNode(kw, grammarAccess.getIdentifierAccess().getEKeyword_4()); | ||
6102 | 6035 | ||
6103 | 6036 | ||
6104 | } | 6037 | } |
@@ -6126,7 +6059,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6126 | 6059 | ||
6127 | 6060 | ||
6128 | // $ANTLR start "entryRuleInteger" | 6061 | // $ANTLR start "entryRuleInteger" |
6129 | // InternalProblem.g:2216:1: entryRuleInteger returns [String current=null] : iv_ruleInteger= ruleInteger EOF ; | 6062 | // InternalProblem.g:2204:1: entryRuleInteger returns [String current=null] : iv_ruleInteger= ruleInteger EOF ; |
6130 | public final String entryRuleInteger() throws RecognitionException { | 6063 | public final String entryRuleInteger() throws RecognitionException { |
6131 | String current = null; | 6064 | String current = null; |
6132 | 6065 | ||
@@ -6137,8 +6070,8 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6137 | HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); | 6070 | HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); |
6138 | 6071 | ||
6139 | try { | 6072 | try { |
6140 | // InternalProblem.g:2218:2: (iv_ruleInteger= ruleInteger EOF ) | 6073 | // InternalProblem.g:2206:2: (iv_ruleInteger= ruleInteger EOF ) |
6141 | // InternalProblem.g:2219:2: iv_ruleInteger= ruleInteger EOF | 6074 | // InternalProblem.g:2207:2: iv_ruleInteger= ruleInteger EOF |
6142 | { | 6075 | { |
6143 | newCompositeNode(grammarAccess.getIntegerRule()); | 6076 | newCompositeNode(grammarAccess.getIntegerRule()); |
6144 | pushFollow(FOLLOW_1); | 6077 | pushFollow(FOLLOW_1); |
@@ -6168,7 +6101,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6168 | 6101 | ||
6169 | 6102 | ||
6170 | // $ANTLR start "ruleInteger" | 6103 | // $ANTLR start "ruleInteger" |
6171 | // InternalProblem.g:2228:1: ruleInteger returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '-' )? this_INT_1= RULE_INT ) ; | 6104 | // InternalProblem.g:2216:1: ruleInteger returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '-' )? this_INT_1= RULE_INT ) ; |
6172 | public final AntlrDatatypeRuleToken ruleInteger() throws RecognitionException { | 6105 | public final AntlrDatatypeRuleToken ruleInteger() throws RecognitionException { |
6173 | AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); | 6106 | AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
6174 | 6107 | ||
@@ -6180,24 +6113,24 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6180 | HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); | 6113 | HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); |
6181 | 6114 | ||
6182 | try { | 6115 | try { |
6183 | // InternalProblem.g:2235:2: ( ( (kw= '-' )? this_INT_1= RULE_INT ) ) | 6116 | // InternalProblem.g:2223:2: ( ( (kw= '-' )? this_INT_1= RULE_INT ) ) |
6184 | // InternalProblem.g:2236:2: ( (kw= '-' )? this_INT_1= RULE_INT ) | 6117 | // InternalProblem.g:2224:2: ( (kw= '-' )? this_INT_1= RULE_INT ) |
6185 | { | 6118 | { |
6186 | // InternalProblem.g:2236:2: ( (kw= '-' )? this_INT_1= RULE_INT ) | 6119 | // InternalProblem.g:2224:2: ( (kw= '-' )? this_INT_1= RULE_INT ) |
6187 | // InternalProblem.g:2237:3: (kw= '-' )? this_INT_1= RULE_INT | 6120 | // InternalProblem.g:2225:3: (kw= '-' )? this_INT_1= RULE_INT |
6188 | { | 6121 | { |
6189 | // InternalProblem.g:2237:3: (kw= '-' )? | 6122 | // InternalProblem.g:2225:3: (kw= '-' )? |
6190 | int alt46=2; | 6123 | int alt46=2; |
6191 | int LA46_0 = input.LA(1); | 6124 | int LA46_0 = input.LA(1); |
6192 | 6125 | ||
6193 | if ( (LA46_0==45) ) { | 6126 | if ( (LA46_0==44) ) { |
6194 | alt46=1; | 6127 | alt46=1; |
6195 | } | 6128 | } |
6196 | switch (alt46) { | 6129 | switch (alt46) { |
6197 | case 1 : | 6130 | case 1 : |
6198 | // InternalProblem.g:2238:4: kw= '-' | 6131 | // InternalProblem.g:2226:4: kw= '-' |
6199 | { | 6132 | { |
6200 | kw=(Token)match(input,45,FOLLOW_17); | 6133 | kw=(Token)match(input,44,FOLLOW_17); |
6201 | 6134 | ||
6202 | current.merge(kw); | 6135 | current.merge(kw); |
6203 | newLeafNode(kw, grammarAccess.getIntegerAccess().getHyphenMinusKeyword_0()); | 6136 | newLeafNode(kw, grammarAccess.getIntegerAccess().getHyphenMinusKeyword_0()); |
@@ -6241,19 +6174,16 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6241 | 6174 | ||
6242 | 6175 | ||
6243 | // $ANTLR start "entryRuleReal" | 6176 | // $ANTLR start "entryRuleReal" |
6244 | // InternalProblem.g:2258:1: entryRuleReal returns [String current=null] : iv_ruleReal= ruleReal EOF ; | 6177 | // InternalProblem.g:2246:1: entryRuleReal returns [String current=null] : iv_ruleReal= ruleReal EOF ; |
6245 | public final String entryRuleReal() throws RecognitionException { | 6178 | public final String entryRuleReal() throws RecognitionException { |
6246 | String current = null; | 6179 | String current = null; |
6247 | 6180 | ||
6248 | AntlrDatatypeRuleToken iv_ruleReal = null; | 6181 | AntlrDatatypeRuleToken iv_ruleReal = null; |
6249 | 6182 | ||
6250 | 6183 | ||
6251 | |||
6252 | HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); | ||
6253 | |||
6254 | try { | 6184 | try { |
6255 | // InternalProblem.g:2260:2: (iv_ruleReal= ruleReal EOF ) | 6185 | // InternalProblem.g:2246:44: (iv_ruleReal= ruleReal EOF ) |
6256 | // InternalProblem.g:2261:2: iv_ruleReal= ruleReal EOF | 6186 | // InternalProblem.g:2247:2: iv_ruleReal= ruleReal EOF |
6257 | { | 6187 | { |
6258 | newCompositeNode(grammarAccess.getRealRule()); | 6188 | newCompositeNode(grammarAccess.getRealRule()); |
6259 | pushFollow(FOLLOW_1); | 6189 | pushFollow(FOLLOW_1); |
@@ -6273,9 +6203,6 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6273 | appendSkippedTokens(); | 6203 | appendSkippedTokens(); |
6274 | } | 6204 | } |
6275 | finally { | 6205 | finally { |
6276 | |||
6277 | myHiddenTokenState.restore(); | ||
6278 | |||
6279 | } | 6206 | } |
6280 | return current; | 6207 | return current; |
6281 | } | 6208 | } |
@@ -6283,39 +6210,38 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6283 | 6210 | ||
6284 | 6211 | ||
6285 | // $ANTLR start "ruleReal" | 6212 | // $ANTLR start "ruleReal" |
6286 | // InternalProblem.g:2270:1: ruleReal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '-' )? this_INT_1= RULE_INT ( (kw= '.' this_INT_3= RULE_INT ) | ( (kw= '.' this_INT_5= RULE_INT )? (kw= 'e' | kw= 'E' ) (kw= '-' | kw= '+' )? this_INT_10= RULE_INT ) ) ) ; | 6213 | // InternalProblem.g:2253:1: ruleReal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '-' )? (this_EXPONENTIAL_1= RULE_EXPONENTIAL | (this_INT_2= RULE_INT kw= '.' (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL ) ) ) ) ; |
6287 | public final AntlrDatatypeRuleToken ruleReal() throws RecognitionException { | 6214 | public final AntlrDatatypeRuleToken ruleReal() throws RecognitionException { |
6288 | AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); | 6215 | AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); |
6289 | 6216 | ||
6290 | Token kw=null; | 6217 | Token kw=null; |
6291 | Token this_INT_1=null; | 6218 | Token this_EXPONENTIAL_1=null; |
6292 | Token this_INT_3=null; | 6219 | Token this_INT_2=null; |
6293 | Token this_INT_5=null; | 6220 | Token this_INT_4=null; |
6294 | Token this_INT_10=null; | 6221 | Token this_EXPONENTIAL_5=null; |
6295 | 6222 | ||
6296 | 6223 | ||
6297 | enterRule(); | 6224 | enterRule(); |
6298 | HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); | ||
6299 | 6225 | ||
6300 | try { | 6226 | try { |
6301 | // InternalProblem.g:2277:2: ( ( (kw= '-' )? this_INT_1= RULE_INT ( (kw= '.' this_INT_3= RULE_INT ) | ( (kw= '.' this_INT_5= RULE_INT )? (kw= 'e' | kw= 'E' ) (kw= '-' | kw= '+' )? this_INT_10= RULE_INT ) ) ) ) | 6227 | // InternalProblem.g:2259:2: ( ( (kw= '-' )? (this_EXPONENTIAL_1= RULE_EXPONENTIAL | (this_INT_2= RULE_INT kw= '.' (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL ) ) ) ) ) |
6302 | // InternalProblem.g:2278:2: ( (kw= '-' )? this_INT_1= RULE_INT ( (kw= '.' this_INT_3= RULE_INT ) | ( (kw= '.' this_INT_5= RULE_INT )? (kw= 'e' | kw= 'E' ) (kw= '-' | kw= '+' )? this_INT_10= RULE_INT ) ) ) | 6228 | // InternalProblem.g:2260:2: ( (kw= '-' )? (this_EXPONENTIAL_1= RULE_EXPONENTIAL | (this_INT_2= RULE_INT kw= '.' (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL ) ) ) ) |
6303 | { | 6229 | { |
6304 | // InternalProblem.g:2278:2: ( (kw= '-' )? this_INT_1= RULE_INT ( (kw= '.' this_INT_3= RULE_INT ) | ( (kw= '.' this_INT_5= RULE_INT )? (kw= 'e' | kw= 'E' ) (kw= '-' | kw= '+' )? this_INT_10= RULE_INT ) ) ) | 6230 | // InternalProblem.g:2260:2: ( (kw= '-' )? (this_EXPONENTIAL_1= RULE_EXPONENTIAL | (this_INT_2= RULE_INT kw= '.' (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL ) ) ) ) |
6305 | // InternalProblem.g:2279:3: (kw= '-' )? this_INT_1= RULE_INT ( (kw= '.' this_INT_3= RULE_INT ) | ( (kw= '.' this_INT_5= RULE_INT )? (kw= 'e' | kw= 'E' ) (kw= '-' | kw= '+' )? this_INT_10= RULE_INT ) ) | 6231 | // InternalProblem.g:2261:3: (kw= '-' )? (this_EXPONENTIAL_1= RULE_EXPONENTIAL | (this_INT_2= RULE_INT kw= '.' (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL ) ) ) |
6306 | { | 6232 | { |
6307 | // InternalProblem.g:2279:3: (kw= '-' )? | 6233 | // InternalProblem.g:2261:3: (kw= '-' )? |
6308 | int alt47=2; | 6234 | int alt47=2; |
6309 | int LA47_0 = input.LA(1); | 6235 | int LA47_0 = input.LA(1); |
6310 | 6236 | ||
6311 | if ( (LA47_0==45) ) { | 6237 | if ( (LA47_0==44) ) { |
6312 | alt47=1; | 6238 | alt47=1; |
6313 | } | 6239 | } |
6314 | switch (alt47) { | 6240 | switch (alt47) { |
6315 | case 1 : | 6241 | case 1 : |
6316 | // InternalProblem.g:2280:4: kw= '-' | 6242 | // InternalProblem.g:2262:4: kw= '-' |
6317 | { | 6243 | { |
6318 | kw=(Token)match(input,45,FOLLOW_17); | 6244 | kw=(Token)match(input,44,FOLLOW_39); |
6319 | 6245 | ||
6320 | current.merge(kw); | 6246 | current.merge(kw); |
6321 | newLeafNode(kw, grammarAccess.getRealAccess().getHyphenMinusKeyword_0()); | 6247 | newLeafNode(kw, grammarAccess.getRealAccess().getHyphenMinusKeyword_0()); |
@@ -6326,183 +6252,93 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6326 | 6252 | ||
6327 | } | 6253 | } |
6328 | 6254 | ||
6329 | this_INT_1=(Token)match(input,RULE_INT,FOLLOW_39); | 6255 | // InternalProblem.g:2268:3: (this_EXPONENTIAL_1= RULE_EXPONENTIAL | (this_INT_2= RULE_INT kw= '.' (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL ) ) ) |
6256 | int alt49=2; | ||
6257 | int LA49_0 = input.LA(1); | ||
6330 | 6258 | ||
6331 | current.merge(this_INT_1); | 6259 | if ( (LA49_0==RULE_EXPONENTIAL) ) { |
6332 | 6260 | alt49=1; | |
6333 | |||
6334 | newLeafNode(this_INT_1, grammarAccess.getRealAccess().getINTTerminalRuleCall_1()); | ||
6335 | |||
6336 | // InternalProblem.g:2293:3: ( (kw= '.' this_INT_3= RULE_INT ) | ( (kw= '.' this_INT_5= RULE_INT )? (kw= 'e' | kw= 'E' ) (kw= '-' | kw= '+' )? this_INT_10= RULE_INT ) ) | ||
6337 | int alt51=2; | ||
6338 | int LA51_0 = input.LA(1); | ||
6339 | |||
6340 | if ( (LA51_0==13) ) { | ||
6341 | int LA51_1 = input.LA(2); | ||
6342 | |||
6343 | if ( (LA51_1==RULE_INT) ) { | ||
6344 | int LA51_3 = input.LA(3); | ||
6345 | |||
6346 | if ( (LA51_3==EOF||LA51_3==13||LA51_3==17||LA51_3==30) ) { | ||
6347 | alt51=1; | ||
6348 | } | ||
6349 | else if ( ((LA51_3>=43 && LA51_3<=44)) ) { | ||
6350 | alt51=2; | ||
6351 | } | ||
6352 | else { | ||
6353 | NoViableAltException nvae = | ||
6354 | new NoViableAltException("", 51, 3, input); | ||
6355 | |||
6356 | throw nvae; | ||
6357 | } | ||
6358 | } | ||
6359 | else { | ||
6360 | NoViableAltException nvae = | ||
6361 | new NoViableAltException("", 51, 1, input); | ||
6362 | |||
6363 | throw nvae; | ||
6364 | } | ||
6365 | } | 6261 | } |
6366 | else if ( ((LA51_0>=43 && LA51_0<=44)) ) { | 6262 | else if ( (LA49_0==RULE_INT) ) { |
6367 | alt51=2; | 6263 | alt49=2; |
6368 | } | 6264 | } |
6369 | else { | 6265 | else { |
6370 | NoViableAltException nvae = | 6266 | NoViableAltException nvae = |
6371 | new NoViableAltException("", 51, 0, input); | 6267 | new NoViableAltException("", 49, 0, input); |
6372 | 6268 | ||
6373 | throw nvae; | 6269 | throw nvae; |
6374 | } | 6270 | } |
6375 | switch (alt51) { | 6271 | switch (alt49) { |
6376 | case 1 : | 6272 | case 1 : |
6377 | // InternalProblem.g:2294:4: (kw= '.' this_INT_3= RULE_INT ) | 6273 | // InternalProblem.g:2269:4: this_EXPONENTIAL_1= RULE_EXPONENTIAL |
6378 | { | ||
6379 | // InternalProblem.g:2294:4: (kw= '.' this_INT_3= RULE_INT ) | ||
6380 | // InternalProblem.g:2295:5: kw= '.' this_INT_3= RULE_INT | ||
6381 | { | 6274 | { |
6382 | kw=(Token)match(input,13,FOLLOW_17); | 6275 | this_EXPONENTIAL_1=(Token)match(input,RULE_EXPONENTIAL,FOLLOW_2); |
6383 | |||
6384 | current.merge(kw); | ||
6385 | newLeafNode(kw, grammarAccess.getRealAccess().getFullStopKeyword_2_0_0()); | ||
6386 | |||
6387 | this_INT_3=(Token)match(input,RULE_INT,FOLLOW_2); | ||
6388 | |||
6389 | current.merge(this_INT_3); | ||
6390 | |||
6391 | |||
6392 | newLeafNode(this_INT_3, grammarAccess.getRealAccess().getINTTerminalRuleCall_2_0_1()); | ||
6393 | |||
6394 | 6276 | ||
6395 | } | 6277 | current.merge(this_EXPONENTIAL_1); |
6278 | |||
6396 | 6279 | ||
6280 | newLeafNode(this_EXPONENTIAL_1, grammarAccess.getRealAccess().getEXPONENTIALTerminalRuleCall_1_0()); | ||
6281 | |||
6397 | 6282 | ||
6398 | } | 6283 | } |
6399 | break; | 6284 | break; |
6400 | case 2 : | 6285 | case 2 : |
6401 | // InternalProblem.g:2309:4: ( (kw= '.' this_INT_5= RULE_INT )? (kw= 'e' | kw= 'E' ) (kw= '-' | kw= '+' )? this_INT_10= RULE_INT ) | 6286 | // InternalProblem.g:2277:4: (this_INT_2= RULE_INT kw= '.' (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL ) ) |
6402 | { | 6287 | { |
6403 | // InternalProblem.g:2309:4: ( (kw= '.' this_INT_5= RULE_INT )? (kw= 'e' | kw= 'E' ) (kw= '-' | kw= '+' )? this_INT_10= RULE_INT ) | 6288 | // InternalProblem.g:2277:4: (this_INT_2= RULE_INT kw= '.' (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL ) ) |
6404 | // InternalProblem.g:2310:5: (kw= '.' this_INT_5= RULE_INT )? (kw= 'e' | kw= 'E' ) (kw= '-' | kw= '+' )? this_INT_10= RULE_INT | 6289 | // InternalProblem.g:2278:5: this_INT_2= RULE_INT kw= '.' (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL ) |
6405 | { | 6290 | { |
6406 | // InternalProblem.g:2310:5: (kw= '.' this_INT_5= RULE_INT )? | 6291 | this_INT_2=(Token)match(input,RULE_INT,FOLLOW_4); |
6407 | int alt48=2; | ||
6408 | int LA48_0 = input.LA(1); | ||
6409 | |||
6410 | if ( (LA48_0==13) ) { | ||
6411 | alt48=1; | ||
6412 | } | ||
6413 | switch (alt48) { | ||
6414 | case 1 : | ||
6415 | // InternalProblem.g:2311:6: kw= '.' this_INT_5= RULE_INT | ||
6416 | { | ||
6417 | kw=(Token)match(input,13,FOLLOW_17); | ||
6418 | |||
6419 | current.merge(kw); | ||
6420 | newLeafNode(kw, grammarAccess.getRealAccess().getFullStopKeyword_2_1_0_0()); | ||
6421 | |||
6422 | this_INT_5=(Token)match(input,RULE_INT,FOLLOW_40); | ||
6423 | |||
6424 | current.merge(this_INT_5); | ||
6425 | |||
6426 | 6292 | ||
6427 | newLeafNode(this_INT_5, grammarAccess.getRealAccess().getINTTerminalRuleCall_2_1_0_1()); | 6293 | current.merge(this_INT_2); |
6428 | 6294 | ||
6429 | |||
6430 | } | ||
6431 | break; | ||
6432 | 6295 | ||
6433 | } | 6296 | newLeafNode(this_INT_2, grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1_0()); |
6297 | |||
6298 | kw=(Token)match(input,14,FOLLOW_39); | ||
6434 | 6299 | ||
6435 | // InternalProblem.g:2324:5: (kw= 'e' | kw= 'E' ) | 6300 | current.merge(kw); |
6436 | int alt49=2; | 6301 | newLeafNode(kw, grammarAccess.getRealAccess().getFullStopKeyword_1_1_1()); |
6437 | int LA49_0 = input.LA(1); | 6302 | |
6303 | // InternalProblem.g:2290:5: (this_INT_4= RULE_INT | this_EXPONENTIAL_5= RULE_EXPONENTIAL ) | ||
6304 | int alt48=2; | ||
6305 | int LA48_0 = input.LA(1); | ||
6438 | 6306 | ||
6439 | if ( (LA49_0==43) ) { | 6307 | if ( (LA48_0==RULE_INT) ) { |
6440 | alt49=1; | 6308 | alt48=1; |
6441 | } | 6309 | } |
6442 | else if ( (LA49_0==44) ) { | 6310 | else if ( (LA48_0==RULE_EXPONENTIAL) ) { |
6443 | alt49=2; | 6311 | alt48=2; |
6444 | } | 6312 | } |
6445 | else { | 6313 | else { |
6446 | NoViableAltException nvae = | 6314 | NoViableAltException nvae = |
6447 | new NoViableAltException("", 49, 0, input); | 6315 | new NoViableAltException("", 48, 0, input); |
6448 | 6316 | ||
6449 | throw nvae; | 6317 | throw nvae; |
6450 | } | 6318 | } |
6451 | switch (alt49) { | 6319 | switch (alt48) { |
6452 | case 1 : | 6320 | case 1 : |
6453 | // InternalProblem.g:2325:6: kw= 'e' | 6321 | // InternalProblem.g:2291:6: this_INT_4= RULE_INT |
6454 | { | 6322 | { |
6455 | kw=(Token)match(input,43,FOLLOW_41); | 6323 | this_INT_4=(Token)match(input,RULE_INT,FOLLOW_2); |
6456 | 6324 | ||
6457 | current.merge(kw); | 6325 | current.merge(this_INT_4); |
6458 | newLeafNode(kw, grammarAccess.getRealAccess().getEKeyword_2_1_1_0()); | ||
6459 | 6326 | ||
6460 | 6327 | ||
6461 | } | 6328 | newLeafNode(this_INT_4, grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1_2_0()); |
6462 | break; | ||
6463 | case 2 : | ||
6464 | // InternalProblem.g:2331:6: kw= 'E' | ||
6465 | { | ||
6466 | kw=(Token)match(input,44,FOLLOW_41); | ||
6467 | |||
6468 | current.merge(kw); | ||
6469 | newLeafNode(kw, grammarAccess.getRealAccess().getEKeyword_2_1_1_1()); | ||
6470 | 6329 | ||
6471 | 6330 | ||
6472 | } | 6331 | } |
6473 | break; | 6332 | break; |
6474 | 6333 | case 2 : | |
6475 | } | 6334 | // InternalProblem.g:2299:6: this_EXPONENTIAL_5= RULE_EXPONENTIAL |
6476 | |||
6477 | // InternalProblem.g:2337:5: (kw= '-' | kw= '+' )? | ||
6478 | int alt50=3; | ||
6479 | int LA50_0 = input.LA(1); | ||
6480 | |||
6481 | if ( (LA50_0==45) ) { | ||
6482 | alt50=1; | ||
6483 | } | ||
6484 | else if ( (LA50_0==33) ) { | ||
6485 | alt50=2; | ||
6486 | } | ||
6487 | switch (alt50) { | ||
6488 | case 1 : | ||
6489 | // InternalProblem.g:2338:6: kw= '-' | ||
6490 | { | 6335 | { |
6491 | kw=(Token)match(input,45,FOLLOW_17); | 6336 | this_EXPONENTIAL_5=(Token)match(input,RULE_EXPONENTIAL,FOLLOW_2); |
6492 | 6337 | ||
6493 | current.merge(kw); | 6338 | current.merge(this_EXPONENTIAL_5); |
6494 | newLeafNode(kw, grammarAccess.getRealAccess().getHyphenMinusKeyword_2_1_2_0()); | ||
6495 | 6339 | ||
6496 | 6340 | ||
6497 | } | 6341 | newLeafNode(this_EXPONENTIAL_5, grammarAccess.getRealAccess().getEXPONENTIALTerminalRuleCall_1_1_2_1()); |
6498 | break; | ||
6499 | case 2 : | ||
6500 | // InternalProblem.g:2344:6: kw= '+' | ||
6501 | { | ||
6502 | kw=(Token)match(input,33,FOLLOW_17); | ||
6503 | |||
6504 | current.merge(kw); | ||
6505 | newLeafNode(kw, grammarAccess.getRealAccess().getPlusSignKeyword_2_1_2_1()); | ||
6506 | 6342 | ||
6507 | 6343 | ||
6508 | } | 6344 | } |
@@ -6510,13 +6346,6 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6510 | 6346 | ||
6511 | } | 6347 | } |
6512 | 6348 | ||
6513 | this_INT_10=(Token)match(input,RULE_INT,FOLLOW_2); | ||
6514 | |||
6515 | current.merge(this_INT_10); | ||
6516 | |||
6517 | |||
6518 | newLeafNode(this_INT_10, grammarAccess.getRealAccess().getINTTerminalRuleCall_2_1_3()); | ||
6519 | |||
6520 | 6349 | ||
6521 | } | 6350 | } |
6522 | 6351 | ||
@@ -6542,9 +6371,6 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6542 | appendSkippedTokens(); | 6371 | appendSkippedTokens(); |
6543 | } | 6372 | } |
6544 | finally { | 6373 | finally { |
6545 | |||
6546 | myHiddenTokenState.restore(); | ||
6547 | |||
6548 | } | 6374 | } |
6549 | return current; | 6375 | return current; |
6550 | } | 6376 | } |
@@ -6552,7 +6378,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6552 | 6378 | ||
6553 | 6379 | ||
6554 | // $ANTLR start "ruleLogicValue" | 6380 | // $ANTLR start "ruleLogicValue" |
6555 | // InternalProblem.g:2366:1: ruleLogicValue returns [Enumerator current=null] : ( (enumLiteral_0= 'true' ) | (enumLiteral_1= 'false' ) | (enumLiteral_2= 'unknown' ) ) ; | 6381 | // InternalProblem.g:2313:1: ruleLogicValue returns [Enumerator current=null] : ( (enumLiteral_0= 'true' ) | (enumLiteral_1= 'false' ) | (enumLiteral_2= 'unknown' ) ) ; |
6556 | public final Enumerator ruleLogicValue() throws RecognitionException { | 6382 | public final Enumerator ruleLogicValue() throws RecognitionException { |
6557 | Enumerator current = null; | 6383 | Enumerator current = null; |
6558 | 6384 | ||
@@ -6564,42 +6390,42 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6564 | enterRule(); | 6390 | enterRule(); |
6565 | 6391 | ||
6566 | try { | 6392 | try { |
6567 | // InternalProblem.g:2372:2: ( ( (enumLiteral_0= 'true' ) | (enumLiteral_1= 'false' ) | (enumLiteral_2= 'unknown' ) ) ) | 6393 | // InternalProblem.g:2319:2: ( ( (enumLiteral_0= 'true' ) | (enumLiteral_1= 'false' ) | (enumLiteral_2= 'unknown' ) ) ) |
6568 | // InternalProblem.g:2373:2: ( (enumLiteral_0= 'true' ) | (enumLiteral_1= 'false' ) | (enumLiteral_2= 'unknown' ) ) | 6394 | // InternalProblem.g:2320:2: ( (enumLiteral_0= 'true' ) | (enumLiteral_1= 'false' ) | (enumLiteral_2= 'unknown' ) ) |
6569 | { | 6395 | { |
6570 | // InternalProblem.g:2373:2: ( (enumLiteral_0= 'true' ) | (enumLiteral_1= 'false' ) | (enumLiteral_2= 'unknown' ) ) | 6396 | // InternalProblem.g:2320:2: ( (enumLiteral_0= 'true' ) | (enumLiteral_1= 'false' ) | (enumLiteral_2= 'unknown' ) ) |
6571 | int alt52=3; | 6397 | int alt50=3; |
6572 | switch ( input.LA(1) ) { | 6398 | switch ( input.LA(1) ) { |
6573 | case 41: | 6399 | case 42: |
6574 | { | 6400 | { |
6575 | alt52=1; | 6401 | alt50=1; |
6576 | } | 6402 | } |
6577 | break; | 6403 | break; |
6578 | case 42: | 6404 | case 43: |
6579 | { | 6405 | { |
6580 | alt52=2; | 6406 | alt50=2; |
6581 | } | 6407 | } |
6582 | break; | 6408 | break; |
6583 | case 46: | 6409 | case 45: |
6584 | { | 6410 | { |
6585 | alt52=3; | 6411 | alt50=3; |
6586 | } | 6412 | } |
6587 | break; | 6413 | break; |
6588 | default: | 6414 | default: |
6589 | NoViableAltException nvae = | 6415 | NoViableAltException nvae = |
6590 | new NoViableAltException("", 52, 0, input); | 6416 | new NoViableAltException("", 50, 0, input); |
6591 | 6417 | ||
6592 | throw nvae; | 6418 | throw nvae; |
6593 | } | 6419 | } |
6594 | 6420 | ||
6595 | switch (alt52) { | 6421 | switch (alt50) { |
6596 | case 1 : | 6422 | case 1 : |
6597 | // InternalProblem.g:2374:3: (enumLiteral_0= 'true' ) | 6423 | // InternalProblem.g:2321:3: (enumLiteral_0= 'true' ) |
6598 | { | 6424 | { |
6599 | // InternalProblem.g:2374:3: (enumLiteral_0= 'true' ) | 6425 | // InternalProblem.g:2321:3: (enumLiteral_0= 'true' ) |
6600 | // InternalProblem.g:2375:4: enumLiteral_0= 'true' | 6426 | // InternalProblem.g:2322:4: enumLiteral_0= 'true' |
6601 | { | 6427 | { |
6602 | enumLiteral_0=(Token)match(input,41,FOLLOW_2); | 6428 | enumLiteral_0=(Token)match(input,42,FOLLOW_2); |
6603 | 6429 | ||
6604 | current = grammarAccess.getLogicValueAccess().getTRUEEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); | 6430 | current = grammarAccess.getLogicValueAccess().getTRUEEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); |
6605 | newLeafNode(enumLiteral_0, grammarAccess.getLogicValueAccess().getTRUEEnumLiteralDeclaration_0()); | 6431 | newLeafNode(enumLiteral_0, grammarAccess.getLogicValueAccess().getTRUEEnumLiteralDeclaration_0()); |
@@ -6611,12 +6437,12 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6611 | } | 6437 | } |
6612 | break; | 6438 | break; |
6613 | case 2 : | 6439 | case 2 : |
6614 | // InternalProblem.g:2382:3: (enumLiteral_1= 'false' ) | 6440 | // InternalProblem.g:2329:3: (enumLiteral_1= 'false' ) |
6615 | { | 6441 | { |
6616 | // InternalProblem.g:2382:3: (enumLiteral_1= 'false' ) | 6442 | // InternalProblem.g:2329:3: (enumLiteral_1= 'false' ) |
6617 | // InternalProblem.g:2383:4: enumLiteral_1= 'false' | 6443 | // InternalProblem.g:2330:4: enumLiteral_1= 'false' |
6618 | { | 6444 | { |
6619 | enumLiteral_1=(Token)match(input,42,FOLLOW_2); | 6445 | enumLiteral_1=(Token)match(input,43,FOLLOW_2); |
6620 | 6446 | ||
6621 | current = grammarAccess.getLogicValueAccess().getFALSEEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); | 6447 | current = grammarAccess.getLogicValueAccess().getFALSEEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); |
6622 | newLeafNode(enumLiteral_1, grammarAccess.getLogicValueAccess().getFALSEEnumLiteralDeclaration_1()); | 6448 | newLeafNode(enumLiteral_1, grammarAccess.getLogicValueAccess().getFALSEEnumLiteralDeclaration_1()); |
@@ -6628,12 +6454,12 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6628 | } | 6454 | } |
6629 | break; | 6455 | break; |
6630 | case 3 : | 6456 | case 3 : |
6631 | // InternalProblem.g:2390:3: (enumLiteral_2= 'unknown' ) | 6457 | // InternalProblem.g:2337:3: (enumLiteral_2= 'unknown' ) |
6632 | { | 6458 | { |
6633 | // InternalProblem.g:2390:3: (enumLiteral_2= 'unknown' ) | 6459 | // InternalProblem.g:2337:3: (enumLiteral_2= 'unknown' ) |
6634 | // InternalProblem.g:2391:4: enumLiteral_2= 'unknown' | 6460 | // InternalProblem.g:2338:4: enumLiteral_2= 'unknown' |
6635 | { | 6461 | { |
6636 | enumLiteral_2=(Token)match(input,46,FOLLOW_2); | 6462 | enumLiteral_2=(Token)match(input,45,FOLLOW_2); |
6637 | 6463 | ||
6638 | current = grammarAccess.getLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); | 6464 | current = grammarAccess.getLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); |
6639 | newLeafNode(enumLiteral_2, grammarAccess.getLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_2()); | 6465 | newLeafNode(enumLiteral_2, grammarAccess.getLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_2()); |
@@ -6667,7 +6493,7 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6667 | 6493 | ||
6668 | 6494 | ||
6669 | // $ANTLR start "ruleShortLogicValue" | 6495 | // $ANTLR start "ruleShortLogicValue" |
6670 | // InternalProblem.g:2401:1: ruleShortLogicValue returns [Enumerator current=null] : ( (enumLiteral_0= '!' ) | (enumLiteral_1= '?' ) ) ; | 6496 | // InternalProblem.g:2348:1: ruleShortLogicValue returns [Enumerator current=null] : ( (enumLiteral_0= '!' ) | (enumLiteral_1= '?' ) ) ; |
6671 | public final Enumerator ruleShortLogicValue() throws RecognitionException { | 6497 | public final Enumerator ruleShortLogicValue() throws RecognitionException { |
6672 | Enumerator current = null; | 6498 | Enumerator current = null; |
6673 | 6499 | ||
@@ -6678,33 +6504,33 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6678 | enterRule(); | 6504 | enterRule(); |
6679 | 6505 | ||
6680 | try { | 6506 | try { |
6681 | // InternalProblem.g:2407:2: ( ( (enumLiteral_0= '!' ) | (enumLiteral_1= '?' ) ) ) | 6507 | // InternalProblem.g:2354:2: ( ( (enumLiteral_0= '!' ) | (enumLiteral_1= '?' ) ) ) |
6682 | // InternalProblem.g:2408:2: ( (enumLiteral_0= '!' ) | (enumLiteral_1= '?' ) ) | 6508 | // InternalProblem.g:2355:2: ( (enumLiteral_0= '!' ) | (enumLiteral_1= '?' ) ) |
6683 | { | 6509 | { |
6684 | // InternalProblem.g:2408:2: ( (enumLiteral_0= '!' ) | (enumLiteral_1= '?' ) ) | 6510 | // InternalProblem.g:2355:2: ( (enumLiteral_0= '!' ) | (enumLiteral_1= '?' ) ) |
6685 | int alt53=2; | 6511 | int alt51=2; |
6686 | int LA53_0 = input.LA(1); | 6512 | int LA51_0 = input.LA(1); |
6687 | 6513 | ||
6688 | if ( (LA53_0==32) ) { | 6514 | if ( (LA51_0==33) ) { |
6689 | alt53=1; | 6515 | alt51=1; |
6690 | } | 6516 | } |
6691 | else if ( (LA53_0==47) ) { | 6517 | else if ( (LA51_0==46) ) { |
6692 | alt53=2; | 6518 | alt51=2; |
6693 | } | 6519 | } |
6694 | else { | 6520 | else { |
6695 | NoViableAltException nvae = | 6521 | NoViableAltException nvae = |
6696 | new NoViableAltException("", 53, 0, input); | 6522 | new NoViableAltException("", 51, 0, input); |
6697 | 6523 | ||
6698 | throw nvae; | 6524 | throw nvae; |
6699 | } | 6525 | } |
6700 | switch (alt53) { | 6526 | switch (alt51) { |
6701 | case 1 : | 6527 | case 1 : |
6702 | // InternalProblem.g:2409:3: (enumLiteral_0= '!' ) | 6528 | // InternalProblem.g:2356:3: (enumLiteral_0= '!' ) |
6703 | { | 6529 | { |
6704 | // InternalProblem.g:2409:3: (enumLiteral_0= '!' ) | 6530 | // InternalProblem.g:2356:3: (enumLiteral_0= '!' ) |
6705 | // InternalProblem.g:2410:4: enumLiteral_0= '!' | 6531 | // InternalProblem.g:2357:4: enumLiteral_0= '!' |
6706 | { | 6532 | { |
6707 | enumLiteral_0=(Token)match(input,32,FOLLOW_2); | 6533 | enumLiteral_0=(Token)match(input,33,FOLLOW_2); |
6708 | 6534 | ||
6709 | current = grammarAccess.getShortLogicValueAccess().getFALSEEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); | 6535 | current = grammarAccess.getShortLogicValueAccess().getFALSEEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); |
6710 | newLeafNode(enumLiteral_0, grammarAccess.getShortLogicValueAccess().getFALSEEnumLiteralDeclaration_0()); | 6536 | newLeafNode(enumLiteral_0, grammarAccess.getShortLogicValueAccess().getFALSEEnumLiteralDeclaration_0()); |
@@ -6716,12 +6542,12 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6716 | } | 6542 | } |
6717 | break; | 6543 | break; |
6718 | case 2 : | 6544 | case 2 : |
6719 | // InternalProblem.g:2417:3: (enumLiteral_1= '?' ) | 6545 | // InternalProblem.g:2364:3: (enumLiteral_1= '?' ) |
6720 | { | 6546 | { |
6721 | // InternalProblem.g:2417:3: (enumLiteral_1= '?' ) | 6547 | // InternalProblem.g:2364:3: (enumLiteral_1= '?' ) |
6722 | // InternalProblem.g:2418:4: enumLiteral_1= '?' | 6548 | // InternalProblem.g:2365:4: enumLiteral_1= '?' |
6723 | { | 6549 | { |
6724 | enumLiteral_1=(Token)match(input,47,FOLLOW_2); | 6550 | enumLiteral_1=(Token)match(input,46,FOLLOW_2); |
6725 | 6551 | ||
6726 | current = grammarAccess.getShortLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); | 6552 | current = grammarAccess.getShortLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); |
6727 | newLeafNode(enumLiteral_1, grammarAccess.getShortLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_1()); | 6553 | newLeafNode(enumLiteral_1, grammarAccess.getShortLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_1()); |
@@ -6758,31 +6584,27 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6758 | 6584 | ||
6759 | protected DFA3 dfa3 = new DFA3(this); | 6585 | protected DFA3 dfa3 = new DFA3(this); |
6760 | protected DFA35 dfa35 = new DFA35(this); | 6586 | protected DFA35 dfa35 = new DFA35(this); |
6761 | static final String dfa_1s = "\23\uffff"; | 6587 | static final String dfa_1s = "\17\uffff"; |
6762 | static final String dfa_2s = "\1\5\3\uffff\6\35\3\uffff\1\5\5\35"; | 6588 | static final String dfa_2s = "\1\5\3\uffff\4\36\3\uffff\1\5\3\36"; |
6763 | static final String dfa_3s = "\1\57\3\uffff\1\42\5\50\3\uffff\1\54\5\50"; | 6589 | static final String dfa_3s = "\1\56\3\uffff\1\43\3\51\3\uffff\1\53\3\51"; |
6764 | static final String dfa_4s = "\1\uffff\1\1\1\2\1\3\6\uffff\1\4\1\6\1\5\6\uffff"; | 6590 | static final String dfa_4s = "\1\uffff\1\1\1\2\1\3\4\uffff\1\4\1\6\1\5\4\uffff"; |
6765 | static final String dfa_5s = "\23\uffff}>"; | 6591 | static final String dfa_5s = "\17\uffff}>"; |
6766 | static final String[] dfa_6s = { | 6592 | static final String[] dfa_6s = { |
6767 | "\1\5\1\uffff\1\4\6\uffff\2\1\5\uffff\1\2\5\uffff\2\3\3\uffff\1\12\2\uffff\1\13\5\uffff\1\6\1\7\1\10\1\11\2\uffff\1\12", | 6593 | "\1\5\1\uffff\1\4\7\uffff\2\1\5\uffff\1\2\5\uffff\2\3\3\uffff\1\10\2\uffff\1\11\5\uffff\1\6\1\7\2\uffff\1\10", |
6768 | "", | 6594 | "", |
6769 | "", | 6595 | "", |
6770 | "", | 6596 | "", |
6771 | "\1\12\4\uffff\1\14", | 6597 | "\1\10\4\uffff\1\12", |
6772 | "\1\12\4\uffff\1\14\5\uffff\1\15", | 6598 | "\1\10\4\uffff\1\12\5\uffff\1\13", |
6773 | "\1\12\4\uffff\1\14\5\uffff\1\15", | 6599 | "\1\10\4\uffff\1\12\5\uffff\1\13", |
6774 | "\1\12\4\uffff\1\14\5\uffff\1\15", | 6600 | "\1\10\4\uffff\1\12\5\uffff\1\13", |
6775 | "\1\12\4\uffff\1\14\5\uffff\1\15", | ||
6776 | "\1\12\4\uffff\1\14\5\uffff\1\15", | ||
6777 | "", | 6601 | "", |
6778 | "", | 6602 | "", |
6779 | "", | 6603 | "", |
6780 | "\1\16\43\uffff\1\17\1\20\1\21\1\22", | 6604 | "\1\14\44\uffff\1\15\1\16", |
6781 | "\1\12\4\uffff\1\14\5\uffff\1\15", | 6605 | "\1\10\4\uffff\1\12\5\uffff\1\13", |
6782 | "\1\12\4\uffff\1\14\5\uffff\1\15", | 6606 | "\1\10\4\uffff\1\12\5\uffff\1\13", |
6783 | "\1\12\4\uffff\1\14\5\uffff\1\15", | 6607 | "\1\10\4\uffff\1\12\5\uffff\1\13" |
6784 | "\1\12\4\uffff\1\14\5\uffff\1\15", | ||
6785 | "\1\12\4\uffff\1\14\5\uffff\1\15" | ||
6786 | }; | 6608 | }; |
6787 | 6609 | ||
6788 | static final short[] dfa_1 = DFA.unpackEncodedString(dfa_1s); | 6610 | static final short[] dfa_1 = DFA.unpackEncodedString(dfa_1s); |
@@ -6809,74 +6631,56 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6809 | return "146:2: (this_ClassDeclaration_0= ruleClassDeclaration | this_EnumDeclaration_1= ruleEnumDeclaration | this_PredicateDefinition_2= rulePredicateDefinition | this_Assertion_3= ruleAssertion | this_NodeValueAssertion_4= ruleNodeValueAssertion | this_ScopeDeclaration_5= ruleScopeDeclaration )"; | 6631 | return "146:2: (this_ClassDeclaration_0= ruleClassDeclaration | this_EnumDeclaration_1= ruleEnumDeclaration | this_PredicateDefinition_2= rulePredicateDefinition | this_Assertion_3= ruleAssertion | this_NodeValueAssertion_4= ruleNodeValueAssertion | this_ScopeDeclaration_5= ruleScopeDeclaration )"; |
6810 | } | 6632 | } |
6811 | } | 6633 | } |
6812 | static final String dfa_7s = "\76\uffff"; | 6634 | static final String dfa_7s = "\54\uffff"; |
6813 | static final String dfa_8s = "\1\5\6\35\1\uffff\1\4\1\5\6\21\1\6\1\15\1\21\1\15\5\35\1\4\1\5\3\6\1\uffff\6\21\1\6\1\15\7\21\2\6\1\21\1\5\3\6\6\21\2\6\1\21"; | 6635 | static final String dfa_8s = "\1\5\4\36\1\uffff\1\4\1\5\4\22\1\6\1\22\1\16\1\22\1\16\3\36\1\4\1\5\1\6\1\uffff\4\22\1\6\1\22\1\16\6\22\1\5\1\6\5\22"; |
6814 | static final String dfa_9s = "\1\57\1\35\5\50\1\uffff\1\55\1\54\1\36\5\50\1\6\1\54\1\36\1\42\5\50\1\55\1\54\1\6\2\55\1\uffff\1\36\5\50\1\6\1\54\1\36\5\50\1\54\2\6\1\36\1\54\1\6\2\55\5\50\1\54\2\6\1\36"; | 6636 | static final String dfa_9s = "\1\56\1\36\3\51\1\uffff\1\54\1\53\1\37\3\51\1\10\3\37\1\43\3\51\1\54\1\53\1\10\1\uffff\1\37\3\51\1\10\3\37\3\51\2\37\1\53\1\10\3\51\2\37"; |
6815 | static final String dfa_10s = "\7\uffff\1\2\26\uffff\1\1\37\uffff"; | 6637 | static final String dfa_10s = "\5\uffff\1\2\21\uffff\1\1\24\uffff"; |
6816 | static final String dfa_11s = "\76\uffff}>"; | 6638 | static final String dfa_11s = "\54\uffff}>"; |
6817 | static final String[] dfa_12s = { | 6639 | static final String[] dfa_12s = { |
6818 | "\1\2\1\uffff\1\1\30\uffff\1\7\10\uffff\1\3\1\4\1\5\1\6\2\uffff\1\7", | 6640 | "\1\2\1\uffff\1\1\31\uffff\1\5\10\uffff\1\3\1\4\2\uffff\1\5", |
6819 | "\1\10", | 6641 | "\1\6", |
6820 | "\1\10\12\uffff\1\11", | 6642 | "\1\6\12\uffff\1\7", |
6821 | "\1\10\12\uffff\1\11", | 6643 | "\1\6\12\uffff\1\7", |
6822 | "\1\10\12\uffff\1\11", | 6644 | "\1\6\12\uffff\1\7", |
6823 | "\1\10\12\uffff\1\11", | ||
6824 | "\1\10\12\uffff\1\11", | ||
6825 | "", | 6645 | "", |
6826 | "\1\22\1\13\1\21\1\12\26\uffff\1\23\12\uffff\1\14\1\15\1\16\1\17\1\20", | 6646 | "\1\17\1\11\1\16\1\10\1\15\26\uffff\1\20\12\uffff\1\12\1\13\1\14", |
6827 | "\1\24\43\uffff\1\25\1\26\1\27\1\30", | 6647 | "\1\21\44\uffff\1\22\1\23", |
6828 | "\1\31\14\uffff\1\23", | 6648 | "\1\24\14\uffff\1\20", |
6829 | "\1\31\14\uffff\1\23\11\uffff\1\32", | 6649 | "\1\24\14\uffff\1\20\11\uffff\1\25", |
6830 | "\1\31\14\uffff\1\23\11\uffff\1\32", | 6650 | "\1\24\14\uffff\1\20\11\uffff\1\25", |
6831 | "\1\31\14\uffff\1\23\11\uffff\1\32", | 6651 | "\1\24\14\uffff\1\20\11\uffff\1\25", |
6832 | "\1\31\14\uffff\1\23\11\uffff\1\32", | 6652 | "\1\16\1\uffff\1\15", |
6833 | "\1\31\14\uffff\1\23\11\uffff\1\32", | 6653 | "\1\24\14\uffff\1\20", |
6834 | "\1\21", | 6654 | "\1\26\3\uffff\1\24\14\uffff\1\20", |
6835 | "\1\33\3\uffff\1\31\14\uffff\1\23\14\uffff\1\34\1\35", | 6655 | "\1\24\14\uffff\1\20", |
6836 | "\1\31\14\uffff\1\23", | 6656 | "\1\5\24\uffff\1\27", |
6837 | "\1\7\24\uffff\1\36", | 6657 | "\1\6\12\uffff\1\7", |
6838 | "\1\10\12\uffff\1\11", | 6658 | "\1\6\12\uffff\1\7", |
6839 | "\1\10\12\uffff\1\11", | 6659 | "\1\6\12\uffff\1\7", |
6840 | "\1\10\12\uffff\1\11", | 6660 | "\1\37\1\31\1\36\1\30\1\35\41\uffff\1\32\1\33\1\34", |
6841 | "\1\10\12\uffff\1\11", | 6661 | "\1\40\44\uffff\1\41\1\42", |
6842 | "\1\10\12\uffff\1\11", | 6662 | "\1\43\1\uffff\1\44", |
6843 | "\1\47\1\40\1\46\1\37\41\uffff\1\41\1\42\1\43\1\44\1\45", | ||
6844 | "\1\50\43\uffff\1\51\1\52\1\53\1\54", | ||
6845 | "\1\55", | ||
6846 | "\1\60\32\uffff\1\57\13\uffff\1\56", | ||
6847 | "\1\60\32\uffff\1\57\13\uffff\1\56", | ||
6848 | "", | 6663 | "", |
6849 | "\1\31\14\uffff\1\23", | 6664 | "\1\24\14\uffff\1\20", |
6850 | "\1\31\14\uffff\1\23\11\uffff\1\61", | 6665 | "\1\24\14\uffff\1\20\11\uffff\1\45", |
6851 | "\1\31\14\uffff\1\23\11\uffff\1\61", | 6666 | "\1\24\14\uffff\1\20\11\uffff\1\45", |
6852 | "\1\31\14\uffff\1\23\11\uffff\1\61", | 6667 | "\1\24\14\uffff\1\20\11\uffff\1\45", |
6853 | "\1\31\14\uffff\1\23\11\uffff\1\61", | 6668 | "\1\36\1\uffff\1\35", |
6854 | "\1\31\14\uffff\1\23\11\uffff\1\61", | 6669 | "\1\24\14\uffff\1\20", |
6855 | "\1\46", | 6670 | "\1\46\3\uffff\1\24\14\uffff\1\20", |
6856 | "\1\62\3\uffff\1\31\14\uffff\1\23\14\uffff\1\63\1\64", | 6671 | "\1\24\14\uffff\1\20", |
6857 | "\1\31\14\uffff\1\23", | 6672 | "\1\24\14\uffff\1\20\11\uffff\1\25", |
6858 | "\1\31\14\uffff\1\23\11\uffff\1\32", | 6673 | "\1\24\14\uffff\1\20\11\uffff\1\25", |
6859 | "\1\31\14\uffff\1\23\11\uffff\1\32", | 6674 | "\1\24\14\uffff\1\20\11\uffff\1\25", |
6860 | "\1\31\14\uffff\1\23\11\uffff\1\32", | 6675 | "\1\24\14\uffff\1\20", |
6861 | "\1\31\14\uffff\1\23\11\uffff\1\32", | 6676 | "\1\24\14\uffff\1\20", |
6862 | "\1\31\14\uffff\1\23\11\uffff\1\32", | 6677 | "\1\47\44\uffff\1\50\1\51", |
6863 | "\1\31\14\uffff\1\23\14\uffff\1\34\1\35", | 6678 | "\1\52\1\uffff\1\53", |
6864 | "\1\60", | 6679 | "\1\24\14\uffff\1\20\11\uffff\1\45", |
6865 | "\1\60", | 6680 | "\1\24\14\uffff\1\20\11\uffff\1\45", |
6866 | "\1\31\14\uffff\1\23", | 6681 | "\1\24\14\uffff\1\20\11\uffff\1\45", |
6867 | "\1\65\43\uffff\1\66\1\67\1\70\1\71", | 6682 | "\1\24\14\uffff\1\20", |
6868 | "\1\72", | 6683 | "\1\24\14\uffff\1\20" |
6869 | "\1\75\32\uffff\1\74\13\uffff\1\73", | ||
6870 | "\1\75\32\uffff\1\74\13\uffff\1\73", | ||
6871 | "\1\31\14\uffff\1\23\11\uffff\1\61", | ||
6872 | "\1\31\14\uffff\1\23\11\uffff\1\61", | ||
6873 | "\1\31\14\uffff\1\23\11\uffff\1\61", | ||
6874 | "\1\31\14\uffff\1\23\11\uffff\1\61", | ||
6875 | "\1\31\14\uffff\1\23\11\uffff\1\61", | ||
6876 | "\1\31\14\uffff\1\23\14\uffff\1\63\1\64", | ||
6877 | "\1\75", | ||
6878 | "\1\75", | ||
6879 | "\1\31\14\uffff\1\23" | ||
6880 | }; | 6684 | }; |
6881 | 6685 | ||
6882 | static final short[] dfa_7 = DFA.unpackEncodedString(dfa_7s); | 6686 | static final short[] dfa_7 = DFA.unpackEncodedString(dfa_7s); |
@@ -6907,44 +6711,42 @@ public class InternalProblemParser extends AbstractInternalAntlrParser { | |||
6907 | 6711 | ||
6908 | public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L}); | 6712 | public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L}); |
6909 | public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L}); | 6713 | public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L}); |
6910 | public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x00001E0000000020L}); | 6714 | public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x00000C0000000020L}); |
6911 | public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000002000L}); | 6715 | public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000004000L}); |
6912 | public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x00009E091820C0A2L}); | 6716 | public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x00004C12304180A2L}); |
6913 | public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000000008000L}); | 6717 | public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000000010000L}); |
6914 | public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000000000052000L}); | 6718 | public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x00000000000A4000L}); |
6915 | public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x00001E00000000A0L}); | 6719 | public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x00000C00000000A0L}); |
6916 | public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000062000L}); | 6720 | public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x00000000000C4000L}); |
6917 | public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x00001E0000D000A0L}); | 6721 | public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x00000C0001A000A0L}); |
6918 | public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x00001E0000D800A0L}); | 6722 | public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x00000C0001B000A0L}); |
6919 | public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000000000042000L}); | 6723 | public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000000000084000L}); |
6920 | public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x00001E0000100020L}); | 6724 | public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x00000C0000200020L}); |
6921 | public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x00000000001A0000L}); | 6725 | public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000000000340000L}); |
6922 | public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000000100000L}); | 6726 | public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000000200000L}); |
6923 | public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x00001E0001000020L}); | 6727 | public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x00000C0002000020L}); |
6924 | public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000000000040L}); | 6728 | public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000000000040L}); |
6925 | public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000002000000L}); | 6729 | public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000004000000L}); |
6926 | public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000004000002L}); | 6730 | public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000008000002L}); |
6927 | public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x00001E0010000020L}); | 6731 | public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x00000C0020000020L}); |
6928 | public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000020000000L}); | 6732 | public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000040000000L}); |
6929 | public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x00001E00400000A0L}); | 6733 | public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x00000C00800000A0L}); |
6930 | public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0000000040020000L}); | 6734 | public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0000000080040000L}); |
6931 | public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x0000000080002000L}); | 6735 | public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x0000000100004000L}); |
6932 | public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x00001E01000000A0L}); | 6736 | public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x00000C02000000A0L}); |
6933 | public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000000000082000L}); | 6737 | public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000000000104000L}); |
6934 | public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000000000020002L}); | 6738 | public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000000000040002L}); |
6935 | public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0000000220000000L}); | 6739 | public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0000000440000000L}); |
6936 | public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x00003E00400000F0L}); | 6740 | public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x00001C00800001F0L}); |
6937 | public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x00003E00000000F0L}); | 6741 | public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x00001C00000001F0L}); |
6938 | public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0000000400000000L}); | 6742 | public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0000000800000000L}); |
6939 | public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0000460000000000L}); | 6743 | public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x00002C0000000000L}); |
6940 | public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0000000000000020L}); | 6744 | public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0000000000000020L}); |
6941 | public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x0000000000022000L}); | 6745 | public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x0000000000044000L}); |
6942 | public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x0000003000000000L}); | 6746 | public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x0000006000000000L}); |
6943 | public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x0000004000000000L}); | 6747 | public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x0000008000000000L}); |
6944 | public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x0000008000000040L}); | 6748 | public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x0000010000000040L}); |
6945 | public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x0000010000000002L}); | 6749 | public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x0000020000000002L}); |
6946 | public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x0000180000002000L}); | 6750 | public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x0000000000000140L}); |
6947 | public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x0000180000000000L}); | ||
6948 | public static final BitSet FOLLOW_41 = new BitSet(new long[]{0x0000200200000040L}); | ||
6949 | 6751 | ||
6950 | } \ No newline at end of file | 6752 | } \ No newline at end of file |
diff --git a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/services/ProblemGrammarAccess.java b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/services/ProblemGrammarAccess.java index 603f12e3..01188c37 100644 --- a/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/services/ProblemGrammarAccess.java +++ b/language/src/main/xtext-gen/org/eclipse/viatra/solver/language/services/ProblemGrammarAccess.java | |||
@@ -1026,22 +1026,22 @@ public class ProblemGrammarAccess extends AbstractElementFinder.AbstractGrammarE | |||
1026 | public class ConstantElements extends AbstractParserRuleElementFinder { | 1026 | public class ConstantElements extends AbstractParserRuleElementFinder { |
1027 | private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Constant"); | 1027 | private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Constant"); |
1028 | private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); | 1028 | private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); |
1029 | private final RuleCall cIntConstantParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); | 1029 | private final RuleCall cRealConstantParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); |
1030 | private final RuleCall cRealConstantParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); | 1030 | private final RuleCall cIntConstantParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); |
1031 | private final RuleCall cStringConstantParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2); | 1031 | private final RuleCall cStringConstantParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2); |
1032 | 1032 | ||
1033 | //Constant: | 1033 | //Constant: |
1034 | // IntConstant | RealConstant | StringConstant; | 1034 | // RealConstant | IntConstant | StringConstant; |
1035 | @Override public ParserRule getRule() { return rule; } | 1035 | @Override public ParserRule getRule() { return rule; } |
1036 | 1036 | ||
1037 | //IntConstant | RealConstant | StringConstant | 1037 | //RealConstant | IntConstant | StringConstant |
1038 | public Alternatives getAlternatives() { return cAlternatives; } | 1038 | public Alternatives getAlternatives() { return cAlternatives; } |
1039 | 1039 | ||
1040 | //IntConstant | ||
1041 | public RuleCall getIntConstantParserRuleCall_0() { return cIntConstantParserRuleCall_0; } | ||
1042 | |||
1043 | //RealConstant | 1040 | //RealConstant |
1044 | public RuleCall getRealConstantParserRuleCall_1() { return cRealConstantParserRuleCall_1; } | 1041 | public RuleCall getRealConstantParserRuleCall_0() { return cRealConstantParserRuleCall_0; } |
1042 | |||
1043 | //IntConstant | ||
1044 | public RuleCall getIntConstantParserRuleCall_1() { return cIntConstantParserRuleCall_1; } | ||
1045 | 1045 | ||
1046 | //StringConstant | 1046 | //StringConstant |
1047 | public RuleCall getStringConstantParserRuleCall_2() { return cStringConstantParserRuleCall_2; } | 1047 | public RuleCall getStringConstantParserRuleCall_2() { return cStringConstantParserRuleCall_2; } |
@@ -1340,14 +1340,12 @@ public class ProblemGrammarAccess extends AbstractElementFinder.AbstractGrammarE | |||
1340 | private final RuleCall cIDTerminalRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); | 1340 | private final RuleCall cIDTerminalRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); |
1341 | private final Keyword cTrueKeyword_1 = (Keyword)cAlternatives.eContents().get(1); | 1341 | private final Keyword cTrueKeyword_1 = (Keyword)cAlternatives.eContents().get(1); |
1342 | private final Keyword cFalseKeyword_2 = (Keyword)cAlternatives.eContents().get(2); | 1342 | private final Keyword cFalseKeyword_2 = (Keyword)cAlternatives.eContents().get(2); |
1343 | private final Keyword cEKeyword_3 = (Keyword)cAlternatives.eContents().get(3); | ||
1344 | private final Keyword cEKeyword_4 = (Keyword)cAlternatives.eContents().get(4); | ||
1345 | 1343 | ||
1346 | //Identifier: | 1344 | //Identifier: |
1347 | // ID | "true" | "false" | "e" | "E"; | 1345 | // ID | "true" | "false"; |
1348 | @Override public ParserRule getRule() { return rule; } | 1346 | @Override public ParserRule getRule() { return rule; } |
1349 | 1347 | ||
1350 | //ID | "true" | "false" | "e" | "E" | 1348 | //ID | "true" | "false" |
1351 | public Alternatives getAlternatives() { return cAlternatives; } | 1349 | public Alternatives getAlternatives() { return cAlternatives; } |
1352 | 1350 | ||
1353 | //ID | 1351 | //ID |
@@ -1358,12 +1356,6 @@ public class ProblemGrammarAccess extends AbstractElementFinder.AbstractGrammarE | |||
1358 | 1356 | ||
1359 | //"false" | 1357 | //"false" |
1360 | public Keyword getFalseKeyword_2() { return cFalseKeyword_2; } | 1358 | public Keyword getFalseKeyword_2() { return cFalseKeyword_2; } |
1361 | |||
1362 | //"e" | ||
1363 | public Keyword getEKeyword_3() { return cEKeyword_3; } | ||
1364 | |||
1365 | //"E" | ||
1366 | public Keyword getEKeyword_4() { return cEKeyword_4; } | ||
1367 | } | 1359 | } |
1368 | public class IntegerElements extends AbstractParserRuleElementFinder { | 1360 | public class IntegerElements extends AbstractParserRuleElementFinder { |
1369 | private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Integer"); | 1361 | private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Integer"); |
@@ -1388,80 +1380,48 @@ public class ProblemGrammarAccess extends AbstractElementFinder.AbstractGrammarE | |||
1388 | private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Real"); | 1380 | private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.Real"); |
1389 | private final Group cGroup = (Group)rule.eContents().get(1); | 1381 | private final Group cGroup = (Group)rule.eContents().get(1); |
1390 | private final Keyword cHyphenMinusKeyword_0 = (Keyword)cGroup.eContents().get(0); | 1382 | private final Keyword cHyphenMinusKeyword_0 = (Keyword)cGroup.eContents().get(0); |
1391 | private final RuleCall cINTTerminalRuleCall_1 = (RuleCall)cGroup.eContents().get(1); | 1383 | private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1); |
1392 | private final Alternatives cAlternatives_2 = (Alternatives)cGroup.eContents().get(2); | 1384 | private final RuleCall cEXPONENTIALTerminalRuleCall_1_0 = (RuleCall)cAlternatives_1.eContents().get(0); |
1393 | private final Group cGroup_2_0 = (Group)cAlternatives_2.eContents().get(0); | 1385 | private final Group cGroup_1_1 = (Group)cAlternatives_1.eContents().get(1); |
1394 | private final Keyword cFullStopKeyword_2_0_0 = (Keyword)cGroup_2_0.eContents().get(0); | 1386 | private final RuleCall cINTTerminalRuleCall_1_1_0 = (RuleCall)cGroup_1_1.eContents().get(0); |
1395 | private final RuleCall cINTTerminalRuleCall_2_0_1 = (RuleCall)cGroup_2_0.eContents().get(1); | 1387 | private final Keyword cFullStopKeyword_1_1_1 = (Keyword)cGroup_1_1.eContents().get(1); |
1396 | private final Group cGroup_2_1 = (Group)cAlternatives_2.eContents().get(1); | 1388 | private final Alternatives cAlternatives_1_1_2 = (Alternatives)cGroup_1_1.eContents().get(2); |
1397 | private final Group cGroup_2_1_0 = (Group)cGroup_2_1.eContents().get(0); | 1389 | private final RuleCall cINTTerminalRuleCall_1_1_2_0 = (RuleCall)cAlternatives_1_1_2.eContents().get(0); |
1398 | private final Keyword cFullStopKeyword_2_1_0_0 = (Keyword)cGroup_2_1_0.eContents().get(0); | 1390 | private final RuleCall cEXPONENTIALTerminalRuleCall_1_1_2_1 = (RuleCall)cAlternatives_1_1_2.eContents().get(1); |
1399 | private final RuleCall cINTTerminalRuleCall_2_1_0_1 = (RuleCall)cGroup_2_1_0.eContents().get(1); | 1391 | |
1400 | private final Alternatives cAlternatives_2_1_1 = (Alternatives)cGroup_2_1.eContents().get(1); | 1392 | //Real returns ecore::EDouble: |
1401 | private final Keyword cEKeyword_2_1_1_0 = (Keyword)cAlternatives_2_1_1.eContents().get(0); | 1393 | // "-"? (EXPONENTIAL | INT "." (INT | EXPONENTIAL)); |
1402 | private final Keyword cEKeyword_2_1_1_1 = (Keyword)cAlternatives_2_1_1.eContents().get(1); | ||
1403 | private final Alternatives cAlternatives_2_1_2 = (Alternatives)cGroup_2_1.eContents().get(2); | ||
1404 | private final Keyword cHyphenMinusKeyword_2_1_2_0 = (Keyword)cAlternatives_2_1_2.eContents().get(0); | ||
1405 | private final Keyword cPlusSignKeyword_2_1_2_1 = (Keyword)cAlternatives_2_1_2.eContents().get(1); | ||
1406 | private final RuleCall cINTTerminalRuleCall_2_1_3 = (RuleCall)cGroup_2_1.eContents().get(3); | ||
1407 | |||
1408 | //Real returns ecore::EDouble hidden(): | ||
1409 | // "-"? INT ("." INT | ("." INT)? ("e" | "E") ("-" | "+")? INT); | ||
1410 | @Override public ParserRule getRule() { return rule; } | 1394 | @Override public ParserRule getRule() { return rule; } |
1411 | 1395 | ||
1412 | //"-"? INT ("." INT | ("." INT)? ("e" | "E") ("-" | "+")? INT) | 1396 | //"-"? (EXPONENTIAL | INT "." (INT | EXPONENTIAL)) |
1413 | public Group getGroup() { return cGroup; } | 1397 | public Group getGroup() { return cGroup; } |
1414 | 1398 | ||
1415 | //"-"? | 1399 | //"-"? |
1416 | public Keyword getHyphenMinusKeyword_0() { return cHyphenMinusKeyword_0; } | 1400 | public Keyword getHyphenMinusKeyword_0() { return cHyphenMinusKeyword_0; } |
1417 | 1401 | ||
1418 | //INT | 1402 | //(EXPONENTIAL | INT "." (INT | EXPONENTIAL)) |
1419 | public RuleCall getINTTerminalRuleCall_1() { return cINTTerminalRuleCall_1; } | 1403 | public Alternatives getAlternatives_1() { return cAlternatives_1; } |
1420 | |||
1421 | //("." INT | ("." INT)? ("e" | "E") ("-" | "+")? INT) | ||
1422 | public Alternatives getAlternatives_2() { return cAlternatives_2; } | ||
1423 | 1404 | ||
1424 | //"." INT | 1405 | //EXPONENTIAL |
1425 | public Group getGroup_2_0() { return cGroup_2_0; } | 1406 | public RuleCall getEXPONENTIALTerminalRuleCall_1_0() { return cEXPONENTIALTerminalRuleCall_1_0; } |
1426 | 1407 | ||
1427 | //"." | 1408 | //INT "." (INT | EXPONENTIAL) |
1428 | public Keyword getFullStopKeyword_2_0_0() { return cFullStopKeyword_2_0_0; } | 1409 | public Group getGroup_1_1() { return cGroup_1_1; } |
1429 | 1410 | ||
1430 | //INT | 1411 | //INT |
1431 | public RuleCall getINTTerminalRuleCall_2_0_1() { return cINTTerminalRuleCall_2_0_1; } | 1412 | public RuleCall getINTTerminalRuleCall_1_1_0() { return cINTTerminalRuleCall_1_1_0; } |
1432 | |||
1433 | //("." INT)? ("e" | "E") ("-" | "+")? INT | ||
1434 | public Group getGroup_2_1() { return cGroup_2_1; } | ||
1435 | |||
1436 | //("." INT)? | ||
1437 | public Group getGroup_2_1_0() { return cGroup_2_1_0; } | ||
1438 | 1413 | ||
1439 | //"." | 1414 | //"." |
1440 | public Keyword getFullStopKeyword_2_1_0_0() { return cFullStopKeyword_2_1_0_0; } | 1415 | public Keyword getFullStopKeyword_1_1_1() { return cFullStopKeyword_1_1_1; } |
1441 | |||
1442 | //INT | ||
1443 | public RuleCall getINTTerminalRuleCall_2_1_0_1() { return cINTTerminalRuleCall_2_1_0_1; } | ||
1444 | |||
1445 | //("e" | "E") | ||
1446 | public Alternatives getAlternatives_2_1_1() { return cAlternatives_2_1_1; } | ||
1447 | |||
1448 | //"e" | ||
1449 | public Keyword getEKeyword_2_1_1_0() { return cEKeyword_2_1_1_0; } | ||
1450 | 1416 | ||
1451 | //"E" | 1417 | //(INT | EXPONENTIAL) |
1452 | public Keyword getEKeyword_2_1_1_1() { return cEKeyword_2_1_1_1; } | 1418 | public Alternatives getAlternatives_1_1_2() { return cAlternatives_1_1_2; } |
1453 | |||
1454 | //("-" | "+")? | ||
1455 | public Alternatives getAlternatives_2_1_2() { return cAlternatives_2_1_2; } | ||
1456 | |||
1457 | //"-" | ||
1458 | public Keyword getHyphenMinusKeyword_2_1_2_0() { return cHyphenMinusKeyword_2_1_2_0; } | ||
1459 | |||
1460 | //"+" | ||
1461 | public Keyword getPlusSignKeyword_2_1_2_1() { return cPlusSignKeyword_2_1_2_1; } | ||
1462 | 1419 | ||
1463 | //INT | 1420 | //INT |
1464 | public RuleCall getINTTerminalRuleCall_2_1_3() { return cINTTerminalRuleCall_2_1_3; } | 1421 | public RuleCall getINTTerminalRuleCall_1_1_2_0() { return cINTTerminalRuleCall_1_1_2_0; } |
1422 | |||
1423 | //EXPONENTIAL | ||
1424 | public RuleCall getEXPONENTIALTerminalRuleCall_1_1_2_1() { return cEXPONENTIALTerminalRuleCall_1_1_2_1; } | ||
1465 | } | 1425 | } |
1466 | 1426 | ||
1467 | public class LogicValueElements extends AbstractElementFinder.AbstractEnumRuleElementFinder { | 1427 | public class LogicValueElements extends AbstractElementFinder.AbstractEnumRuleElementFinder { |
@@ -1566,6 +1526,7 @@ public class ProblemGrammarAccess extends AbstractElementFinder.AbstractGrammarE | |||
1566 | private final IntegerElements pInteger; | 1526 | private final IntegerElements pInteger; |
1567 | private final RealElements pReal; | 1527 | private final RealElements pReal; |
1568 | private final TerminalRule tID; | 1528 | private final TerminalRule tID; |
1529 | private final TerminalRule tEXPONENTIAL; | ||
1569 | private final TerminalRule tSTRING; | 1530 | private final TerminalRule tSTRING; |
1570 | private final TerminalRule tQUOTED_ID; | 1531 | private final TerminalRule tQUOTED_ID; |
1571 | private final TerminalRule tSL_COMMENT; | 1532 | private final TerminalRule tSL_COMMENT; |
@@ -1618,6 +1579,7 @@ public class ProblemGrammarAccess extends AbstractElementFinder.AbstractGrammarE | |||
1618 | this.pInteger = new IntegerElements(); | 1579 | this.pInteger = new IntegerElements(); |
1619 | this.pReal = new RealElements(); | 1580 | this.pReal = new RealElements(); |
1620 | this.tID = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.ID"); | 1581 | this.tID = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.ID"); |
1582 | this.tEXPONENTIAL = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.EXPONENTIAL"); | ||
1621 | this.tSTRING = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.STRING"); | 1583 | this.tSTRING = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.STRING"); |
1622 | this.tQUOTED_ID = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.QUOTED_ID"); | 1584 | this.tQUOTED_ID = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.QUOTED_ID"); |
1623 | this.tSL_COMMENT = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.SL_COMMENT"); | 1585 | this.tSL_COMMENT = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.Problem.SL_COMMENT"); |
@@ -1893,7 +1855,7 @@ public class ProblemGrammarAccess extends AbstractElementFinder.AbstractGrammarE | |||
1893 | } | 1855 | } |
1894 | 1856 | ||
1895 | //Constant: | 1857 | //Constant: |
1896 | // IntConstant | RealConstant | StringConstant; | 1858 | // RealConstant | IntConstant | StringConstant; |
1897 | public ConstantElements getConstantAccess() { | 1859 | public ConstantElements getConstantAccess() { |
1898 | return pConstant; | 1860 | return pConstant; |
1899 | } | 1861 | } |
@@ -2025,7 +1987,7 @@ public class ProblemGrammarAccess extends AbstractElementFinder.AbstractGrammarE | |||
2025 | } | 1987 | } |
2026 | 1988 | ||
2027 | //Identifier: | 1989 | //Identifier: |
2028 | // ID | "true" | "false" | "e" | "E"; | 1990 | // ID | "true" | "false"; |
2029 | public IdentifierElements getIdentifierAccess() { | 1991 | public IdentifierElements getIdentifierAccess() { |
2030 | return pIdentifier; | 1992 | return pIdentifier; |
2031 | } | 1993 | } |
@@ -2044,8 +2006,8 @@ public class ProblemGrammarAccess extends AbstractElementFinder.AbstractGrammarE | |||
2044 | return getIntegerAccess().getRule(); | 2006 | return getIntegerAccess().getRule(); |
2045 | } | 2007 | } |
2046 | 2008 | ||
2047 | //Real returns ecore::EDouble hidden(): | 2009 | //Real returns ecore::EDouble: |
2048 | // "-"? INT ("." INT | ("." INT)? ("e" | "E") ("-" | "+")? INT); | 2010 | // "-"? (EXPONENTIAL | INT "." (INT | EXPONENTIAL)); |
2049 | public RealElements getRealAccess() { | 2011 | public RealElements getRealAccess() { |
2050 | return pReal; | 2012 | return pReal; |
2051 | } | 2013 | } |
@@ -2061,6 +2023,12 @@ public class ProblemGrammarAccess extends AbstractElementFinder.AbstractGrammarE | |||
2061 | return tID; | 2023 | return tID; |
2062 | } | 2024 | } |
2063 | 2025 | ||
2026 | //terminal EXPONENTIAL: | ||
2027 | // INT ("e" | "E") ("+" | "-")? INT; | ||
2028 | public TerminalRule getEXPONENTIALRule() { | ||
2029 | return tEXPONENTIAL; | ||
2030 | } | ||
2031 | |||
2064 | //@Override | 2032 | //@Override |
2065 | //terminal STRING: | 2033 | //terminal STRING: |
2066 | // '"' ('\\' . /* 'b'|'t'|'n'|'f'|'r'|'u'|'"'|"'"|'\\' */ | !('\\' | '"'))* '"'; | 2034 | // '"' ('\\' . /* 'b'|'t'|'n'|'f'|'r'|'u'|'"'|"'"|'\\' */ | !('\\' | '"'))* '"'; |
diff --git a/language/src/test/java/org/eclipse/viatra/solver/language/tests/ProblemParsingTest.xtend b/language/src/test/java/org/eclipse/viatra/solver/language/tests/ProblemParsingTest.xtend index 9b1bb698..7a6eec6a 100644 --- a/language/src/test/java/org/eclipse/viatra/solver/language/tests/ProblemParsingTest.xtend +++ b/language/src/test/java/org/eclipse/viatra/solver/language/tests/ProblemParsingTest.xtend | |||
@@ -8,23 +8,55 @@ import org.eclipse.viatra.solver.language.model.problem.Problem | |||
8 | import org.eclipse.xtext.testing.InjectWith | 8 | import org.eclipse.xtext.testing.InjectWith |
9 | import org.eclipse.xtext.testing.extensions.InjectionExtension | 9 | import org.eclipse.xtext.testing.extensions.InjectionExtension |
10 | import org.eclipse.xtext.testing.util.ParseHelper | 10 | import org.eclipse.xtext.testing.util.ParseHelper |
11 | import org.junit.jupiter.api.Assertions | ||
12 | import org.junit.jupiter.api.Test | 11 | import org.junit.jupiter.api.Test |
13 | import org.junit.jupiter.api.^extension.ExtendWith | 12 | import org.junit.jupiter.api.^extension.ExtendWith |
14 | 13 | ||
14 | import static org.hamcrest.MatcherAssert.assertThat | ||
15 | import static org.hamcrest.Matchers.* | ||
16 | |||
15 | @ExtendWith(InjectionExtension) | 17 | @ExtendWith(InjectionExtension) |
16 | @InjectWith(ProblemInjectorProvider) | 18 | @InjectWith(ProblemInjectorProvider) |
17 | class ProblemParsingTest { | 19 | class ProblemParsingTest { |
18 | @Inject | 20 | @Inject |
19 | ParseHelper<Problem> parseHelper | 21 | ParseHelper<Problem> parseHelper |
20 | 22 | ||
23 | @Inject | ||
24 | extension ProblemTestUtil | ||
25 | |||
21 | @Test | 26 | @Test |
22 | def void loadModel() { | 27 | def void exampleTest() { |
23 | val result = parseHelper.parse(''' | 28 | val it = parseHelper.parse(''' |
24 | Hello Xtext! | 29 | class Family { |
30 | contains Person[] members | ||
31 | } | ||
32 | |||
33 | class Person { | ||
34 | Person[0..*] children opposite parent | ||
35 | Person[0..1] parent opposite children | ||
36 | int age | ||
37 | TaxStatus taxStatus | ||
38 | } | ||
39 | |||
40 | enum TaxStatus { | ||
41 | child, student, adult, retired | ||
42 | } | ||
43 | |||
44 | % A child cannot have any dependents. | ||
45 | error invalidTaxStatus(Person p) :- | ||
46 | taxStatus(p, child), children(p, _q). | ||
47 | |||
48 | Family('family'). | ||
49 | members('family', anne): true. | ||
50 | members('family', bob). | ||
51 | members('family', ciri). | ||
52 | children(anne, ciri). | ||
53 | ?children(bob, ciri). | ||
54 | taxStatus(anne, adult). | ||
55 | age(anne, 35). | ||
56 | bobAge: 27. | ||
57 | age(bob, bobAge). | ||
58 | !age(ciri, bobAge). | ||
25 | ''') | 59 | ''') |
26 | Assertions.assertNotNull(result) | 60 | assertThat(errors, empty) |
27 | val errors = result.eResource.errors | ||
28 | Assertions.assertTrue(errors.isEmpty, '''Unexpected errors: «errors.join(", ")»''') | ||
29 | } | 61 | } |
30 | } | 62 | } |
diff --git a/language/src/test/java/org/eclipse/viatra/solver/language/tests/ProblemScopingTest.xtend b/language/src/test/java/org/eclipse/viatra/solver/language/tests/ProblemScopingTest.xtend index 7872b0f7..7686e39e 100644 --- a/language/src/test/java/org/eclipse/viatra/solver/language/tests/ProblemScopingTest.xtend +++ b/language/src/test/java/org/eclipse/viatra/solver/language/tests/ProblemScopingTest.xtend | |||
@@ -27,7 +27,8 @@ class ProblemScopingTest { | |||
27 | def void builtInArgumentTypeTest() { | 27 | def void builtInArgumentTypeTest() { |
28 | val it = parseHelper.parse(''' | 28 | val it = parseHelper.parse(''' |
29 | pred predicate(node a, data b, int c). | 29 | pred predicate(node a, data b, int c). |
30 | ''').assertNoErrors | 30 | ''') |
31 | assertThat(errors, empty) | ||
31 | assertThat(pred('predicate').param(0).parameterType, equalTo(builtin.findClass('node'))) | 32 | assertThat(pred('predicate').param(0).parameterType, equalTo(builtin.findClass('node'))) |
32 | assertThat(pred('predicate').param(1).parameterType, equalTo(builtin.findClass('data'))) | 33 | assertThat(pred('predicate').param(1).parameterType, equalTo(builtin.findClass('data'))) |
33 | assertThat(pred('predicate').param(2).parameterType, equalTo(builtin.findClass('int'))) | 34 | assertThat(pred('predicate').param(2).parameterType, equalTo(builtin.findClass('int'))) |
@@ -37,7 +38,8 @@ class ProblemScopingTest { | |||
37 | def void builtiQualifiedArgumentTypeTest() { | 38 | def void builtiQualifiedArgumentTypeTest() { |
38 | val it = parseHelper.parse(''' | 39 | val it = parseHelper.parse(''' |
39 | pred predicate(builtin::node a, builtin::data b, builtin::int c). | 40 | pred predicate(builtin::node a, builtin::data b, builtin::int c). |
40 | ''').assertNoErrors | 41 | ''') |
42 | assertThat(errors, empty) | ||
41 | assertThat(pred('predicate').param(0).parameterType, equalTo(builtin.findClass('node'))) | 43 | assertThat(pred('predicate').param(0).parameterType, equalTo(builtin.findClass('node'))) |
42 | assertThat(pred('predicate').param(1).parameterType, equalTo(builtin.findClass('data'))) | 44 | assertThat(pred('predicate').param(1).parameterType, equalTo(builtin.findClass('data'))) |
43 | assertThat(pred('predicate').param(2).parameterType, equalTo(builtin.findClass('int'))) | 45 | assertThat(pred('predicate').param(2).parameterType, equalTo(builtin.findClass('int'))) |
@@ -49,7 +51,8 @@ class ProblemScopingTest { | |||
49 | pred predicate(node a, node b). | 51 | pred predicate(node a, node b). |
50 | predicate(a, a). | 52 | predicate(a, a). |
51 | ?predicate(a, b). | 53 | ?predicate(a, b). |
52 | ''').assertNoErrors | 54 | ''') |
55 | assertThat(errors, empty) | ||
53 | assertThat(nodeNames, hasItems('a', 'b')) | 56 | assertThat(nodeNames, hasItems('a', 'b')) |
54 | assertThat(assertion(0).arg(0).node, equalTo(node('a'))) | 57 | assertThat(assertion(0).arg(0).node, equalTo(node('a'))) |
55 | assertThat(assertion(0).arg(1).node, equalTo(node('a'))) | 58 | assertThat(assertion(0).arg(1).node, equalTo(node('a'))) |
@@ -63,7 +66,8 @@ class ProblemScopingTest { | |||
63 | pred predicate(node a, node b). | 66 | pred predicate(node a, node b). |
64 | predicate('a', 'a'). | 67 | predicate('a', 'a'). |
65 | ?predicate('a', 'b'). | 68 | ?predicate('a', 'b'). |
66 | ''').assertNoErrors | 69 | ''') |
70 | assertThat(errors, empty) | ||
67 | assertThat(nodeNames, hasItems("'a'", "'b'")) | 71 | assertThat(nodeNames, hasItems("'a'", "'b'")) |
68 | assertThat(assertion(0).arg(0).node, equalTo(node("'a'"))) | 72 | assertThat(assertion(0).arg(0).node, equalTo(node("'a'"))) |
69 | assertThat(assertion(0).arg(1).node, equalTo(node("'a'"))) | 73 | assertThat(assertion(0).arg(1).node, equalTo(node("'a'"))) |
@@ -76,7 +80,8 @@ class ProblemScopingTest { | |||
76 | val it = parseHelper.parse(''' | 80 | val it = parseHelper.parse(''' |
77 | pred predicate(node a). | 81 | pred predicate(node a). |
78 | predicate(int::new). | 82 | predicate(int::new). |
79 | ''').assertNoErrors | 83 | ''') |
84 | assertThat(errors, empty) | ||
80 | assertThat(nodes, empty) | 85 | assertThat(nodes, empty) |
81 | assertThat(assertion(0).arg(0).node, equalTo(builtin.findClass('int').newNode)) | 86 | assertThat(assertion(0).arg(0).node, equalTo(builtin.findClass('int').newNode)) |
82 | } | 87 | } |
@@ -86,7 +91,8 @@ class ProblemScopingTest { | |||
86 | val it = parseHelper.parse(''' | 91 | val it = parseHelper.parse(''' |
87 | pred predicate(node a). | 92 | pred predicate(node a). |
88 | predicate(builtin::int::new). | 93 | predicate(builtin::int::new). |
89 | ''').assertNoErrors | 94 | ''') |
95 | assertThat(errors, empty) | ||
90 | assertThat(nodes, empty) | 96 | assertThat(nodes, empty) |
91 | assertThat(assertion(0).arg(0).node, equalTo(builtin.findClass('int').newNode)) | 97 | assertThat(assertion(0).arg(0).node, equalTo(builtin.findClass('int').newNode)) |
92 | } | 98 | } |
@@ -97,7 +103,8 @@ class ProblemScopingTest { | |||
97 | class Foo. | 103 | class Foo. |
98 | pred predicate(node a). | 104 | pred predicate(node a). |
99 | predicate(Foo::new). | 105 | predicate(Foo::new). |
100 | ''').assertNoErrors | 106 | ''') |
107 | assertThat(errors, empty) | ||
101 | assertThat(nodes, empty) | 108 | assertThat(nodes, empty) |
102 | assertThat(assertion(0).arg(0).node, equalTo(findClass('Foo').newNode)) | 109 | assertThat(assertion(0).arg(0).node, equalTo(findClass('Foo').newNode)) |
103 | } | 110 | } |
@@ -110,7 +117,8 @@ class ProblemScopingTest { | |||
110 | class Foo. | 117 | class Foo. |
111 | pred predicate(node a). | 118 | pred predicate(node a). |
112 | predicate(test::Foo::new). | 119 | predicate(test::Foo::new). |
113 | ''').assertNoErrors | 120 | ''') |
121 | assertThat(errors, empty) | ||
114 | assertThat(nodes, empty) | 122 | assertThat(nodes, empty) |
115 | assertThat(assertion(0).arg(0).node, equalTo(findClass('Foo').newNode)) | 123 | assertThat(assertion(0).arg(0).node, equalTo(findClass('Foo').newNode)) |
116 | } | 124 | } |
@@ -121,7 +129,8 @@ class ProblemScopingTest { | |||
121 | class Foo. | 129 | class Foo. |
122 | pred predicate(node a). | 130 | pred predicate(node a). |
123 | predicate(new). | 131 | predicate(new). |
124 | ''').assertNoErrors | 132 | ''') |
133 | assertThat(errors, empty) | ||
125 | assertThat(nodeNames, hasItem('new')) | 134 | assertThat(nodeNames, hasItem('new')) |
126 | assertThat(assertion(0).arg(0).node, not(equalTo(findClass('Foo').newNode))) | 135 | assertThat(assertion(0).arg(0).node, not(equalTo(findClass('Foo').newNode))) |
127 | } | 136 | } |
@@ -131,7 +140,8 @@ class ProblemScopingTest { | |||
131 | val it = parseHelper.parse(''' | 140 | val it = parseHelper.parse(''' |
132 | pred predicate(node a) :- node(b). | 141 | pred predicate(node a) :- node(b). |
133 | predicate(b). | 142 | predicate(b). |
134 | ''').assertNoErrors | 143 | ''') |
144 | assertThat(errors, empty) | ||
135 | assertThat(nodeNames, hasItem("b")) | 145 | assertThat(nodeNames, hasItem("b")) |
136 | assertThat(pred("predicate").conj(0).lit(0).arg(0).node, equalTo(node("b"))) | 146 | assertThat(pred("predicate").conj(0).lit(0).arg(0).node, equalTo(node("b"))) |
137 | assertThat(assertion(0).arg(0).node, equalTo(node("b"))) | 147 | assertThat(assertion(0).arg(0).node, equalTo(node("b"))) |
@@ -141,7 +151,8 @@ class ProblemScopingTest { | |||
141 | def void quotedNodeInPredicateTest() { | 151 | def void quotedNodeInPredicateTest() { |
142 | val it = parseHelper.parse(''' | 152 | val it = parseHelper.parse(''' |
143 | pred predicate(node a) :- node('b'). | 153 | pred predicate(node a) :- node('b'). |
144 | ''').assertNoErrors | 154 | ''') |
155 | assertThat(errors, empty) | ||
145 | assertThat(nodeNames, hasItem("'b'")) | 156 | assertThat(nodeNames, hasItem("'b'")) |
146 | assertThat(pred("predicate").conj(0).lit(0).arg(0).node, equalTo(node("'b'"))) | 157 | assertThat(pred("predicate").conj(0).lit(0).arg(0).node, equalTo(node("'b'"))) |
147 | } | 158 | } |
diff --git a/language/src/test/java/org/eclipse/viatra/solver/language/tests/ProblemTestUtil.xtend b/language/src/test/java/org/eclipse/viatra/solver/language/tests/ProblemTestUtil.xtend index 98b53675..b16de2b5 100644 --- a/language/src/test/java/org/eclipse/viatra/solver/language/tests/ProblemTestUtil.xtend +++ b/language/src/test/java/org/eclipse/viatra/solver/language/tests/ProblemTestUtil.xtend | |||
@@ -1,6 +1,5 @@ | |||
1 | package org.eclipse.viatra.solver.language.tests | 1 | package org.eclipse.viatra.solver.language.tests |
2 | 2 | ||
3 | import org.eclipse.emf.ecore.util.EcoreUtil | ||
4 | import org.eclipse.viatra.solver.language.ProblemUtil | 3 | import org.eclipse.viatra.solver.language.ProblemUtil |
5 | import org.eclipse.viatra.solver.language.model.problem.Argument | 4 | import org.eclipse.viatra.solver.language.model.problem.Argument |
6 | import org.eclipse.viatra.solver.language.model.problem.Assertion | 5 | import org.eclipse.viatra.solver.language.model.problem.Assertion |
@@ -17,19 +16,14 @@ import org.eclipse.viatra.solver.language.model.problem.PredicateDefinition | |||
17 | import org.eclipse.viatra.solver.language.model.problem.Problem | 16 | import org.eclipse.viatra.solver.language.model.problem.Problem |
18 | import org.eclipse.viatra.solver.language.model.problem.Variable | 17 | import org.eclipse.viatra.solver.language.model.problem.Variable |
19 | import org.eclipse.viatra.solver.language.model.problem.VariableOrNodeArgument | 18 | import org.eclipse.viatra.solver.language.model.problem.VariableOrNodeArgument |
20 | import org.junit.jupiter.api.Assertions | ||
21 | 19 | ||
22 | class ProblemTestUtil { | 20 | class ProblemTestUtil { |
23 | def builtin(Problem it) { | 21 | def builtin(Problem it) { |
24 | ProblemUtil.getBuiltInLibrary(it).get | 22 | ProblemUtil.getBuiltInLibrary(it).get |
25 | } | 23 | } |
26 | 24 | ||
27 | def assertNoErrors(Problem it) { | 25 | def errors(Problem it) { |
28 | Assertions.assertNotNull(it) | 26 | eResource.errors |
29 | EcoreUtil.resolveAll(it) | ||
30 | val errors = eResource.errors | ||
31 | Assertions.assertTrue(errors.isEmpty, '''Unexpected errors: «errors.join(", ")»''') | ||
32 | it | ||
33 | } | 27 | } |
34 | 28 | ||
35 | def nodeNames(Problem it) { | 29 | def nodeNames(Problem it) { |