aboutsummaryrefslogtreecommitdiffstats
path: root/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguageParser.java
diff options
context:
space:
mode:
Diffstat (limited to 'Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguageParser.java')
-rw-r--r--Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguageParser.java697
1 files changed, 484 insertions, 213 deletions
diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguageParser.java b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguageParser.java
index 1735afbd..bb317b9b 100644
--- a/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguageParser.java
+++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dslreasoner.alloy.language/src-gen/hu/bme/mit/inf/dslreasoner/parser/antlr/internal/InternalAlloyLanguageParser.java
@@ -23,7 +23,7 @@ import java.util.HashMap;
23@SuppressWarnings("all") 23@SuppressWarnings("all")
24public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser { 24public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
25 public static final String[] tokenNames = new String[] { 25 public static final String[] tokenNames = new String[] {
26 "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_INT", "RULE_STRING", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'enum'", "'{'", "','", "'}'", "'abstract'", "'sig'", "'extends'", "'in'", "'+'", "':'", "'fun'", "'['", "']'", "'pred'", "'fact'", "'disj'", "'||'", "'or'", "'<=>'", "'iff'", "'=>'", "'implies'", "'else'", "'&&'", "'and'", "'='", "'!='", "'>'", "'>='", "'<'", "'<='", "'++'", "':>'", "'<:'", "'.'", "'-'", "'&'", "'->'", "'!'", "'not'", "'~'", "'^'", "'*'", "'#'", "'sum'", "'none'", "'iden'", "'univ'", "'Int'", "'('", "')'", "'run'", "'for'", "'exactly'", "'all'", "'no'", "'some'", "'lone'", "'one'", "'set'", "'plus'", "'sub'", "'mul'", "'rem'", "'div'" 26 "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_INT", "RULE_STRING", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'enum'", "'{'", "','", "'}'", "'abstract'", "'sig'", "'extends'", "'in'", "'+'", "':'", "'fun'", "'['", "']'", "'pred'", "'fact'", "'disj'", "'||'", "'or'", "'<=>'", "'iff'", "'=>'", "'implies'", "'else'", "'&&'", "'and'", "'='", "'!='", "'>'", "'>='", "'<'", "'<='", "'++'", "':>'", "'<:'", "'.'", "'-'", "'&'", "'->'", "'!'", "'not'", "'~'", "'^'", "'*'", "'#'", "'sum'", "'none'", "'iden'", "'univ'", "'Int'", "'String'", "'('", "')'", "'run'", "'for'", "'exactly'", "'all'", "'no'", "'some'", "'lone'", "'one'", "'set'", "'plus'", "'sub'", "'mul'", "'rem'", "'div'"
27 }; 27 };
28 public static final int T__50=50; 28 public static final int T__50=50;
29 public static final int T__19=19; 29 public static final int T__19=19;
@@ -86,6 +86,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
86 public static final int T__31=31; 86 public static final int T__31=31;
87 public static final int T__75=75; 87 public static final int T__75=75;
88 public static final int T__32=32; 88 public static final int T__32=32;
89 public static final int T__76=76;
89 public static final int RULE_WS=9; 90 public static final int RULE_WS=9;
90 public static final int RULE_ANY_OTHER=10; 91 public static final int RULE_ANY_OTHER=10;
91 public static final int T__48=48; 92 public static final int T__48=48;
@@ -217,12 +218,12 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
217 break; 218 break;
218 case 15: 219 case 15:
219 case 16: 220 case 16:
220 case 65:
221 case 66: 221 case 66:
222 case 67: 222 case 67:
223 case 68: 223 case 68:
224 case 69: 224 case 69:
225 case 70: 225 case 70:
226 case 71:
226 { 227 {
227 alt1=2; 228 alt1=2;
228 } 229 }
@@ -1291,7 +1292,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
1291 int alt4=3; 1292 int alt4=3;
1292 int LA4_0 = input.LA(1); 1293 int LA4_0 = input.LA(1);
1293 1294
1294 if ( LA4_0 >= 65 && LA4_0 <= 70 && getUnorderedGroupHelper().canSelect(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0(), 0) ) { 1295 if ( LA4_0 >= 66 && LA4_0 <= 71 && getUnorderedGroupHelper().canSelect(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0(), 0) ) {
1295 alt4=1; 1296 alt4=1;
1296 } 1297 }
1297 else if ( LA4_0 == 15 && getUnorderedGroupHelper().canSelect(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0(), 1) ) { 1298 else if ( LA4_0 == 15 && getUnorderedGroupHelper().canSelect(grammarAccess.getALSSignatureBodyAccess().getUnorderedGroup_0(), 1) ) {
@@ -3040,10 +3041,10 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
3040 int alt16=2; 3041 int alt16=2;
3041 int LA16_0 = input.LA(1); 3042 int LA16_0 = input.LA(1);
3042 3043
3043 if ( ((LA16_0>=65 && LA16_0<=70)) ) { 3044 if ( ((LA16_0>=66 && LA16_0<=71)) ) {
3044 alt16=1; 3045 alt16=1;
3045 } 3046 }
3046 else if ( ((LA16_0>=RULE_ID && LA16_0<=RULE_INT)||LA16_0==46||(LA16_0>=49 && LA16_0<=60)||(LA16_0>=71 && LA16_0<=75)) ) { 3047 else if ( ((LA16_0>=RULE_ID && LA16_0<=RULE_STRING)||LA16_0==46||(LA16_0>=49 && LA16_0<=61)||(LA16_0>=72 && LA16_0<=76)) ) {
3047 alt16=2; 3048 alt16=2;
3048 } 3049 }
3049 else { 3050 else {
@@ -5957,7 +5958,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
5957 int alt37=2; 5958 int alt37=2;
5958 int LA37_0 = input.LA(1); 5959 int LA37_0 = input.LA(1);
5959 5960
5960 if ( (LA37_0==48||(LA37_0>=65 && LA37_0<=70)) ) { 5961 if ( (LA37_0==48||(LA37_0>=66 && LA37_0<=71)) ) {
5961 alt37=1; 5962 alt37=1;
5962 } 5963 }
5963 switch (alt37) { 5964 switch (alt37) {
@@ -5981,7 +5982,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
5981 int alt35=2; 5982 int alt35=2;
5982 int LA35_0 = input.LA(1); 5983 int LA35_0 = input.LA(1);
5983 5984
5984 if ( ((LA35_0>=65 && LA35_0<=70)) ) { 5985 if ( ((LA35_0>=66 && LA35_0<=71)) ) {
5985 alt35=1; 5986 alt35=1;
5986 } 5987 }
5987 switch (alt35) { 5988 switch (alt35) {
@@ -6033,7 +6034,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
6033 int alt36=2; 6034 int alt36=2;
6034 int LA36_0 = input.LA(1); 6035 int LA36_0 = input.LA(1);
6035 6036
6036 if ( ((LA36_0>=65 && LA36_0<=70)) ) { 6037 if ( ((LA36_0>=66 && LA36_0<=71)) ) {
6037 alt36=1; 6038 alt36=1;
6038 } 6039 }
6039 switch (alt36) { 6040 switch (alt36) {
@@ -6892,7 +6893,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
6892 if ( (LA40_0==RULE_ID) ) { 6893 if ( (LA40_0==RULE_ID) ) {
6893 alt40=1; 6894 alt40=1;
6894 } 6895 }
6895 else if ( ((LA40_0>=71 && LA40_0<=75)) ) { 6896 else if ( ((LA40_0>=72 && LA40_0<=76)) ) {
6896 alt40=2; 6897 alt40=2;
6897 } 6898 }
6898 else { 6899 else {
@@ -7339,7 +7340,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7339 7340
7340 7341
7341 // $ANTLR start "ruleALSBasicRelationTerm" 7342 // $ANTLR start "ruleALSBasicRelationTerm"
7342 // InternalAlloyLanguage.g:2602:1: ruleALSBasicRelationTerm returns [EObject current=null] : ( ( () otherlv_1= 'none' ) | ( () otherlv_3= 'iden' ) | ( () otherlv_5= 'univ' ) | ( () otherlv_7= 'Int' ) | ( () ( (otherlv_9= RULE_ID ) ) ) | ( () ( (lv_value_11_0= RULE_INT ) ) ) | (otherlv_12= '(' this_ALSTerm_13= ruleALSTerm otherlv_14= ')' ) ) ; 7343 // InternalAlloyLanguage.g:2602:1: ruleALSBasicRelationTerm returns [EObject current=null] : ( ( () otherlv_1= 'none' ) | ( () otherlv_3= 'iden' ) | ( () otherlv_5= 'univ' ) | ( () otherlv_7= 'Int' ) | ( () otherlv_9= 'String' ) | ( () ( (otherlv_11= RULE_ID ) ) ) | ( () ( (lv_value_13_0= RULE_INT ) ) ) | ( () ( (lv_value_15_0= RULE_STRING ) ) ) | (otherlv_16= '(' this_ALSTerm_17= ruleALSTerm otherlv_18= ')' ) ) ;
7343 public final EObject ruleALSBasicRelationTerm() throws RecognitionException { 7344 public final EObject ruleALSBasicRelationTerm() throws RecognitionException {
7344 EObject current = null; 7345 EObject current = null;
7345 7346
@@ -7348,20 +7349,22 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7348 Token otherlv_5=null; 7349 Token otherlv_5=null;
7349 Token otherlv_7=null; 7350 Token otherlv_7=null;
7350 Token otherlv_9=null; 7351 Token otherlv_9=null;
7351 Token lv_value_11_0=null; 7352 Token otherlv_11=null;
7352 Token otherlv_12=null; 7353 Token lv_value_13_0=null;
7353 Token otherlv_14=null; 7354 Token lv_value_15_0=null;
7354 EObject this_ALSTerm_13 = null; 7355 Token otherlv_16=null;
7356 Token otherlv_18=null;
7357 EObject this_ALSTerm_17 = null;
7355 7358
7356 7359
7357 enterRule(); 7360 enterRule();
7358 7361
7359 try { 7362 try {
7360 // InternalAlloyLanguage.g:2605:28: ( ( ( () otherlv_1= 'none' ) | ( () otherlv_3= 'iden' ) | ( () otherlv_5= 'univ' ) | ( () otherlv_7= 'Int' ) | ( () ( (otherlv_9= RULE_ID ) ) ) | ( () ( (lv_value_11_0= RULE_INT ) ) ) | (otherlv_12= '(' this_ALSTerm_13= ruleALSTerm otherlv_14= ')' ) ) ) 7363 // InternalAlloyLanguage.g:2605:28: ( ( ( () otherlv_1= 'none' ) | ( () otherlv_3= 'iden' ) | ( () otherlv_5= 'univ' ) | ( () otherlv_7= 'Int' ) | ( () otherlv_9= 'String' ) | ( () ( (otherlv_11= RULE_ID ) ) ) | ( () ( (lv_value_13_0= RULE_INT ) ) ) | ( () ( (lv_value_15_0= RULE_STRING ) ) ) | (otherlv_16= '(' this_ALSTerm_17= ruleALSTerm otherlv_18= ')' ) ) )
7361 // InternalAlloyLanguage.g:2606:1: ( ( () otherlv_1= 'none' ) | ( () otherlv_3= 'iden' ) | ( () otherlv_5= 'univ' ) | ( () otherlv_7= 'Int' ) | ( () ( (otherlv_9= RULE_ID ) ) ) | ( () ( (lv_value_11_0= RULE_INT ) ) ) | (otherlv_12= '(' this_ALSTerm_13= ruleALSTerm otherlv_14= ')' ) ) 7364 // InternalAlloyLanguage.g:2606:1: ( ( () otherlv_1= 'none' ) | ( () otherlv_3= 'iden' ) | ( () otherlv_5= 'univ' ) | ( () otherlv_7= 'Int' ) | ( () otherlv_9= 'String' ) | ( () ( (otherlv_11= RULE_ID ) ) ) | ( () ( (lv_value_13_0= RULE_INT ) ) ) | ( () ( (lv_value_15_0= RULE_STRING ) ) ) | (otherlv_16= '(' this_ALSTerm_17= ruleALSTerm otherlv_18= ')' ) )
7362 { 7365 {
7363 // InternalAlloyLanguage.g:2606:1: ( ( () otherlv_1= 'none' ) | ( () otherlv_3= 'iden' ) | ( () otherlv_5= 'univ' ) | ( () otherlv_7= 'Int' ) | ( () ( (otherlv_9= RULE_ID ) ) ) | ( () ( (lv_value_11_0= RULE_INT ) ) ) | (otherlv_12= '(' this_ALSTerm_13= ruleALSTerm otherlv_14= ')' ) ) 7366 // InternalAlloyLanguage.g:2606:1: ( ( () otherlv_1= 'none' ) | ( () otherlv_3= 'iden' ) | ( () otherlv_5= 'univ' ) | ( () otherlv_7= 'Int' ) | ( () otherlv_9= 'String' ) | ( () ( (otherlv_11= RULE_ID ) ) ) | ( () ( (lv_value_13_0= RULE_INT ) ) ) | ( () ( (lv_value_15_0= RULE_STRING ) ) ) | (otherlv_16= '(' this_ALSTerm_17= ruleALSTerm otherlv_18= ')' ) )
7364 int alt43=7; 7367 int alt43=9;
7365 switch ( input.LA(1) ) { 7368 switch ( input.LA(1) ) {
7366 case 56: 7369 case 56:
7367 { 7370 {
@@ -7383,21 +7386,31 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7383 alt43=4; 7386 alt43=4;
7384 } 7387 }
7385 break; 7388 break;
7386 case RULE_ID: 7389 case 60:
7387 { 7390 {
7388 alt43=5; 7391 alt43=5;
7389 } 7392 }
7390 break; 7393 break;
7391 case RULE_INT: 7394 case RULE_ID:
7392 { 7395 {
7393 alt43=6; 7396 alt43=6;
7394 } 7397 }
7395 break; 7398 break;
7396 case 60: 7399 case RULE_INT:
7397 { 7400 {
7398 alt43=7; 7401 alt43=7;
7399 } 7402 }
7400 break; 7403 break;
7404 case RULE_STRING:
7405 {
7406 alt43=8;
7407 }
7408 break;
7409 case 61:
7410 {
7411 alt43=9;
7412 }
7413 break;
7401 default: 7414 default:
7402 if (state.backtracking>0) {state.failed=true; return current;} 7415 if (state.backtracking>0) {state.failed=true; return current;}
7403 NoViableAltException nvae = 7416 NoViableAltException nvae =
@@ -7532,10 +7545,10 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7532 } 7545 }
7533 break; 7546 break;
7534 case 5 : 7547 case 5 :
7535 // InternalAlloyLanguage.g:2650:6: ( () ( (otherlv_9= RULE_ID ) ) ) 7548 // InternalAlloyLanguage.g:2650:6: ( () otherlv_9= 'String' )
7536 { 7549 {
7537 // InternalAlloyLanguage.g:2650:6: ( () ( (otherlv_9= RULE_ID ) ) ) 7550 // InternalAlloyLanguage.g:2650:6: ( () otherlv_9= 'String' )
7538 // InternalAlloyLanguage.g:2650:7: () ( (otherlv_9= RULE_ID ) ) 7551 // InternalAlloyLanguage.g:2650:7: () otherlv_9= 'String'
7539 { 7552 {
7540 // InternalAlloyLanguage.g:2650:7: () 7553 // InternalAlloyLanguage.g:2650:7: ()
7541 // InternalAlloyLanguage.g:2651:5: 7554 // InternalAlloyLanguage.g:2651:5:
@@ -7543,18 +7556,49 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7543 if ( state.backtracking==0 ) { 7556 if ( state.backtracking==0 ) {
7544 7557
7545 current = forceCreateModelElement( 7558 current = forceCreateModelElement(
7546 grammarAccess.getALSBasicRelationTermAccess().getALSReferenceAction_4_0(), 7559 grammarAccess.getALSBasicRelationTermAccess().getALSStringAction_4_0(),
7547 current); 7560 current);
7548 7561
7549 } 7562 }
7550 7563
7551 } 7564 }
7552 7565
7553 // InternalAlloyLanguage.g:2656:2: ( (otherlv_9= RULE_ID ) ) 7566 otherlv_9=(Token)match(input,60,FOLLOW_2); if (state.failed) return current;
7554 // InternalAlloyLanguage.g:2657:1: (otherlv_9= RULE_ID ) 7567 if ( state.backtracking==0 ) {
7568
7569 newLeafNode(otherlv_9, grammarAccess.getALSBasicRelationTermAccess().getStringKeyword_4_1());
7570
7571 }
7572
7573 }
7574
7575
7576 }
7577 break;
7578 case 6 :
7579 // InternalAlloyLanguage.g:2661:6: ( () ( (otherlv_11= RULE_ID ) ) )
7580 {
7581 // InternalAlloyLanguage.g:2661:6: ( () ( (otherlv_11= RULE_ID ) ) )
7582 // InternalAlloyLanguage.g:2661:7: () ( (otherlv_11= RULE_ID ) )
7555 { 7583 {
7556 // InternalAlloyLanguage.g:2657:1: (otherlv_9= RULE_ID ) 7584 // InternalAlloyLanguage.g:2661:7: ()
7557 // InternalAlloyLanguage.g:2658:3: otherlv_9= RULE_ID 7585 // InternalAlloyLanguage.g:2662:5:
7586 {
7587 if ( state.backtracking==0 ) {
7588
7589 current = forceCreateModelElement(
7590 grammarAccess.getALSBasicRelationTermAccess().getALSReferenceAction_5_0(),
7591 current);
7592
7593 }
7594
7595 }
7596
7597 // InternalAlloyLanguage.g:2667:2: ( (otherlv_11= RULE_ID ) )
7598 // InternalAlloyLanguage.g:2668:1: (otherlv_11= RULE_ID )
7599 {
7600 // InternalAlloyLanguage.g:2668:1: (otherlv_11= RULE_ID )
7601 // InternalAlloyLanguage.g:2669:3: otherlv_11= RULE_ID
7558 { 7602 {
7559 if ( state.backtracking==0 ) { 7603 if ( state.backtracking==0 ) {
7560 7604
@@ -7563,10 +7607,10 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7563 } 7607 }
7564 7608
7565 } 7609 }
7566 otherlv_9=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current; 7610 otherlv_11=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current;
7567 if ( state.backtracking==0 ) { 7611 if ( state.backtracking==0 ) {
7568 7612
7569 newLeafNode(otherlv_9, grammarAccess.getALSBasicRelationTermAccess().getReferredALSRelationDeclarationCrossReference_4_1_0()); 7613 newLeafNode(otherlv_11, grammarAccess.getALSBasicRelationTermAccess().getReferredALSRelationDeclarationCrossReference_5_1_0());
7570 7614
7571 } 7615 }
7572 7616
@@ -7581,35 +7625,35 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7581 7625
7582 } 7626 }
7583 break; 7627 break;
7584 case 6 : 7628 case 7 :
7585 // InternalAlloyLanguage.g:2670:6: ( () ( (lv_value_11_0= RULE_INT ) ) ) 7629 // InternalAlloyLanguage.g:2681:6: ( () ( (lv_value_13_0= RULE_INT ) ) )
7586 { 7630 {
7587 // InternalAlloyLanguage.g:2670:6: ( () ( (lv_value_11_0= RULE_INT ) ) ) 7631 // InternalAlloyLanguage.g:2681:6: ( () ( (lv_value_13_0= RULE_INT ) ) )
7588 // InternalAlloyLanguage.g:2670:7: () ( (lv_value_11_0= RULE_INT ) ) 7632 // InternalAlloyLanguage.g:2681:7: () ( (lv_value_13_0= RULE_INT ) )
7589 { 7633 {
7590 // InternalAlloyLanguage.g:2670:7: () 7634 // InternalAlloyLanguage.g:2681:7: ()
7591 // InternalAlloyLanguage.g:2671:5: 7635 // InternalAlloyLanguage.g:2682:5:
7592 { 7636 {
7593 if ( state.backtracking==0 ) { 7637 if ( state.backtracking==0 ) {
7594 7638
7595 current = forceCreateModelElement( 7639 current = forceCreateModelElement(
7596 grammarAccess.getALSBasicRelationTermAccess().getALSNumberLiteralAction_5_0(), 7640 grammarAccess.getALSBasicRelationTermAccess().getALSNumberLiteralAction_6_0(),
7597 current); 7641 current);
7598 7642
7599 } 7643 }
7600 7644
7601 } 7645 }
7602 7646
7603 // InternalAlloyLanguage.g:2676:2: ( (lv_value_11_0= RULE_INT ) ) 7647 // InternalAlloyLanguage.g:2687:2: ( (lv_value_13_0= RULE_INT ) )
7604 // InternalAlloyLanguage.g:2677:1: (lv_value_11_0= RULE_INT ) 7648 // InternalAlloyLanguage.g:2688:1: (lv_value_13_0= RULE_INT )
7605 { 7649 {
7606 // InternalAlloyLanguage.g:2677:1: (lv_value_11_0= RULE_INT ) 7650 // InternalAlloyLanguage.g:2688:1: (lv_value_13_0= RULE_INT )
7607 // InternalAlloyLanguage.g:2678:3: lv_value_11_0= RULE_INT 7651 // InternalAlloyLanguage.g:2689:3: lv_value_13_0= RULE_INT
7608 { 7652 {
7609 lv_value_11_0=(Token)match(input,RULE_INT,FOLLOW_2); if (state.failed) return current; 7653 lv_value_13_0=(Token)match(input,RULE_INT,FOLLOW_2); if (state.failed) return current;
7610 if ( state.backtracking==0 ) { 7654 if ( state.backtracking==0 ) {
7611 7655
7612 newLeafNode(lv_value_11_0, grammarAccess.getALSBasicRelationTermAccess().getValueINTTerminalRuleCall_5_1_0()); 7656 newLeafNode(lv_value_13_0, grammarAccess.getALSBasicRelationTermAccess().getValueINTTerminalRuleCall_6_1_0());
7613 7657
7614 } 7658 }
7615 if ( state.backtracking==0 ) { 7659 if ( state.backtracking==0 ) {
@@ -7620,7 +7664,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7620 setWithLastConsumed( 7664 setWithLastConsumed(
7621 current, 7665 current,
7622 "value", 7666 "value",
7623 lv_value_11_0, 7667 lv_value_13_0,
7624 "org.eclipse.xtext.common.Terminals.INT"); 7668 "org.eclipse.xtext.common.Terminals.INT");
7625 7669
7626 } 7670 }
@@ -7636,38 +7680,93 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7636 7680
7637 } 7681 }
7638 break; 7682 break;
7639 case 7 : 7683 case 8 :
7640 // InternalAlloyLanguage.g:2695:6: (otherlv_12= '(' this_ALSTerm_13= ruleALSTerm otherlv_14= ')' ) 7684 // InternalAlloyLanguage.g:2706:6: ( () ( (lv_value_15_0= RULE_STRING ) ) )
7641 { 7685 {
7642 // InternalAlloyLanguage.g:2695:6: (otherlv_12= '(' this_ALSTerm_13= ruleALSTerm otherlv_14= ')' ) 7686 // InternalAlloyLanguage.g:2706:6: ( () ( (lv_value_15_0= RULE_STRING ) ) )
7643 // InternalAlloyLanguage.g:2695:8: otherlv_12= '(' this_ALSTerm_13= ruleALSTerm otherlv_14= ')' 7687 // InternalAlloyLanguage.g:2706:7: () ( (lv_value_15_0= RULE_STRING ) )
7688 {
7689 // InternalAlloyLanguage.g:2706:7: ()
7690 // InternalAlloyLanguage.g:2707:5:
7644 { 7691 {
7645 otherlv_12=(Token)match(input,60,FOLLOW_12); if (state.failed) return current;
7646 if ( state.backtracking==0 ) { 7692 if ( state.backtracking==0 ) {
7647 7693
7648 newLeafNode(otherlv_12, grammarAccess.getALSBasicRelationTermAccess().getLeftParenthesisKeyword_6_0()); 7694 current = forceCreateModelElement(
7695 grammarAccess.getALSBasicRelationTermAccess().getALSStringLiteralAction_7_0(),
7696 current);
7697
7698 }
7699
7700 }
7701
7702 // InternalAlloyLanguage.g:2712:2: ( (lv_value_15_0= RULE_STRING ) )
7703 // InternalAlloyLanguage.g:2713:1: (lv_value_15_0= RULE_STRING )
7704 {
7705 // InternalAlloyLanguage.g:2713:1: (lv_value_15_0= RULE_STRING )
7706 // InternalAlloyLanguage.g:2714:3: lv_value_15_0= RULE_STRING
7707 {
7708 lv_value_15_0=(Token)match(input,RULE_STRING,FOLLOW_2); if (state.failed) return current;
7709 if ( state.backtracking==0 ) {
7710
7711 newLeafNode(lv_value_15_0, grammarAccess.getALSBasicRelationTermAccess().getValueSTRINGTerminalRuleCall_7_1_0());
7712
7713 }
7714 if ( state.backtracking==0 ) {
7715
7716 if (current==null) {
7717 current = createModelElement(grammarAccess.getALSBasicRelationTermRule());
7718 }
7719 setWithLastConsumed(
7720 current,
7721 "value",
7722 lv_value_15_0,
7723 "org.eclipse.xtext.common.Terminals.STRING");
7724
7725 }
7726
7727 }
7728
7729
7730 }
7731
7732
7733 }
7734
7735
7736 }
7737 break;
7738 case 9 :
7739 // InternalAlloyLanguage.g:2731:6: (otherlv_16= '(' this_ALSTerm_17= ruleALSTerm otherlv_18= ')' )
7740 {
7741 // InternalAlloyLanguage.g:2731:6: (otherlv_16= '(' this_ALSTerm_17= ruleALSTerm otherlv_18= ')' )
7742 // InternalAlloyLanguage.g:2731:8: otherlv_16= '(' this_ALSTerm_17= ruleALSTerm otherlv_18= ')'
7743 {
7744 otherlv_16=(Token)match(input,61,FOLLOW_12); if (state.failed) return current;
7745 if ( state.backtracking==0 ) {
7746
7747 newLeafNode(otherlv_16, grammarAccess.getALSBasicRelationTermAccess().getLeftParenthesisKeyword_8_0());
7649 7748
7650 } 7749 }
7651 if ( state.backtracking==0 ) { 7750 if ( state.backtracking==0 ) {
7652 7751
7653 newCompositeNode(grammarAccess.getALSBasicRelationTermAccess().getALSTermParserRuleCall_6_1()); 7752 newCompositeNode(grammarAccess.getALSBasicRelationTermAccess().getALSTermParserRuleCall_8_1());
7654 7753
7655 } 7754 }
7656 pushFollow(FOLLOW_34); 7755 pushFollow(FOLLOW_34);
7657 this_ALSTerm_13=ruleALSTerm(); 7756 this_ALSTerm_17=ruleALSTerm();
7658 7757
7659 state._fsp--; 7758 state._fsp--;
7660 if (state.failed) return current; 7759 if (state.failed) return current;
7661 if ( state.backtracking==0 ) { 7760 if ( state.backtracking==0 ) {
7662 7761
7663 current = this_ALSTerm_13; 7762 current = this_ALSTerm_17;
7664 afterParserOrEnumRuleCall(); 7763 afterParserOrEnumRuleCall();
7665 7764
7666 } 7765 }
7667 otherlv_14=(Token)match(input,61,FOLLOW_2); if (state.failed) return current; 7766 otherlv_18=(Token)match(input,62,FOLLOW_2); if (state.failed) return current;
7668 if ( state.backtracking==0 ) { 7767 if ( state.backtracking==0 ) {
7669 7768
7670 newLeafNode(otherlv_14, grammarAccess.getALSBasicRelationTermAccess().getRightParenthesisKeyword_6_2()); 7769 newLeafNode(otherlv_18, grammarAccess.getALSBasicRelationTermAccess().getRightParenthesisKeyword_8_2());
7671 7770
7672 } 7771 }
7673 7772
@@ -7699,7 +7798,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7699 7798
7700 7799
7701 // $ANTLR start "entryRuleALSRunCommand" 7800 // $ANTLR start "entryRuleALSRunCommand"
7702 // InternalAlloyLanguage.g:2720:1: entryRuleALSRunCommand returns [EObject current=null] : iv_ruleALSRunCommand= ruleALSRunCommand EOF ; 7801 // InternalAlloyLanguage.g:2756:1: entryRuleALSRunCommand returns [EObject current=null] : iv_ruleALSRunCommand= ruleALSRunCommand EOF ;
7703 public final EObject entryRuleALSRunCommand() throws RecognitionException { 7802 public final EObject entryRuleALSRunCommand() throws RecognitionException {
7704 EObject current = null; 7803 EObject current = null;
7705 7804
@@ -7707,8 +7806,8 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7707 7806
7708 7807
7709 try { 7808 try {
7710 // InternalAlloyLanguage.g:2721:2: (iv_ruleALSRunCommand= ruleALSRunCommand EOF ) 7809 // InternalAlloyLanguage.g:2757:2: (iv_ruleALSRunCommand= ruleALSRunCommand EOF )
7711 // InternalAlloyLanguage.g:2722:2: iv_ruleALSRunCommand= ruleALSRunCommand EOF 7810 // InternalAlloyLanguage.g:2758:2: iv_ruleALSRunCommand= ruleALSRunCommand EOF
7712 { 7811 {
7713 if ( state.backtracking==0 ) { 7812 if ( state.backtracking==0 ) {
7714 newCompositeNode(grammarAccess.getALSRunCommandRule()); 7813 newCompositeNode(grammarAccess.getALSRunCommandRule());
@@ -7739,7 +7838,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7739 7838
7740 7839
7741 // $ANTLR start "ruleALSRunCommand" 7840 // $ANTLR start "ruleALSRunCommand"
7742 // InternalAlloyLanguage.g:2729:1: ruleALSRunCommand returns [EObject current=null] : ( () otherlv_1= 'run' otherlv_2= '{' otherlv_3= '}' (otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* )? ) ; 7841 // InternalAlloyLanguage.g:2765:1: ruleALSRunCommand returns [EObject current=null] : ( () otherlv_1= 'run' otherlv_2= '{' otherlv_3= '}' (otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* )? ) ;
7743 public final EObject ruleALSRunCommand() throws RecognitionException { 7842 public final EObject ruleALSRunCommand() throws RecognitionException {
7744 EObject current = null; 7843 EObject current = null;
7745 7844
@@ -7756,14 +7855,14 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7756 enterRule(); 7855 enterRule();
7757 7856
7758 try { 7857 try {
7759 // InternalAlloyLanguage.g:2732:28: ( ( () otherlv_1= 'run' otherlv_2= '{' otherlv_3= '}' (otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* )? ) ) 7858 // InternalAlloyLanguage.g:2768:28: ( ( () otherlv_1= 'run' otherlv_2= '{' otherlv_3= '}' (otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* )? ) )
7760 // InternalAlloyLanguage.g:2733:1: ( () otherlv_1= 'run' otherlv_2= '{' otherlv_3= '}' (otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* )? ) 7859 // InternalAlloyLanguage.g:2769:1: ( () otherlv_1= 'run' otherlv_2= '{' otherlv_3= '}' (otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* )? )
7761 { 7860 {
7762 // InternalAlloyLanguage.g:2733:1: ( () otherlv_1= 'run' otherlv_2= '{' otherlv_3= '}' (otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* )? ) 7861 // InternalAlloyLanguage.g:2769:1: ( () otherlv_1= 'run' otherlv_2= '{' otherlv_3= '}' (otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* )? )
7763 // InternalAlloyLanguage.g:2733:2: () otherlv_1= 'run' otherlv_2= '{' otherlv_3= '}' (otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* )? 7862 // InternalAlloyLanguage.g:2769:2: () otherlv_1= 'run' otherlv_2= '{' otherlv_3= '}' (otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* )?
7764 { 7863 {
7765 // InternalAlloyLanguage.g:2733:2: () 7864 // InternalAlloyLanguage.g:2769:2: ()
7766 // InternalAlloyLanguage.g:2734:5: 7865 // InternalAlloyLanguage.g:2770:5:
7767 { 7866 {
7768 if ( state.backtracking==0 ) { 7867 if ( state.backtracking==0 ) {
7769 7868
@@ -7775,7 +7874,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7775 7874
7776 } 7875 }
7777 7876
7778 otherlv_1=(Token)match(input,62,FOLLOW_5); if (state.failed) return current; 7877 otherlv_1=(Token)match(input,63,FOLLOW_5); if (state.failed) return current;
7779 if ( state.backtracking==0 ) { 7878 if ( state.backtracking==0 ) {
7780 7879
7781 newLeafNode(otherlv_1, grammarAccess.getALSRunCommandAccess().getRunKeyword_1()); 7880 newLeafNode(otherlv_1, grammarAccess.getALSRunCommandAccess().getRunKeyword_1());
@@ -7793,28 +7892,28 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7793 newLeafNode(otherlv_3, grammarAccess.getALSRunCommandAccess().getRightCurlyBracketKeyword_3()); 7892 newLeafNode(otherlv_3, grammarAccess.getALSRunCommandAccess().getRightCurlyBracketKeyword_3());
7794 7893
7795 } 7894 }
7796 // InternalAlloyLanguage.g:2751:1: (otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* )? 7895 // InternalAlloyLanguage.g:2787:1: (otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* )?
7797 int alt45=2; 7896 int alt45=2;
7798 int LA45_0 = input.LA(1); 7897 int LA45_0 = input.LA(1);
7799 7898
7800 if ( (LA45_0==63) ) { 7899 if ( (LA45_0==64) ) {
7801 alt45=1; 7900 alt45=1;
7802 } 7901 }
7803 switch (alt45) { 7902 switch (alt45) {
7804 case 1 : 7903 case 1 :
7805 // InternalAlloyLanguage.g:2751:3: otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* 7904 // InternalAlloyLanguage.g:2787:3: otherlv_4= 'for' ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )*
7806 { 7905 {
7807 otherlv_4=(Token)match(input,63,FOLLOW_36); if (state.failed) return current; 7906 otherlv_4=(Token)match(input,64,FOLLOW_36); if (state.failed) return current;
7808 if ( state.backtracking==0 ) { 7907 if ( state.backtracking==0 ) {
7809 7908
7810 newLeafNode(otherlv_4, grammarAccess.getALSRunCommandAccess().getForKeyword_4_0()); 7909 newLeafNode(otherlv_4, grammarAccess.getALSRunCommandAccess().getForKeyword_4_0());
7811 7910
7812 } 7911 }
7813 // InternalAlloyLanguage.g:2755:1: ( (lv_typeScopes_5_0= ruleALSTypeScope ) ) 7912 // InternalAlloyLanguage.g:2791:1: ( (lv_typeScopes_5_0= ruleALSTypeScope ) )
7814 // InternalAlloyLanguage.g:2756:1: (lv_typeScopes_5_0= ruleALSTypeScope ) 7913 // InternalAlloyLanguage.g:2792:1: (lv_typeScopes_5_0= ruleALSTypeScope )
7815 { 7914 {
7816 // InternalAlloyLanguage.g:2756:1: (lv_typeScopes_5_0= ruleALSTypeScope ) 7915 // InternalAlloyLanguage.g:2792:1: (lv_typeScopes_5_0= ruleALSTypeScope )
7817 // InternalAlloyLanguage.g:2757:3: lv_typeScopes_5_0= ruleALSTypeScope 7916 // InternalAlloyLanguage.g:2793:3: lv_typeScopes_5_0= ruleALSTypeScope
7818 { 7917 {
7819 if ( state.backtracking==0 ) { 7918 if ( state.backtracking==0 ) {
7820 7919
@@ -7845,7 +7944,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7845 7944
7846 } 7945 }
7847 7946
7848 // InternalAlloyLanguage.g:2773:2: (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )* 7947 // InternalAlloyLanguage.g:2809:2: (otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) )*
7849 loop44: 7948 loop44:
7850 do { 7949 do {
7851 int alt44=2; 7950 int alt44=2;
@@ -7858,7 +7957,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7858 7957
7859 switch (alt44) { 7958 switch (alt44) {
7860 case 1 : 7959 case 1 :
7861 // InternalAlloyLanguage.g:2773:4: otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) 7960 // InternalAlloyLanguage.g:2809:4: otherlv_6= ',' ( (lv_typeScopes_7_0= ruleALSTypeScope ) )
7862 { 7961 {
7863 otherlv_6=(Token)match(input,13,FOLLOW_36); if (state.failed) return current; 7962 otherlv_6=(Token)match(input,13,FOLLOW_36); if (state.failed) return current;
7864 if ( state.backtracking==0 ) { 7963 if ( state.backtracking==0 ) {
@@ -7866,11 +7965,11 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7866 newLeafNode(otherlv_6, grammarAccess.getALSRunCommandAccess().getCommaKeyword_4_2_0()); 7965 newLeafNode(otherlv_6, grammarAccess.getALSRunCommandAccess().getCommaKeyword_4_2_0());
7867 7966
7868 } 7967 }
7869 // InternalAlloyLanguage.g:2777:1: ( (lv_typeScopes_7_0= ruleALSTypeScope ) ) 7968 // InternalAlloyLanguage.g:2813:1: ( (lv_typeScopes_7_0= ruleALSTypeScope ) )
7870 // InternalAlloyLanguage.g:2778:1: (lv_typeScopes_7_0= ruleALSTypeScope ) 7969 // InternalAlloyLanguage.g:2814:1: (lv_typeScopes_7_0= ruleALSTypeScope )
7871 { 7970 {
7872 // InternalAlloyLanguage.g:2778:1: (lv_typeScopes_7_0= ruleALSTypeScope ) 7971 // InternalAlloyLanguage.g:2814:1: (lv_typeScopes_7_0= ruleALSTypeScope )
7873 // InternalAlloyLanguage.g:2779:3: lv_typeScopes_7_0= ruleALSTypeScope 7972 // InternalAlloyLanguage.g:2815:3: lv_typeScopes_7_0= ruleALSTypeScope
7874 { 7973 {
7875 if ( state.backtracking==0 ) { 7974 if ( state.backtracking==0 ) {
7876 7975
@@ -7939,7 +8038,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7939 8038
7940 8039
7941 // $ANTLR start "entryRuleALSTypeScope" 8040 // $ANTLR start "entryRuleALSTypeScope"
7942 // InternalAlloyLanguage.g:2803:1: entryRuleALSTypeScope returns [EObject current=null] : iv_ruleALSTypeScope= ruleALSTypeScope EOF ; 8041 // InternalAlloyLanguage.g:2839:1: entryRuleALSTypeScope returns [EObject current=null] : iv_ruleALSTypeScope= ruleALSTypeScope EOF ;
7943 public final EObject entryRuleALSTypeScope() throws RecognitionException { 8042 public final EObject entryRuleALSTypeScope() throws RecognitionException {
7944 EObject current = null; 8043 EObject current = null;
7945 8044
@@ -7947,8 +8046,8 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7947 8046
7948 8047
7949 try { 8048 try {
7950 // InternalAlloyLanguage.g:2804:2: (iv_ruleALSTypeScope= ruleALSTypeScope EOF ) 8049 // InternalAlloyLanguage.g:2840:2: (iv_ruleALSTypeScope= ruleALSTypeScope EOF )
7951 // InternalAlloyLanguage.g:2805:2: iv_ruleALSTypeScope= ruleALSTypeScope EOF 8050 // InternalAlloyLanguage.g:2841:2: iv_ruleALSTypeScope= ruleALSTypeScope EOF
7952 { 8051 {
7953 if ( state.backtracking==0 ) { 8052 if ( state.backtracking==0 ) {
7954 newCompositeNode(grammarAccess.getALSTypeScopeRule()); 8053 newCompositeNode(grammarAccess.getALSTypeScopeRule());
@@ -7979,7 +8078,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7979 8078
7980 8079
7981 // $ANTLR start "ruleALSTypeScope" 8080 // $ANTLR start "ruleALSTypeScope"
7982 // InternalAlloyLanguage.g:2812:1: ruleALSTypeScope returns [EObject current=null] : (this_ALSSigScope_0= ruleALSSigScope | this_ALSIntScope_1= ruleALSIntScope ) ; 8081 // InternalAlloyLanguage.g:2848:1: ruleALSTypeScope returns [EObject current=null] : (this_ALSSigScope_0= ruleALSSigScope | this_ALSIntScope_1= ruleALSIntScope | this_ALSStringScope_2= ruleALSStringScope ) ;
7983 public final EObject ruleALSTypeScope() throws RecognitionException { 8082 public final EObject ruleALSTypeScope() throws RecognitionException {
7984 EObject current = null; 8083 EObject current = null;
7985 8084
@@ -7987,19 +8086,46 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
7987 8086
7988 EObject this_ALSIntScope_1 = null; 8087 EObject this_ALSIntScope_1 = null;
7989 8088
8089 EObject this_ALSStringScope_2 = null;
8090
7990 8091
7991 enterRule(); 8092 enterRule();
7992 8093
7993 try { 8094 try {
7994 // InternalAlloyLanguage.g:2815:28: ( (this_ALSSigScope_0= ruleALSSigScope | this_ALSIntScope_1= ruleALSIntScope ) ) 8095 // InternalAlloyLanguage.g:2851:28: ( (this_ALSSigScope_0= ruleALSSigScope | this_ALSIntScope_1= ruleALSIntScope | this_ALSStringScope_2= ruleALSStringScope ) )
7995 // InternalAlloyLanguage.g:2816:1: (this_ALSSigScope_0= ruleALSSigScope | this_ALSIntScope_1= ruleALSIntScope ) 8096 // InternalAlloyLanguage.g:2852:1: (this_ALSSigScope_0= ruleALSSigScope | this_ALSIntScope_1= ruleALSIntScope | this_ALSStringScope_2= ruleALSStringScope )
7996 { 8097 {
7997 // InternalAlloyLanguage.g:2816:1: (this_ALSSigScope_0= ruleALSSigScope | this_ALSIntScope_1= ruleALSIntScope ) 8098 // InternalAlloyLanguage.g:2852:1: (this_ALSSigScope_0= ruleALSSigScope | this_ALSIntScope_1= ruleALSIntScope | this_ALSStringScope_2= ruleALSStringScope )
7998 int alt46=2; 8099 int alt46=3;
7999 int LA46_0 = input.LA(1); 8100 int LA46_0 = input.LA(1);
8000 8101
8001 if ( (LA46_0==64) ) { 8102 if ( (LA46_0==65) ) {
8002 alt46=1; 8103 int LA46_1 = input.LA(2);
8104
8105 if ( (LA46_1==RULE_INT) ) {
8106 int LA46_3 = input.LA(3);
8107
8108 if ( (LA46_3==RULE_ID) ) {
8109 alt46=1;
8110 }
8111 else if ( (LA46_3==60) ) {
8112 alt46=3;
8113 }
8114 else {
8115 if (state.backtracking>0) {state.failed=true; return current;}
8116 NoViableAltException nvae =
8117 new NoViableAltException("", 46, 3, input);
8118
8119 throw nvae;
8120 }
8121 }
8122 else {
8123 if (state.backtracking>0) {state.failed=true; return current;}
8124 NoViableAltException nvae =
8125 new NoViableAltException("", 46, 1, input);
8126
8127 throw nvae;
8128 }
8003 } 8129 }
8004 else if ( (LA46_0==RULE_INT) ) { 8130 else if ( (LA46_0==RULE_INT) ) {
8005 int LA46_2 = input.LA(2); 8131 int LA46_2 = input.LA(2);
@@ -8027,7 +8153,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8027 } 8153 }
8028 switch (alt46) { 8154 switch (alt46) {
8029 case 1 : 8155 case 1 :
8030 // InternalAlloyLanguage.g:2817:5: this_ALSSigScope_0= ruleALSSigScope 8156 // InternalAlloyLanguage.g:2853:5: this_ALSSigScope_0= ruleALSSigScope
8031 { 8157 {
8032 if ( state.backtracking==0 ) { 8158 if ( state.backtracking==0 ) {
8033 8159
@@ -8049,7 +8175,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8049 } 8175 }
8050 break; 8176 break;
8051 case 2 : 8177 case 2 :
8052 // InternalAlloyLanguage.g:2827:5: this_ALSIntScope_1= ruleALSIntScope 8178 // InternalAlloyLanguage.g:2863:5: this_ALSIntScope_1= ruleALSIntScope
8053 { 8179 {
8054 if ( state.backtracking==0 ) { 8180 if ( state.backtracking==0 ) {
8055 8181
@@ -8070,6 +8196,28 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8070 8196
8071 } 8197 }
8072 break; 8198 break;
8199 case 3 :
8200 // InternalAlloyLanguage.g:2873:5: this_ALSStringScope_2= ruleALSStringScope
8201 {
8202 if ( state.backtracking==0 ) {
8203
8204 newCompositeNode(grammarAccess.getALSTypeScopeAccess().getALSStringScopeParserRuleCall_2());
8205
8206 }
8207 pushFollow(FOLLOW_2);
8208 this_ALSStringScope_2=ruleALSStringScope();
8209
8210 state._fsp--;
8211 if (state.failed) return current;
8212 if ( state.backtracking==0 ) {
8213
8214 current = this_ALSStringScope_2;
8215 afterParserOrEnumRuleCall();
8216
8217 }
8218
8219 }
8220 break;
8073 8221
8074 } 8222 }
8075 8223
@@ -8093,7 +8241,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8093 8241
8094 8242
8095 // $ANTLR start "entryRuleALSSigScope" 8243 // $ANTLR start "entryRuleALSSigScope"
8096 // InternalAlloyLanguage.g:2843:1: entryRuleALSSigScope returns [EObject current=null] : iv_ruleALSSigScope= ruleALSSigScope EOF ; 8244 // InternalAlloyLanguage.g:2889:1: entryRuleALSSigScope returns [EObject current=null] : iv_ruleALSSigScope= ruleALSSigScope EOF ;
8097 public final EObject entryRuleALSSigScope() throws RecognitionException { 8245 public final EObject entryRuleALSSigScope() throws RecognitionException {
8098 EObject current = null; 8246 EObject current = null;
8099 8247
@@ -8101,8 +8249,8 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8101 8249
8102 8250
8103 try { 8251 try {
8104 // InternalAlloyLanguage.g:2844:2: (iv_ruleALSSigScope= ruleALSSigScope EOF ) 8252 // InternalAlloyLanguage.g:2890:2: (iv_ruleALSSigScope= ruleALSSigScope EOF )
8105 // InternalAlloyLanguage.g:2845:2: iv_ruleALSSigScope= ruleALSSigScope EOF 8253 // InternalAlloyLanguage.g:2891:2: iv_ruleALSSigScope= ruleALSSigScope EOF
8106 { 8254 {
8107 if ( state.backtracking==0 ) { 8255 if ( state.backtracking==0 ) {
8108 newCompositeNode(grammarAccess.getALSSigScopeRule()); 8256 newCompositeNode(grammarAccess.getALSSigScopeRule());
@@ -8133,7 +8281,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8133 8281
8134 8282
8135 // $ANTLR start "ruleALSSigScope" 8283 // $ANTLR start "ruleALSSigScope"
8136 // InternalAlloyLanguage.g:2852:1: ruleALSSigScope returns [EObject current=null] : ( ( (lv_exactly_0_0= 'exactly' ) )? ( (lv_number_1_0= RULE_INT ) ) ( (otherlv_2= RULE_ID ) ) ) ; 8284 // InternalAlloyLanguage.g:2898:1: ruleALSSigScope returns [EObject current=null] : ( ( (lv_exactly_0_0= 'exactly' ) )? ( (lv_number_1_0= RULE_INT ) ) ( (otherlv_2= RULE_ID ) ) ) ;
8137 public final EObject ruleALSSigScope() throws RecognitionException { 8285 public final EObject ruleALSSigScope() throws RecognitionException {
8138 EObject current = null; 8286 EObject current = null;
8139 8287
@@ -8144,27 +8292,27 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8144 enterRule(); 8292 enterRule();
8145 8293
8146 try { 8294 try {
8147 // InternalAlloyLanguage.g:2855:28: ( ( ( (lv_exactly_0_0= 'exactly' ) )? ( (lv_number_1_0= RULE_INT ) ) ( (otherlv_2= RULE_ID ) ) ) ) 8295 // InternalAlloyLanguage.g:2901:28: ( ( ( (lv_exactly_0_0= 'exactly' ) )? ( (lv_number_1_0= RULE_INT ) ) ( (otherlv_2= RULE_ID ) ) ) )
8148 // InternalAlloyLanguage.g:2856:1: ( ( (lv_exactly_0_0= 'exactly' ) )? ( (lv_number_1_0= RULE_INT ) ) ( (otherlv_2= RULE_ID ) ) ) 8296 // InternalAlloyLanguage.g:2902:1: ( ( (lv_exactly_0_0= 'exactly' ) )? ( (lv_number_1_0= RULE_INT ) ) ( (otherlv_2= RULE_ID ) ) )
8149 { 8297 {
8150 // InternalAlloyLanguage.g:2856:1: ( ( (lv_exactly_0_0= 'exactly' ) )? ( (lv_number_1_0= RULE_INT ) ) ( (otherlv_2= RULE_ID ) ) ) 8298 // InternalAlloyLanguage.g:2902:1: ( ( (lv_exactly_0_0= 'exactly' ) )? ( (lv_number_1_0= RULE_INT ) ) ( (otherlv_2= RULE_ID ) ) )
8151 // InternalAlloyLanguage.g:2856:2: ( (lv_exactly_0_0= 'exactly' ) )? ( (lv_number_1_0= RULE_INT ) ) ( (otherlv_2= RULE_ID ) ) 8299 // InternalAlloyLanguage.g:2902:2: ( (lv_exactly_0_0= 'exactly' ) )? ( (lv_number_1_0= RULE_INT ) ) ( (otherlv_2= RULE_ID ) )
8152 { 8300 {
8153 // InternalAlloyLanguage.g:2856:2: ( (lv_exactly_0_0= 'exactly' ) )? 8301 // InternalAlloyLanguage.g:2902:2: ( (lv_exactly_0_0= 'exactly' ) )?
8154 int alt47=2; 8302 int alt47=2;
8155 int LA47_0 = input.LA(1); 8303 int LA47_0 = input.LA(1);
8156 8304
8157 if ( (LA47_0==64) ) { 8305 if ( (LA47_0==65) ) {
8158 alt47=1; 8306 alt47=1;
8159 } 8307 }
8160 switch (alt47) { 8308 switch (alt47) {
8161 case 1 : 8309 case 1 :
8162 // InternalAlloyLanguage.g:2857:1: (lv_exactly_0_0= 'exactly' ) 8310 // InternalAlloyLanguage.g:2903:1: (lv_exactly_0_0= 'exactly' )
8163 { 8311 {
8164 // InternalAlloyLanguage.g:2857:1: (lv_exactly_0_0= 'exactly' ) 8312 // InternalAlloyLanguage.g:2903:1: (lv_exactly_0_0= 'exactly' )
8165 // InternalAlloyLanguage.g:2858:3: lv_exactly_0_0= 'exactly' 8313 // InternalAlloyLanguage.g:2904:3: lv_exactly_0_0= 'exactly'
8166 { 8314 {
8167 lv_exactly_0_0=(Token)match(input,64,FOLLOW_38); if (state.failed) return current; 8315 lv_exactly_0_0=(Token)match(input,65,FOLLOW_38); if (state.failed) return current;
8168 if ( state.backtracking==0 ) { 8316 if ( state.backtracking==0 ) {
8169 8317
8170 newLeafNode(lv_exactly_0_0, grammarAccess.getALSSigScopeAccess().getExactlyExactlyKeyword_0_0()); 8318 newLeafNode(lv_exactly_0_0, grammarAccess.getALSSigScopeAccess().getExactlyExactlyKeyword_0_0());
@@ -8187,11 +8335,11 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8187 8335
8188 } 8336 }
8189 8337
8190 // InternalAlloyLanguage.g:2871:3: ( (lv_number_1_0= RULE_INT ) ) 8338 // InternalAlloyLanguage.g:2917:3: ( (lv_number_1_0= RULE_INT ) )
8191 // InternalAlloyLanguage.g:2872:1: (lv_number_1_0= RULE_INT ) 8339 // InternalAlloyLanguage.g:2918:1: (lv_number_1_0= RULE_INT )
8192 { 8340 {
8193 // InternalAlloyLanguage.g:2872:1: (lv_number_1_0= RULE_INT ) 8341 // InternalAlloyLanguage.g:2918:1: (lv_number_1_0= RULE_INT )
8194 // InternalAlloyLanguage.g:2873:3: lv_number_1_0= RULE_INT 8342 // InternalAlloyLanguage.g:2919:3: lv_number_1_0= RULE_INT
8195 { 8343 {
8196 lv_number_1_0=(Token)match(input,RULE_INT,FOLLOW_4); if (state.failed) return current; 8344 lv_number_1_0=(Token)match(input,RULE_INT,FOLLOW_4); if (state.failed) return current;
8197 if ( state.backtracking==0 ) { 8345 if ( state.backtracking==0 ) {
@@ -8217,11 +8365,11 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8217 8365
8218 } 8366 }
8219 8367
8220 // InternalAlloyLanguage.g:2889:2: ( (otherlv_2= RULE_ID ) ) 8368 // InternalAlloyLanguage.g:2935:2: ( (otherlv_2= RULE_ID ) )
8221 // InternalAlloyLanguage.g:2890:1: (otherlv_2= RULE_ID ) 8369 // InternalAlloyLanguage.g:2936:1: (otherlv_2= RULE_ID )
8222 { 8370 {
8223 // InternalAlloyLanguage.g:2890:1: (otherlv_2= RULE_ID ) 8371 // InternalAlloyLanguage.g:2936:1: (otherlv_2= RULE_ID )
8224 // InternalAlloyLanguage.g:2891:3: otherlv_2= RULE_ID 8372 // InternalAlloyLanguage.g:2937:3: otherlv_2= RULE_ID
8225 { 8373 {
8226 if ( state.backtracking==0 ) { 8374 if ( state.backtracking==0 ) {
8227 8375
@@ -8265,7 +8413,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8265 8413
8266 8414
8267 // $ANTLR start "entryRuleALSIntScope" 8415 // $ANTLR start "entryRuleALSIntScope"
8268 // InternalAlloyLanguage.g:2910:1: entryRuleALSIntScope returns [EObject current=null] : iv_ruleALSIntScope= ruleALSIntScope EOF ; 8416 // InternalAlloyLanguage.g:2956:1: entryRuleALSIntScope returns [EObject current=null] : iv_ruleALSIntScope= ruleALSIntScope EOF ;
8269 public final EObject entryRuleALSIntScope() throws RecognitionException { 8417 public final EObject entryRuleALSIntScope() throws RecognitionException {
8270 EObject current = null; 8418 EObject current = null;
8271 8419
@@ -8273,8 +8421,8 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8273 8421
8274 8422
8275 try { 8423 try {
8276 // InternalAlloyLanguage.g:2911:2: (iv_ruleALSIntScope= ruleALSIntScope EOF ) 8424 // InternalAlloyLanguage.g:2957:2: (iv_ruleALSIntScope= ruleALSIntScope EOF )
8277 // InternalAlloyLanguage.g:2912:2: iv_ruleALSIntScope= ruleALSIntScope EOF 8425 // InternalAlloyLanguage.g:2958:2: iv_ruleALSIntScope= ruleALSIntScope EOF
8278 { 8426 {
8279 if ( state.backtracking==0 ) { 8427 if ( state.backtracking==0 ) {
8280 newCompositeNode(grammarAccess.getALSIntScopeRule()); 8428 newCompositeNode(grammarAccess.getALSIntScopeRule());
@@ -8305,7 +8453,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8305 8453
8306 8454
8307 // $ANTLR start "ruleALSIntScope" 8455 // $ANTLR start "ruleALSIntScope"
8308 // InternalAlloyLanguage.g:2919:1: ruleALSIntScope returns [EObject current=null] : ( ( (lv_number_0_0= RULE_INT ) ) otherlv_1= 'Int' ) ; 8456 // InternalAlloyLanguage.g:2965:1: ruleALSIntScope returns [EObject current=null] : ( ( (lv_number_0_0= RULE_INT ) ) otherlv_1= 'Int' ) ;
8309 public final EObject ruleALSIntScope() throws RecognitionException { 8457 public final EObject ruleALSIntScope() throws RecognitionException {
8310 EObject current = null; 8458 EObject current = null;
8311 8459
@@ -8315,17 +8463,17 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8315 enterRule(); 8463 enterRule();
8316 8464
8317 try { 8465 try {
8318 // InternalAlloyLanguage.g:2922:28: ( ( ( (lv_number_0_0= RULE_INT ) ) otherlv_1= 'Int' ) ) 8466 // InternalAlloyLanguage.g:2968:28: ( ( ( (lv_number_0_0= RULE_INT ) ) otherlv_1= 'Int' ) )
8319 // InternalAlloyLanguage.g:2923:1: ( ( (lv_number_0_0= RULE_INT ) ) otherlv_1= 'Int' ) 8467 // InternalAlloyLanguage.g:2969:1: ( ( (lv_number_0_0= RULE_INT ) ) otherlv_1= 'Int' )
8320 { 8468 {
8321 // InternalAlloyLanguage.g:2923:1: ( ( (lv_number_0_0= RULE_INT ) ) otherlv_1= 'Int' ) 8469 // InternalAlloyLanguage.g:2969:1: ( ( (lv_number_0_0= RULE_INT ) ) otherlv_1= 'Int' )
8322 // InternalAlloyLanguage.g:2923:2: ( (lv_number_0_0= RULE_INT ) ) otherlv_1= 'Int' 8470 // InternalAlloyLanguage.g:2969:2: ( (lv_number_0_0= RULE_INT ) ) otherlv_1= 'Int'
8323 { 8471 {
8324 // InternalAlloyLanguage.g:2923:2: ( (lv_number_0_0= RULE_INT ) ) 8472 // InternalAlloyLanguage.g:2969:2: ( (lv_number_0_0= RULE_INT ) )
8325 // InternalAlloyLanguage.g:2924:1: (lv_number_0_0= RULE_INT ) 8473 // InternalAlloyLanguage.g:2970:1: (lv_number_0_0= RULE_INT )
8326 { 8474 {
8327 // InternalAlloyLanguage.g:2924:1: (lv_number_0_0= RULE_INT ) 8475 // InternalAlloyLanguage.g:2970:1: (lv_number_0_0= RULE_INT )
8328 // InternalAlloyLanguage.g:2925:3: lv_number_0_0= RULE_INT 8476 // InternalAlloyLanguage.g:2971:3: lv_number_0_0= RULE_INT
8329 { 8477 {
8330 lv_number_0_0=(Token)match(input,RULE_INT,FOLLOW_39); if (state.failed) return current; 8478 lv_number_0_0=(Token)match(input,RULE_INT,FOLLOW_39); if (state.failed) return current;
8331 if ( state.backtracking==0 ) { 8479 if ( state.backtracking==0 ) {
@@ -8379,8 +8527,130 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8379 // $ANTLR end "ruleALSIntScope" 8527 // $ANTLR end "ruleALSIntScope"
8380 8528
8381 8529
8530 // $ANTLR start "entryRuleALSStringScope"
8531 // InternalAlloyLanguage.g:2999:1: entryRuleALSStringScope returns [EObject current=null] : iv_ruleALSStringScope= ruleALSStringScope EOF ;
8532 public final EObject entryRuleALSStringScope() throws RecognitionException {
8533 EObject current = null;
8534
8535 EObject iv_ruleALSStringScope = null;
8536
8537
8538 try {
8539 // InternalAlloyLanguage.g:3000:2: (iv_ruleALSStringScope= ruleALSStringScope EOF )
8540 // InternalAlloyLanguage.g:3001:2: iv_ruleALSStringScope= ruleALSStringScope EOF
8541 {
8542 if ( state.backtracking==0 ) {
8543 newCompositeNode(grammarAccess.getALSStringScopeRule());
8544 }
8545 pushFollow(FOLLOW_1);
8546 iv_ruleALSStringScope=ruleALSStringScope();
8547
8548 state._fsp--;
8549 if (state.failed) return current;
8550 if ( state.backtracking==0 ) {
8551 current =iv_ruleALSStringScope;
8552 }
8553 match(input,EOF,FOLLOW_2); if (state.failed) return current;
8554
8555 }
8556
8557 }
8558
8559 catch (RecognitionException re) {
8560 recover(input,re);
8561 appendSkippedTokens();
8562 }
8563 finally {
8564 }
8565 return current;
8566 }
8567 // $ANTLR end "entryRuleALSStringScope"
8568
8569
8570 // $ANTLR start "ruleALSStringScope"
8571 // InternalAlloyLanguage.g:3008:1: ruleALSStringScope returns [EObject current=null] : (otherlv_0= 'exactly' ( (lv_number_1_0= RULE_INT ) ) otherlv_2= 'String' ) ;
8572 public final EObject ruleALSStringScope() throws RecognitionException {
8573 EObject current = null;
8574
8575 Token otherlv_0=null;
8576 Token lv_number_1_0=null;
8577 Token otherlv_2=null;
8578
8579 enterRule();
8580
8581 try {
8582 // InternalAlloyLanguage.g:3011:28: ( (otherlv_0= 'exactly' ( (lv_number_1_0= RULE_INT ) ) otherlv_2= 'String' ) )
8583 // InternalAlloyLanguage.g:3012:1: (otherlv_0= 'exactly' ( (lv_number_1_0= RULE_INT ) ) otherlv_2= 'String' )
8584 {
8585 // InternalAlloyLanguage.g:3012:1: (otherlv_0= 'exactly' ( (lv_number_1_0= RULE_INT ) ) otherlv_2= 'String' )
8586 // InternalAlloyLanguage.g:3012:3: otherlv_0= 'exactly' ( (lv_number_1_0= RULE_INT ) ) otherlv_2= 'String'
8587 {
8588 otherlv_0=(Token)match(input,65,FOLLOW_38); if (state.failed) return current;
8589 if ( state.backtracking==0 ) {
8590
8591 newLeafNode(otherlv_0, grammarAccess.getALSStringScopeAccess().getExactlyKeyword_0());
8592
8593 }
8594 // InternalAlloyLanguage.g:3016:1: ( (lv_number_1_0= RULE_INT ) )
8595 // InternalAlloyLanguage.g:3017:1: (lv_number_1_0= RULE_INT )
8596 {
8597 // InternalAlloyLanguage.g:3017:1: (lv_number_1_0= RULE_INT )
8598 // InternalAlloyLanguage.g:3018:3: lv_number_1_0= RULE_INT
8599 {
8600 lv_number_1_0=(Token)match(input,RULE_INT,FOLLOW_40); if (state.failed) return current;
8601 if ( state.backtracking==0 ) {
8602
8603 newLeafNode(lv_number_1_0, grammarAccess.getALSStringScopeAccess().getNumberINTTerminalRuleCall_1_0());
8604
8605 }
8606 if ( state.backtracking==0 ) {
8607
8608 if (current==null) {
8609 current = createModelElement(grammarAccess.getALSStringScopeRule());
8610 }
8611 setWithLastConsumed(
8612 current,
8613 "number",
8614 lv_number_1_0,
8615 "org.eclipse.xtext.common.Terminals.INT");
8616
8617 }
8618
8619 }
8620
8621
8622 }
8623
8624 otherlv_2=(Token)match(input,60,FOLLOW_2); if (state.failed) return current;
8625 if ( state.backtracking==0 ) {
8626
8627 newLeafNode(otherlv_2, grammarAccess.getALSStringScopeAccess().getStringKeyword_2());
8628
8629 }
8630
8631 }
8632
8633
8634 }
8635
8636 if ( state.backtracking==0 ) {
8637 leaveRule();
8638 }
8639 }
8640
8641 catch (RecognitionException re) {
8642 recover(input,re);
8643 appendSkippedTokens();
8644 }
8645 finally {
8646 }
8647 return current;
8648 }
8649 // $ANTLR end "ruleALSStringScope"
8650
8651
8382 // $ANTLR start "ruleALSMultiplicity" 8652 // $ANTLR start "ruleALSMultiplicity"
8383 // InternalAlloyLanguage.g:2953:1: ruleALSMultiplicity returns [Enumerator current=null] : ( (enumLiteral_0= 'all' ) | (enumLiteral_1= 'no' ) | (enumLiteral_2= 'some' ) | (enumLiteral_3= 'lone' ) | (enumLiteral_4= 'one' ) | (enumLiteral_5= 'set' ) ) ; 8653 // InternalAlloyLanguage.g:3046:1: ruleALSMultiplicity returns [Enumerator current=null] : ( (enumLiteral_0= 'all' ) | (enumLiteral_1= 'no' ) | (enumLiteral_2= 'some' ) | (enumLiteral_3= 'lone' ) | (enumLiteral_4= 'one' ) | (enumLiteral_5= 'set' ) ) ;
8384 public final Enumerator ruleALSMultiplicity() throws RecognitionException { 8654 public final Enumerator ruleALSMultiplicity() throws RecognitionException {
8385 Enumerator current = null; 8655 Enumerator current = null;
8386 8656
@@ -8393,38 +8663,38 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8393 8663
8394 enterRule(); 8664 enterRule();
8395 try { 8665 try {
8396 // InternalAlloyLanguage.g:2955:28: ( ( (enumLiteral_0= 'all' ) | (enumLiteral_1= 'no' ) | (enumLiteral_2= 'some' ) | (enumLiteral_3= 'lone' ) | (enumLiteral_4= 'one' ) | (enumLiteral_5= 'set' ) ) ) 8666 // InternalAlloyLanguage.g:3048:28: ( ( (enumLiteral_0= 'all' ) | (enumLiteral_1= 'no' ) | (enumLiteral_2= 'some' ) | (enumLiteral_3= 'lone' ) | (enumLiteral_4= 'one' ) | (enumLiteral_5= 'set' ) ) )
8397 // InternalAlloyLanguage.g:2956:1: ( (enumLiteral_0= 'all' ) | (enumLiteral_1= 'no' ) | (enumLiteral_2= 'some' ) | (enumLiteral_3= 'lone' ) | (enumLiteral_4= 'one' ) | (enumLiteral_5= 'set' ) ) 8667 // InternalAlloyLanguage.g:3049:1: ( (enumLiteral_0= 'all' ) | (enumLiteral_1= 'no' ) | (enumLiteral_2= 'some' ) | (enumLiteral_3= 'lone' ) | (enumLiteral_4= 'one' ) | (enumLiteral_5= 'set' ) )
8398 { 8668 {
8399 // InternalAlloyLanguage.g:2956:1: ( (enumLiteral_0= 'all' ) | (enumLiteral_1= 'no' ) | (enumLiteral_2= 'some' ) | (enumLiteral_3= 'lone' ) | (enumLiteral_4= 'one' ) | (enumLiteral_5= 'set' ) ) 8669 // InternalAlloyLanguage.g:3049:1: ( (enumLiteral_0= 'all' ) | (enumLiteral_1= 'no' ) | (enumLiteral_2= 'some' ) | (enumLiteral_3= 'lone' ) | (enumLiteral_4= 'one' ) | (enumLiteral_5= 'set' ) )
8400 int alt48=6; 8670 int alt48=6;
8401 switch ( input.LA(1) ) { 8671 switch ( input.LA(1) ) {
8402 case 65: 8672 case 66:
8403 { 8673 {
8404 alt48=1; 8674 alt48=1;
8405 } 8675 }
8406 break; 8676 break;
8407 case 66: 8677 case 67:
8408 { 8678 {
8409 alt48=2; 8679 alt48=2;
8410 } 8680 }
8411 break; 8681 break;
8412 case 67: 8682 case 68:
8413 { 8683 {
8414 alt48=3; 8684 alt48=3;
8415 } 8685 }
8416 break; 8686 break;
8417 case 68: 8687 case 69:
8418 { 8688 {
8419 alt48=4; 8689 alt48=4;
8420 } 8690 }
8421 break; 8691 break;
8422 case 69: 8692 case 70:
8423 { 8693 {
8424 alt48=5; 8694 alt48=5;
8425 } 8695 }
8426 break; 8696 break;
8427 case 70: 8697 case 71:
8428 { 8698 {
8429 alt48=6; 8699 alt48=6;
8430 } 8700 }
@@ -8439,12 +8709,12 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8439 8709
8440 switch (alt48) { 8710 switch (alt48) {
8441 case 1 : 8711 case 1 :
8442 // InternalAlloyLanguage.g:2956:2: (enumLiteral_0= 'all' ) 8712 // InternalAlloyLanguage.g:3049:2: (enumLiteral_0= 'all' )
8443 { 8713 {
8444 // InternalAlloyLanguage.g:2956:2: (enumLiteral_0= 'all' ) 8714 // InternalAlloyLanguage.g:3049:2: (enumLiteral_0= 'all' )
8445 // InternalAlloyLanguage.g:2956:4: enumLiteral_0= 'all' 8715 // InternalAlloyLanguage.g:3049:4: enumLiteral_0= 'all'
8446 { 8716 {
8447 enumLiteral_0=(Token)match(input,65,FOLLOW_2); if (state.failed) return current; 8717 enumLiteral_0=(Token)match(input,66,FOLLOW_2); if (state.failed) return current;
8448 if ( state.backtracking==0 ) { 8718 if ( state.backtracking==0 ) {
8449 8719
8450 current = grammarAccess.getALSMultiplicityAccess().getAllEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); 8720 current = grammarAccess.getALSMultiplicityAccess().getAllEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
@@ -8458,12 +8728,12 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8458 } 8728 }
8459 break; 8729 break;
8460 case 2 : 8730 case 2 :
8461 // InternalAlloyLanguage.g:2962:6: (enumLiteral_1= 'no' ) 8731 // InternalAlloyLanguage.g:3055:6: (enumLiteral_1= 'no' )
8462 { 8732 {
8463 // InternalAlloyLanguage.g:2962:6: (enumLiteral_1= 'no' ) 8733 // InternalAlloyLanguage.g:3055:6: (enumLiteral_1= 'no' )
8464 // InternalAlloyLanguage.g:2962:8: enumLiteral_1= 'no' 8734 // InternalAlloyLanguage.g:3055:8: enumLiteral_1= 'no'
8465 { 8735 {
8466 enumLiteral_1=(Token)match(input,66,FOLLOW_2); if (state.failed) return current; 8736 enumLiteral_1=(Token)match(input,67,FOLLOW_2); if (state.failed) return current;
8467 if ( state.backtracking==0 ) { 8737 if ( state.backtracking==0 ) {
8468 8738
8469 current = grammarAccess.getALSMultiplicityAccess().getNoEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); 8739 current = grammarAccess.getALSMultiplicityAccess().getNoEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
@@ -8477,12 +8747,12 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8477 } 8747 }
8478 break; 8748 break;
8479 case 3 : 8749 case 3 :
8480 // InternalAlloyLanguage.g:2968:6: (enumLiteral_2= 'some' ) 8750 // InternalAlloyLanguage.g:3061:6: (enumLiteral_2= 'some' )
8481 { 8751 {
8482 // InternalAlloyLanguage.g:2968:6: (enumLiteral_2= 'some' ) 8752 // InternalAlloyLanguage.g:3061:6: (enumLiteral_2= 'some' )
8483 // InternalAlloyLanguage.g:2968:8: enumLiteral_2= 'some' 8753 // InternalAlloyLanguage.g:3061:8: enumLiteral_2= 'some'
8484 { 8754 {
8485 enumLiteral_2=(Token)match(input,67,FOLLOW_2); if (state.failed) return current; 8755 enumLiteral_2=(Token)match(input,68,FOLLOW_2); if (state.failed) return current;
8486 if ( state.backtracking==0 ) { 8756 if ( state.backtracking==0 ) {
8487 8757
8488 current = grammarAccess.getALSMultiplicityAccess().getSomeEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); 8758 current = grammarAccess.getALSMultiplicityAccess().getSomeEnumLiteralDeclaration_2().getEnumLiteral().getInstance();
@@ -8496,12 +8766,12 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8496 } 8766 }
8497 break; 8767 break;
8498 case 4 : 8768 case 4 :
8499 // InternalAlloyLanguage.g:2974:6: (enumLiteral_3= 'lone' ) 8769 // InternalAlloyLanguage.g:3067:6: (enumLiteral_3= 'lone' )
8500 { 8770 {
8501 // InternalAlloyLanguage.g:2974:6: (enumLiteral_3= 'lone' ) 8771 // InternalAlloyLanguage.g:3067:6: (enumLiteral_3= 'lone' )
8502 // InternalAlloyLanguage.g:2974:8: enumLiteral_3= 'lone' 8772 // InternalAlloyLanguage.g:3067:8: enumLiteral_3= 'lone'
8503 { 8773 {
8504 enumLiteral_3=(Token)match(input,68,FOLLOW_2); if (state.failed) return current; 8774 enumLiteral_3=(Token)match(input,69,FOLLOW_2); if (state.failed) return current;
8505 if ( state.backtracking==0 ) { 8775 if ( state.backtracking==0 ) {
8506 8776
8507 current = grammarAccess.getALSMultiplicityAccess().getLoneEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); 8777 current = grammarAccess.getALSMultiplicityAccess().getLoneEnumLiteralDeclaration_3().getEnumLiteral().getInstance();
@@ -8515,12 +8785,12 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8515 } 8785 }
8516 break; 8786 break;
8517 case 5 : 8787 case 5 :
8518 // InternalAlloyLanguage.g:2980:6: (enumLiteral_4= 'one' ) 8788 // InternalAlloyLanguage.g:3073:6: (enumLiteral_4= 'one' )
8519 { 8789 {
8520 // InternalAlloyLanguage.g:2980:6: (enumLiteral_4= 'one' ) 8790 // InternalAlloyLanguage.g:3073:6: (enumLiteral_4= 'one' )
8521 // InternalAlloyLanguage.g:2980:8: enumLiteral_4= 'one' 8791 // InternalAlloyLanguage.g:3073:8: enumLiteral_4= 'one'
8522 { 8792 {
8523 enumLiteral_4=(Token)match(input,69,FOLLOW_2); if (state.failed) return current; 8793 enumLiteral_4=(Token)match(input,70,FOLLOW_2); if (state.failed) return current;
8524 if ( state.backtracking==0 ) { 8794 if ( state.backtracking==0 ) {
8525 8795
8526 current = grammarAccess.getALSMultiplicityAccess().getOneEnumLiteralDeclaration_4().getEnumLiteral().getInstance(); 8796 current = grammarAccess.getALSMultiplicityAccess().getOneEnumLiteralDeclaration_4().getEnumLiteral().getInstance();
@@ -8534,12 +8804,12 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8534 } 8804 }
8535 break; 8805 break;
8536 case 6 : 8806 case 6 :
8537 // InternalAlloyLanguage.g:2986:6: (enumLiteral_5= 'set' ) 8807 // InternalAlloyLanguage.g:3079:6: (enumLiteral_5= 'set' )
8538 { 8808 {
8539 // InternalAlloyLanguage.g:2986:6: (enumLiteral_5= 'set' ) 8809 // InternalAlloyLanguage.g:3079:6: (enumLiteral_5= 'set' )
8540 // InternalAlloyLanguage.g:2986:8: enumLiteral_5= 'set' 8810 // InternalAlloyLanguage.g:3079:8: enumLiteral_5= 'set'
8541 { 8811 {
8542 enumLiteral_5=(Token)match(input,70,FOLLOW_2); if (state.failed) return current; 8812 enumLiteral_5=(Token)match(input,71,FOLLOW_2); if (state.failed) return current;
8543 if ( state.backtracking==0 ) { 8813 if ( state.backtracking==0 ) {
8544 8814
8545 current = grammarAccess.getALSMultiplicityAccess().getSetEnumLiteralDeclaration_5().getEnumLiteral().getInstance(); 8815 current = grammarAccess.getALSMultiplicityAccess().getSetEnumLiteralDeclaration_5().getEnumLiteral().getInstance();
@@ -8575,7 +8845,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8575 8845
8576 8846
8577 // $ANTLR start "ruleALSNumericOperator" 8847 // $ANTLR start "ruleALSNumericOperator"
8578 // InternalAlloyLanguage.g:2996:1: ruleALSNumericOperator returns [Enumerator current=null] : ( (enumLiteral_0= 'plus' ) | (enumLiteral_1= 'sub' ) | (enumLiteral_2= 'mul' ) | (enumLiteral_3= 'rem' ) | (enumLiteral_4= 'div' ) ) ; 8848 // InternalAlloyLanguage.g:3089:1: ruleALSNumericOperator returns [Enumerator current=null] : ( (enumLiteral_0= 'plus' ) | (enumLiteral_1= 'sub' ) | (enumLiteral_2= 'mul' ) | (enumLiteral_3= 'rem' ) | (enumLiteral_4= 'div' ) ) ;
8579 public final Enumerator ruleALSNumericOperator() throws RecognitionException { 8849 public final Enumerator ruleALSNumericOperator() throws RecognitionException {
8580 Enumerator current = null; 8850 Enumerator current = null;
8581 8851
@@ -8587,33 +8857,33 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8587 8857
8588 enterRule(); 8858 enterRule();
8589 try { 8859 try {
8590 // InternalAlloyLanguage.g:2998:28: ( ( (enumLiteral_0= 'plus' ) | (enumLiteral_1= 'sub' ) | (enumLiteral_2= 'mul' ) | (enumLiteral_3= 'rem' ) | (enumLiteral_4= 'div' ) ) ) 8860 // InternalAlloyLanguage.g:3091:28: ( ( (enumLiteral_0= 'plus' ) | (enumLiteral_1= 'sub' ) | (enumLiteral_2= 'mul' ) | (enumLiteral_3= 'rem' ) | (enumLiteral_4= 'div' ) ) )
8591 // InternalAlloyLanguage.g:2999:1: ( (enumLiteral_0= 'plus' ) | (enumLiteral_1= 'sub' ) | (enumLiteral_2= 'mul' ) | (enumLiteral_3= 'rem' ) | (enumLiteral_4= 'div' ) ) 8861 // InternalAlloyLanguage.g:3092:1: ( (enumLiteral_0= 'plus' ) | (enumLiteral_1= 'sub' ) | (enumLiteral_2= 'mul' ) | (enumLiteral_3= 'rem' ) | (enumLiteral_4= 'div' ) )
8592 { 8862 {
8593 // InternalAlloyLanguage.g:2999:1: ( (enumLiteral_0= 'plus' ) | (enumLiteral_1= 'sub' ) | (enumLiteral_2= 'mul' ) | (enumLiteral_3= 'rem' ) | (enumLiteral_4= 'div' ) ) 8863 // InternalAlloyLanguage.g:3092:1: ( (enumLiteral_0= 'plus' ) | (enumLiteral_1= 'sub' ) | (enumLiteral_2= 'mul' ) | (enumLiteral_3= 'rem' ) | (enumLiteral_4= 'div' ) )
8594 int alt49=5; 8864 int alt49=5;
8595 switch ( input.LA(1) ) { 8865 switch ( input.LA(1) ) {
8596 case 71: 8866 case 72:
8597 { 8867 {
8598 alt49=1; 8868 alt49=1;
8599 } 8869 }
8600 break; 8870 break;
8601 case 72: 8871 case 73:
8602 { 8872 {
8603 alt49=2; 8873 alt49=2;
8604 } 8874 }
8605 break; 8875 break;
8606 case 73: 8876 case 74:
8607 { 8877 {
8608 alt49=3; 8878 alt49=3;
8609 } 8879 }
8610 break; 8880 break;
8611 case 74: 8881 case 75:
8612 { 8882 {
8613 alt49=4; 8883 alt49=4;
8614 } 8884 }
8615 break; 8885 break;
8616 case 75: 8886 case 76:
8617 { 8887 {
8618 alt49=5; 8888 alt49=5;
8619 } 8889 }
@@ -8628,12 +8898,12 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8628 8898
8629 switch (alt49) { 8899 switch (alt49) {
8630 case 1 : 8900 case 1 :
8631 // InternalAlloyLanguage.g:2999:2: (enumLiteral_0= 'plus' ) 8901 // InternalAlloyLanguage.g:3092:2: (enumLiteral_0= 'plus' )
8632 { 8902 {
8633 // InternalAlloyLanguage.g:2999:2: (enumLiteral_0= 'plus' ) 8903 // InternalAlloyLanguage.g:3092:2: (enumLiteral_0= 'plus' )
8634 // InternalAlloyLanguage.g:2999:4: enumLiteral_0= 'plus' 8904 // InternalAlloyLanguage.g:3092:4: enumLiteral_0= 'plus'
8635 { 8905 {
8636 enumLiteral_0=(Token)match(input,71,FOLLOW_2); if (state.failed) return current; 8906 enumLiteral_0=(Token)match(input,72,FOLLOW_2); if (state.failed) return current;
8637 if ( state.backtracking==0 ) { 8907 if ( state.backtracking==0 ) {
8638 8908
8639 current = grammarAccess.getALSNumericOperatorAccess().getPlusEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); 8909 current = grammarAccess.getALSNumericOperatorAccess().getPlusEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
@@ -8647,12 +8917,12 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8647 } 8917 }
8648 break; 8918 break;
8649 case 2 : 8919 case 2 :
8650 // InternalAlloyLanguage.g:3005:6: (enumLiteral_1= 'sub' ) 8920 // InternalAlloyLanguage.g:3098:6: (enumLiteral_1= 'sub' )
8651 { 8921 {
8652 // InternalAlloyLanguage.g:3005:6: (enumLiteral_1= 'sub' ) 8922 // InternalAlloyLanguage.g:3098:6: (enumLiteral_1= 'sub' )
8653 // InternalAlloyLanguage.g:3005:8: enumLiteral_1= 'sub' 8923 // InternalAlloyLanguage.g:3098:8: enumLiteral_1= 'sub'
8654 { 8924 {
8655 enumLiteral_1=(Token)match(input,72,FOLLOW_2); if (state.failed) return current; 8925 enumLiteral_1=(Token)match(input,73,FOLLOW_2); if (state.failed) return current;
8656 if ( state.backtracking==0 ) { 8926 if ( state.backtracking==0 ) {
8657 8927
8658 current = grammarAccess.getALSNumericOperatorAccess().getSubEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); 8928 current = grammarAccess.getALSNumericOperatorAccess().getSubEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
@@ -8666,12 +8936,12 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8666 } 8936 }
8667 break; 8937 break;
8668 case 3 : 8938 case 3 :
8669 // InternalAlloyLanguage.g:3011:6: (enumLiteral_2= 'mul' ) 8939 // InternalAlloyLanguage.g:3104:6: (enumLiteral_2= 'mul' )
8670 { 8940 {
8671 // InternalAlloyLanguage.g:3011:6: (enumLiteral_2= 'mul' ) 8941 // InternalAlloyLanguage.g:3104:6: (enumLiteral_2= 'mul' )
8672 // InternalAlloyLanguage.g:3011:8: enumLiteral_2= 'mul' 8942 // InternalAlloyLanguage.g:3104:8: enumLiteral_2= 'mul'
8673 { 8943 {
8674 enumLiteral_2=(Token)match(input,73,FOLLOW_2); if (state.failed) return current; 8944 enumLiteral_2=(Token)match(input,74,FOLLOW_2); if (state.failed) return current;
8675 if ( state.backtracking==0 ) { 8945 if ( state.backtracking==0 ) {
8676 8946
8677 current = grammarAccess.getALSNumericOperatorAccess().getMulEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); 8947 current = grammarAccess.getALSNumericOperatorAccess().getMulEnumLiteralDeclaration_2().getEnumLiteral().getInstance();
@@ -8685,12 +8955,12 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8685 } 8955 }
8686 break; 8956 break;
8687 case 4 : 8957 case 4 :
8688 // InternalAlloyLanguage.g:3017:6: (enumLiteral_3= 'rem' ) 8958 // InternalAlloyLanguage.g:3110:6: (enumLiteral_3= 'rem' )
8689 { 8959 {
8690 // InternalAlloyLanguage.g:3017:6: (enumLiteral_3= 'rem' ) 8960 // InternalAlloyLanguage.g:3110:6: (enumLiteral_3= 'rem' )
8691 // InternalAlloyLanguage.g:3017:8: enumLiteral_3= 'rem' 8961 // InternalAlloyLanguage.g:3110:8: enumLiteral_3= 'rem'
8692 { 8962 {
8693 enumLiteral_3=(Token)match(input,74,FOLLOW_2); if (state.failed) return current; 8963 enumLiteral_3=(Token)match(input,75,FOLLOW_2); if (state.failed) return current;
8694 if ( state.backtracking==0 ) { 8964 if ( state.backtracking==0 ) {
8695 8965
8696 current = grammarAccess.getALSNumericOperatorAccess().getRemEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); 8966 current = grammarAccess.getALSNumericOperatorAccess().getRemEnumLiteralDeclaration_3().getEnumLiteral().getInstance();
@@ -8704,12 +8974,12 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8704 } 8974 }
8705 break; 8975 break;
8706 case 5 : 8976 case 5 :
8707 // InternalAlloyLanguage.g:3023:6: (enumLiteral_4= 'div' ) 8977 // InternalAlloyLanguage.g:3116:6: (enumLiteral_4= 'div' )
8708 { 8978 {
8709 // InternalAlloyLanguage.g:3023:6: (enumLiteral_4= 'div' ) 8979 // InternalAlloyLanguage.g:3116:6: (enumLiteral_4= 'div' )
8710 // InternalAlloyLanguage.g:3023:8: enumLiteral_4= 'div' 8980 // InternalAlloyLanguage.g:3116:8: enumLiteral_4= 'div'
8711 { 8981 {
8712 enumLiteral_4=(Token)match(input,75,FOLLOW_2); if (state.failed) return current; 8982 enumLiteral_4=(Token)match(input,76,FOLLOW_2); if (state.failed) return current;
8713 if ( state.backtracking==0 ) { 8983 if ( state.backtracking==0 ) {
8714 8984
8715 current = grammarAccess.getALSNumericOperatorAccess().getDivEnumLiteralDeclaration_4().getEnumLiteral().getInstance(); 8985 current = grammarAccess.getALSNumericOperatorAccess().getDivEnumLiteralDeclaration_4().getEnumLiteral().getInstance();
@@ -8749,22 +9019,22 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8749 protected DFA10 dfa10 = new DFA10(this); 9019 protected DFA10 dfa10 = new DFA10(this);
8750 protected DFA42 dfa42 = new DFA42(this); 9020 protected DFA42 dfa42 = new DFA42(this);
8751 static final String dfa_1s = "\12\uffff"; 9021 static final String dfa_1s = "\12\uffff";
8752 static final String dfa_2s = "\10\uffff\1\11\1\uffff"; 9022 static final String dfa_2s = "\11\uffff\1\10";
8753 static final String dfa_3s = "\7\4\1\uffff\1\15\1\uffff"; 9023 static final String dfa_3s = "\7\4\2\uffff\1\15";
8754 static final String dfa_4s = "\7\113\1\uffff\1\106\1\uffff"; 9024 static final String dfa_4s = "\7\114\2\uffff\1\107";
8755 static final String dfa_5s = "\7\uffff\1\2\1\uffff\1\1"; 9025 static final String dfa_5s = "\7\uffff\1\2\1\1\1\uffff";
8756 static final String dfa_6s = "\12\uffff}>"; 9026 static final String dfa_6s = "\12\uffff}>";
8757 static final String[] dfa_7s = { 9027 static final String[] dfa_7s = {
8758 "\2\7\50\uffff\1\7\2\uffff\14\7\4\uffff\1\1\1\2\1\3\1\4\1\5\1\6\5\7", 9028 "\3\7\47\uffff\1\7\2\uffff\15\7\4\uffff\1\1\1\2\1\3\1\4\1\5\1\6\5\7",
8759 "\1\10\1\11\24\uffff\1\7\23\uffff\1\11\2\uffff\14\11\4\uffff\13\11", 9029 "\1\11\2\10\23\uffff\1\7\23\uffff\1\10\2\uffff\15\10\4\uffff\13\10",
8760 "\1\10\1\11\24\uffff\1\7\23\uffff\1\11\2\uffff\14\11\4\uffff\13\11", 9030 "\1\11\2\10\23\uffff\1\7\23\uffff\1\10\2\uffff\15\10\4\uffff\13\10",
8761 "\1\10\1\11\24\uffff\1\7\23\uffff\1\11\2\uffff\14\11\4\uffff\13\11", 9031 "\1\11\2\10\23\uffff\1\7\23\uffff\1\10\2\uffff\15\10\4\uffff\13\10",
8762 "\1\10\1\11\24\uffff\1\7\23\uffff\1\11\2\uffff\14\11\4\uffff\13\11", 9032 "\1\11\2\10\23\uffff\1\7\23\uffff\1\10\2\uffff\15\10\4\uffff\13\10",
8763 "\1\10\1\11\24\uffff\1\7\23\uffff\1\11\2\uffff\14\11\4\uffff\13\11", 9033 "\1\11\2\10\23\uffff\1\7\23\uffff\1\10\2\uffff\15\10\4\uffff\13\10",
8764 "\1\10\1\11\24\uffff\1\7\23\uffff\1\11\2\uffff\14\11\4\uffff\13\11", 9034 "\1\11\2\10\23\uffff\1\7\23\uffff\1\10\2\uffff\15\10\4\uffff\13\10",
8765 "", 9035 "",
8766 "\2\11\3\uffff\2\11\1\7\1\uffff\1\11\4\uffff\6\11\1\uffff\17\11\20\uffff\6\11", 9036 "",
8767 "" 9037 "\2\10\3\uffff\2\10\1\7\1\uffff\1\10\4\uffff\6\10\1\uffff\17\10\21\uffff\6\10"
8768 }; 9038 };
8769 9039
8770 static final short[] dfa_1 = DFA.unpackEncodedString(dfa_1s); 9040 static final short[] dfa_1 = DFA.unpackEncodedString(dfa_1s);
@@ -8795,11 +9065,11 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8795 static final String dfa_8s = "\13\uffff"; 9065 static final String dfa_8s = "\13\uffff";
8796 static final String dfa_9s = "\10\uffff\1\12\2\uffff"; 9066 static final String dfa_9s = "\10\uffff\1\12\2\uffff";
8797 static final String dfa_10s = "\1\4\7\uffff\1\14\2\uffff"; 9067 static final String dfa_10s = "\1\4\7\uffff\1\14\2\uffff";
8798 static final String dfa_11s = "\1\113\7\uffff\1\106\2\uffff"; 9068 static final String dfa_11s = "\1\114\7\uffff\1\107\2\uffff";
8799 static final String dfa_12s = "\1\uffff\1\1\1\2\1\3\1\4\1\5\1\6\1\7\1\uffff\1\10\1\11"; 9069 static final String dfa_12s = "\1\uffff\1\1\1\2\1\3\1\4\1\5\1\6\1\7\1\uffff\1\10\1\11";
8800 static final String dfa_13s = "\13\uffff}>"; 9070 static final String dfa_13s = "\13\uffff}>";
8801 static final String[] dfa_14s = { 9071 static final String[] dfa_14s = {
8802 "\1\10\1\12\50\uffff\1\6\2\uffff\2\1\1\2\1\3\1\4\1\5\1\7\5\12\12\uffff\5\11", 9072 "\1\10\2\12\47\uffff\1\6\2\uffff\2\1\1\2\1\3\1\4\1\5\1\7\6\12\12\uffff\5\11",
8803 "", 9073 "",
8804 "", 9074 "",
8805 "", 9075 "",
@@ -8807,7 +9077,7 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8807 "", 9077 "",
8808 "", 9078 "",
8809 "", 9079 "",
8810 "\3\12\3\uffff\2\12\2\uffff\1\11\1\12\3\uffff\26\12\14\uffff\1\12\3\uffff\6\12", 9080 "\3\12\3\uffff\2\12\2\uffff\1\11\1\12\3\uffff\26\12\15\uffff\1\12\3\uffff\6\12",
8811 "", 9081 "",
8812 "" 9082 ""
8813 }; 9083 };
@@ -8841,16 +9111,16 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8841 9111
8842 public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L}); 9112 public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
8843 public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L}); 9113 public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
8844 public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x4000000003218800L,0x000000000000007EL}); 9114 public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x8000000003218800L,0x00000000000000FCL});
8845 public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000000010L}); 9115 public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000000010L});
8846 public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0000000000001000L}); 9116 public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0000000000001000L});
8847 public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000000006000L}); 9117 public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000000006000L});
8848 public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000000000018000L,0x000000000000007EL}); 9118 public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000000000018000L,0x00000000000000FCL});
8849 public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000000063000L}); 9119 public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000000063000L});
8850 public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000081000L}); 9120 public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000081000L});
8851 public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0000000000004010L}); 9121 public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0000000000004010L});
8852 public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000000000100000L}); 9122 public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000000000100000L});
8853 public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x1FFE400000000030L,0x0000000000000FFEL}); 9123 public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x3FFE400000000070L,0x0000000000001FFCL});
8854 public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000000400000L}); 9124 public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000000400000L});
8855 public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000000000802000L}); 9125 public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000000000802000L});
8856 public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000000004000L}); 9126 public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000000004000L});
@@ -8870,13 +9140,14 @@ public class InternalAlloyLanguageParser extends AbstractInternalAntlrParser {
8870 public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0000400000000002L}); 9140 public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0000400000000002L});
8871 public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x0000000000080002L}); 9141 public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x0000000000080002L});
8872 public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0000800000000002L}); 9142 public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0000800000000002L});
8873 public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0001000000000002L,0x000000000000007EL}); 9143 public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0001000000000002L,0x00000000000000FCL});
8874 public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0001000000000000L}); 9144 public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0001000000000000L});
8875 public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x2000000000000000L}); 9145 public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x4000000000000000L});
8876 public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x8000000000000002L}); 9146 public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000001L});
8877 public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x0000000000000020L,0x0000000000000001L}); 9147 public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x0000000000000020L,0x0000000000000002L});
8878 public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x0000000000002002L}); 9148 public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x0000000000002002L});
8879 public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x0000000000000020L}); 9149 public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x0000000000000020L});
8880 public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x0800000000000000L}); 9150 public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x0800000000000000L});
9151 public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x1000000000000000L});
8881 9152
8882} 9153}