Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsefftinge2008-02-28 14:55:18 +0000
committersefftinge2008-02-28 14:55:18 +0000
commit9968bddab8132f26b002bbe1f6e11582e347c88e (patch)
tree9176e4855e81703c6236d9696221d630d972f7da
parent8c5bcb255b746627e8546f0b5ec122ef1b54d324 (diff)
downloadorg.eclipse.xpand-9968bddab8132f26b002bbe1f6e11582e347c88e.tar.gz
org.eclipse.xpand-9968bddab8132f26b002bbe1f6e11582e347c88e.tar.xz
org.eclipse.xpand-9968bddab8132f26b002bbe1f6e11582e347c88e.zip
fixed switch
added tests
-rw-r--r--plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/AbstractXpand3NodeParser.java5
-rw-r--r--plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3.g12
-rw-r--r--plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3.tokens34
-rw-r--r--plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3Lexer.java358
-rw-r--r--plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3Parser.java2101
-rw-r--r--plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3__.g76
-rw-r--r--plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/classes/__Test__.classbin0 -> 964 bytes
-rw-r--r--plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/classes/org/eclipse/xpand3/parser/Xpand3Lexer.classbin0 -> 54338 bytes
-rw-r--r--plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/classes/org/eclipse/xpand3/parser/Xpand3Parser$DFA44.classbin0 -> 3989 bytes
-rw-r--r--plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/classes/org/eclipse/xpand3/parser/Xpand3Parser.classbin0 -> 124965 bytes
-rw-r--r--tests/org.eclipse.xpand3.tests/src/org/eclipse/xpand3/parser/Xpand3MigratedNodeParserTest.java240
11 files changed, 1828 insertions, 998 deletions
diff --git a/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/AbstractXpand3NodeParser.java b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/AbstractXpand3NodeParser.java
index 1a1daa79..e7786635 100644
--- a/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/AbstractXpand3NodeParser.java
+++ b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/AbstractXpand3NodeParser.java
@@ -77,4 +77,9 @@ public abstract class AbstractXpand3NodeParser extends Xpand3Parser {
return rootNode;
}
+ @Override
+ protected void assignNextNodeTo(String alias) {
+ // TODO Auto-generated method stub
+ }
+
} \ No newline at end of file
diff --git a/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3.g b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3.g
index f839b065..aaf84472 100644
--- a/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3.g
+++ b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3.g
@@ -183,12 +183,12 @@ r_letExpression :
;
r_castedExpression :
- ('(' r_type ')' r_castedExpression)=>
+ ('(' r_type ')' r_chainExpression)=>
'(' r_type ')' r_chainExpression
| r_chainExpression
;
-r_chainExpression :
+r_chainExpression : {/*HUHU*/}
r_ifExpression ( '->' r_ifExpression )*
;
@@ -198,7 +198,7 @@ r_ifExpression :
;
r_switchExpression :
- 'switch' ('(' r_orExpression ')')?
+ 'switch' ('(' r_orExpression ')')? '{'
r_casePart*
'default' ':' r_orExpression
'}'
@@ -247,7 +247,7 @@ r_infixExpression :
;
r_primaryExpression :
- StringLiteral
+ r_stringLiteral
| r_featureCall
| r_booleanLiteral
| r_numberLiteral
@@ -258,6 +258,10 @@ r_primaryExpression :
| r_paranthesizedExpression
;
+r_stringLiteral :
+ StringLiteral
+;
+
r_paranthesizedExpression :
'(' r_expression ')'
;
diff --git a/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3.tokens b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3.tokens
index 298768a2..f6ef9e5f 100644
--- a/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3.tokens
+++ b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3.tokens
@@ -19,10 +19,10 @@ OctalEscape=16
REM_COMMENT_OUT=23
AROUND=8
LG=4
-'<'=90
+'<'=91
'exists'=105
-'>'=89
-'case'=81
+'>'=90
+'case'=82
'context'=58
'FOREACH'=39
'let'=72
@@ -32,13 +32,13 @@ LG=4
'-'=36
'reexport'=30
'?'=75
-'!='=86
+'!='=87
'List'=70
-'>='=87
-'GLOBALVAR'=94
+'>='=88
+'GLOBALVAR'=95
'ELSEIF'=48
-'<='=88
-'||'=82
+'<='=89
+'||'=83
'ID'=55
'typeSelect'=100
'JAVA'=67
@@ -51,7 +51,7 @@ LG=4
'ENDFOREACH'=45
'ENDLET'=51
'around'=62
-'{'=95
+'{'=79
'then'=76
'SEPARATOR'=40
'AS'=43
@@ -63,7 +63,7 @@ LG=4
'ITERATOR'=44
'Set'=71
'notExists'=106
-'}'=80
+'}'=81
'->'=74
'create'=66
'PROTECT'=52
@@ -73,14 +73,14 @@ LG=4
';'=28
']'=111
'true'=98
-'default'=79
+'default'=80
'false'=97
','=32
-'&&'=83
+'&&'=84
'LET'=50
'['=110
-'/'=92
-'implies'=84
+'/'=93
+'implies'=85
'ELSE'=49
'IMPORT'=25
'Collection'=69
@@ -91,11 +91,11 @@ LG=4
'EXPAND'=38
')'=34
'FILE'=41
-'=='=85
+'=='=86
'ENDPROTECT'=57
'IF'=46
'import'=27
-'!'=93
+'!'=94
'CSTART'=53
'if'=59
'DISABLE'=56
@@ -104,5 +104,5 @@ LG=4
'select'=102
'cached'=65
'null'=99
-'+'=91
+'+'=92
'WARNING'=60
diff --git a/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3Lexer.java b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3Lexer.java
index da5f7b2f..0c94c4d2 100644
--- a/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3Lexer.java
+++ b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3Lexer.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 src/org/eclipse/xpand3/parser/Xpand3.g 2008-02-28 13:17:14
+// $ANTLR 3.0.1 src/org/eclipse/xpand3/parser/Xpand3.g 2008-02-28 15:53:24
package org.eclipse.xpand3.parser;
@@ -1148,11 +1148,10 @@ public class Xpand3Lexer extends Lexer {
public final void mT79() throws RecognitionException {
try {
int _type = T79;
- // src/org/eclipse/xpand3/parser/Xpand3.g:63:5: ( 'default' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:63:7: 'default'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:63:5: ( '{' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:63:7: '{'
{
- match("default");
-
+ match('{');
}
@@ -1167,10 +1166,11 @@ public class Xpand3Lexer extends Lexer {
public final void mT80() throws RecognitionException {
try {
int _type = T80;
- // src/org/eclipse/xpand3/parser/Xpand3.g:64:5: ( '}' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:64:7: '}'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:64:5: ( 'default' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:64:7: 'default'
{
- match('}');
+ match("default");
+
}
@@ -1185,11 +1185,10 @@ public class Xpand3Lexer extends Lexer {
public final void mT81() throws RecognitionException {
try {
int _type = T81;
- // src/org/eclipse/xpand3/parser/Xpand3.g:65:5: ( 'case' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:65:7: 'case'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:65:5: ( '}' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:65:7: '}'
{
- match("case");
-
+ match('}');
}
@@ -1204,10 +1203,10 @@ public class Xpand3Lexer extends Lexer {
public final void mT82() throws RecognitionException {
try {
int _type = T82;
- // src/org/eclipse/xpand3/parser/Xpand3.g:66:5: ( '||' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:66:7: '||'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:66:5: ( 'case' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:66:7: 'case'
{
- match("||");
+ match("case");
}
@@ -1223,10 +1222,10 @@ public class Xpand3Lexer extends Lexer {
public final void mT83() throws RecognitionException {
try {
int _type = T83;
- // src/org/eclipse/xpand3/parser/Xpand3.g:67:5: ( '&&' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:67:7: '&&'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:67:5: ( '||' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:67:7: '||'
{
- match("&&");
+ match("||");
}
@@ -1242,10 +1241,10 @@ public class Xpand3Lexer extends Lexer {
public final void mT84() throws RecognitionException {
try {
int _type = T84;
- // src/org/eclipse/xpand3/parser/Xpand3.g:68:5: ( 'implies' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:68:7: 'implies'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:68:5: ( '&&' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:68:7: '&&'
{
- match("implies");
+ match("&&");
}
@@ -1261,10 +1260,10 @@ public class Xpand3Lexer extends Lexer {
public final void mT85() throws RecognitionException {
try {
int _type = T85;
- // src/org/eclipse/xpand3/parser/Xpand3.g:69:5: ( '==' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:69:7: '=='
+ // src/org/eclipse/xpand3/parser/Xpand3.g:69:5: ( 'implies' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:69:7: 'implies'
{
- match("==");
+ match("implies");
}
@@ -1280,10 +1279,10 @@ public class Xpand3Lexer extends Lexer {
public final void mT86() throws RecognitionException {
try {
int _type = T86;
- // src/org/eclipse/xpand3/parser/Xpand3.g:70:5: ( '!=' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:70:7: '!='
+ // src/org/eclipse/xpand3/parser/Xpand3.g:70:5: ( '==' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:70:7: '=='
{
- match("!=");
+ match("==");
}
@@ -1299,10 +1298,10 @@ public class Xpand3Lexer extends Lexer {
public final void mT87() throws RecognitionException {
try {
int _type = T87;
- // src/org/eclipse/xpand3/parser/Xpand3.g:71:5: ( '>=' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:71:7: '>='
+ // src/org/eclipse/xpand3/parser/Xpand3.g:71:5: ( '!=' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:71:7: '!='
{
- match(">=");
+ match("!=");
}
@@ -1318,10 +1317,10 @@ public class Xpand3Lexer extends Lexer {
public final void mT88() throws RecognitionException {
try {
int _type = T88;
- // src/org/eclipse/xpand3/parser/Xpand3.g:72:5: ( '<=' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:72:7: '<='
+ // src/org/eclipse/xpand3/parser/Xpand3.g:72:5: ( '>=' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:72:7: '>='
{
- match("<=");
+ match(">=");
}
@@ -1337,10 +1336,11 @@ public class Xpand3Lexer extends Lexer {
public final void mT89() throws RecognitionException {
try {
int _type = T89;
- // src/org/eclipse/xpand3/parser/Xpand3.g:73:5: ( '>' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:73:7: '>'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:73:5: ( '<=' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:73:7: '<='
{
- match('>');
+ match("<=");
+
}
@@ -1355,10 +1355,10 @@ public class Xpand3Lexer extends Lexer {
public final void mT90() throws RecognitionException {
try {
int _type = T90;
- // src/org/eclipse/xpand3/parser/Xpand3.g:74:5: ( '<' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:74:7: '<'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:74:5: ( '>' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:74:7: '>'
{
- match('<');
+ match('>');
}
@@ -1373,10 +1373,10 @@ public class Xpand3Lexer extends Lexer {
public final void mT91() throws RecognitionException {
try {
int _type = T91;
- // src/org/eclipse/xpand3/parser/Xpand3.g:75:5: ( '+' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:75:7: '+'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:75:5: ( '<' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:75:7: '<'
{
- match('+');
+ match('<');
}
@@ -1391,10 +1391,10 @@ public class Xpand3Lexer extends Lexer {
public final void mT92() throws RecognitionException {
try {
int _type = T92;
- // src/org/eclipse/xpand3/parser/Xpand3.g:76:5: ( '/' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:76:7: '/'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:76:5: ( '+' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:76:7: '+'
{
- match('/');
+ match('+');
}
@@ -1409,10 +1409,10 @@ public class Xpand3Lexer extends Lexer {
public final void mT93() throws RecognitionException {
try {
int _type = T93;
- // src/org/eclipse/xpand3/parser/Xpand3.g:77:5: ( '!' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:77:7: '!'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:77:5: ( '/' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:77:7: '/'
{
- match('!');
+ match('/');
}
@@ -1427,11 +1427,10 @@ public class Xpand3Lexer extends Lexer {
public final void mT94() throws RecognitionException {
try {
int _type = T94;
- // src/org/eclipse/xpand3/parser/Xpand3.g:78:5: ( 'GLOBALVAR' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:78:7: 'GLOBALVAR'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:78:5: ( '!' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:78:7: '!'
{
- match("GLOBALVAR");
-
+ match('!');
}
@@ -1446,10 +1445,11 @@ public class Xpand3Lexer extends Lexer {
public final void mT95() throws RecognitionException {
try {
int _type = T95;
- // src/org/eclipse/xpand3/parser/Xpand3.g:79:5: ( '{' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:79:7: '{'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:79:5: ( 'GLOBALVAR' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:79:7: 'GLOBALVAR'
{
- match('{');
+ match("GLOBALVAR");
+
}
@@ -1765,10 +1765,10 @@ public class Xpand3Lexer extends Lexer {
public final void mIntLiteral() throws RecognitionException {
try {
int _type = IntLiteral;
- // src/org/eclipse/xpand3/parser/Xpand3.g:351:12: ( ( '0' | '1' .. '9' ( '0' .. '9' )* ) )
- // src/org/eclipse/xpand3/parser/Xpand3.g:351:14: ( '0' | '1' .. '9' ( '0' .. '9' )* )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:355:12: ( ( '0' | '1' .. '9' ( '0' .. '9' )* ) )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:355:14: ( '0' | '1' .. '9' ( '0' .. '9' )* )
{
- // src/org/eclipse/xpand3/parser/Xpand3.g:351:14: ( '0' | '1' .. '9' ( '0' .. '9' )* )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:355:14: ( '0' | '1' .. '9' ( '0' .. '9' )* )
int alt2=2;
int LA2_0 = input.LA(1);
@@ -1780,23 +1780,23 @@ public class Xpand3Lexer extends Lexer {
}
else {
NoViableAltException nvae =
- new NoViableAltException("351:14: ( '0' | '1' .. '9' ( '0' .. '9' )* )", 2, 0, input);
+ new NoViableAltException("355:14: ( '0' | '1' .. '9' ( '0' .. '9' )* )", 2, 0, input);
throw nvae;
}
switch (alt2) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:351:15: '0'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:355:15: '0'
{
match('0');
}
break;
case 2 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:351:21: '1' .. '9' ( '0' .. '9' )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:355:21: '1' .. '9' ( '0' .. '9' )*
{
matchRange('1','9');
- // src/org/eclipse/xpand3/parser/Xpand3.g:351:30: ( '0' .. '9' )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:355:30: ( '0' .. '9' )*
loop1:
do {
int alt1=2;
@@ -1809,7 +1809,7 @@ public class Xpand3Lexer extends Lexer {
switch (alt1) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:351:30: '0' .. '9'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:355:30: '0' .. '9'
{
matchRange('0','9');
@@ -1841,7 +1841,7 @@ public class Xpand3Lexer extends Lexer {
public final void mStringLiteral() throws RecognitionException {
try {
int _type = StringLiteral;
- // src/org/eclipse/xpand3/parser/Xpand3.g:354:5: ( '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"' | '\\'' ( EscapeSequence | ~ ( '\\'' | '\\\\' ) )* '\\'' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:358:5: ( '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"' | '\\'' ( EscapeSequence | ~ ( '\\'' | '\\\\' ) )* '\\'' )
int alt5=2;
int LA5_0 = input.LA(1);
@@ -1853,16 +1853,16 @@ public class Xpand3Lexer extends Lexer {
}
else {
NoViableAltException nvae =
- new NoViableAltException("353:1: StringLiteral : ( '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"' | '\\'' ( EscapeSequence | ~ ( '\\'' | '\\\\' ) )* '\\'' );", 5, 0, input);
+ new NoViableAltException("357:1: StringLiteral : ( '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"' | '\\'' ( EscapeSequence | ~ ( '\\'' | '\\\\' ) )* '\\'' );", 5, 0, input);
throw nvae;
}
switch (alt5) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:354:8: '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:358:8: '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"'
{
match('\"');
- // src/org/eclipse/xpand3/parser/Xpand3.g:354:12: ( EscapeSequence | ~ ( '\\\\' | '\"' ) )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:358:12: ( EscapeSequence | ~ ( '\\\\' | '\"' ) )*
loop3:
do {
int alt3=3;
@@ -1878,14 +1878,14 @@ public class Xpand3Lexer extends Lexer {
switch (alt3) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:354:14: EscapeSequence
+ // src/org/eclipse/xpand3/parser/Xpand3.g:358:14: EscapeSequence
{
mEscapeSequence();
}
break;
case 2 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:354:31: ~ ( '\\\\' | '\"' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:358:31: ~ ( '\\\\' | '\"' )
{
if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) {
input.consume();
@@ -1911,10 +1911,10 @@ public class Xpand3Lexer extends Lexer {
}
break;
case 2 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:355:8: '\\'' ( EscapeSequence | ~ ( '\\'' | '\\\\' ) )* '\\''
+ // src/org/eclipse/xpand3/parser/Xpand3.g:359:8: '\\'' ( EscapeSequence | ~ ( '\\'' | '\\\\' ) )* '\\''
{
match('\'');
- // src/org/eclipse/xpand3/parser/Xpand3.g:355:13: ( EscapeSequence | ~ ( '\\'' | '\\\\' ) )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:359:13: ( EscapeSequence | ~ ( '\\'' | '\\\\' ) )*
loop4:
do {
int alt4=3;
@@ -1930,14 +1930,14 @@ public class Xpand3Lexer extends Lexer {
switch (alt4) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:355:15: EscapeSequence
+ // src/org/eclipse/xpand3/parser/Xpand3.g:359:15: EscapeSequence
{
mEscapeSequence();
}
break;
case 2 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:355:32: ~ ( '\\'' | '\\\\' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:359:32: ~ ( '\\'' | '\\\\' )
{
if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) {
input.consume();
@@ -1974,7 +1974,7 @@ public class Xpand3Lexer extends Lexer {
// $ANTLR start EscapeSequence
public final void mEscapeSequence() throws RecognitionException {
try {
- // src/org/eclipse/xpand3/parser/Xpand3.g:360:5: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | UnicodeEscape | OctalEscape )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:364:5: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | UnicodeEscape | OctalEscape )
int alt6=3;
int LA6_0 = input.LA(1);
@@ -2011,7 +2011,7 @@ public class Xpand3Lexer extends Lexer {
break;
default:
NoViableAltException nvae =
- new NoViableAltException("358:1: fragment EscapeSequence : ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | UnicodeEscape | OctalEscape );", 6, 1, input);
+ new NoViableAltException("362:1: fragment EscapeSequence : ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | UnicodeEscape | OctalEscape );", 6, 1, input);
throw nvae;
}
@@ -2019,13 +2019,13 @@ public class Xpand3Lexer extends Lexer {
}
else {
NoViableAltException nvae =
- new NoViableAltException("358:1: fragment EscapeSequence : ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | UnicodeEscape | OctalEscape );", 6, 0, input);
+ new NoViableAltException("362:1: fragment EscapeSequence : ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | UnicodeEscape | OctalEscape );", 6, 0, input);
throw nvae;
}
switch (alt6) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:360:9: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:364:9: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' )
{
match('\\');
if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||input.LA(1)=='t' ) {
@@ -2042,14 +2042,14 @@ public class Xpand3Lexer extends Lexer {
}
break;
case 2 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:361:9: UnicodeEscape
+ // src/org/eclipse/xpand3/parser/Xpand3.g:365:9: UnicodeEscape
{
mUnicodeEscape();
}
break;
case 3 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:362:9: OctalEscape
+ // src/org/eclipse/xpand3/parser/Xpand3.g:366:9: OctalEscape
{
mOctalEscape();
@@ -2066,7 +2066,7 @@ public class Xpand3Lexer extends Lexer {
// $ANTLR start OctalEscape
public final void mOctalEscape() throws RecognitionException {
try {
- // src/org/eclipse/xpand3/parser/Xpand3.g:367:5: ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:371:5: ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) )
int alt7=3;
int LA7_0 = input.LA(1);
@@ -2099,38 +2099,38 @@ public class Xpand3Lexer extends Lexer {
}
else {
NoViableAltException nvae =
- new NoViableAltException("365:1: fragment OctalEscape : ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) );", 7, 1, input);
+ new NoViableAltException("369:1: fragment OctalEscape : ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) );", 7, 1, input);
throw nvae;
}
}
else {
NoViableAltException nvae =
- new NoViableAltException("365:1: fragment OctalEscape : ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) );", 7, 0, input);
+ new NoViableAltException("369:1: fragment OctalEscape : ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) );", 7, 0, input);
throw nvae;
}
switch (alt7) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:367:9: '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:371:9: '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' )
{
match('\\');
- // src/org/eclipse/xpand3/parser/Xpand3.g:367:14: ( '0' .. '3' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:367:15: '0' .. '3'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:371:14: ( '0' .. '3' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:371:15: '0' .. '3'
{
matchRange('0','3');
}
- // src/org/eclipse/xpand3/parser/Xpand3.g:367:25: ( '0' .. '7' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:367:26: '0' .. '7'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:371:25: ( '0' .. '7' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:371:26: '0' .. '7'
{
matchRange('0','7');
}
- // src/org/eclipse/xpand3/parser/Xpand3.g:367:36: ( '0' .. '7' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:367:37: '0' .. '7'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:371:36: ( '0' .. '7' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:371:37: '0' .. '7'
{
matchRange('0','7');
@@ -2140,18 +2140,18 @@ public class Xpand3Lexer extends Lexer {
}
break;
case 2 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:368:9: '\\\\' ( '0' .. '7' ) ( '0' .. '7' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:372:9: '\\\\' ( '0' .. '7' ) ( '0' .. '7' )
{
match('\\');
- // src/org/eclipse/xpand3/parser/Xpand3.g:368:14: ( '0' .. '7' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:368:15: '0' .. '7'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:372:14: ( '0' .. '7' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:372:15: '0' .. '7'
{
matchRange('0','7');
}
- // src/org/eclipse/xpand3/parser/Xpand3.g:368:25: ( '0' .. '7' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:368:26: '0' .. '7'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:372:25: ( '0' .. '7' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:372:26: '0' .. '7'
{
matchRange('0','7');
@@ -2161,11 +2161,11 @@ public class Xpand3Lexer extends Lexer {
}
break;
case 3 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:369:9: '\\\\' ( '0' .. '7' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:373:9: '\\\\' ( '0' .. '7' )
{
match('\\');
- // src/org/eclipse/xpand3/parser/Xpand3.g:369:14: ( '0' .. '7' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:369:15: '0' .. '7'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:373:14: ( '0' .. '7' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:373:15: '0' .. '7'
{
matchRange('0','7');
@@ -2185,8 +2185,8 @@ public class Xpand3Lexer extends Lexer {
// $ANTLR start UnicodeEscape
public final void mUnicodeEscape() throws RecognitionException {
try {
- // src/org/eclipse/xpand3/parser/Xpand3.g:374:5: ( '\\\\' 'u' HexDigit HexDigit HexDigit HexDigit )
- // src/org/eclipse/xpand3/parser/Xpand3.g:374:9: '\\\\' 'u' HexDigit HexDigit HexDigit HexDigit
+ // src/org/eclipse/xpand3/parser/Xpand3.g:378:5: ( '\\\\' 'u' HexDigit HexDigit HexDigit HexDigit )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:378:9: '\\\\' 'u' HexDigit HexDigit HexDigit HexDigit
{
match('\\');
match('u');
@@ -2206,8 +2206,8 @@ public class Xpand3Lexer extends Lexer {
// $ANTLR start HexDigit
public final void mHexDigit() throws RecognitionException {
try {
- // src/org/eclipse/xpand3/parser/Xpand3.g:377:10: ( ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' ) )
- // src/org/eclipse/xpand3/parser/Xpand3.g:377:12: ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:381:10: ( ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' ) )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:381:12: ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )
{
if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='A' && input.LA(1)<='F')||(input.LA(1)>='a' && input.LA(1)<='f') ) {
input.consume();
@@ -2232,8 +2232,8 @@ public class Xpand3Lexer extends Lexer {
public final void mDEFINE() throws RecognitionException {
try {
int _type = DEFINE;
- // src/org/eclipse/xpand3/parser/Xpand3.g:380:9: ( 'DEFINE' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:380:11: 'DEFINE'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:384:9: ( 'DEFINE' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:384:11: 'DEFINE'
{
xpandMode=true;
match("DEFINE");
@@ -2252,8 +2252,8 @@ public class Xpand3Lexer extends Lexer {
public final void mENDDEFINE() throws RecognitionException {
try {
int _type = ENDDEFINE;
- // src/org/eclipse/xpand3/parser/Xpand3.g:382:2: ( 'ENDDEFINE' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:382:4: 'ENDDEFINE'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:386:2: ( 'ENDDEFINE' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:386:4: 'ENDDEFINE'
{
match("ENDDEFINE");
@@ -2272,8 +2272,8 @@ public class Xpand3Lexer extends Lexer {
public final void mAROUND() throws RecognitionException {
try {
int _type = AROUND;
- // src/org/eclipse/xpand3/parser/Xpand3.g:384:9: ( 'AROUND' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:384:11: 'AROUND'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:388:9: ( 'AROUND' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:388:11: 'AROUND'
{
xpandMode=true;
match("AROUND");
@@ -2292,8 +2292,8 @@ public class Xpand3Lexer extends Lexer {
public final void mENDAROUND() throws RecognitionException {
try {
int _type = ENDAROUND;
- // src/org/eclipse/xpand3/parser/Xpand3.g:385:11: ( 'ENDAROUND' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:385:13: 'ENDAROUND'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:389:11: ( 'ENDAROUND' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:389:13: 'ENDAROUND'
{
match("ENDAROUND");
@@ -2312,10 +2312,10 @@ public class Xpand3Lexer extends Lexer {
public final void mIdentifier() throws RecognitionException {
try {
int _type = Identifier;
- // src/org/eclipse/xpand3/parser/Xpand3.g:388:5: ( ( '^' )? Letter ( Letter | JavaIDDigit )* )
- // src/org/eclipse/xpand3/parser/Xpand3.g:388:9: ( '^' )? Letter ( Letter | JavaIDDigit )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:392:5: ( ( '^' )? Letter ( Letter | JavaIDDigit )* )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:392:9: ( '^' )? Letter ( Letter | JavaIDDigit )*
{
- // src/org/eclipse/xpand3/parser/Xpand3.g:388:9: ( '^' )?
+ // src/org/eclipse/xpand3/parser/Xpand3.g:392:9: ( '^' )?
int alt8=2;
int LA8_0 = input.LA(1);
@@ -2324,7 +2324,7 @@ public class Xpand3Lexer extends Lexer {
}
switch (alt8) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:388:10: '^'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:392:10: '^'
{
match('^');
@@ -2334,7 +2334,7 @@ public class Xpand3Lexer extends Lexer {
}
mLetter();
- // src/org/eclipse/xpand3/parser/Xpand3.g:388:23: ( Letter | JavaIDDigit )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:392:23: ( Letter | JavaIDDigit )*
loop9:
do {
int alt9=2;
@@ -2381,7 +2381,7 @@ public class Xpand3Lexer extends Lexer {
// $ANTLR start Letter
public final void mLetter() throws RecognitionException {
try {
- // src/org/eclipse/xpand3/parser/Xpand3.g:393:5: ( '\\u0024' | '\\u0041' .. '\\u005a' | '\\u005f' | '\\u0061' .. '\\u007a' | '\\u00c0' .. '\\u00d6' | '\\u00d8' .. '\\u00f6' | '\\u00f8' .. '\\u00ff' | '\\u0100' .. '\\u1fff' | '\\u3040' .. '\\u318f' | '\\u3300' .. '\\u337f' | '\\u3400' .. '\\u3d2d' | '\\u4e00' .. '\\u9fff' | '\\uf900' .. '\\ufaff' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:397:5: ( '\\u0024' | '\\u0041' .. '\\u005a' | '\\u005f' | '\\u0061' .. '\\u007a' | '\\u00c0' .. '\\u00d6' | '\\u00d8' .. '\\u00f6' | '\\u00f8' .. '\\u00ff' | '\\u0100' .. '\\u1fff' | '\\u3040' .. '\\u318f' | '\\u3300' .. '\\u337f' | '\\u3400' .. '\\u3d2d' | '\\u4e00' .. '\\u9fff' | '\\uf900' .. '\\ufaff' )
// src/org/eclipse/xpand3/parser/Xpand3.g:
{
if ( input.LA(1)=='$'||(input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z')||(input.LA(1)>='\u00C0' && input.LA(1)<='\u00D6')||(input.LA(1)>='\u00D8' && input.LA(1)<='\u00F6')||(input.LA(1)>='\u00F8' && input.LA(1)<='\u1FFF')||(input.LA(1)>='\u3040' && input.LA(1)<='\u318F')||(input.LA(1)>='\u3300' && input.LA(1)<='\u337F')||(input.LA(1)>='\u3400' && input.LA(1)<='\u3D2D')||(input.LA(1)>='\u4E00' && input.LA(1)<='\u9FFF')||(input.LA(1)>='\uF900' && input.LA(1)<='\uFAFF') ) {
@@ -2406,7 +2406,7 @@ public class Xpand3Lexer extends Lexer {
// $ANTLR start JavaIDDigit
public final void mJavaIDDigit() throws RecognitionException {
try {
- // src/org/eclipse/xpand3/parser/Xpand3.g:410:5: ( '\\u0030' .. '\\u0039' | '\\u0660' .. '\\u0669' | '\\u06f0' .. '\\u06f9' | '\\u0966' .. '\\u096f' | '\\u09e6' .. '\\u09ef' | '\\u0a66' .. '\\u0a6f' | '\\u0ae6' .. '\\u0aef' | '\\u0b66' .. '\\u0b6f' | '\\u0be7' .. '\\u0bef' | '\\u0c66' .. '\\u0c6f' | '\\u0ce6' .. '\\u0cef' | '\\u0d66' .. '\\u0d6f' | '\\u0e50' .. '\\u0e59' | '\\u0ed0' .. '\\u0ed9' | '\\u1040' .. '\\u1049' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:414:5: ( '\\u0030' .. '\\u0039' | '\\u0660' .. '\\u0669' | '\\u06f0' .. '\\u06f9' | '\\u0966' .. '\\u096f' | '\\u09e6' .. '\\u09ef' | '\\u0a66' .. '\\u0a6f' | '\\u0ae6' .. '\\u0aef' | '\\u0b66' .. '\\u0b6f' | '\\u0be7' .. '\\u0bef' | '\\u0c66' .. '\\u0c6f' | '\\u0ce6' .. '\\u0cef' | '\\u0d66' .. '\\u0d6f' | '\\u0e50' .. '\\u0e59' | '\\u0ed0' .. '\\u0ed9' | '\\u1040' .. '\\u1049' )
// src/org/eclipse/xpand3/parser/Xpand3.g:
{
if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='\u0660' && input.LA(1)<='\u0669')||(input.LA(1)>='\u06F0' && input.LA(1)<='\u06F9')||(input.LA(1)>='\u0966' && input.LA(1)<='\u096F')||(input.LA(1)>='\u09E6' && input.LA(1)<='\u09EF')||(input.LA(1)>='\u0A66' && input.LA(1)<='\u0A6F')||(input.LA(1)>='\u0AE6' && input.LA(1)<='\u0AEF')||(input.LA(1)>='\u0B66' && input.LA(1)<='\u0B6F')||(input.LA(1)>='\u0BE7' && input.LA(1)<='\u0BEF')||(input.LA(1)>='\u0C66' && input.LA(1)<='\u0C6F')||(input.LA(1)>='\u0CE6' && input.LA(1)<='\u0CEF')||(input.LA(1)>='\u0D66' && input.LA(1)<='\u0D6F')||(input.LA(1)>='\u0E50' && input.LA(1)<='\u0E59')||(input.LA(1)>='\u0ED0' && input.LA(1)<='\u0ED9')||(input.LA(1)>='\u1040' && input.LA(1)<='\u1049') ) {
@@ -2432,8 +2432,8 @@ public class Xpand3Lexer extends Lexer {
public final void mWS() throws RecognitionException {
try {
int _type = WS;
- // src/org/eclipse/xpand3/parser/Xpand3.g:427:5: ( ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' ) )
- // src/org/eclipse/xpand3/parser/Xpand3.g:427:8: ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:431:5: ( ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' ) )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:431:8: ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' )
{
if ( (input.LA(1)>='\t' && input.LA(1)<='\n')||(input.LA(1)>='\f' && input.LA(1)<='\r')||input.LA(1)==' ' ) {
input.consume();
@@ -2460,12 +2460,12 @@ public class Xpand3Lexer extends Lexer {
public final void mCOMMENT() throws RecognitionException {
try {
int _type = COMMENT;
- // src/org/eclipse/xpand3/parser/Xpand3.g:431:5: ( '/*' ( options {greedy=false; } : . )* '*/' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:431:9: '/*' ( options {greedy=false; } : . )* '*/'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:435:5: ( '/*' ( options {greedy=false; } : . )* '*/' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:435:9: '/*' ( options {greedy=false; } : . )* '*/'
{
match("/*");
- // src/org/eclipse/xpand3/parser/Xpand3.g:431:14: ( options {greedy=false; } : . )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:435:14: ( options {greedy=false; } : . )*
loop10:
do {
int alt10=2;
@@ -2490,7 +2490,7 @@ public class Xpand3Lexer extends Lexer {
switch (alt10) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:431:42: .
+ // src/org/eclipse/xpand3/parser/Xpand3.g:435:42: .
{
matchAny();
@@ -2519,12 +2519,12 @@ public class Xpand3Lexer extends Lexer {
public final void mLINE_COMMENT() throws RecognitionException {
try {
int _type = LINE_COMMENT;
- // src/org/eclipse/xpand3/parser/Xpand3.g:435:5: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' | EOF ) )
- // src/org/eclipse/xpand3/parser/Xpand3.g:435:7: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' | EOF )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:439:5: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' | EOF ) )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:439:7: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' | EOF )
{
match("//");
- // src/org/eclipse/xpand3/parser/Xpand3.g:435:12: (~ ( '\\n' | '\\r' ) )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:439:12: (~ ( '\\n' | '\\r' ) )*
loop11:
do {
int alt11=2;
@@ -2537,7 +2537,7 @@ public class Xpand3Lexer extends Lexer {
switch (alt11) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:435:12: ~ ( '\\n' | '\\r' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:439:12: ~ ( '\\n' | '\\r' )
{
if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFE') ) {
input.consume();
@@ -2558,7 +2558,7 @@ public class Xpand3Lexer extends Lexer {
}
} while (true);
- // src/org/eclipse/xpand3/parser/Xpand3.g:435:26: ( ( '\\r' )? '\\n' | EOF )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:439:26: ( ( '\\r' )? '\\n' | EOF )
int alt13=2;
int LA13_0 = input.LA(1);
@@ -2569,9 +2569,9 @@ public class Xpand3Lexer extends Lexer {
alt13=2;}
switch (alt13) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:435:27: ( '\\r' )? '\\n'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:439:27: ( '\\r' )? '\\n'
{
- // src/org/eclipse/xpand3/parser/Xpand3.g:435:27: ( '\\r' )?
+ // src/org/eclipse/xpand3/parser/Xpand3.g:439:27: ( '\\r' )?
int alt12=2;
int LA12_0 = input.LA(1);
@@ -2580,7 +2580,7 @@ public class Xpand3Lexer extends Lexer {
}
switch (alt12) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:435:27: '\\r'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:439:27: '\\r'
{
match('\r');
@@ -2594,7 +2594,7 @@ public class Xpand3Lexer extends Lexer {
}
break;
case 2 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:435:38: EOF
+ // src/org/eclipse/xpand3/parser/Xpand3.g:439:38: EOF
{
match(EOF);
@@ -2618,8 +2618,8 @@ public class Xpand3Lexer extends Lexer {
public final void mREM_COMMENT_OUT() throws RecognitionException {
try {
int _type = REM_COMMENT_OUT;
- // src/org/eclipse/xpand3/parser/Xpand3.g:440:2: ({...}? => LG 'REM' RG ( options {greedy=false; } : . )* '\\u00ABENDREM' RG )
- // src/org/eclipse/xpand3/parser/Xpand3.g:440:4: {...}? => LG 'REM' RG ( options {greedy=false; } : . )* '\\u00ABENDREM' RG
+ // src/org/eclipse/xpand3/parser/Xpand3.g:444:2: ({...}? => LG 'REM' RG ( options {greedy=false; } : . )* '\\u00ABENDREM' RG )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:444:4: {...}? => LG 'REM' RG ( options {greedy=false; } : . )* '\\u00ABENDREM' RG
{
if ( !(!xpandMode) ) {
throw new FailedPredicateException(input, "REM_COMMENT_OUT", "!xpandMode");
@@ -2628,7 +2628,7 @@ public class Xpand3Lexer extends Lexer {
match("REM");
mRG();
- // src/org/eclipse/xpand3/parser/Xpand3.g:440:32: ( options {greedy=false; } : . )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:444:32: ( options {greedy=false; } : . )*
loop14:
do {
int alt14=2;
@@ -2707,7 +2707,7 @@ public class Xpand3Lexer extends Lexer {
switch (alt14) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:440:60: .
+ // src/org/eclipse/xpand3/parser/Xpand3.g:444:60: .
{
matchAny();
@@ -2737,8 +2737,8 @@ public class Xpand3Lexer extends Lexer {
public final void mREM_COMMENT() throws RecognitionException {
try {
int _type = REM_COMMENT;
- // src/org/eclipse/xpand3/parser/Xpand3.g:443:13: ({...}? => 'REM' RG ( options {greedy=false; } : . )* '\\u00ABENDREM' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:444:2: {...}? => 'REM' RG ( options {greedy=false; } : . )* '\\u00ABENDREM'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:447:13: ({...}? => 'REM' RG ( options {greedy=false; } : . )* '\\u00ABENDREM' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:448:2: {...}? => 'REM' RG ( options {greedy=false; } : . )* '\\u00ABENDREM'
{
if ( !(xpandMode) ) {
throw new FailedPredicateException(input, "REM_COMMENT", "xpandMode");
@@ -2746,7 +2746,7 @@ public class Xpand3Lexer extends Lexer {
match("REM");
mRG();
- // src/org/eclipse/xpand3/parser/Xpand3.g:444:26: ( options {greedy=false; } : . )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:448:26: ( options {greedy=false; } : . )*
loop15:
do {
int alt15=2;
@@ -2816,7 +2816,7 @@ public class Xpand3Lexer extends Lexer {
switch (alt15) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:444:54: .
+ // src/org/eclipse/xpand3/parser/Xpand3.g:448:54: .
{
matchAny();
@@ -2845,14 +2845,14 @@ public class Xpand3Lexer extends Lexer {
public final void mTEXT() throws RecognitionException {
try {
int _type = TEXT;
- // src/org/eclipse/xpand3/parser/Xpand3.g:448:6: ({...}? => RG (~ ( LG ) )* ( LG )? )
- // src/org/eclipse/xpand3/parser/Xpand3.g:449:3: {...}? => RG (~ ( LG ) )* ( LG )?
+ // src/org/eclipse/xpand3/parser/Xpand3.g:452:6: ({...}? => RG (~ ( LG ) )* ( LG )? )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:453:3: {...}? => RG (~ ( LG ) )* ( LG )?
{
if ( !(xpandMode) ) {
throw new FailedPredicateException(input, "TEXT", "xpandMode");
}
mRG();
- // src/org/eclipse/xpand3/parser/Xpand3.g:449:21: (~ ( LG ) )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:453:21: (~ ( LG ) )*
loop16:
do {
int alt16=2;
@@ -2865,7 +2865,7 @@ public class Xpand3Lexer extends Lexer {
switch (alt16) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:449:21: ~ ( LG )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:453:21: ~ ( LG )
{
if ( (input.LA(1)>='\u0000' && input.LA(1)<='\u00AA')||(input.LA(1)>='\u00AC' && input.LA(1)<='\uFFFE') ) {
input.consume();
@@ -2886,7 +2886,7 @@ public class Xpand3Lexer extends Lexer {
}
} while (true);
- // src/org/eclipse/xpand3/parser/Xpand3.g:449:28: ( LG )?
+ // src/org/eclipse/xpand3/parser/Xpand3.g:453:28: ( LG )?
int alt17=2;
int LA17_0 = input.LA(1);
@@ -2895,7 +2895,7 @@ public class Xpand3Lexer extends Lexer {
}
switch (alt17) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:449:29: LG
+ // src/org/eclipse/xpand3/parser/Xpand3.g:453:29: LG
{
mLG();
@@ -2918,8 +2918,8 @@ public class Xpand3Lexer extends Lexer {
public final void mLG() throws RecognitionException {
try {
int _type = LG;
- // src/org/eclipse/xpand3/parser/Xpand3.g:453:2: ( '\\u00AB' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:453:4: '\\u00AB'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:457:2: ( '\\u00AB' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:457:4: '\\u00AB'
{
match('\u00AB');
@@ -2936,8 +2936,8 @@ public class Xpand3Lexer extends Lexer {
public final void mRG() throws RecognitionException {
try {
int _type = RG;
- // src/org/eclipse/xpand3/parser/Xpand3.g:455:2: ( '\\u00BB' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:455:4: '\\u00BB'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:459:2: ( '\\u00BB' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:459:4: '\\u00BB'
{
match('\u00BB');
@@ -3525,7 +3525,7 @@ public class Xpand3Lexer extends Lexer {
alt18=94;
}
else {
- alt18=60;}
+ alt18=61;}
}
else {
alt18=94;}
@@ -4321,7 +4321,7 @@ public class Xpand3Lexer extends Lexer {
alt18=94;
}
else {
- alt18=57;}
+ alt18=58;}
}
else {
alt18=94;}
@@ -4642,7 +4642,7 @@ public class Xpand3Lexer extends Lexer {
int LA18_27 = input.LA(2);
if ( (LA18_27=='=') ) {
- alt18=61;
+ alt18=62;
}
else {
alt18=49;}
@@ -4905,10 +4905,13 @@ public class Xpand3Lexer extends Lexer {
alt18=94;}
}
+ else if ( (LA18_0=='{') ) {
+ alt18=55;
+ }
else if ( (LA18_0=='d') ) {
- int LA18_31 = input.LA(2);
+ int LA18_32 = input.LA(2);
- if ( (LA18_31=='e') ) {
+ if ( (LA18_32=='e') ) {
int LA18_100 = input.LA(3);
if ( (LA18_100=='f') ) {
@@ -4930,7 +4933,7 @@ public class Xpand3Lexer extends Lexer {
alt18=94;
}
else {
- alt18=55;}
+ alt18=56;}
}
else {
alt18=94;}
@@ -4951,39 +4954,30 @@ public class Xpand3Lexer extends Lexer {
alt18=94;}
}
else if ( (LA18_0=='}') ) {
- alt18=56;
+ alt18=57;
}
else if ( (LA18_0=='|') ) {
- int LA18_33 = input.LA(2);
+ int LA18_34 = input.LA(2);
- if ( (LA18_33=='|') ) {
- alt18=58;
+ if ( (LA18_34=='|') ) {
+ alt18=59;
}
else {
alt18=85;}
}
else if ( (LA18_0=='&') ) {
- alt18=59;
+ alt18=60;
}
else if ( (LA18_0=='!') ) {
- int LA18_35 = input.LA(2);
-
- if ( (LA18_35=='=') ) {
- alt18=62;
- }
- else {
- alt18=69;}
- }
- else if ( (LA18_0=='>') ) {
int LA18_36 = input.LA(2);
if ( (LA18_36=='=') ) {
alt18=63;
}
else {
- alt18=65;}
+ alt18=70;}
}
- else if ( (LA18_0=='<') ) {
+ else if ( (LA18_0=='>') ) {
int LA18_37 = input.LA(2);
if ( (LA18_37=='=') ) {
@@ -4992,8 +4986,17 @@ public class Xpand3Lexer extends Lexer {
else {
alt18=66;}
}
+ else if ( (LA18_0=='<') ) {
+ int LA18_38 = input.LA(2);
+
+ if ( (LA18_38=='=') ) {
+ alt18=65;
+ }
+ else {
+ alt18=67;}
+ }
else if ( (LA18_0=='+') ) {
- alt18=67;
+ alt18=68;
}
else if ( (LA18_0=='/') ) {
switch ( input.LA(2) ) {
@@ -5008,13 +5011,13 @@ public class Xpand3Lexer extends Lexer {
}
break;
default:
- alt18=68;}
+ alt18=69;}
}
else if ( (LA18_0=='G') ) {
- int LA18_40 = input.LA(2);
+ int LA18_41 = input.LA(2);
- if ( (LA18_40=='L') ) {
+ if ( (LA18_41=='L') ) {
int LA18_112 = input.LA(3);
if ( (LA18_112=='O') ) {
@@ -5042,7 +5045,7 @@ public class Xpand3Lexer extends Lexer {
alt18=94;
}
else {
- alt18=70;}
+ alt18=71;}
}
else {
alt18=94;}
@@ -5068,9 +5071,6 @@ public class Xpand3Lexer extends Lexer {
else {
alt18=94;}
}
- else if ( (LA18_0=='{') ) {
- alt18=71;
- }
else if ( (LA18_0=='n') ) {
switch ( input.LA(2) ) {
case 'u':
diff --git a/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3Parser.java b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3Parser.java
index 02d7d88c..2bb1eddc 100644
--- a/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3Parser.java
+++ b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3Parser.java
@@ -1,4 +1,4 @@
-// $ANTLR 3.0.1 src/org/eclipse/xpand3/parser/Xpand3.g 2008-02-28 13:17:13
+// $ANTLR 3.0.1 src/org/eclipse/xpand3/parser/Xpand3.g 2008-02-28 15:53:24
package org.eclipse.xpand3.parser;
@@ -12,7 +12,7 @@ import java.util.HashMap;
/** START EDITED 'abstract' added */
public abstract class Xpand3Parser extends Parser {
public static final String[] tokenNames = new String[] {
- "<invalid>", "<EOR>", "<DOWN>", "<UP>", "LG", "RG", "DEFINE", "ENDDEFINE", "AROUND", "ENDAROUND", "TEXT", "StringLiteral", "IntLiteral", "Identifier", "EscapeSequence", "UnicodeEscape", "OctalEscape", "HexDigit", "Letter", "JavaIDDigit", "WS", "COMMENT", "LINE_COMMENT", "REM_COMMENT_OUT", "REM_COMMENT", "'IMPORT'", "'EXTENSION'", "'import'", "';'", "'extension'", "'reexport'", "'('", "','", "'*'", "')'", "'FOR'", "'-'", "'ERROR'", "'EXPAND'", "'FOREACH'", "'SEPARATOR'", "'FILE'", "'ENDFILE'", "'AS'", "'ITERATOR'", "'ENDFOREACH'", "'IF'", "'ENDIF'", "'ELSEIF'", "'ELSE'", "'LET'", "'ENDLET'", "'PROTECT'", "'CSTART'", "'CEND'", "'ID'", "'DISABLE'", "'ENDPROTECT'", "'context'", "'if'", "'WARNING'", "':'", "'around'", "'::'", "'private'", "'cached'", "'create'", "'JAVA'", "'.'", "'Collection'", "'List'", "'Set'", "'let'", "'='", "'->'", "'?'", "'then'", "'else'", "'switch'", "'default'", "'}'", "'case'", "'||'", "'&&'", "'implies'", "'=='", "'!='", "'>='", "'<='", "'>'", "'<'", "'+'", "'/'", "'!'", "'GLOBALVAR'", "'{'", "'new'", "'false'", "'true'", "'null'", "'typeSelect'", "'collect'", "'select'", "'selectFirst'", "'reject'", "'exists'", "'notExists'", "'sortBy'", "'forAll'", "'|'", "'['", "']'"
+ "<invalid>", "<EOR>", "<DOWN>", "<UP>", "LG", "RG", "DEFINE", "ENDDEFINE", "AROUND", "ENDAROUND", "TEXT", "StringLiteral", "IntLiteral", "Identifier", "EscapeSequence", "UnicodeEscape", "OctalEscape", "HexDigit", "Letter", "JavaIDDigit", "WS", "COMMENT", "LINE_COMMENT", "REM_COMMENT_OUT", "REM_COMMENT", "'IMPORT'", "'EXTENSION'", "'import'", "';'", "'extension'", "'reexport'", "'('", "','", "'*'", "')'", "'FOR'", "'-'", "'ERROR'", "'EXPAND'", "'FOREACH'", "'SEPARATOR'", "'FILE'", "'ENDFILE'", "'AS'", "'ITERATOR'", "'ENDFOREACH'", "'IF'", "'ENDIF'", "'ELSEIF'", "'ELSE'", "'LET'", "'ENDLET'", "'PROTECT'", "'CSTART'", "'CEND'", "'ID'", "'DISABLE'", "'ENDPROTECT'", "'context'", "'if'", "'WARNING'", "':'", "'around'", "'::'", "'private'", "'cached'", "'create'", "'JAVA'", "'.'", "'Collection'", "'List'", "'Set'", "'let'", "'='", "'->'", "'?'", "'then'", "'else'", "'switch'", "'{'", "'default'", "'}'", "'case'", "'||'", "'&&'", "'implies'", "'=='", "'!='", "'>='", "'<='", "'>'", "'<'", "'+'", "'/'", "'!'", "'GLOBALVAR'", "'new'", "'false'", "'true'", "'null'", "'typeSelect'", "'collect'", "'select'", "'selectFirst'", "'reject'", "'exists'", "'notExists'", "'sortBy'", "'forAll'", "'|'", "'['", "']'"
};
public static final int IntLiteral=12;
public static final int Identifier=13;
@@ -39,13 +39,14 @@ public abstract class Xpand3Parser extends Parser {
public Xpand3Parser(TokenStream input) {
super(input);
- ruleMemo = new HashMap[59+1];
+ ruleMemo = new HashMap[60+1];
}
/* START EDITED */
protected abstract void ruleEntered(String ruleName);
protected abstract void ruleLeft(String ruleName);
+ protected abstract void assignNextNodeTo(String alias);
protected abstract void tokenConsumed(String name, CommonToken ct);
/* END EDITED */
@@ -59,7 +60,9 @@ public abstract class Xpand3Parser extends Parser {
public final void r_file() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_file");
+ if(backtracking ==0) {
+ ruleEntered("r_file");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:15:9: ( ( r_nsImport )* ( r_abstractDeclaration )* EOF )
// src/org/eclipse/xpand3/parser/Xpand3.g:16:2: ( r_nsImport )* ( r_abstractDeclaration )* EOF
@@ -130,7 +133,9 @@ public abstract class Xpand3Parser extends Parser {
} while (true);
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,EOF,FOLLOW_EOF_in_r_file53); if (failed) return ;
@@ -143,7 +148,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_file");
+ if(backtracking==0) {
+ ruleLeft("r_file");
+ }
/** END EDITED */
}
return ;
@@ -156,7 +163,9 @@ public abstract class Xpand3Parser extends Parser {
public final void r_nsImport() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_nsImport");
+ if(backtracking ==0) {
+ ruleEntered("r_nsImport");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:21:12: ( LG 'IMPORT' r_type RG | LG 'EXTENSION' r_type RG | 'import' r_type ';' | 'extension' r_type ( 'reexport' )? ';' )
int alt4=4;
@@ -203,11 +212,15 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:22:2: LG 'IMPORT' r_type RG
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,LG,FOLLOW_LG_in_r_nsImport63); if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,25,FOLLOW_25_in_r_nsImport65); if (failed) return ;
pushFollow(FOLLOW_r_type_in_r_nsImport67);
@@ -215,7 +228,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,RG,FOLLOW_RG_in_r_nsImport69); if (failed) return ;
@@ -225,11 +240,15 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:23:2: LG 'EXTENSION' r_type RG
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,LG,FOLLOW_LG_in_r_nsImport74); if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,26,FOLLOW_26_in_r_nsImport76); if (failed) return ;
pushFollow(FOLLOW_r_type_in_r_nsImport78);
@@ -237,7 +256,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,RG,FOLLOW_RG_in_r_nsImport80); if (failed) return ;
@@ -247,7 +268,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:24:2: 'import' r_type ';'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,27,FOLLOW_27_in_r_nsImport85); if (failed) return ;
pushFollow(FOLLOW_r_type_in_r_nsImport87);
@@ -255,7 +278,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,28,FOLLOW_28_in_r_nsImport90); if (failed) return ;
@@ -265,7 +290,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:25:2: 'extension' r_type ( 'reexport' )? ';'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,29,FOLLOW_29_in_r_nsImport96); if (failed) return ;
pushFollow(FOLLOW_r_type_in_r_nsImport98);
@@ -284,7 +311,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:25:22: 'reexport'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,30,FOLLOW_30_in_r_nsImport101); if (failed) return ;
@@ -294,7 +323,9 @@ public abstract class Xpand3Parser extends Parser {
}
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,28,FOLLOW_28_in_r_nsImport105); if (failed) return ;
@@ -309,7 +340,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_nsImport");
+ if(backtracking==0) {
+ ruleLeft("r_nsImport");
+ }
/** END EDITED */
}
return ;
@@ -322,7 +355,9 @@ public abstract class Xpand3Parser extends Parser {
public final void r_abstractDeclaration() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_abstractDeclaration");
+ if(backtracking ==0) {
+ ruleEntered("r_abstractDeclaration");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:28:23: ( r_check | r_around | r_extension | r_definition | r_definitionAround )
int alt5=5;
@@ -352,12 +387,12 @@ public abstract class Xpand3Parser extends Parser {
{
int LA5_4 = input.LA(2);
- if ( (LA5_4==DEFINE) ) {
- alt5=4;
- }
- else if ( (LA5_4==AROUND) ) {
+ if ( (LA5_4==AROUND) ) {
alt5=5;
}
+ else if ( (LA5_4==DEFINE) ) {
+ alt5=4;
+ }
else {
if (backtracking>0) {failed=true; return ;}
NoViableAltException nvae =
@@ -435,7 +470,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_abstractDeclaration");
+ if(backtracking==0) {
+ ruleLeft("r_abstractDeclaration");
+ }
/** END EDITED */
}
return ;
@@ -448,17 +485,23 @@ public abstract class Xpand3Parser extends Parser {
public final void r_definition() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_definition");
+ if(backtracking ==0) {
+ ruleEntered("r_definition");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:38:14: ( LG DEFINE r_identifier ( '(' ( r_declaredParameterList ( ( ',' )? '*' )? | '*' )? ')' )? 'FOR' r_type r_sequence ENDDEFINE RG )
// src/org/eclipse/xpand3/parser/Xpand3.g:39:2: LG DEFINE r_identifier ( '(' ( r_declaredParameterList ( ( ',' )? '*' )? | '*' )? ')' )? 'FOR' r_type r_sequence ENDDEFINE RG
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,LG,FOLLOW_LG_in_r_definition148); if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,DEFINE,FOLLOW_DEFINE_in_r_definition150); if (failed) return ;
pushFollow(FOLLOW_r_identifier_in_r_definition152);
@@ -477,7 +520,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:39:26: '(' ( r_declaredParameterList ( ( ',' )? '*' )? | '*' )? ')'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,31,FOLLOW_31_in_r_definition155); if (failed) return ;
// src/org/eclipse/xpand3/parser/Xpand3.g:39:30: ( r_declaredParameterList ( ( ',' )? '*' )? | '*' )?
@@ -521,7 +566,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:39:56: ','
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,32,FOLLOW_32_in_r_definition161); if (failed) return ;
@@ -531,7 +578,9 @@ public abstract class Xpand3Parser extends Parser {
}
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,33,FOLLOW_33_in_r_definition164); if (failed) return ;
@@ -547,7 +596,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:39:69: '*'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,33,FOLLOW_33_in_r_definition170); if (failed) return ;
@@ -557,7 +608,9 @@ public abstract class Xpand3Parser extends Parser {
}
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,34,FOLLOW_34_in_r_definition174); if (failed) return ;
@@ -567,7 +620,9 @@ public abstract class Xpand3Parser extends Parser {
}
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,35,FOLLOW_35_in_r_definition178); if (failed) return ;
pushFollow(FOLLOW_r_type_in_r_definition180);
@@ -579,11 +634,15 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,ENDDEFINE,FOLLOW_ENDDEFINE_in_r_definition186); if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,RG,FOLLOW_RG_in_r_definition188); if (failed) return ;
@@ -596,7 +655,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_definition");
+ if(backtracking==0) {
+ ruleLeft("r_definition");
+ }
/** END EDITED */
}
return ;
@@ -609,17 +670,23 @@ public abstract class Xpand3Parser extends Parser {
public final void r_definitionAround() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_definitionAround");
+ if(backtracking ==0) {
+ ruleEntered("r_definitionAround");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:44:20: ( LG AROUND r_pointcut ( '(' ( r_declaredParameterList ( ( ',' )? '*' )? | '*' )? ')' )? 'FOR' r_type r_sequence ENDAROUND RG )
// src/org/eclipse/xpand3/parser/Xpand3.g:45:2: LG AROUND r_pointcut ( '(' ( r_declaredParameterList ( ( ',' )? '*' )? | '*' )? ')' )? 'FOR' r_type r_sequence ENDAROUND RG
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,LG,FOLLOW_LG_in_r_definitionAround200); if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,AROUND,FOLLOW_AROUND_in_r_definitionAround202); if (failed) return ;
pushFollow(FOLLOW_r_pointcut_in_r_definitionAround204);
@@ -638,7 +705,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:45:24: '(' ( r_declaredParameterList ( ( ',' )? '*' )? | '*' )? ')'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,31,FOLLOW_31_in_r_definitionAround207); if (failed) return ;
// src/org/eclipse/xpand3/parser/Xpand3.g:45:28: ( r_declaredParameterList ( ( ',' )? '*' )? | '*' )?
@@ -682,7 +751,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:45:54: ','
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,32,FOLLOW_32_in_r_definitionAround213); if (failed) return ;
@@ -692,7 +763,9 @@ public abstract class Xpand3Parser extends Parser {
}
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,33,FOLLOW_33_in_r_definitionAround216); if (failed) return ;
@@ -708,7 +781,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:45:67: '*'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,33,FOLLOW_33_in_r_definitionAround222); if (failed) return ;
@@ -718,7 +793,9 @@ public abstract class Xpand3Parser extends Parser {
}
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,34,FOLLOW_34_in_r_definitionAround226); if (failed) return ;
@@ -728,7 +805,9 @@ public abstract class Xpand3Parser extends Parser {
}
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,35,FOLLOW_35_in_r_definitionAround230); if (failed) return ;
pushFollow(FOLLOW_r_type_in_r_definitionAround232);
@@ -740,11 +819,15 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,ENDAROUND,FOLLOW_ENDAROUND_in_r_definitionAround238); if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,RG,FOLLOW_RG_in_r_definitionAround240); if (failed) return ;
@@ -757,7 +840,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_definitionAround");
+ if(backtracking==0) {
+ ruleLeft("r_definitionAround");
+ }
/** END EDITED */
}
return ;
@@ -770,7 +855,9 @@ public abstract class Xpand3Parser extends Parser {
public final void r_sequence() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_sequence");
+ if(backtracking ==0) {
+ ruleEntered("r_sequence");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:50:12: ( r_textSequence ( r_statement r_textSequence )* )
// src/org/eclipse/xpand3/parser/Xpand3.g:51:3: r_textSequence ( r_statement r_textSequence )*
@@ -785,7 +872,7 @@ public abstract class Xpand3Parser extends Parser {
int alt14=2;
int LA14_0 = input.LA(1);
- if ( ((LA14_0>=StringLiteral && LA14_0<=Identifier)||LA14_0==31||(LA14_0>=36 && LA14_0<=39)||LA14_0==41||LA14_0==46||LA14_0==50||LA14_0==52||LA14_0==59||(LA14_0>=69 && LA14_0<=72)||LA14_0==78||(LA14_0>=93 && LA14_0<=108)) ) {
+ if ( ((LA14_0>=StringLiteral && LA14_0<=Identifier)||LA14_0==31||(LA14_0>=36 && LA14_0<=39)||LA14_0==41||LA14_0==46||LA14_0==50||LA14_0==52||LA14_0==59||(LA14_0>=69 && LA14_0<=72)||(LA14_0>=78 && LA14_0<=79)||(LA14_0>=94 && LA14_0<=108)) ) {
alt14=1;
}
@@ -821,7 +908,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_sequence");
+ if(backtracking==0) {
+ ruleLeft("r_sequence");
+ }
/** END EDITED */
}
return ;
@@ -834,7 +923,9 @@ public abstract class Xpand3Parser extends Parser {
public final void r_statement() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_statement");
+ if(backtracking ==0) {
+ ruleEntered("r_statement");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:56:13: ( r_simpleStatement | r_fileStatement | r_foreachStatement | r_ifStatement | r_letStatement | r_protectStatement )
int alt15=6;
@@ -852,7 +943,7 @@ public abstract class Xpand3Parser extends Parser {
case 71:
case 72:
case 78:
- case 93:
+ case 79:
case 94:
case 95:
case 96:
@@ -975,7 +1066,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_statement");
+ if(backtracking==0) {
+ ruleLeft("r_statement");
+ }
/** END EDITED */
}
return ;
@@ -988,7 +1081,9 @@ public abstract class Xpand3Parser extends Parser {
public final void r_textSequence() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_textSequence");
+ if(backtracking ==0) {
+ ruleEntered("r_textSequence");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:65:16: ( r_text ( r_text )* )
// src/org/eclipse/xpand3/parser/Xpand3.g:66:2: r_text ( r_text )*
@@ -1044,7 +1139,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_textSequence");
+ if(backtracking==0) {
+ ruleLeft("r_textSequence");
+ }
/** END EDITED */
}
return ;
@@ -1057,7 +1154,9 @@ public abstract class Xpand3Parser extends Parser {
public final void r_text() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_text");
+ if(backtracking ==0) {
+ ruleEntered("r_text");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:69:8: ( ( '-' )? TEXT )
// src/org/eclipse/xpand3/parser/Xpand3.g:70:2: ( '-' )? TEXT
@@ -1074,7 +1173,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:70:2: '-'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,36,FOLLOW_36_in_r_text330); if (failed) return ;
@@ -1084,7 +1185,9 @@ public abstract class Xpand3Parser extends Parser {
}
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,TEXT,FOLLOW_TEXT_in_r_text333); if (failed) return ;
@@ -1097,7 +1200,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_text");
+ if(backtracking==0) {
+ ruleLeft("r_text");
+ }
/** END EDITED */
}
return ;
@@ -1110,7 +1215,9 @@ public abstract class Xpand3Parser extends Parser {
public final void r_simpleStatement() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_simpleStatement");
+ if(backtracking ==0) {
+ ruleEntered("r_simpleStatement");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:73:19: ( r_errorStatement | r_expandStatement | r_expressionStmt )
int alt18=3;
@@ -1136,7 +1243,7 @@ public abstract class Xpand3Parser extends Parser {
case 71:
case 72:
case 78:
- case 93:
+ case 79:
case 94:
case 95:
case 96:
@@ -1204,7 +1311,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_simpleStatement");
+ if(backtracking==0) {
+ ruleLeft("r_simpleStatement");
+ }
/** END EDITED */
}
return ;
@@ -1217,13 +1326,17 @@ public abstract class Xpand3Parser extends Parser {
public final void r_errorStatement() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_errorStatement");
+ if(backtracking ==0) {
+ ruleEntered("r_errorStatement");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:79:18: ( 'ERROR' r_expression )
// src/org/eclipse/xpand3/parser/Xpand3.g:80:3: 'ERROR' r_expression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,37,FOLLOW_37_in_r_errorStatement363); if (failed) return ;
pushFollow(FOLLOW_r_expression_in_r_errorStatement365);
@@ -1240,7 +1353,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_errorStatement");
+ if(backtracking==0) {
+ ruleLeft("r_errorStatement");
+ }
/** END EDITED */
}
return ;
@@ -1253,13 +1368,17 @@ public abstract class Xpand3Parser extends Parser {
public final void r_expandStatement() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_expandStatement");
+ if(backtracking ==0) {
+ ruleEntered("r_expandStatement");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:83:19: ( 'EXPAND' r_simpleType ( '(' r_parameterList ')' )? ( ( 'FOR' r_expression ) | ( 'FOREACH' r_expression ( 'SEPARATOR' r_expression )? ) )? )
// src/org/eclipse/xpand3/parser/Xpand3.g:84:3: 'EXPAND' r_simpleType ( '(' r_parameterList ')' )? ( ( 'FOR' r_expression ) | ( 'FOREACH' r_expression ( 'SEPARATOR' r_expression )? ) )?
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,38,FOLLOW_38_in_r_expandStatement376); if (failed) return ;
pushFollow(FOLLOW_r_simpleType_in_r_expandStatement378);
@@ -1278,7 +1397,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:84:26: '(' r_parameterList ')'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,31,FOLLOW_31_in_r_expandStatement381); if (failed) return ;
pushFollow(FOLLOW_r_parameterList_in_r_expandStatement383);
@@ -1286,7 +1407,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,34,FOLLOW_34_in_r_expandStatement385); if (failed) return ;
@@ -1313,7 +1436,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:84:54: 'FOR' r_expression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,35,FOLLOW_35_in_r_expandStatement391); if (failed) return ;
pushFollow(FOLLOW_r_expression_in_r_expandStatement393);
@@ -1333,7 +1458,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:85:6: 'FOREACH' r_expression ( 'SEPARATOR' r_expression )?
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,39,FOLLOW_39_in_r_expandStatement401); if (failed) return ;
pushFollow(FOLLOW_r_expression_in_r_expandStatement402);
@@ -1352,7 +1479,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:85:29: 'SEPARATOR' r_expression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,40,FOLLOW_40_in_r_expandStatement405); if (failed) return ;
pushFollow(FOLLOW_r_expression_in_r_expandStatement407);
@@ -1384,7 +1513,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_expandStatement");
+ if(backtracking==0) {
+ ruleLeft("r_expandStatement");
+ }
/** END EDITED */
}
return ;
@@ -1397,7 +1528,9 @@ public abstract class Xpand3Parser extends Parser {
public final void r_expressionStmt() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_expressionStmt");
+ if(backtracking ==0) {
+ ruleEntered("r_expressionStmt");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:88:19: ( r_expression )
// src/org/eclipse/xpand3/parser/Xpand3.g:89:2: r_expression
@@ -1416,7 +1549,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_expressionStmt");
+ if(backtracking==0) {
+ ruleLeft("r_expressionStmt");
+ }
/** END EDITED */
}
return ;
@@ -1429,13 +1564,17 @@ public abstract class Xpand3Parser extends Parser {
public final void r_fileStatement() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_fileStatement");
+ if(backtracking ==0) {
+ ruleEntered("r_fileStatement");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:92:17: ( 'FILE' r_expression ( r_identifier )? r_sequence 'ENDFILE' )
// src/org/eclipse/xpand3/parser/Xpand3.g:93:2: 'FILE' r_expression ( r_identifier )? r_sequence 'ENDFILE'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,41,FOLLOW_41_in_r_fileStatement433); if (failed) return ;
pushFollow(FOLLOW_r_expression_in_r_fileStatement435);
@@ -1468,7 +1607,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,42,FOLLOW_42_in_r_fileStatement448); if (failed) return ;
@@ -1481,7 +1622,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_fileStatement");
+ if(backtracking==0) {
+ ruleLeft("r_fileStatement");
+ }
/** END EDITED */
}
return ;
@@ -1494,13 +1637,17 @@ public abstract class Xpand3Parser extends Parser {
public final void r_foreachStatement() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_foreachStatement");
+ if(backtracking ==0) {
+ ruleEntered("r_foreachStatement");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:98:20: ( 'FOREACH' r_expression 'AS' r_identifier ( 'ITERATOR' r_identifier )? ( 'SEPARATOR' r_expression )? r_sequence 'ENDFOREACH' )
// src/org/eclipse/xpand3/parser/Xpand3.g:99:3: 'FOREACH' r_expression 'AS' r_identifier ( 'ITERATOR' r_identifier )? ( 'SEPARATOR' r_expression )? r_sequence 'ENDFOREACH'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,39,FOLLOW_39_in_r_foreachStatement460); if (failed) return ;
pushFollow(FOLLOW_r_expression_in_r_foreachStatement462);
@@ -1508,7 +1655,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,43,FOLLOW_43_in_r_foreachStatement464); if (failed) return ;
pushFollow(FOLLOW_r_identifier_in_r_foreachStatement466);
@@ -1527,7 +1676,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:99:45: 'ITERATOR' r_identifier
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,44,FOLLOW_44_in_r_foreachStatement469); if (failed) return ;
pushFollow(FOLLOW_r_identifier_in_r_foreachStatement471);
@@ -1552,7 +1703,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:99:72: 'SEPARATOR' r_expression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,40,FOLLOW_40_in_r_foreachStatement476); if (failed) return ;
pushFollow(FOLLOW_r_expression_in_r_foreachStatement478);
@@ -1570,7 +1723,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,45,FOLLOW_45_in_r_foreachStatement491); if (failed) return ;
@@ -1583,7 +1738,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_foreachStatement");
+ if(backtracking==0) {
+ ruleLeft("r_foreachStatement");
+ }
/** END EDITED */
}
return ;
@@ -1596,13 +1753,17 @@ public abstract class Xpand3Parser extends Parser {
public final void r_ifStatement() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_ifStatement");
+ if(backtracking ==0) {
+ ruleEntered("r_ifStatement");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:104:15: ( 'IF' r_expression r_sequence ( r_elseIfStatement )* ( r_elseStatement )? 'ENDIF' )
// src/org/eclipse/xpand3/parser/Xpand3.g:105:6: 'IF' r_expression r_sequence ( r_elseIfStatement )* ( r_elseStatement )? 'ENDIF'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,46,FOLLOW_46_in_r_ifStatement506); if (failed) return ;
pushFollow(FOLLOW_r_expression_in_r_ifStatement508);
@@ -1663,7 +1824,9 @@ public abstract class Xpand3Parser extends Parser {
}
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,47,FOLLOW_47_in_r_ifStatement527); if (failed) return ;
@@ -1676,7 +1839,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_ifStatement");
+ if(backtracking==0) {
+ ruleLeft("r_ifStatement");
+ }
/** END EDITED */
}
return ;
@@ -1689,13 +1854,17 @@ public abstract class Xpand3Parser extends Parser {
public final void r_elseIfStatement() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_elseIfStatement");
+ if(backtracking ==0) {
+ ruleEntered("r_elseIfStatement");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:112:19: ( 'ELSEIF' r_expression r_sequence )
// src/org/eclipse/xpand3/parser/Xpand3.g:113:2: 'ELSEIF' r_expression r_sequence
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,48,FOLLOW_48_in_r_elseIfStatement537); if (failed) return ;
pushFollow(FOLLOW_r_expression_in_r_elseIfStatement539);
@@ -1716,7 +1885,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_elseIfStatement");
+ if(backtracking==0) {
+ ruleLeft("r_elseIfStatement");
+ }
/** END EDITED */
}
return ;
@@ -1729,13 +1900,17 @@ public abstract class Xpand3Parser extends Parser {
public final void r_elseStatement() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_elseStatement");
+ if(backtracking ==0) {
+ ruleEntered("r_elseStatement");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:117:17: ( 'ELSE' r_sequence )
// src/org/eclipse/xpand3/parser/Xpand3.g:118:2: 'ELSE' r_sequence
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,49,FOLLOW_49_in_r_elseStatement555); if (failed) return ;
pushFollow(FOLLOW_r_sequence_in_r_elseStatement559);
@@ -1752,7 +1927,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_elseStatement");
+ if(backtracking==0) {
+ ruleLeft("r_elseStatement");
+ }
/** END EDITED */
}
return ;
@@ -1765,13 +1942,17 @@ public abstract class Xpand3Parser extends Parser {
public final void r_letStatement() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_letStatement");
+ if(backtracking ==0) {
+ ruleEntered("r_letStatement");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:122:16: ( 'LET' r_expression 'AS' r_identifier r_sequence 'ENDLET' )
// src/org/eclipse/xpand3/parser/Xpand3.g:123:3: 'LET' r_expression 'AS' r_identifier r_sequence 'ENDLET'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,50,FOLLOW_50_in_r_letStatement571); if (failed) return ;
pushFollow(FOLLOW_r_expression_in_r_letStatement573);
@@ -1779,7 +1960,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,43,FOLLOW_43_in_r_letStatement575); if (failed) return ;
pushFollow(FOLLOW_r_identifier_in_r_letStatement577);
@@ -1791,7 +1974,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,51,FOLLOW_51_in_r_letStatement588); if (failed) return ;
@@ -1804,7 +1989,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_letStatement");
+ if(backtracking==0) {
+ ruleLeft("r_letStatement");
+ }
/** END EDITED */
}
return ;
@@ -1817,17 +2004,23 @@ public abstract class Xpand3Parser extends Parser {
public final void r_protectStatement() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_protectStatement");
+ if(backtracking ==0) {
+ ruleEntered("r_protectStatement");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:128:20: ( 'PROTECT' 'CSTART' r_expression 'CEND' r_expression 'ID' r_expression ( 'DISABLE' )? r_sequence 'ENDPROTECT' )
// src/org/eclipse/xpand3/parser/Xpand3.g:129:2: 'PROTECT' 'CSTART' r_expression 'CEND' r_expression 'ID' r_expression ( 'DISABLE' )? r_sequence 'ENDPROTECT'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,52,FOLLOW_52_in_r_protectStatement599); if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,53,FOLLOW_53_in_r_protectStatement604); if (failed) return ;
pushFollow(FOLLOW_r_expression_in_r_protectStatement606);
@@ -1835,7 +2028,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,54,FOLLOW_54_in_r_protectStatement611); if (failed) return ;
pushFollow(FOLLOW_r_expression_in_r_protectStatement613);
@@ -1843,7 +2038,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,55,FOLLOW_55_in_r_protectStatement626); if (failed) return ;
pushFollow(FOLLOW_r_expression_in_r_protectStatement628);
@@ -1862,7 +2059,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:132:29: 'DISABLE'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,56,FOLLOW_56_in_r_protectStatement630); if (failed) return ;
@@ -1876,7 +2075,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,57,FOLLOW_57_in_r_protectStatement640); if (failed) return ;
@@ -1889,7 +2090,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_protectStatement");
+ if(backtracking==0) {
+ ruleLeft("r_protectStatement");
+ }
/** END EDITED */
}
return ;
@@ -1902,13 +2105,17 @@ public abstract class Xpand3Parser extends Parser {
public final void r_check() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_check");
+ if(backtracking ==0) {
+ ruleEntered("r_check");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:139:9: ( 'context' r_type ( 'if' r_expression )? ( 'ERROR' | 'WARNING' ) r_expression ':' r_expression ';' )
// src/org/eclipse/xpand3/parser/Xpand3.g:140:2: 'context' r_type ( 'if' r_expression )? ( 'ERROR' | 'WARNING' ) r_expression ':' r_expression ';'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,58,FOLLOW_58_in_r_check652); if (failed) return ;
pushFollow(FOLLOW_r_type_in_r_check654);
@@ -1927,7 +2134,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:140:20: 'if' r_expression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,59,FOLLOW_59_in_r_check657); if (failed) return ;
pushFollow(FOLLOW_r_expression_in_r_check659);
@@ -1942,7 +2151,9 @@ public abstract class Xpand3Parser extends Parser {
if ( input.LA(1)==37||input.LA(1)==60 ) {
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */ input.consume();
errorRecovery=false;failed=false;
}
@@ -1958,7 +2169,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,61,FOLLOW_61_in_r_check671); if (failed) return ;
pushFollow(FOLLOW_r_expression_in_r_check675);
@@ -1966,7 +2179,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,28,FOLLOW_28_in_r_check677); if (failed) return ;
@@ -1979,7 +2194,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_check");
+ if(backtracking==0) {
+ ruleLeft("r_check");
+ }
/** END EDITED */
}
return ;
@@ -1992,13 +2209,17 @@ public abstract class Xpand3Parser extends Parser {
public final void r_around() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_around");
+ if(backtracking ==0) {
+ ruleEntered("r_around");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:144:11: ( 'around' r_pointcut '(' ( r_declaredParameterList ( ( ',' )? '*' )? | '*' )? ')' ':' r_expression ';' )
// src/org/eclipse/xpand3/parser/Xpand3.g:145:5: 'around' r_pointcut '(' ( r_declaredParameterList ( ( ',' )? '*' )? | '*' )? ')' ':' r_expression ';'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,62,FOLLOW_62_in_r_around692); if (failed) return ;
pushFollow(FOLLOW_r_pointcut_in_r_around694);
@@ -2006,7 +2227,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,31,FOLLOW_31_in_r_around696); if (failed) return ;
// src/org/eclipse/xpand3/parser/Xpand3.g:145:29: ( r_declaredParameterList ( ( ',' )? '*' )? | '*' )?
@@ -2050,7 +2273,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:145:55: ','
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,32,FOLLOW_32_in_r_around702); if (failed) return ;
@@ -2060,7 +2285,9 @@ public abstract class Xpand3Parser extends Parser {
}
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,33,FOLLOW_33_in_r_around705); if (failed) return ;
@@ -2076,7 +2303,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:145:68: '*'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,33,FOLLOW_33_in_r_around711); if (failed) return ;
@@ -2086,11 +2315,15 @@ public abstract class Xpand3Parser extends Parser {
}
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,34,FOLLOW_34_in_r_around715); if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,61,FOLLOW_61_in_r_around717); if (failed) return ;
pushFollow(FOLLOW_r_expression_in_r_around724);
@@ -2098,7 +2331,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,28,FOLLOW_28_in_r_around726); if (failed) return ;
@@ -2111,7 +2346,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_around");
+ if(backtracking==0) {
+ ruleLeft("r_around");
+ }
/** END EDITED */
}
return ;
@@ -2124,7 +2361,9 @@ public abstract class Xpand3Parser extends Parser {
public final void r_pointcut() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_pointcut");
+ if(backtracking ==0) {
+ ruleEntered("r_pointcut");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:149:13: ( ( '*' | r_identifier ) ( '*' | r_identifier | '::' )* )
// src/org/eclipse/xpand3/parser/Xpand3.g:150:2: ( '*' | r_identifier ) ( '*' | r_identifier | '::' )*
@@ -2151,7 +2390,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:150:4: '*'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,33,FOLLOW_33_in_r_pointcut743); if (failed) return ;
@@ -2198,7 +2439,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:152:6: '*'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,33,FOLLOW_33_in_r_pointcut757); if (failed) return ;
@@ -2218,7 +2461,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:154:6: '::'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,63,FOLLOW_63_in_r_pointcut773); if (failed) return ;
@@ -2240,7 +2485,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_pointcut");
+ if(backtracking==0) {
+ ruleLeft("r_pointcut");
+ }
/** END EDITED */
}
return ;
@@ -2253,7 +2500,9 @@ public abstract class Xpand3Parser extends Parser {
public final void r_extension() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_extension");
+ if(backtracking ==0) {
+ ruleEntered("r_extension");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:157:14: ( ( 'private' | 'cached' | 'create' )* ( r_type )? r_identifier ( r_identifier )? '(' ( r_declaredParameterList )? ')' ':' ( 'JAVA' r_javaType '.' r_identifier '(' ( r_javaType ( ',' r_javaType )* )? ')' | r_expression ) ';' )
// src/org/eclipse/xpand3/parser/Xpand3.g:158:2: ( 'private' | 'cached' | 'create' )* ( r_type )? r_identifier ( r_identifier )? '(' ( r_declaredParameterList )? ')' ':' ( 'JAVA' r_javaType '.' r_identifier '(' ( r_javaType ( ',' r_javaType )* )? ')' | r_expression ) ';'
@@ -2275,7 +2524,9 @@ public abstract class Xpand3Parser extends Parser {
{
if ( (input.LA(1)>=64 && input.LA(1)<=66) ) {
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */ input.consume();
errorRecovery=false;failed=false;
}
@@ -2305,10 +2556,7 @@ public abstract class Xpand3Parser extends Parser {
else if ( (LA35_0==Identifier) ) {
int LA35_2 = input.LA(2);
- if ( (LA35_2==63) ) {
- alt35=1;
- }
- else if ( (LA35_2==Identifier) ) {
+ if ( (LA35_2==Identifier||LA35_2==63) ) {
alt35=1;
}
}
@@ -2352,7 +2600,9 @@ public abstract class Xpand3Parser extends Parser {
}
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,31,FOLLOW_31_in_r_extension804); if (failed) return ;
// src/org/eclipse/xpand3/parser/Xpand3.g:158:72: ( r_declaredParameterList )?
@@ -2377,11 +2627,15 @@ public abstract class Xpand3Parser extends Parser {
}
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,34,FOLLOW_34_in_r_extension809); if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,61,FOLLOW_61_in_r_extension811); if (failed) return ;
// src/org/eclipse/xpand3/parser/Xpand3.g:159:3: ( 'JAVA' r_javaType '.' r_identifier '(' ( r_javaType ( ',' r_javaType )* )? ')' | r_expression )
@@ -2391,7 +2645,7 @@ public abstract class Xpand3Parser extends Parser {
if ( (LA40_0==67) ) {
alt40=1;
}
- else if ( ((LA40_0>=StringLiteral && LA40_0<=Identifier)||LA40_0==31||LA40_0==36||LA40_0==59||(LA40_0>=69 && LA40_0<=72)||LA40_0==78||(LA40_0>=93 && LA40_0<=108)) ) {
+ else if ( ((LA40_0>=StringLiteral && LA40_0<=Identifier)||LA40_0==31||LA40_0==36||LA40_0==59||(LA40_0>=69 && LA40_0<=72)||(LA40_0>=78 && LA40_0<=79)||(LA40_0>=94 && LA40_0<=108)) ) {
alt40=2;
}
else {
@@ -2406,7 +2660,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:159:4: 'JAVA' r_javaType '.' r_identifier '(' ( r_javaType ( ',' r_javaType )* )? ')'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,67,FOLLOW_67_in_r_extension816); if (failed) return ;
pushFollow(FOLLOW_r_javaType_in_r_extension818);
@@ -2414,7 +2670,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,68,FOLLOW_68_in_r_extension820); if (failed) return ;
pushFollow(FOLLOW_r_identifier_in_r_extension822);
@@ -2422,7 +2680,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,31,FOLLOW_31_in_r_extension824); if (failed) return ;
// src/org/eclipse/xpand3/parser/Xpand3.g:159:42: ( r_javaType ( ',' r_javaType )* )?
@@ -2456,7 +2716,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:159:55: ',' r_javaType
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,32,FOLLOW_32_in_r_extension829); if (failed) return ;
pushFollow(FOLLOW_r_javaType_in_r_extension831);
@@ -2479,7 +2741,9 @@ public abstract class Xpand3Parser extends Parser {
}
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,34,FOLLOW_34_in_r_extension838); if (failed) return ;
@@ -2499,7 +2763,9 @@ public abstract class Xpand3Parser extends Parser {
}
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,28,FOLLOW_28_in_r_extension848); if (failed) return ;
@@ -2512,7 +2778,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_extension");
+ if(backtracking==0) {
+ ruleLeft("r_extension");
+ }
/** END EDITED */
}
return ;
@@ -2525,7 +2793,9 @@ public abstract class Xpand3Parser extends Parser {
public final void r_javaType() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_javaType");
+ if(backtracking ==0) {
+ ruleEntered("r_javaType");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:163:13: ( r_identifier ( '.' ( r_identifier | 'Collection' | 'List' | 'Set' ) )* )
// src/org/eclipse/xpand3/parser/Xpand3.g:164:2: r_identifier ( '.' ( r_identifier | 'Collection' | 'List' | 'Set' ) )*
@@ -2565,7 +2835,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:165:3: '.' ( r_identifier | 'Collection' | 'List' | 'Set' )
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,68,FOLLOW_68_in_r_javaType865); if (failed) return ;
// src/org/eclipse/xpand3/parser/Xpand3.g:165:7: ( r_identifier | 'Collection' | 'List' | 'Set' )
@@ -2614,7 +2886,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:165:22: 'Collection'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,69,FOLLOW_69_in_r_javaType871); if (failed) return ;
@@ -2624,7 +2898,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:166:2: 'List'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,70,FOLLOW_70_in_r_javaType877); if (failed) return ;
@@ -2634,7 +2910,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:166:10: 'Set'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,71,FOLLOW_71_in_r_javaType880); if (failed) return ;
@@ -2662,7 +2940,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_javaType");
+ if(backtracking==0) {
+ ruleLeft("r_javaType");
+ }
/** END EDITED */
}
return ;
@@ -2675,7 +2955,9 @@ public abstract class Xpand3Parser extends Parser {
public final void test_expression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("test_expression");
+ if(backtracking ==0) {
+ ruleEntered("test_expression");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:173:16: ( r_expression EOF )
// src/org/eclipse/xpand3/parser/Xpand3.g:174:3: r_expression EOF
@@ -2685,7 +2967,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,EOF,FOLLOW_EOF_in_test_expression900); if (failed) return ;
@@ -2698,7 +2982,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("test_expression");
+ if(backtracking==0) {
+ ruleLeft("test_expression");
+ }
/** END EDITED */
}
return ;
@@ -2711,7 +2997,9 @@ public abstract class Xpand3Parser extends Parser {
public final void r_expression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_expression");
+ if(backtracking ==0) {
+ ruleEntered("r_expression");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:176:14: ( r_letExpression )
// src/org/eclipse/xpand3/parser/Xpand3.g:177:2: r_letExpression
@@ -2730,7 +3018,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_expression");
+ if(backtracking==0) {
+ ruleLeft("r_expression");
+ }
/** END EDITED */
}
return ;
@@ -2743,7 +3033,9 @@ public abstract class Xpand3Parser extends Parser {
public final void r_letExpression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_letExpression");
+ if(backtracking ==0) {
+ ruleEntered("r_letExpression");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:180:18: ( 'let' r_identifier '=' r_castedExpression ':' r_expression | r_castedExpression )
int alt43=2;
@@ -2752,7 +3044,7 @@ public abstract class Xpand3Parser extends Parser {
if ( (LA43_0==72) ) {
alt43=1;
}
- else if ( ((LA43_0>=StringLiteral && LA43_0<=Identifier)||LA43_0==31||LA43_0==36||LA43_0==59||(LA43_0>=69 && LA43_0<=71)||LA43_0==78||(LA43_0>=93 && LA43_0<=108)) ) {
+ else if ( ((LA43_0>=StringLiteral && LA43_0<=Identifier)||LA43_0==31||LA43_0==36||LA43_0==59||(LA43_0>=69 && LA43_0<=71)||(LA43_0>=78 && LA43_0<=79)||(LA43_0>=94 && LA43_0<=108)) ) {
alt43=2;
}
else {
@@ -2767,7 +3059,9 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:181:4: 'let' r_identifier '=' r_castedExpression ':' r_expression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,72,FOLLOW_72_in_r_letExpression922); if (failed) return ;
pushFollow(FOLLOW_r_identifier_in_r_letExpression924);
@@ -2775,7 +3069,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,73,FOLLOW_73_in_r_letExpression926); if (failed) return ;
pushFollow(FOLLOW_r_castedExpression_in_r_letExpression928);
@@ -2783,7 +3079,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,61,FOLLOW_61_in_r_letExpression930); if (failed) return ;
pushFollow(FOLLOW_r_expression_in_r_letExpression932);
@@ -2812,7 +3110,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_letExpression");
+ if(backtracking==0) {
+ ruleLeft("r_letExpression");
+ }
/** END EDITED */
}
return ;
@@ -2821,21 +3121,25 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start r_castedExpression
- // src/org/eclipse/xpand3/parser/Xpand3.g:185:1: r_castedExpression : ( ( '(' r_type ')' r_castedExpression )=> '(' r_type ')' r_chainExpression | r_chainExpression );
+ // src/org/eclipse/xpand3/parser/Xpand3.g:185:1: r_castedExpression : ( ( '(' r_type ')' r_chainExpression )=> '(' r_type ')' r_chainExpression | r_chainExpression );
public final void r_castedExpression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_castedExpression");
+ if(backtracking ==0) {
+ ruleEntered("r_castedExpression");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:185:20: ( ( '(' r_type ')' r_castedExpression )=> '(' r_type ')' r_chainExpression | r_chainExpression )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:185:20: ( ( '(' r_type ')' r_chainExpression )=> '(' r_type ')' r_chainExpression | r_chainExpression )
int alt44=2;
alt44 = dfa44.predict(input);
switch (alt44) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:186:5: ( '(' r_type ')' r_castedExpression )=> '(' r_type ')' r_chainExpression
+ // src/org/eclipse/xpand3/parser/Xpand3.g:186:5: ( '(' r_type ')' r_chainExpression )=> '(' r_type ')' r_chainExpression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,31,FOLLOW_31_in_r_castedExpression964); if (failed) return ;
pushFollow(FOLLOW_r_type_in_r_castedExpression966);
@@ -2843,7 +3147,9 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,34,FOLLOW_34_in_r_castedExpression968); if (failed) return ;
pushFollow(FOLLOW_r_chainExpression_in_r_castedExpression970);
@@ -2872,7 +3178,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_castedExpression");
+ if(backtracking==0) {
+ ruleLeft("r_castedExpression");
+ }
/** END EDITED */
}
return ;
@@ -2885,12 +3193,17 @@ public abstract class Xpand3Parser extends Parser {
public final void r_chainExpression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_chainExpression");
+ if(backtracking ==0) {
+ ruleEntered("r_chainExpression");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:191:20: ( r_ifExpression ( '->' r_ifExpression )* )
- // src/org/eclipse/xpand3/parser/Xpand3.g:192:2: r_ifExpression ( '->' r_ifExpression )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:191:22: r_ifExpression ( '->' r_ifExpression )*
{
- pushFollow(FOLLOW_r_ifExpression_in_r_chainExpression988);
+ if ( backtracking==0 ) {
+ /*HUHU*/
+ }
+ pushFollow(FOLLOW_r_ifExpression_in_r_chainExpression990);
r_ifExpression();
_fsp--;
if (failed) return ;
@@ -2910,10 +3223,12 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:192:20: '->' r_ifExpression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,74,FOLLOW_74_in_r_chainExpression993); if (failed) return ;
- pushFollow(FOLLOW_r_ifExpression_in_r_chainExpression995);
+ match(input,74,FOLLOW_74_in_r_chainExpression995); if (failed) return ;
+ pushFollow(FOLLOW_r_ifExpression_in_r_chainExpression997);
r_ifExpression();
_fsp--;
if (failed) return ;
@@ -2936,7 +3251,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_chainExpression");
+ if(backtracking==0) {
+ ruleLeft("r_chainExpression");
+ }
/** END EDITED */
}
return ;
@@ -2949,13 +3266,15 @@ public abstract class Xpand3Parser extends Parser {
public final void r_ifExpression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_ifExpression");
+ if(backtracking ==0) {
+ ruleEntered("r_ifExpression");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:195:17: ( r_switchExpression ( '?' r_expression ':' r_switchExpression )? | 'if' r_expression 'then' r_switchExpression ( 'else' r_switchExpression )? )
int alt48=2;
int LA48_0 = input.LA(1);
- if ( ((LA48_0>=StringLiteral && LA48_0<=Identifier)||LA48_0==31||LA48_0==36||(LA48_0>=69 && LA48_0<=71)||LA48_0==78||(LA48_0>=93 && LA48_0<=108)) ) {
+ if ( ((LA48_0>=StringLiteral && LA48_0<=Identifier)||LA48_0==31||LA48_0==36||(LA48_0>=69 && LA48_0<=71)||(LA48_0>=78 && LA48_0<=79)||(LA48_0>=94 && LA48_0<=108)) ) {
alt48=1;
}
else if ( (LA48_0==59) ) {
@@ -2972,7 +3291,7 @@ public abstract class Xpand3Parser extends Parser {
case 1 :
// src/org/eclipse/xpand3/parser/Xpand3.g:196:2: r_switchExpression ( '?' r_expression ':' r_switchExpression )?
{
- pushFollow(FOLLOW_r_switchExpression_in_r_ifExpression1009);
+ pushFollow(FOLLOW_r_switchExpression_in_r_ifExpression1011);
r_switchExpression();
_fsp--;
if (failed) return ;
@@ -2988,18 +3307,22 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:196:22: '?' r_expression ':' r_switchExpression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,75,FOLLOW_75_in_r_ifExpression1012); if (failed) return ;
- pushFollow(FOLLOW_r_expression_in_r_ifExpression1014);
+ match(input,75,FOLLOW_75_in_r_ifExpression1014); if (failed) return ;
+ pushFollow(FOLLOW_r_expression_in_r_ifExpression1016);
r_expression();
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,61,FOLLOW_61_in_r_ifExpression1016); if (failed) return ;
- pushFollow(FOLLOW_r_switchExpression_in_r_ifExpression1018);
+ match(input,61,FOLLOW_61_in_r_ifExpression1018); if (failed) return ;
+ pushFollow(FOLLOW_r_switchExpression_in_r_ifExpression1020);
r_switchExpression();
_fsp--;
if (failed) return ;
@@ -3016,18 +3339,22 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:197:3: 'if' r_expression 'then' r_switchExpression ( 'else' r_switchExpression )?
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,59,FOLLOW_59_in_r_ifExpression1025); if (failed) return ;
- pushFollow(FOLLOW_r_expression_in_r_ifExpression1027);
+ match(input,59,FOLLOW_59_in_r_ifExpression1027); if (failed) return ;
+ pushFollow(FOLLOW_r_expression_in_r_ifExpression1029);
r_expression();
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,76,FOLLOW_76_in_r_ifExpression1029); if (failed) return ;
- pushFollow(FOLLOW_r_switchExpression_in_r_ifExpression1031);
+ match(input,76,FOLLOW_76_in_r_ifExpression1031); if (failed) return ;
+ pushFollow(FOLLOW_r_switchExpression_in_r_ifExpression1033);
r_switchExpression();
_fsp--;
if (failed) return ;
@@ -3043,10 +3370,12 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:197:48: 'else' r_switchExpression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,77,FOLLOW_77_in_r_ifExpression1034); if (failed) return ;
- pushFollow(FOLLOW_r_switchExpression_in_r_ifExpression1036);
+ match(input,77,FOLLOW_77_in_r_ifExpression1036); if (failed) return ;
+ pushFollow(FOLLOW_r_switchExpression_in_r_ifExpression1038);
r_switchExpression();
_fsp--;
if (failed) return ;
@@ -3068,7 +3397,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_ifExpression");
+ if(backtracking==0) {
+ ruleLeft("r_ifExpression");
+ }
/** END EDITED */
}
return ;
@@ -3077,37 +3408,41 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start r_switchExpression
- // src/org/eclipse/xpand3/parser/Xpand3.g:200:1: r_switchExpression : ( 'switch' ( '(' r_orExpression ')' )? ( r_casePart )* 'default' ':' r_orExpression '}' | r_orExpression );
+ // src/org/eclipse/xpand3/parser/Xpand3.g:200:1: r_switchExpression : ( 'switch' ( '(' r_orExpression ')' )? '{' ( r_casePart )* 'default' ':' r_orExpression '}' | r_orExpression );
public final void r_switchExpression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_switchExpression");
+ if(backtracking ==0) {
+ ruleEntered("r_switchExpression");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:200:21: ( 'switch' ( '(' r_orExpression ')' )? ( r_casePart )* 'default' ':' r_orExpression '}' | r_orExpression )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:200:21: ( 'switch' ( '(' r_orExpression ')' )? '{' ( r_casePart )* 'default' ':' r_orExpression '}' | r_orExpression )
int alt51=2;
int LA51_0 = input.LA(1);
if ( (LA51_0==78) ) {
alt51=1;
}
- else if ( ((LA51_0>=StringLiteral && LA51_0<=Identifier)||LA51_0==31||LA51_0==36||(LA51_0>=69 && LA51_0<=71)||(LA51_0>=93 && LA51_0<=108)) ) {
+ else if ( ((LA51_0>=StringLiteral && LA51_0<=Identifier)||LA51_0==31||LA51_0==36||(LA51_0>=69 && LA51_0<=71)||LA51_0==79||(LA51_0>=94 && LA51_0<=108)) ) {
alt51=2;
}
else {
if (backtracking>0) {failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("200:1: r_switchExpression : ( 'switch' ( '(' r_orExpression ')' )? ( r_casePart )* 'default' ':' r_orExpression '}' | r_orExpression );", 51, 0, input);
+ new NoViableAltException("200:1: r_switchExpression : ( 'switch' ( '(' r_orExpression ')' )? '{' ( r_casePart )* 'default' ':' r_orExpression '}' | r_orExpression );", 51, 0, input);
throw nvae;
}
switch (alt51) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:201:4: 'switch' ( '(' r_orExpression ')' )? ( r_casePart )* 'default' ':' r_orExpression '}'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:201:4: 'switch' ( '(' r_orExpression ')' )? '{' ( r_casePart )* 'default' ':' r_orExpression '}'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,78,FOLLOW_78_in_r_switchExpression1052); if (failed) return ;
+ match(input,78,FOLLOW_78_in_r_switchExpression1054); if (failed) return ;
// src/org/eclipse/xpand3/parser/Xpand3.g:201:13: ( '(' r_orExpression ')' )?
int alt49=2;
int LA49_0 = input.LA(1);
@@ -3120,30 +3455,40 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:201:14: '(' r_orExpression ')'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,31,FOLLOW_31_in_r_switchExpression1055); if (failed) return ;
- pushFollow(FOLLOW_r_orExpression_in_r_switchExpression1057);
+ match(input,31,FOLLOW_31_in_r_switchExpression1057); if (failed) return ;
+ pushFollow(FOLLOW_r_orExpression_in_r_switchExpression1059);
r_orExpression();
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,34,FOLLOW_34_in_r_switchExpression1059); if (failed) return ;
+ match(input,34,FOLLOW_34_in_r_switchExpression1061); if (failed) return ;
}
break;
}
+ /** START EDITED */
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
+ /** END EDITED */
+ match(input,79,FOLLOW_79_in_r_switchExpression1065); if (failed) return ;
// src/org/eclipse/xpand3/parser/Xpand3.g:202:2: ( r_casePart )*
loop50:
do {
int alt50=2;
int LA50_0 = input.LA(1);
- if ( (LA50_0==81) ) {
+ if ( (LA50_0==82) ) {
alt50=1;
}
@@ -3152,7 +3497,7 @@ public abstract class Xpand3Parser extends Parser {
case 1 :
// src/org/eclipse/xpand3/parser/Xpand3.g:202:2: r_casePart
{
- pushFollow(FOLLOW_r_casePart_in_r_switchExpression1064);
+ pushFollow(FOLLOW_r_casePart_in_r_switchExpression1068);
r_casePart();
_fsp--;
if (failed) return ;
@@ -3166,28 +3511,34 @@ public abstract class Xpand3Parser extends Parser {
} while (true);
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,79,FOLLOW_79_in_r_switchExpression1070); if (failed) return ;
+ match(input,80,FOLLOW_80_in_r_switchExpression1074); if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,61,FOLLOW_61_in_r_switchExpression1072); if (failed) return ;
- pushFollow(FOLLOW_r_orExpression_in_r_switchExpression1074);
+ match(input,61,FOLLOW_61_in_r_switchExpression1076); if (failed) return ;
+ pushFollow(FOLLOW_r_orExpression_in_r_switchExpression1078);
r_orExpression();
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,80,FOLLOW_80_in_r_switchExpression1079); if (failed) return ;
+ match(input,81,FOLLOW_81_in_r_switchExpression1083); if (failed) return ;
}
break;
case 2 :
// src/org/eclipse/xpand3/parser/Xpand3.g:205:4: r_orExpression
{
- pushFollow(FOLLOW_r_orExpression_in_r_switchExpression1084);
+ pushFollow(FOLLOW_r_orExpression_in_r_switchExpression1088);
r_orExpression();
_fsp--;
if (failed) return ;
@@ -3203,7 +3554,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_switchExpression");
+ if(backtracking==0) {
+ ruleLeft("r_switchExpression");
+ }
/** END EDITED */
}
return ;
@@ -3216,24 +3569,30 @@ public abstract class Xpand3Parser extends Parser {
public final void r_casePart() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_casePart");
+ if(backtracking ==0) {
+ ruleEntered("r_casePart");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:208:12: ( 'case' r_expression ':' r_expression )
// src/org/eclipse/xpand3/parser/Xpand3.g:209:2: 'case' r_expression ':' r_expression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,81,FOLLOW_81_in_r_casePart1095); if (failed) return ;
- pushFollow(FOLLOW_r_expression_in_r_casePart1097);
+ match(input,82,FOLLOW_82_in_r_casePart1099); if (failed) return ;
+ pushFollow(FOLLOW_r_expression_in_r_casePart1101);
r_expression();
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,61,FOLLOW_61_in_r_casePart1099); if (failed) return ;
- pushFollow(FOLLOW_r_expression_in_r_casePart1101);
+ match(input,61,FOLLOW_61_in_r_casePart1103); if (failed) return ;
+ pushFollow(FOLLOW_r_expression_in_r_casePart1105);
r_expression();
_fsp--;
if (failed) return ;
@@ -3247,7 +3606,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_casePart");
+ if(backtracking==0) {
+ ruleLeft("r_casePart");
+ }
/** END EDITED */
}
return ;
@@ -3260,12 +3621,14 @@ public abstract class Xpand3Parser extends Parser {
public final void r_orExpression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_orExpression");
+ if(backtracking ==0) {
+ ruleEntered("r_orExpression");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:211:16: ( r_andExpression ( '||' r_andExpression )* )
// src/org/eclipse/xpand3/parser/Xpand3.g:212:4: r_andExpression ( '||' r_andExpression )*
{
- pushFollow(FOLLOW_r_andExpression_in_r_orExpression1113);
+ pushFollow(FOLLOW_r_andExpression_in_r_orExpression1117);
r_andExpression();
_fsp--;
if (failed) return ;
@@ -3275,7 +3638,7 @@ public abstract class Xpand3Parser extends Parser {
int alt52=2;
int LA52_0 = input.LA(1);
- if ( (LA52_0==82) ) {
+ if ( (LA52_0==83) ) {
alt52=1;
}
@@ -3285,10 +3648,12 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:212:22: '||' r_andExpression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,82,FOLLOW_82_in_r_orExpression1117); if (failed) return ;
- pushFollow(FOLLOW_r_andExpression_in_r_orExpression1119);
+ match(input,83,FOLLOW_83_in_r_orExpression1121); if (failed) return ;
+ pushFollow(FOLLOW_r_andExpression_in_r_orExpression1123);
r_andExpression();
_fsp--;
if (failed) return ;
@@ -3311,7 +3676,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_orExpression");
+ if(backtracking==0) {
+ ruleLeft("r_orExpression");
+ }
/** END EDITED */
}
return ;
@@ -3324,12 +3691,14 @@ public abstract class Xpand3Parser extends Parser {
public final void r_andExpression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_andExpression");
+ if(backtracking ==0) {
+ ruleEntered("r_andExpression");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:215:18: ( r_impliesExpression ( '&&' r_impliesExpression )* )
// src/org/eclipse/xpand3/parser/Xpand3.g:216:2: r_impliesExpression ( '&&' r_impliesExpression )*
{
- pushFollow(FOLLOW_r_impliesExpression_in_r_andExpression1134);
+ pushFollow(FOLLOW_r_impliesExpression_in_r_andExpression1138);
r_impliesExpression();
_fsp--;
if (failed) return ;
@@ -3339,7 +3708,7 @@ public abstract class Xpand3Parser extends Parser {
int alt53=2;
int LA53_0 = input.LA(1);
- if ( (LA53_0==83) ) {
+ if ( (LA53_0==84) ) {
alt53=1;
}
@@ -3349,10 +3718,12 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:216:24: '&&' r_impliesExpression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,83,FOLLOW_83_in_r_andExpression1138); if (failed) return ;
- pushFollow(FOLLOW_r_impliesExpression_in_r_andExpression1140);
+ match(input,84,FOLLOW_84_in_r_andExpression1142); if (failed) return ;
+ pushFollow(FOLLOW_r_impliesExpression_in_r_andExpression1144);
r_impliesExpression();
_fsp--;
if (failed) return ;
@@ -3375,7 +3746,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_andExpression");
+ if(backtracking==0) {
+ ruleLeft("r_andExpression");
+ }
/** END EDITED */
}
return ;
@@ -3388,12 +3761,14 @@ public abstract class Xpand3Parser extends Parser {
public final void r_impliesExpression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_impliesExpression");
+ if(backtracking ==0) {
+ ruleEntered("r_impliesExpression");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:219:21: ( r_relationalExpression ( 'implies' r_relationalExpression )* )
// src/org/eclipse/xpand3/parser/Xpand3.g:220:2: r_relationalExpression ( 'implies' r_relationalExpression )*
{
- pushFollow(FOLLOW_r_relationalExpression_in_r_impliesExpression1155);
+ pushFollow(FOLLOW_r_relationalExpression_in_r_impliesExpression1159);
r_relationalExpression();
_fsp--;
if (failed) return ;
@@ -3403,7 +3778,7 @@ public abstract class Xpand3Parser extends Parser {
int alt54=2;
int LA54_0 = input.LA(1);
- if ( (LA54_0==84) ) {
+ if ( (LA54_0==85) ) {
alt54=1;
}
@@ -3413,10 +3788,12 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:220:27: 'implies' r_relationalExpression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,84,FOLLOW_84_in_r_impliesExpression1159); if (failed) return ;
- pushFollow(FOLLOW_r_relationalExpression_in_r_impliesExpression1161);
+ match(input,85,FOLLOW_85_in_r_impliesExpression1163); if (failed) return ;
+ pushFollow(FOLLOW_r_relationalExpression_in_r_impliesExpression1165);
r_relationalExpression();
_fsp--;
if (failed) return ;
@@ -3439,7 +3816,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_impliesExpression");
+ if(backtracking==0) {
+ ruleLeft("r_impliesExpression");
+ }
/** END EDITED */
}
return ;
@@ -3452,12 +3831,14 @@ public abstract class Xpand3Parser extends Parser {
public final void r_relationalExpression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_relationalExpression");
+ if(backtracking ==0) {
+ ruleEntered("r_relationalExpression");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:223:24: ( r_additiveExpression ( ( '==' | '!=' | '>=' | '<=' | '>' | '<' ) r_additiveExpression )* )
// src/org/eclipse/xpand3/parser/Xpand3.g:224:2: r_additiveExpression ( ( '==' | '!=' | '>=' | '<=' | '>' | '<' ) r_additiveExpression )*
{
- pushFollow(FOLLOW_r_additiveExpression_in_r_relationalExpression1177);
+ pushFollow(FOLLOW_r_additiveExpression_in_r_relationalExpression1181);
r_additiveExpression();
_fsp--;
if (failed) return ;
@@ -3467,7 +3848,7 @@ public abstract class Xpand3Parser extends Parser {
int alt55=2;
int LA55_0 = input.LA(1);
- if ( ((LA55_0>=85 && LA55_0<=90)) ) {
+ if ( ((LA55_0>=86 && LA55_0<=91)) ) {
alt55=1;
}
@@ -3476,9 +3857,11 @@ public abstract class Xpand3Parser extends Parser {
case 1 :
// src/org/eclipse/xpand3/parser/Xpand3.g:225:3: ( '==' | '!=' | '>=' | '<=' | '>' | '<' ) r_additiveExpression
{
- if ( (input.LA(1)>=85 && input.LA(1)<=90) ) {
+ if ( (input.LA(1)>=86 && input.LA(1)<=91) ) {
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */ input.consume();
errorRecovery=false;failed=false;
}
@@ -3486,10 +3869,10 @@ public abstract class Xpand3Parser extends Parser {
if (backtracking>0) {failed=true; return ;}
MismatchedSetException mse =
new MismatchedSetException(null,input);
- recoverFromMismatchedSet(input,mse,FOLLOW_set_in_r_relationalExpression1182); throw mse;
+ recoverFromMismatchedSet(input,mse,FOLLOW_set_in_r_relationalExpression1186); throw mse;
}
- pushFollow(FOLLOW_r_additiveExpression_in_r_relationalExpression1206);
+ pushFollow(FOLLOW_r_additiveExpression_in_r_relationalExpression1210);
r_additiveExpression();
_fsp--;
if (failed) return ;
@@ -3512,7 +3895,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_relationalExpression");
+ if(backtracking==0) {
+ ruleLeft("r_relationalExpression");
+ }
/** END EDITED */
}
return ;
@@ -3525,12 +3910,14 @@ public abstract class Xpand3Parser extends Parser {
public final void r_additiveExpression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_additiveExpression");
+ if(backtracking ==0) {
+ ruleEntered("r_additiveExpression");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:228:22: ( r_multiplicativeExpression ( ( '+' | '-' ) r_multiplicativeExpression )* )
// src/org/eclipse/xpand3/parser/Xpand3.g:229:2: r_multiplicativeExpression ( ( '+' | '-' ) r_multiplicativeExpression )*
{
- pushFollow(FOLLOW_r_multiplicativeExpression_in_r_additiveExpression1219);
+ pushFollow(FOLLOW_r_multiplicativeExpression_in_r_additiveExpression1223);
r_multiplicativeExpression();
_fsp--;
if (failed) return ;
@@ -3543,13 +3930,13 @@ public abstract class Xpand3Parser extends Parser {
if ( (LA56_0==36) ) {
int LA56_2 = input.LA(2);
- if ( ((LA56_2>=StringLiteral && LA56_2<=Identifier)||LA56_2==31||LA56_2==36||(LA56_2>=69 && LA56_2<=71)||(LA56_2>=93 && LA56_2<=108)) ) {
+ if ( ((LA56_2>=StringLiteral && LA56_2<=Identifier)||LA56_2==31||LA56_2==36||(LA56_2>=69 && LA56_2<=71)||LA56_2==79||(LA56_2>=94 && LA56_2<=108)) ) {
alt56=1;
}
}
- else if ( (LA56_0==91) ) {
+ else if ( (LA56_0==92) ) {
alt56=1;
}
@@ -3558,9 +3945,11 @@ public abstract class Xpand3Parser extends Parser {
case 1 :
// src/org/eclipse/xpand3/parser/Xpand3.g:230:5: ( '+' | '-' ) r_multiplicativeExpression
{
- if ( input.LA(1)==36||input.LA(1)==91 ) {
+ if ( input.LA(1)==36||input.LA(1)==92 ) {
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */ input.consume();
errorRecovery=false;failed=false;
}
@@ -3568,10 +3957,10 @@ public abstract class Xpand3Parser extends Parser {
if (backtracking>0) {failed=true; return ;}
MismatchedSetException mse =
new MismatchedSetException(null,input);
- recoverFromMismatchedSet(input,mse,FOLLOW_set_in_r_additiveExpression1226); throw mse;
+ recoverFromMismatchedSet(input,mse,FOLLOW_set_in_r_additiveExpression1230); throw mse;
}
- pushFollow(FOLLOW_r_multiplicativeExpression_in_r_additiveExpression1233);
+ pushFollow(FOLLOW_r_multiplicativeExpression_in_r_additiveExpression1237);
r_multiplicativeExpression();
_fsp--;
if (failed) return ;
@@ -3594,7 +3983,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_additiveExpression");
+ if(backtracking==0) {
+ ruleLeft("r_additiveExpression");
+ }
/** END EDITED */
}
return ;
@@ -3607,12 +3998,14 @@ public abstract class Xpand3Parser extends Parser {
public final void r_multiplicativeExpression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_multiplicativeExpression");
+ if(backtracking ==0) {
+ ruleEntered("r_multiplicativeExpression");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:233:28: ( r_unaryExpression ( ( '*' | '/' ) r_unaryExpression )* )
// src/org/eclipse/xpand3/parser/Xpand3.g:234:2: r_unaryExpression ( ( '*' | '/' ) r_unaryExpression )*
{
- pushFollow(FOLLOW_r_unaryExpression_in_r_multiplicativeExpression1246);
+ pushFollow(FOLLOW_r_unaryExpression_in_r_multiplicativeExpression1250);
r_unaryExpression();
_fsp--;
if (failed) return ;
@@ -3622,7 +4015,7 @@ public abstract class Xpand3Parser extends Parser {
int alt57=2;
int LA57_0 = input.LA(1);
- if ( (LA57_0==33||LA57_0==92) ) {
+ if ( (LA57_0==33||LA57_0==93) ) {
alt57=1;
}
@@ -3631,9 +4024,11 @@ public abstract class Xpand3Parser extends Parser {
case 1 :
// src/org/eclipse/xpand3/parser/Xpand3.g:235:3: ( '*' | '/' ) r_unaryExpression
{
- if ( input.LA(1)==33||input.LA(1)==92 ) {
+ if ( input.LA(1)==33||input.LA(1)==93 ) {
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */ input.consume();
errorRecovery=false;failed=false;
}
@@ -3641,10 +4036,10 @@ public abstract class Xpand3Parser extends Parser {
if (backtracking>0) {failed=true; return ;}
MismatchedSetException mse =
new MismatchedSetException(null,input);
- recoverFromMismatchedSet(input,mse,FOLLOW_set_in_r_multiplicativeExpression1251); throw mse;
+ recoverFromMismatchedSet(input,mse,FOLLOW_set_in_r_multiplicativeExpression1255); throw mse;
}
- pushFollow(FOLLOW_r_unaryExpression_in_r_multiplicativeExpression1259);
+ pushFollow(FOLLOW_r_unaryExpression_in_r_multiplicativeExpression1263);
r_unaryExpression();
_fsp--;
if (failed) return ;
@@ -3667,7 +4062,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_multiplicativeExpression");
+ if(backtracking==0) {
+ ruleLeft("r_multiplicativeExpression");
+ }
/** END EDITED */
}
return ;
@@ -3680,7 +4077,9 @@ public abstract class Xpand3Parser extends Parser {
public final void r_unaryExpression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_unaryExpression");
+ if(backtracking ==0) {
+ ruleEntered("r_unaryExpression");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:239:19: ( r_infixExpression | '!' r_infixExpression | '-' r_infixExpression )
int alt58=3;
@@ -3692,7 +4091,7 @@ public abstract class Xpand3Parser extends Parser {
case 69:
case 70:
case 71:
- case 94:
+ case 79:
case 95:
case 96:
case 97:
@@ -3711,7 +4110,7 @@ public abstract class Xpand3Parser extends Parser {
alt58=1;
}
break;
- case 93:
+ case 94:
{
alt58=2;
}
@@ -3733,7 +4132,7 @@ public abstract class Xpand3Parser extends Parser {
case 1 :
// src/org/eclipse/xpand3/parser/Xpand3.g:240:2: r_infixExpression
{
- pushFollow(FOLLOW_r_infixExpression_in_r_unaryExpression1273);
+ pushFollow(FOLLOW_r_infixExpression_in_r_unaryExpression1277);
r_infixExpression();
_fsp--;
if (failed) return ;
@@ -3744,10 +4143,12 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:241:3: '!' r_infixExpression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,93,FOLLOW_93_in_r_unaryExpression1278); if (failed) return ;
- pushFollow(FOLLOW_r_infixExpression_in_r_unaryExpression1280);
+ match(input,94,FOLLOW_94_in_r_unaryExpression1282); if (failed) return ;
+ pushFollow(FOLLOW_r_infixExpression_in_r_unaryExpression1284);
r_infixExpression();
_fsp--;
if (failed) return ;
@@ -3758,10 +4159,12 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:242:3: '-' r_infixExpression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,36,FOLLOW_36_in_r_unaryExpression1285); if (failed) return ;
- pushFollow(FOLLOW_r_infixExpression_in_r_unaryExpression1287);
+ match(input,36,FOLLOW_36_in_r_unaryExpression1289); if (failed) return ;
+ pushFollow(FOLLOW_r_infixExpression_in_r_unaryExpression1291);
r_infixExpression();
_fsp--;
if (failed) return ;
@@ -3777,7 +4180,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_unaryExpression");
+ if(backtracking==0) {
+ ruleLeft("r_unaryExpression");
+ }
/** END EDITED */
}
return ;
@@ -3790,12 +4195,14 @@ public abstract class Xpand3Parser extends Parser {
public final void r_infixExpression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_infixExpression");
+ if(backtracking ==0) {
+ ruleEntered("r_infixExpression");
+ }
/** END EDITED */
// src/org/eclipse/xpand3/parser/Xpand3.g:245:19: ( r_primaryExpression ( '.' r_featureCall )* )
// src/org/eclipse/xpand3/parser/Xpand3.g:246:2: r_primaryExpression ( '.' r_featureCall )*
{
- pushFollow(FOLLOW_r_primaryExpression_in_r_infixExpression1298);
+ pushFollow(FOLLOW_r_primaryExpression_in_r_infixExpression1302);
r_primaryExpression();
_fsp--;
if (failed) return ;
@@ -3815,10 +4222,12 @@ public abstract class Xpand3Parser extends Parser {
// src/org/eclipse/xpand3/parser/Xpand3.g:246:25: '.' r_featureCall
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,68,FOLLOW_68_in_r_infixExpression1303); if (failed) return ;
- pushFollow(FOLLOW_r_featureCall_in_r_infixExpression1305);
+ match(input,68,FOLLOW_68_in_r_infixExpression1307); if (failed) return ;
+ pushFollow(FOLLOW_r_featureCall_in_r_infixExpression1309);
r_featureCall();
_fsp--;
if (failed) return ;
@@ -3841,7 +4250,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_infixExpression");
+ if(backtracking==0) {
+ ruleLeft("r_infixExpression");
+ }
/** END EDITED */
}
return ;
@@ -3850,13 +4261,15 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start r_primaryExpression
- // src/org/eclipse/xpand3/parser/Xpand3.g:249:1: r_primaryExpression : ( StringLiteral | r_featureCall | r_booleanLiteral | r_numberLiteral | r_nullLiteral | r_listLiteral | r_constructorCall | r_globalVarExpression | r_paranthesizedExpression );
+ // src/org/eclipse/xpand3/parser/Xpand3.g:249:1: r_primaryExpression : ( r_stringLiteral | r_featureCall | r_booleanLiteral | r_numberLiteral | r_nullLiteral | r_listLiteral | r_constructorCall | r_globalVarExpression | r_paranthesizedExpression );
public final void r_primaryExpression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_primaryExpression");
+ if(backtracking ==0) {
+ ruleEntered("r_primaryExpression");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:249:23: ( StringLiteral | r_featureCall | r_booleanLiteral | r_numberLiteral | r_nullLiteral | r_listLiteral | r_constructorCall | r_globalVarExpression | r_paranthesizedExpression )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:249:23: ( r_stringLiteral | r_featureCall | r_booleanLiteral | r_numberLiteral | r_nullLiteral | r_listLiteral | r_constructorCall | r_globalVarExpression | r_paranthesizedExpression )
int alt60=9;
switch ( input.LA(1) ) {
case StringLiteral:
@@ -3897,7 +4310,7 @@ public abstract class Xpand3Parser extends Parser {
alt60=5;
}
break;
- case 95:
+ case 79:
{
alt60=6;
}
@@ -3907,7 +4320,7 @@ public abstract class Xpand3Parser extends Parser {
alt60=7;
}
break;
- case 94:
+ case 95:
{
alt60=8;
}
@@ -3920,26 +4333,26 @@ public abstract class Xpand3Parser extends Parser {
default:
if (backtracking>0) {failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("249:1: r_primaryExpression : ( StringLiteral | r_featureCall | r_booleanLiteral | r_numberLiteral | r_nullLiteral | r_listLiteral | r_constructorCall | r_globalVarExpression | r_paranthesizedExpression );", 60, 0, input);
+ new NoViableAltException("249:1: r_primaryExpression : ( r_stringLiteral | r_featureCall | r_booleanLiteral | r_numberLiteral | r_nullLiteral | r_listLiteral | r_constructorCall | r_globalVarExpression | r_paranthesizedExpression );", 60, 0, input);
throw nvae;
}
switch (alt60) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:250:4: StringLiteral
+ // src/org/eclipse/xpand3/parser/Xpand3.g:250:5: r_stringLiteral
{
- /** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
- /** END EDITED */
- match(input,StringLiteral,FOLLOW_StringLiteral_in_r_primaryExpression1323); if (failed) return ;
+ pushFollow(FOLLOW_r_stringLiteral_in_r_primaryExpression1328);
+ r_stringLiteral();
+ _fsp--;
+ if (failed) return ;
}
break;
case 2 :
// src/org/eclipse/xpand3/parser/Xpand3.g:251:5: r_featureCall
{
- pushFollow(FOLLOW_r_featureCall_in_r_primaryExpression1331);
+ pushFollow(FOLLOW_r_featureCall_in_r_primaryExpression1336);
r_featureCall();
_fsp--;
if (failed) return ;
@@ -3949,7 +4362,7 @@ public abstract class Xpand3Parser extends Parser {
case 3 :
// src/org/eclipse/xpand3/parser/Xpand3.g:252:5: r_booleanLiteral
{
- pushFollow(FOLLOW_r_booleanLiteral_in_r_primaryExpression1338);
+ pushFollow(FOLLOW_r_booleanLiteral_in_r_primaryExpression1343);
r_booleanLiteral();
_fsp--;
if (failed) return ;
@@ -3959,7 +4372,7 @@ public abstract class Xpand3Parser extends Parser {
case 4 :
// src/org/eclipse/xpand3/parser/Xpand3.g:253:5: r_numberLiteral
{
- pushFollow(FOLLOW_r_numberLiteral_in_r_primaryExpression1345);
+ pushFollow(FOLLOW_r_numberLiteral_in_r_primaryExpression1350);
r_numberLiteral();
_fsp--;
if (failed) return ;
@@ -3969,7 +4382,7 @@ public abstract class Xpand3Parser extends Parser {
case 5 :
// src/org/eclipse/xpand3/parser/Xpand3.g:254:5: r_nullLiteral
{
- pushFollow(FOLLOW_r_nullLiteral_in_r_primaryExpression1352);
+ pushFollow(FOLLOW_r_nullLiteral_in_r_primaryExpression1357);
r_nullLiteral();
_fsp--;
if (failed) return ;
@@ -3979,7 +4392,7 @@ public abstract class Xpand3Parser extends Parser {
case 6 :
// src/org/eclipse/xpand3/parser/Xpand3.g:255:5: r_listLiteral
{
- pushFollow(FOLLOW_r_listLiteral_in_r_primaryExpression1359);
+ pushFollow(FOLLOW_r_listLiteral_in_r_primaryExpression1364);
r_listLiteral();
_fsp--;
if (failed) return ;
@@ -3989,7 +4402,7 @@ public abstract class Xpand3Parser extends Parser {
case 7 :
// src/org/eclipse/xpand3/parser/Xpand3.g:256:5: r_constructorCall
{
- pushFollow(FOLLOW_r_constructorCall_in_r_primaryExpression1366);
+ pushFollow(FOLLOW_r_constructorCall_in_r_primaryExpression1371);
r_constructorCall();
_fsp--;
if (failed) return ;
@@ -3999,7 +4412,7 @@ public abstract class Xpand3Parser extends Parser {
case 8 :
// src/org/eclipse/xpand3/parser/Xpand3.g:257:5: r_globalVarExpression
{
- pushFollow(FOLLOW_r_globalVarExpression_in_r_primaryExpression1373);
+ pushFollow(FOLLOW_r_globalVarExpression_in_r_primaryExpression1378);
r_globalVarExpression();
_fsp--;
if (failed) return ;
@@ -4009,7 +4422,7 @@ public abstract class Xpand3Parser extends Parser {
case 9 :
// src/org/eclipse/xpand3/parser/Xpand3.g:258:5: r_paranthesizedExpression
{
- pushFollow(FOLLOW_r_paranthesizedExpression_in_r_primaryExpression1380);
+ pushFollow(FOLLOW_r_paranthesizedExpression_in_r_primaryExpression1385);
r_paranthesizedExpression();
_fsp--;
if (failed) return ;
@@ -4025,7 +4438,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_primaryExpression");
+ if(backtracking==0) {
+ ruleLeft("r_primaryExpression");
+ }
/** END EDITED */
}
return ;
@@ -4033,28 +4448,72 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR end r_primaryExpression
+ // $ANTLR start r_stringLiteral
+ // src/org/eclipse/xpand3/parser/Xpand3.g:261:1: r_stringLiteral : StringLiteral ;
+ public final void r_stringLiteral() throws RecognitionException {
+ try {
+ /** START EDITED */
+ if(backtracking ==0) {
+ ruleEntered("r_stringLiteral");
+ }
+ /** END EDITED */
+ // src/org/eclipse/xpand3/parser/Xpand3.g:261:17: ( StringLiteral )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:262:4: StringLiteral
+ {
+ /** START EDITED */
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
+ /** END EDITED */
+ match(input,StringLiteral,FOLLOW_StringLiteral_in_r_stringLiteral1398); if (failed) return ;
+
+ }
+
+ }
+ catch (RecognitionException re) {
+ reportError(re);
+ recover(input,re);
+ }
+ finally {
+ /** START EDITED */
+ if(backtracking==0) {
+ ruleLeft("r_stringLiteral");
+ }
+ /** END EDITED */
+ }
+ return ;
+ }
+ // $ANTLR end r_stringLiteral
+
+
// $ANTLR start r_paranthesizedExpression
- // src/org/eclipse/xpand3/parser/Xpand3.g:261:1: r_paranthesizedExpression : '(' r_expression ')' ;
+ // src/org/eclipse/xpand3/parser/Xpand3.g:265:1: r_paranthesizedExpression : '(' r_expression ')' ;
public final void r_paranthesizedExpression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_paranthesizedExpression");
+ if(backtracking ==0) {
+ ruleEntered("r_paranthesizedExpression");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:261:27: ( '(' r_expression ')' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:262:5: '(' r_expression ')'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:265:27: ( '(' r_expression ')' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:266:5: '(' r_expression ')'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,31,FOLLOW_31_in_r_paranthesizedExpression1394); if (failed) return ;
- pushFollow(FOLLOW_r_expression_in_r_paranthesizedExpression1396);
+ match(input,31,FOLLOW_31_in_r_paranthesizedExpression1411); if (failed) return ;
+ pushFollow(FOLLOW_r_expression_in_r_paranthesizedExpression1413);
r_expression();
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,34,FOLLOW_34_in_r_paranthesizedExpression1398); if (failed) return ;
+ match(input,34,FOLLOW_34_in_r_paranthesizedExpression1415); if (failed) return ;
}
@@ -4065,7 +4524,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_paranthesizedExpression");
+ if(backtracking==0) {
+ ruleLeft("r_paranthesizedExpression");
+ }
/** END EDITED */
}
return ;
@@ -4074,20 +4535,24 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start r_globalVarExpression
- // src/org/eclipse/xpand3/parser/Xpand3.g:265:1: r_globalVarExpression : 'GLOBALVAR' r_identifier ;
+ // src/org/eclipse/xpand3/parser/Xpand3.g:269:1: r_globalVarExpression : 'GLOBALVAR' r_identifier ;
public final void r_globalVarExpression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_globalVarExpression");
+ if(backtracking ==0) {
+ ruleEntered("r_globalVarExpression");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:265:24: ( 'GLOBALVAR' r_identifier )
- // src/org/eclipse/xpand3/parser/Xpand3.g:266:5: 'GLOBALVAR' r_identifier
+ // src/org/eclipse/xpand3/parser/Xpand3.g:269:24: ( 'GLOBALVAR' r_identifier )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:270:5: 'GLOBALVAR' r_identifier
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,94,FOLLOW_94_in_r_globalVarExpression1413); if (failed) return ;
- pushFollow(FOLLOW_r_identifier_in_r_globalVarExpression1415);
+ match(input,95,FOLLOW_95_in_r_globalVarExpression1430); if (failed) return ;
+ pushFollow(FOLLOW_r_identifier_in_r_globalVarExpression1432);
r_identifier();
_fsp--;
if (failed) return ;
@@ -4101,7 +4566,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_globalVarExpression");
+ if(backtracking==0) {
+ ruleLeft("r_globalVarExpression");
+ }
/** END EDITED */
}
return ;
@@ -4110,29 +4577,31 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start r_featureCall
- // src/org/eclipse/xpand3/parser/Xpand3.g:268:1: r_featureCall : ( r_identifier '(' ( r_parameterList )? ')' | r_type | r_collectionExpression );
+ // src/org/eclipse/xpand3/parser/Xpand3.g:272:1: r_featureCall : ( r_identifier '(' ( r_parameterList )? ')' | r_type | r_collectionExpression );
public final void r_featureCall() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_featureCall");
+ if(backtracking ==0) {
+ ruleEntered("r_featureCall");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:268:16: ( r_identifier '(' ( r_parameterList )? ')' | r_type | r_collectionExpression )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:272:16: ( r_identifier '(' ( r_parameterList )? ')' | r_type | r_collectionExpression )
int alt62=3;
switch ( input.LA(1) ) {
case Identifier:
{
int LA62_1 = input.LA(2);
- if ( (LA62_1==31) ) {
- alt62=1;
- }
- else if ( (LA62_1==EOF||LA62_1==TEXT||LA62_1==Identifier||LA62_1==28||(LA62_1>=32 && LA62_1<=34)||(LA62_1>=36 && LA62_1<=37)||LA62_1==40||LA62_1==43||(LA62_1>=54 && LA62_1<=56)||(LA62_1>=60 && LA62_1<=61)||LA62_1==63||LA62_1==68||(LA62_1>=74 && LA62_1<=77)||(LA62_1>=79 && LA62_1<=92)) ) {
+ if ( (LA62_1==EOF||LA62_1==TEXT||LA62_1==Identifier||LA62_1==28||(LA62_1>=32 && LA62_1<=34)||(LA62_1>=36 && LA62_1<=37)||LA62_1==40||LA62_1==43||(LA62_1>=54 && LA62_1<=56)||(LA62_1>=60 && LA62_1<=61)||LA62_1==63||LA62_1==68||(LA62_1>=74 && LA62_1<=77)||(LA62_1>=80 && LA62_1<=93)) ) {
alt62=2;
}
+ else if ( (LA62_1==31) ) {
+ alt62=1;
+ }
else {
if (backtracking>0) {failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("268:1: r_featureCall : ( r_identifier '(' ( r_parameterList )? ')' | r_type | r_collectionExpression );", 62, 1, input);
+ new NoViableAltException("272:1: r_featureCall : ( r_identifier '(' ( r_parameterList )? ')' | r_type | r_collectionExpression );", 62, 1, input);
throw nvae;
}
@@ -4161,35 +4630,37 @@ public abstract class Xpand3Parser extends Parser {
default:
if (backtracking>0) {failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("268:1: r_featureCall : ( r_identifier '(' ( r_parameterList )? ')' | r_type | r_collectionExpression );", 62, 0, input);
+ new NoViableAltException("272:1: r_featureCall : ( r_identifier '(' ( r_parameterList )? ')' | r_type | r_collectionExpression );", 62, 0, input);
throw nvae;
}
switch (alt62) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:269:5: r_identifier '(' ( r_parameterList )? ')'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:273:5: r_identifier '(' ( r_parameterList )? ')'
{
- pushFollow(FOLLOW_r_identifier_in_r_featureCall1429);
+ pushFollow(FOLLOW_r_identifier_in_r_featureCall1446);
r_identifier();
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,31,FOLLOW_31_in_r_featureCall1431); if (failed) return ;
- // src/org/eclipse/xpand3/parser/Xpand3.g:269:22: ( r_parameterList )?
+ match(input,31,FOLLOW_31_in_r_featureCall1448); if (failed) return ;
+ // src/org/eclipse/xpand3/parser/Xpand3.g:273:22: ( r_parameterList )?
int alt61=2;
int LA61_0 = input.LA(1);
- if ( ((LA61_0>=StringLiteral && LA61_0<=Identifier)||LA61_0==31||LA61_0==36||LA61_0==59||(LA61_0>=69 && LA61_0<=72)||LA61_0==78||(LA61_0>=93 && LA61_0<=108)) ) {
+ if ( ((LA61_0>=StringLiteral && LA61_0<=Identifier)||LA61_0==31||LA61_0==36||LA61_0==59||(LA61_0>=69 && LA61_0<=72)||(LA61_0>=78 && LA61_0<=79)||(LA61_0>=94 && LA61_0<=108)) ) {
alt61=1;
}
switch (alt61) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:269:23: r_parameterList
+ // src/org/eclipse/xpand3/parser/Xpand3.g:273:23: r_parameterList
{
- pushFollow(FOLLOW_r_parameterList_in_r_featureCall1434);
+ pushFollow(FOLLOW_r_parameterList_in_r_featureCall1451);
r_parameterList();
_fsp--;
if (failed) return ;
@@ -4200,16 +4671,18 @@ public abstract class Xpand3Parser extends Parser {
}
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,34,FOLLOW_34_in_r_featureCall1438); if (failed) return ;
+ match(input,34,FOLLOW_34_in_r_featureCall1455); if (failed) return ;
}
break;
case 2 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:270:5: r_type
+ // src/org/eclipse/xpand3/parser/Xpand3.g:274:5: r_type
{
- pushFollow(FOLLOW_r_type_in_r_featureCall1445);
+ pushFollow(FOLLOW_r_type_in_r_featureCall1462);
r_type();
_fsp--;
if (failed) return ;
@@ -4217,9 +4690,9 @@ public abstract class Xpand3Parser extends Parser {
}
break;
case 3 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:271:5: r_collectionExpression
+ // src/org/eclipse/xpand3/parser/Xpand3.g:275:5: r_collectionExpression
{
- pushFollow(FOLLOW_r_collectionExpression_in_r_featureCall1453);
+ pushFollow(FOLLOW_r_collectionExpression_in_r_featureCall1470);
r_collectionExpression();
_fsp--;
if (failed) return ;
@@ -4235,7 +4708,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_featureCall");
+ if(backtracking==0) {
+ ruleLeft("r_featureCall");
+ }
/** END EDITED */
}
return ;
@@ -4244,35 +4719,39 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start r_listLiteral
- // src/org/eclipse/xpand3/parser/Xpand3.g:274:1: r_listLiteral : '{' ( r_expression ( ',' r_expression )* )? '}' ;
+ // src/org/eclipse/xpand3/parser/Xpand3.g:278:1: r_listLiteral : '{' ( r_expression ( ',' r_expression )* )? '}' ;
public final void r_listLiteral() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_listLiteral");
+ if(backtracking ==0) {
+ ruleEntered("r_listLiteral");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:274:16: ( '{' ( r_expression ( ',' r_expression )* )? '}' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:275:2: '{' ( r_expression ( ',' r_expression )* )? '}'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:278:16: ( '{' ( r_expression ( ',' r_expression )* )? '}' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:279:2: '{' ( r_expression ( ',' r_expression )* )? '}'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,95,FOLLOW_95_in_r_listLiteral1465); if (failed) return ;
- // src/org/eclipse/xpand3/parser/Xpand3.g:275:5: ( r_expression ( ',' r_expression )* )?
+ match(input,79,FOLLOW_79_in_r_listLiteral1482); if (failed) return ;
+ // src/org/eclipse/xpand3/parser/Xpand3.g:279:5: ( r_expression ( ',' r_expression )* )?
int alt64=2;
int LA64_0 = input.LA(1);
- if ( ((LA64_0>=StringLiteral && LA64_0<=Identifier)||LA64_0==31||LA64_0==36||LA64_0==59||(LA64_0>=69 && LA64_0<=72)||LA64_0==78||(LA64_0>=93 && LA64_0<=108)) ) {
+ if ( ((LA64_0>=StringLiteral && LA64_0<=Identifier)||LA64_0==31||LA64_0==36||LA64_0==59||(LA64_0>=69 && LA64_0<=72)||(LA64_0>=78 && LA64_0<=79)||(LA64_0>=94 && LA64_0<=108)) ) {
alt64=1;
}
switch (alt64) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:275:6: r_expression ( ',' r_expression )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:279:6: r_expression ( ',' r_expression )*
{
- pushFollow(FOLLOW_r_expression_in_r_listLiteral1467);
+ pushFollow(FOLLOW_r_expression_in_r_listLiteral1484);
r_expression();
_fsp--;
if (failed) return ;
- // src/org/eclipse/xpand3/parser/Xpand3.g:275:19: ( ',' r_expression )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:279:19: ( ',' r_expression )*
loop63:
do {
int alt63=2;
@@ -4285,13 +4764,15 @@ public abstract class Xpand3Parser extends Parser {
switch (alt63) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:275:20: ',' r_expression
+ // src/org/eclipse/xpand3/parser/Xpand3.g:279:20: ',' r_expression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,32,FOLLOW_32_in_r_listLiteral1470); if (failed) return ;
- pushFollow(FOLLOW_r_expression_in_r_listLiteral1472);
+ match(input,32,FOLLOW_32_in_r_listLiteral1487); if (failed) return ;
+ pushFollow(FOLLOW_r_expression_in_r_listLiteral1489);
r_expression();
_fsp--;
if (failed) return ;
@@ -4311,9 +4792,11 @@ public abstract class Xpand3Parser extends Parser {
}
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,80,FOLLOW_80_in_r_listLiteral1477); if (failed) return ;
+ match(input,81,FOLLOW_81_in_r_listLiteral1494); if (failed) return ;
}
@@ -4324,7 +4807,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_listLiteral");
+ if(backtracking==0) {
+ ruleLeft("r_listLiteral");
+ }
/** END EDITED */
}
return ;
@@ -4333,20 +4818,24 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start r_constructorCall
- // src/org/eclipse/xpand3/parser/Xpand3.g:278:1: r_constructorCall : 'new' r_simpleType ;
+ // src/org/eclipse/xpand3/parser/Xpand3.g:282:1: r_constructorCall : 'new' r_simpleType ;
public final void r_constructorCall() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_constructorCall");
+ if(backtracking ==0) {
+ ruleEntered("r_constructorCall");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:278:20: ( 'new' r_simpleType )
- // src/org/eclipse/xpand3/parser/Xpand3.g:279:2: 'new' r_simpleType
+ // src/org/eclipse/xpand3/parser/Xpand3.g:282:20: ( 'new' r_simpleType )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:283:2: 'new' r_simpleType
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,96,FOLLOW_96_in_r_constructorCall1488); if (failed) return ;
- pushFollow(FOLLOW_r_simpleType_in_r_constructorCall1490);
+ match(input,96,FOLLOW_96_in_r_constructorCall1505); if (failed) return ;
+ pushFollow(FOLLOW_r_simpleType_in_r_constructorCall1507);
r_simpleType();
_fsp--;
if (failed) return ;
@@ -4360,7 +4849,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_constructorCall");
+ if(backtracking==0) {
+ ruleLeft("r_constructorCall");
+ }
/** END EDITED */
}
return ;
@@ -4369,18 +4860,22 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start r_booleanLiteral
- // src/org/eclipse/xpand3/parser/Xpand3.g:283:1: r_booleanLiteral : ( 'false' | 'true' );
+ // src/org/eclipse/xpand3/parser/Xpand3.g:287:1: r_booleanLiteral : ( 'false' | 'true' );
public final void r_booleanLiteral() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_booleanLiteral");
+ if(backtracking ==0) {
+ ruleEntered("r_booleanLiteral");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:283:19: ( 'false' | 'true' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:287:19: ( 'false' | 'true' )
// src/org/eclipse/xpand3/parser/Xpand3.g:
{
if ( (input.LA(1)>=97 && input.LA(1)<=98) ) {
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */ input.consume();
errorRecovery=false;failed=false;
}
@@ -4401,7 +4896,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_booleanLiteral");
+ if(backtracking==0) {
+ ruleLeft("r_booleanLiteral");
+ }
/** END EDITED */
}
return ;
@@ -4410,19 +4907,23 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start r_nullLiteral
- // src/org/eclipse/xpand3/parser/Xpand3.g:287:1: r_nullLiteral : 'null' ;
+ // src/org/eclipse/xpand3/parser/Xpand3.g:291:1: r_nullLiteral : 'null' ;
public final void r_nullLiteral() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_nullLiteral");
+ if(backtracking ==0) {
+ ruleEntered("r_nullLiteral");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:287:16: ( 'null' )
- // src/org/eclipse/xpand3/parser/Xpand3.g:288:2: 'null'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:291:16: ( 'null' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:292:2: 'null'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,99,FOLLOW_99_in_r_nullLiteral1516); if (failed) return ;
+ match(input,99,FOLLOW_99_in_r_nullLiteral1533); if (failed) return ;
}
@@ -4433,7 +4934,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_nullLiteral");
+ if(backtracking==0) {
+ ruleLeft("r_nullLiteral");
+ }
/** END EDITED */
}
return ;
@@ -4442,13 +4945,15 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start r_numberLiteral
- // src/org/eclipse/xpand3/parser/Xpand3.g:291:1: r_numberLiteral : ( IntLiteral | IntLiteral '.' IntLiteral );
+ // src/org/eclipse/xpand3/parser/Xpand3.g:295:1: r_numberLiteral : ( IntLiteral | IntLiteral '.' IntLiteral );
public final void r_numberLiteral() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_numberLiteral");
+ if(backtracking ==0) {
+ ruleEntered("r_numberLiteral");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:291:18: ( IntLiteral | IntLiteral '.' IntLiteral )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:295:18: ( IntLiteral | IntLiteral '.' IntLiteral )
int alt65=2;
int LA65_0 = input.LA(1);
@@ -4467,18 +4972,18 @@ public abstract class Xpand3Parser extends Parser {
else {
if (backtracking>0) {failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("291:1: r_numberLiteral : ( IntLiteral | IntLiteral '.' IntLiteral );", 65, 2, input);
+ new NoViableAltException("295:1: r_numberLiteral : ( IntLiteral | IntLiteral '.' IntLiteral );", 65, 2, input);
throw nvae;
}
}
- else if ( (LA65_1==EOF||LA65_1==TEXT||LA65_1==Identifier||LA65_1==28||(LA65_1>=32 && LA65_1<=34)||(LA65_1>=36 && LA65_1<=37)||LA65_1==40||LA65_1==43||(LA65_1>=54 && LA65_1<=56)||(LA65_1>=60 && LA65_1<=61)||(LA65_1>=74 && LA65_1<=77)||(LA65_1>=79 && LA65_1<=92)) ) {
+ else if ( (LA65_1==EOF||LA65_1==TEXT||LA65_1==Identifier||LA65_1==28||(LA65_1>=32 && LA65_1<=34)||(LA65_1>=36 && LA65_1<=37)||LA65_1==40||LA65_1==43||(LA65_1>=54 && LA65_1<=56)||(LA65_1>=60 && LA65_1<=61)||(LA65_1>=74 && LA65_1<=77)||(LA65_1>=80 && LA65_1<=93)) ) {
alt65=1;
}
else {
if (backtracking>0) {failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("291:1: r_numberLiteral : ( IntLiteral | IntLiteral '.' IntLiteral );", 65, 1, input);
+ new NoViableAltException("295:1: r_numberLiteral : ( IntLiteral | IntLiteral '.' IntLiteral );", 65, 1, input);
throw nvae;
}
@@ -4486,36 +4991,44 @@ public abstract class Xpand3Parser extends Parser {
else {
if (backtracking>0) {failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("291:1: r_numberLiteral : ( IntLiteral | IntLiteral '.' IntLiteral );", 65, 0, input);
+ new NoViableAltException("295:1: r_numberLiteral : ( IntLiteral | IntLiteral '.' IntLiteral );", 65, 0, input);
throw nvae;
}
switch (alt65) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:292:4: IntLiteral
+ // src/org/eclipse/xpand3/parser/Xpand3.g:296:4: IntLiteral
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,IntLiteral,FOLLOW_IntLiteral_in_r_numberLiteral1529); if (failed) return ;
+ match(input,IntLiteral,FOLLOW_IntLiteral_in_r_numberLiteral1546); if (failed) return ;
}
break;
case 2 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:293:4: IntLiteral '.' IntLiteral
+ // src/org/eclipse/xpand3/parser/Xpand3.g:297:4: IntLiteral '.' IntLiteral
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,IntLiteral,FOLLOW_IntLiteral_in_r_numberLiteral1535); if (failed) return ;
+ match(input,IntLiteral,FOLLOW_IntLiteral_in_r_numberLiteral1552); if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,68,FOLLOW_68_in_r_numberLiteral1537); if (failed) return ;
+ match(input,68,FOLLOW_68_in_r_numberLiteral1554); if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,IntLiteral,FOLLOW_IntLiteral_in_r_numberLiteral1539); if (failed) return ;
+ match(input,IntLiteral,FOLLOW_IntLiteral_in_r_numberLiteral1556); if (failed) return ;
}
break;
@@ -4528,7 +5041,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_numberLiteral");
+ if(backtracking==0) {
+ ruleLeft("r_numberLiteral");
+ }
/** END EDITED */
}
return ;
@@ -4537,13 +5052,15 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start r_collectionExpression
- // src/org/eclipse/xpand3/parser/Xpand3.g:296:1: r_collectionExpression : ( 'typeSelect' '(' r_type ')' | ( 'collect' | 'select' | 'selectFirst' | 'reject' | 'exists' | 'notExists' | 'sortBy' | 'forAll' ) '(' ( r_identifier '|' )? r_expression ')' );
+ // src/org/eclipse/xpand3/parser/Xpand3.g:300:1: r_collectionExpression : ( 'typeSelect' '(' r_type ')' | ( 'collect' | 'select' | 'selectFirst' | 'reject' | 'exists' | 'notExists' | 'sortBy' | 'forAll' ) '(' ( r_identifier '|' )? r_expression ')' );
public final void r_collectionExpression() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_collectionExpression");
+ if(backtracking ==0) {
+ ruleEntered("r_collectionExpression");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:296:25: ( 'typeSelect' '(' r_type ')' | ( 'collect' | 'select' | 'selectFirst' | 'reject' | 'exists' | 'notExists' | 'sortBy' | 'forAll' ) '(' ( r_identifier '|' )? r_expression ')' )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:300:25: ( 'typeSelect' '(' r_type ')' | ( 'collect' | 'select' | 'selectFirst' | 'reject' | 'exists' | 'notExists' | 'sortBy' | 'forAll' ) '(' ( r_identifier '|' )? r_expression ')' )
int alt67=2;
int LA67_0 = input.LA(1);
@@ -4556,39 +5073,47 @@ public abstract class Xpand3Parser extends Parser {
else {
if (backtracking>0) {failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("296:1: r_collectionExpression : ( 'typeSelect' '(' r_type ')' | ( 'collect' | 'select' | 'selectFirst' | 'reject' | 'exists' | 'notExists' | 'sortBy' | 'forAll' ) '(' ( r_identifier '|' )? r_expression ')' );", 67, 0, input);
+ new NoViableAltException("300:1: r_collectionExpression : ( 'typeSelect' '(' r_type ')' | ( 'collect' | 'select' | 'selectFirst' | 'reject' | 'exists' | 'notExists' | 'sortBy' | 'forAll' ) '(' ( r_identifier '|' )? r_expression ')' );", 67, 0, input);
throw nvae;
}
switch (alt67) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:297:3: 'typeSelect' '(' r_type ')'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:301:3: 'typeSelect' '(' r_type ')'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,100,FOLLOW_100_in_r_collectionExpression1552); if (failed) return ;
+ match(input,100,FOLLOW_100_in_r_collectionExpression1569); if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,31,FOLLOW_31_in_r_collectionExpression1556); if (failed) return ;
- pushFollow(FOLLOW_r_type_in_r_collectionExpression1558);
+ match(input,31,FOLLOW_31_in_r_collectionExpression1573); if (failed) return ;
+ pushFollow(FOLLOW_r_type_in_r_collectionExpression1575);
r_type();
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,34,FOLLOW_34_in_r_collectionExpression1560); if (failed) return ;
+ match(input,34,FOLLOW_34_in_r_collectionExpression1577); if (failed) return ;
}
break;
case 2 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:300:4: ( 'collect' | 'select' | 'selectFirst' | 'reject' | 'exists' | 'notExists' | 'sortBy' | 'forAll' ) '(' ( r_identifier '|' )? r_expression ')'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:304:4: ( 'collect' | 'select' | 'selectFirst' | 'reject' | 'exists' | 'notExists' | 'sortBy' | 'forAll' ) '(' ( r_identifier '|' )? r_expression ')'
{
if ( (input.LA(1)>=101 && input.LA(1)<=108) ) {
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */ input.consume();
errorRecovery=false;failed=false;
}
@@ -4596,14 +5121,16 @@ public abstract class Xpand3Parser extends Parser {
if (backtracking>0) {failed=true; return ;}
MismatchedSetException mse =
new MismatchedSetException(null,input);
- recoverFromMismatchedSet(input,mse,FOLLOW_set_in_r_collectionExpression1569); throw mse;
+ recoverFromMismatchedSet(input,mse,FOLLOW_set_in_r_collectionExpression1586); throw mse;
}
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,31,FOLLOW_31_in_r_collectionExpression1619); if (failed) return ;
- // src/org/eclipse/xpand3/parser/Xpand3.g:307:19: ( r_identifier '|' )?
+ match(input,31,FOLLOW_31_in_r_collectionExpression1636); if (failed) return ;
+ // src/org/eclipse/xpand3/parser/Xpand3.g:311:19: ( r_identifier '|' )?
int alt66=2;
int LA66_0 = input.LA(1);
@@ -4616,30 +5143,34 @@ public abstract class Xpand3Parser extends Parser {
}
switch (alt66) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:307:20: r_identifier '|'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:311:20: r_identifier '|'
{
- pushFollow(FOLLOW_r_identifier_in_r_collectionExpression1622);
+ pushFollow(FOLLOW_r_identifier_in_r_collectionExpression1639);
r_identifier();
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,109,FOLLOW_109_in_r_collectionExpression1624); if (failed) return ;
+ match(input,109,FOLLOW_109_in_r_collectionExpression1641); if (failed) return ;
}
break;
}
- pushFollow(FOLLOW_r_expression_in_r_collectionExpression1628);
+ pushFollow(FOLLOW_r_expression_in_r_collectionExpression1645);
r_expression();
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,34,FOLLOW_34_in_r_collectionExpression1630); if (failed) return ;
+ match(input,34,FOLLOW_34_in_r_collectionExpression1647); if (failed) return ;
}
break;
@@ -4652,7 +5183,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_collectionExpression");
+ if(backtracking==0) {
+ ruleLeft("r_collectionExpression");
+ }
/** END EDITED */
}
return ;
@@ -4661,20 +5194,22 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start r_declaredParameterList
- // src/org/eclipse/xpand3/parser/Xpand3.g:313:1: r_declaredParameterList : r_declaredParameter ( ',' r_declaredParameter )* ;
+ // src/org/eclipse/xpand3/parser/Xpand3.g:317:1: r_declaredParameterList : r_declaredParameter ( ',' r_declaredParameter )* ;
public final void r_declaredParameterList() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_declaredParameterList");
+ if(backtracking ==0) {
+ ruleEntered("r_declaredParameterList");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:313:26: ( r_declaredParameter ( ',' r_declaredParameter )* )
- // src/org/eclipse/xpand3/parser/Xpand3.g:314:2: r_declaredParameter ( ',' r_declaredParameter )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:317:26: ( r_declaredParameter ( ',' r_declaredParameter )* )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:318:2: r_declaredParameter ( ',' r_declaredParameter )*
{
- pushFollow(FOLLOW_r_declaredParameter_in_r_declaredParameterList1647);
+ pushFollow(FOLLOW_r_declaredParameter_in_r_declaredParameterList1664);
r_declaredParameter();
_fsp--;
if (failed) return ;
- // src/org/eclipse/xpand3/parser/Xpand3.g:314:22: ( ',' r_declaredParameter )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:318:22: ( ',' r_declaredParameter )*
loop68:
do {
int alt68=2;
@@ -4693,13 +5228,15 @@ public abstract class Xpand3Parser extends Parser {
switch (alt68) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:314:23: ',' r_declaredParameter
+ // src/org/eclipse/xpand3/parser/Xpand3.g:318:23: ',' r_declaredParameter
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,32,FOLLOW_32_in_r_declaredParameterList1650); if (failed) return ;
- pushFollow(FOLLOW_r_declaredParameter_in_r_declaredParameterList1652);
+ match(input,32,FOLLOW_32_in_r_declaredParameterList1667); if (failed) return ;
+ pushFollow(FOLLOW_r_declaredParameter_in_r_declaredParameterList1669);
r_declaredParameter();
_fsp--;
if (failed) return ;
@@ -4722,7 +5259,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_declaredParameterList");
+ if(backtracking==0) {
+ ruleLeft("r_declaredParameterList");
+ }
/** END EDITED */
}
return ;
@@ -4731,20 +5270,22 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start r_declaredParameter
- // src/org/eclipse/xpand3/parser/Xpand3.g:317:1: r_declaredParameter : r_type r_identifier ;
+ // src/org/eclipse/xpand3/parser/Xpand3.g:321:1: r_declaredParameter : r_type r_identifier ;
public final void r_declaredParameter() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_declaredParameter");
+ if(backtracking ==0) {
+ ruleEntered("r_declaredParameter");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:317:21: ( r_type r_identifier )
- // src/org/eclipse/xpand3/parser/Xpand3.g:318:2: r_type r_identifier
+ // src/org/eclipse/xpand3/parser/Xpand3.g:321:21: ( r_type r_identifier )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:322:2: r_type r_identifier
{
- pushFollow(FOLLOW_r_type_in_r_declaredParameter1665);
+ pushFollow(FOLLOW_r_type_in_r_declaredParameter1682);
r_type();
_fsp--;
if (failed) return ;
- pushFollow(FOLLOW_r_identifier_in_r_declaredParameter1667);
+ pushFollow(FOLLOW_r_identifier_in_r_declaredParameter1684);
r_identifier();
_fsp--;
if (failed) return ;
@@ -4758,7 +5299,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_declaredParameter");
+ if(backtracking==0) {
+ ruleLeft("r_declaredParameter");
+ }
/** END EDITED */
}
return ;
@@ -4767,20 +5310,22 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start r_parameterList
- // src/org/eclipse/xpand3/parser/Xpand3.g:321:1: r_parameterList : r_expression ( ',' r_expression )* ;
+ // src/org/eclipse/xpand3/parser/Xpand3.g:325:1: r_parameterList : r_expression ( ',' r_expression )* ;
public final void r_parameterList() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_parameterList");
+ if(backtracking ==0) {
+ ruleEntered("r_parameterList");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:321:18: ( r_expression ( ',' r_expression )* )
- // src/org/eclipse/xpand3/parser/Xpand3.g:322:5: r_expression ( ',' r_expression )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:325:18: ( r_expression ( ',' r_expression )* )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:326:5: r_expression ( ',' r_expression )*
{
- pushFollow(FOLLOW_r_expression_in_r_parameterList1682);
+ pushFollow(FOLLOW_r_expression_in_r_parameterList1699);
r_expression();
_fsp--;
if (failed) return ;
- // src/org/eclipse/xpand3/parser/Xpand3.g:322:19: ( ',' r_expression )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:326:19: ( ',' r_expression )*
loop69:
do {
int alt69=2;
@@ -4793,13 +5338,15 @@ public abstract class Xpand3Parser extends Parser {
switch (alt69) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:322:20: ',' r_expression
+ // src/org/eclipse/xpand3/parser/Xpand3.g:326:20: ',' r_expression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,32,FOLLOW_32_in_r_parameterList1686); if (failed) return ;
- pushFollow(FOLLOW_r_expression_in_r_parameterList1688);
+ match(input,32,FOLLOW_32_in_r_parameterList1703); if (failed) return ;
+ pushFollow(FOLLOW_r_expression_in_r_parameterList1705);
r_expression();
_fsp--;
if (failed) return ;
@@ -4822,7 +5369,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_parameterList");
+ if(backtracking==0) {
+ ruleLeft("r_parameterList");
+ }
/** END EDITED */
}
return ;
@@ -4831,13 +5380,15 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start r_type
- // src/org/eclipse/xpand3/parser/Xpand3.g:327:1: r_type : ( r_collectionType | r_simpleType );
+ // src/org/eclipse/xpand3/parser/Xpand3.g:331:1: r_type : ( r_collectionType | r_simpleType );
public final void r_type() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_type");
+ if(backtracking ==0) {
+ ruleEntered("r_type");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:327:8: ( r_collectionType | r_simpleType )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:331:8: ( r_collectionType | r_simpleType )
int alt70=2;
int LA70_0 = input.LA(1);
@@ -4850,15 +5401,15 @@ public abstract class Xpand3Parser extends Parser {
else {
if (backtracking>0) {failed=true; return ;}
NoViableAltException nvae =
- new NoViableAltException("327:1: r_type : ( r_collectionType | r_simpleType );", 70, 0, input);
+ new NoViableAltException("331:1: r_type : ( r_collectionType | r_simpleType );", 70, 0, input);
throw nvae;
}
switch (alt70) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:328:2: r_collectionType
+ // src/org/eclipse/xpand3/parser/Xpand3.g:332:2: r_collectionType
{
- pushFollow(FOLLOW_r_collectionType_in_r_type1705);
+ pushFollow(FOLLOW_r_collectionType_in_r_type1722);
r_collectionType();
_fsp--;
if (failed) return ;
@@ -4866,9 +5417,9 @@ public abstract class Xpand3Parser extends Parser {
}
break;
case 2 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:329:2: r_simpleType
+ // src/org/eclipse/xpand3/parser/Xpand3.g:333:2: r_simpleType
{
- pushFollow(FOLLOW_r_simpleType_in_r_type1710);
+ pushFollow(FOLLOW_r_simpleType_in_r_type1727);
r_simpleType();
_fsp--;
if (failed) return ;
@@ -4884,7 +5435,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_type");
+ if(backtracking==0) {
+ ruleLeft("r_type");
+ }
/** END EDITED */
}
return ;
@@ -4893,18 +5446,22 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start r_collectionType
- // src/org/eclipse/xpand3/parser/Xpand3.g:332:1: r_collectionType : ( 'Collection' | 'List' | 'Set' ) ( '[' r_simpleType ']' )? ;
+ // src/org/eclipse/xpand3/parser/Xpand3.g:336:1: r_collectionType : ( 'Collection' | 'List' | 'Set' ) ( '[' r_simpleType ']' )? ;
public final void r_collectionType() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_collectionType");
+ if(backtracking ==0) {
+ ruleEntered("r_collectionType");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:332:19: ( ( 'Collection' | 'List' | 'Set' ) ( '[' r_simpleType ']' )? )
- // src/org/eclipse/xpand3/parser/Xpand3.g:333:3: ( 'Collection' | 'List' | 'Set' ) ( '[' r_simpleType ']' )?
+ // src/org/eclipse/xpand3/parser/Xpand3.g:336:19: ( ( 'Collection' | 'List' | 'Set' ) ( '[' r_simpleType ']' )? )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:337:3: ( 'Collection' | 'List' | 'Set' ) ( '[' r_simpleType ']' )?
{
if ( (input.LA(1)>=69 && input.LA(1)<=71) ) {
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */ input.consume();
errorRecovery=false;failed=false;
}
@@ -4912,10 +5469,10 @@ public abstract class Xpand3Parser extends Parser {
if (backtracking>0) {failed=true; return ;}
MismatchedSetException mse =
new MismatchedSetException(null,input);
- recoverFromMismatchedSet(input,mse,FOLLOW_set_in_r_collectionType1725); throw mse;
+ recoverFromMismatchedSet(input,mse,FOLLOW_set_in_r_collectionType1742); throw mse;
}
- // src/org/eclipse/xpand3/parser/Xpand3.g:334:3: ( '[' r_simpleType ']' )?
+ // src/org/eclipse/xpand3/parser/Xpand3.g:338:3: ( '[' r_simpleType ']' )?
int alt71=2;
int LA71_0 = input.LA(1);
@@ -4924,20 +5481,24 @@ public abstract class Xpand3Parser extends Parser {
}
switch (alt71) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:334:4: '[' r_simpleType ']'
+ // src/org/eclipse/xpand3/parser/Xpand3.g:338:4: '[' r_simpleType ']'
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,110,FOLLOW_110_in_r_collectionType1743); if (failed) return ;
- pushFollow(FOLLOW_r_simpleType_in_r_collectionType1745);
+ match(input,110,FOLLOW_110_in_r_collectionType1760); if (failed) return ;
+ pushFollow(FOLLOW_r_simpleType_in_r_collectionType1762);
r_simpleType();
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,111,FOLLOW_111_in_r_collectionType1747); if (failed) return ;
+ match(input,111,FOLLOW_111_in_r_collectionType1764); if (failed) return ;
}
break;
@@ -4954,7 +5515,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_collectionType");
+ if(backtracking==0) {
+ ruleLeft("r_collectionType");
+ }
/** END EDITED */
}
return ;
@@ -4963,20 +5526,22 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start r_simpleType
- // src/org/eclipse/xpand3/parser/Xpand3.g:337:1: r_simpleType : r_identifier ( '::' r_identifier )* ;
+ // src/org/eclipse/xpand3/parser/Xpand3.g:341:1: r_simpleType : r_identifier ( '::' r_identifier )* ;
public final void r_simpleType() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_simpleType");
+ if(backtracking ==0) {
+ ruleEntered("r_simpleType");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:337:14: ( r_identifier ( '::' r_identifier )* )
- // src/org/eclipse/xpand3/parser/Xpand3.g:338:2: r_identifier ( '::' r_identifier )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:341:14: ( r_identifier ( '::' r_identifier )* )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:342:2: r_identifier ( '::' r_identifier )*
{
- pushFollow(FOLLOW_r_identifier_in_r_simpleType1760);
+ pushFollow(FOLLOW_r_identifier_in_r_simpleType1777);
r_identifier();
_fsp--;
if (failed) return ;
- // src/org/eclipse/xpand3/parser/Xpand3.g:339:2: ( '::' r_identifier )*
+ // src/org/eclipse/xpand3/parser/Xpand3.g:343:2: ( '::' r_identifier )*
loop72:
do {
int alt72=2;
@@ -4989,13 +5554,15 @@ public abstract class Xpand3Parser extends Parser {
switch (alt72) {
case 1 :
- // src/org/eclipse/xpand3/parser/Xpand3.g:339:3: '::' r_identifier
+ // src/org/eclipse/xpand3/parser/Xpand3.g:343:3: '::' r_identifier
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,63,FOLLOW_63_in_r_simpleType1765); if (failed) return ;
- pushFollow(FOLLOW_r_identifier_in_r_simpleType1767);
+ match(input,63,FOLLOW_63_in_r_simpleType1782); if (failed) return ;
+ pushFollow(FOLLOW_r_identifier_in_r_simpleType1784);
r_identifier();
_fsp--;
if (failed) return ;
@@ -5018,7 +5585,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_simpleType");
+ if(backtracking==0) {
+ ruleLeft("r_simpleType");
+ }
/** END EDITED */
}
return ;
@@ -5027,19 +5596,23 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start r_identifier
- // src/org/eclipse/xpand3/parser/Xpand3.g:342:1: r_identifier : Identifier ;
+ // src/org/eclipse/xpand3/parser/Xpand3.g:346:1: r_identifier : Identifier ;
public final void r_identifier() throws RecognitionException {
try {
/** START EDITED */
- ruleEntered("r_identifier");
+ if(backtracking ==0) {
+ ruleEntered("r_identifier");
+ }
/** END EDITED */
- // src/org/eclipse/xpand3/parser/Xpand3.g:342:14: ( Identifier )
- // src/org/eclipse/xpand3/parser/Xpand3.g:343:4: Identifier
+ // src/org/eclipse/xpand3/parser/Xpand3.g:346:14: ( Identifier )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:347:4: Identifier
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
- match(input,Identifier,FOLLOW_Identifier_in_r_identifier1783); if (failed) return ;
+ match(input,Identifier,FOLLOW_Identifier_in_r_identifier1800); if (failed) return ;
}
@@ -5050,7 +5623,9 @@ public abstract class Xpand3Parser extends Parser {
}
finally {
/** START EDITED */
- ruleLeft("r_identifier");
+ if(backtracking==0) {
+ ruleLeft("r_identifier");
+ }
/** END EDITED */
}
return ;
@@ -5059,11 +5634,13 @@ public abstract class Xpand3Parser extends Parser {
// $ANTLR start synpred1
public final void synpred1_fragment() throws RecognitionException {
- // src/org/eclipse/xpand3/parser/Xpand3.g:186:5: ( '(' r_type ')' r_castedExpression )
- // src/org/eclipse/xpand3/parser/Xpand3.g:186:6: '(' r_type ')' r_castedExpression
+ // src/org/eclipse/xpand3/parser/Xpand3.g:186:5: ( '(' r_type ')' r_chainExpression )
+ // src/org/eclipse/xpand3/parser/Xpand3.g:186:6: '(' r_type ')' r_chainExpression
{
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,31,FOLLOW_31_in_synpred1953); if (failed) return ;
pushFollow(FOLLOW_r_type_in_synpred1955);
@@ -5071,11 +5648,13 @@ public abstract class Xpand3Parser extends Parser {
_fsp--;
if (failed) return ;
/** START EDITED */
- tokenConsumed(null, (CommonToken) input.LT(1));
+ if(backtracking==0) {
+ tokenConsumed(null, (CommonToken) input.LT(1));
+ }
/** END EDITED */
match(input,34,FOLLOW_34_in_synpred1957); if (failed) return ;
- pushFollow(FOLLOW_r_castedExpression_in_synpred1959);
- r_castedExpression();
+ pushFollow(FOLLOW_r_chainExpression_in_synpred1959);
+ r_chainExpression();
_fsp--;
if (failed) return ;
@@ -5105,41 +5684,38 @@ public abstract class Xpand3Parser extends Parser {
static final String DFA44_eofS =
"\6\uffff\1\2\60\uffff";
static final String DFA44_minS =
- "\2\13\1\uffff\1\37\1\41\1\15\1\12\1\15\1\41\1\12\1\0\16\uffff\1"+
- "\77\3\0\2\37\4\0\2\15\1\0\1\15\1\41\1\15\3\0\1\77\2\42\1\15\1\0"+
- "\1\15\1\77\1\42\1\15\1\42\1\77";
+ "\2\13\1\uffff\1\41\1\37\1\15\1\12\1\15\1\77\2\uffff\1\0\13\uffff"+
+ "\1\12\1\uffff\1\41\1\15\1\41\3\0\2\37\4\0\2\15\1\0\1\77\1\15\3\0"+
+ "\2\42\1\15\1\0\1\15\1\77\1\42\1\15\1\42\1\77";
static final String DFA44_maxS =
- "\2\154\1\uffff\1\134\1\156\1\15\1\154\1\15\1\134\1\154\1\0\16\uffff"+
- "\1\157\3\0\2\37\4\0\2\15\1\0\1\15\1\134\1\107\3\0\1\157\1\156\1"+
- "\77\1\15\1\0\1\15\1\157\1\77\1\15\1\42\1\157";
+ "\2\154\1\uffff\1\156\1\135\1\15\1\154\1\15\1\157\2\uffff\1\0\13"+
+ "\uffff\1\154\1\uffff\1\135\1\15\1\135\3\0\2\37\4\0\2\15\1\0\1\157"+
+ "\1\107\3\0\1\156\1\77\1\15\1\0\1\15\1\157\1\77\1\15\1\42\1\157";
static final String DFA44_acceptS =
- "\2\uffff\1\2\10\uffff\16\1\36\uffff";
+ "\2\uffff\1\2\6\uffff\2\1\1\uffff\13\1\1\uffff\1\1\36\uffff";
static final String DFA44_specialS =
- "\6\uffff\1\7\3\uffff\1\12\17\uffff\1\10\1\11\1\14\2\uffff\1\0\1"+
- "\1\1\13\1\5\2\uffff\1\6\3\uffff\1\4\1\2\1\15\4\uffff\1\3\6\uffff}>";
+ "\6\uffff\1\13\4\uffff\1\3\20\uffff\1\14\1\1\1\15\2\uffff\1\4\1\2"+
+ "\1\12\1\5\2\uffff\1\6\2\uffff\1\11\1\10\1\7\3\uffff\1\0\6\uffff}>";
static final String[] DFA44_transitionS = {
"\3\2\21\uffff\1\1\4\uffff\1\2\26\uffff\1\2\11\uffff\3\2\6\uffff"+
- "\1\2\16\uffff\20\2",
- "\2\2\1\3\21\uffff\1\2\4\uffff\1\2\26\uffff\1\2\11\uffff\3\4"+
- "\1\2\5\uffff\1\2\16\uffff\20\2",
+ "\2\2\16\uffff\17\2",
+ "\2\2\1\4\21\uffff\1\2\4\uffff\1\2\26\uffff\1\2\11\uffff\3\3"+
+ "\1\2\5\uffff\2\2\16\uffff\17\2",
"",
- "\1\2\1\uffff\1\2\1\6\1\uffff\1\2\32\uffff\1\5\4\uffff\1\2\5"+
- "\uffff\2\2\6\uffff\13\2",
- "\1\2\1\6\1\uffff\1\2\37\uffff\1\2\5\uffff\2\2\6\uffff\13\2\21"+
- "\uffff\1\7",
+ "\1\2\1\6\1\uffff\1\2\37\uffff\1\2\5\uffff\2\2\7\uffff\13\2\20"+
+ "\uffff\1\5",
+ "\1\2\1\uffff\1\2\1\6\1\uffff\1\2\32\uffff\1\7\4\uffff\1\2\5"+
+ "\uffff\2\2\7\uffff\13\2",
"\1\10",
- "\1\2\1\14\1\21\1\12\16\uffff\1\2\2\uffff\1\26\3\2\1\uffff\1"+
- "\11\1\2\2\uffff\1\2\2\uffff\1\2\12\uffff\3\2\2\uffff\1\30\2"+
- "\2\6\uffff\1\2\3\15\2\uffff\3\2\1\uffff\1\13\16\2\1\27\1\25"+
- "\1\23\1\24\2\20\1\22\1\16\10\17",
+ "\1\2\1\12\1\20\1\13\16\uffff\1\2\2\uffff\1\25\3\2\1\uffff\1"+
+ "\27\1\2\2\uffff\1\2\2\uffff\1\2\12\uffff\3\2\2\uffff\1\30\2"+
+ "\2\6\uffff\1\2\3\14\2\uffff\3\2\1\uffff\1\11\1\22\16\2\1\26"+
+ "\1\24\1\23\2\17\1\21\1\15\10\16",
"\1\31",
- "\1\2\1\6\1\uffff\1\2\32\uffff\1\5\4\uffff\1\2\5\uffff\2\2\6"+
- "\uffff\13\2",
- "\1\2\1\32\1\40\1\33\21\uffff\1\45\4\uffff\1\2\40\uffff\3\34"+
- "\25\uffff\1\2\1\44\1\42\1\43\2\37\1\41\1\35\10\36",
- "\1\uffff",
+ "\1\32\57\uffff\1\33",
"",
"",
+ "\1\uffff",
"",
"",
"",
@@ -5151,27 +5727,30 @@ public abstract class Xpand3Parser extends Parser {
"",
"",
"",
+ "\1\2\1\34\1\42\1\35\21\uffff\1\47\4\uffff\1\2\40\uffff\3\36"+
+ "\7\uffff\1\44\16\uffff\1\2\1\46\1\45\2\41\1\43\1\37\10\40",
"",
- "\1\46\57\uffff\1\47",
+ "\1\2\1\6\1\uffff\1\2\32\uffff\1\7\4\uffff\1\2\5\uffff\2\2\7"+
+ "\uffff\13\2",
+ "\1\50",
+ "\1\2\1\6\1\uffff\1\2\37\uffff\1\2\5\uffff\2\2\7\uffff\13\2",
"\1\uffff",
"\1\uffff",
"\1\uffff",
- "\1\50",
"\1\51",
+ "\1\52",
"\1\uffff",
"\1\uffff",
"\1\uffff",
"\1\uffff",
- "\1\52",
"\1\53",
- "\1\uffff",
"\1\54",
- "\1\2\1\6\1\uffff\1\2\37\uffff\1\2\5\uffff\2\2\6\uffff\13\2",
+ "\1\uffff",
+ "\1\32\57\uffff\1\33",
"\1\56\67\uffff\3\55",
"\1\uffff",
"\1\uffff",
"\1\uffff",
- "\1\46\57\uffff\1\47",
"\1\60\113\uffff\1\57",
"\1\60\34\uffff\1\61",
"\1\62",
@@ -5214,16 +5793,16 @@ public abstract class Xpand3Parser extends Parser {
this.transition = DFA44_transition;
}
public String getDescription() {
- return "185:1: r_castedExpression : ( ( '(' r_type ')' r_castedExpression )=> '(' r_type ')' r_chainExpression | r_chainExpression );";
+ return "185:1: r_castedExpression : ( ( '(' r_type ')' r_chainExpression )=> '(' r_type ')' r_chainExpression | r_chainExpression );";
}
public int specialStateTransition(int s, IntStream input) throws NoViableAltException {
int _s = s;
switch ( s ) {
case 0 :
- int LA44_31 = input.LA(1);
+ int LA44_48 = input.LA(1);
- int index44_31 = input.index();
+ int index44_48 = input.index();
input.rewind();
s = -1;
if ( (synpred1()) ) {s = 24;}
@@ -5231,14 +5810,14 @@ public abstract class Xpand3Parser extends Parser {
else if ( (true) ) {s = 2;}
- input.seek(index44_31);
+ input.seek(index44_48);
if ( s>=0 ) return s;
break;
case 1 :
- int LA44_32 = input.LA(1);
+ int LA44_29 = input.LA(1);
- int index44_32 = input.index();
+ int index44_29 = input.index();
input.rewind();
s = -1;
if ( (synpred1()) ) {s = 24;}
@@ -5246,14 +5825,14 @@ public abstract class Xpand3Parser extends Parser {
else if ( (true) ) {s = 2;}
- input.seek(index44_32);
+ input.seek(index44_29);
if ( s>=0 ) return s;
break;
case 2 :
- int LA44_42 = input.LA(1);
+ int LA44_34 = input.LA(1);
- int index44_42 = input.index();
+ int index44_34 = input.index();
input.rewind();
s = -1;
if ( (synpred1()) ) {s = 24;}
@@ -5261,14 +5840,14 @@ public abstract class Xpand3Parser extends Parser {
else if ( (true) ) {s = 2;}
- input.seek(index44_42);
+ input.seek(index44_34);
if ( s>=0 ) return s;
break;
case 3 :
- int LA44_48 = input.LA(1);
+ int LA44_11 = input.LA(1);
- int index44_48 = input.index();
+ int index44_11 = input.index();
input.rewind();
s = -1;
if ( (synpred1()) ) {s = 24;}
@@ -5276,14 +5855,14 @@ public abstract class Xpand3Parser extends Parser {
else if ( (true) ) {s = 2;}
- input.seek(index44_48);
+ input.seek(index44_11);
if ( s>=0 ) return s;
break;
case 4 :
- int LA44_41 = input.LA(1);
+ int LA44_33 = input.LA(1);
- int index44_41 = input.index();
+ int index44_33 = input.index();
input.rewind();
s = -1;
if ( (synpred1()) ) {s = 24;}
@@ -5291,14 +5870,14 @@ public abstract class Xpand3Parser extends Parser {
else if ( (true) ) {s = 2;}
- input.seek(index44_41);
+ input.seek(index44_33);
if ( s>=0 ) return s;
break;
case 5 :
- int LA44_34 = input.LA(1);
+ int LA44_36 = input.LA(1);
- int index44_34 = input.index();
+ int index44_36 = input.index();
input.rewind();
s = -1;
if ( (synpred1()) ) {s = 24;}
@@ -5306,14 +5885,14 @@ public abstract class Xpand3Parser extends Parser {
else if ( (true) ) {s = 2;}
- input.seek(index44_34);
+ input.seek(index44_36);
if ( s>=0 ) return s;
break;
case 6 :
- int LA44_37 = input.LA(1);
+ int LA44_39 = input.LA(1);
- int index44_37 = input.index();
+ int index44_39 = input.index();
input.rewind();
s = -1;
if ( (synpred1()) ) {s = 24;}
@@ -5321,59 +5900,29 @@ public abstract class Xpand3Parser extends Parser {
else if ( (true) ) {s = 2;}
- input.seek(index44_37);
+ input.seek(index44_39);
if ( s>=0 ) return s;
break;
case 7 :
- int LA44_6 = input.LA(1);
+ int LA44_44 = input.LA(1);
- int index44_6 = input.index();
+ int index44_44 = input.index();
input.rewind();
s = -1;
- if ( (LA44_6==EOF||LA44_6==TEXT||LA44_6==28||(LA44_6>=32 && LA44_6<=34)||LA44_6==37||LA44_6==40||LA44_6==43||(LA44_6>=54 && LA44_6<=56)||(LA44_6>=60 && LA44_6<=61)||LA44_6==68||(LA44_6>=74 && LA44_6<=76)||(LA44_6>=79 && LA44_6<=92)) ) {s = 2;}
-
- else if ( (LA44_6==36) ) {s = 9;}
-
- else if ( (LA44_6==Identifier) ) {s = 10;}
-
- else if ( (LA44_6==78) && (synpred1())) {s = 11;}
-
- else if ( (LA44_6==StringLiteral) && (synpred1())) {s = 12;}
-
- else if ( ((LA44_6>=69 && LA44_6<=71)) && (synpred1())) {s = 13;}
-
- else if ( (LA44_6==100) && (synpred1())) {s = 14;}
-
- else if ( ((LA44_6>=101 && LA44_6<=108)) && (synpred1())) {s = 15;}
-
- else if ( ((LA44_6>=97 && LA44_6<=98)) && (synpred1())) {s = 16;}
-
- else if ( (LA44_6==IntLiteral) && (synpred1())) {s = 17;}
-
- else if ( (LA44_6==99) && (synpred1())) {s = 18;}
-
- else if ( (LA44_6==95) && (synpred1())) {s = 19;}
-
- else if ( (LA44_6==96) && (synpred1())) {s = 20;}
-
- else if ( (LA44_6==94) && (synpred1())) {s = 21;}
-
- else if ( (LA44_6==31) && (synpred1())) {s = 22;}
-
- else if ( (LA44_6==93) && (synpred1())) {s = 23;}
+ if ( (synpred1()) ) {s = 24;}
- else if ( (LA44_6==59) && (synpred1())) {s = 24;}
+ else if ( (true) ) {s = 2;}
- input.seek(index44_6);
+ input.seek(index44_44);
if ( s>=0 ) return s;
break;
case 8 :
- int LA44_26 = input.LA(1);
+ int LA44_43 = input.LA(1);
- int index44_26 = input.index();
+ int index44_43 = input.index();
input.rewind();
s = -1;
if ( (synpred1()) ) {s = 24;}
@@ -5381,14 +5930,14 @@ public abstract class Xpand3Parser extends Parser {
else if ( (true) ) {s = 2;}
- input.seek(index44_26);
+ input.seek(index44_43);
if ( s>=0 ) return s;
break;
case 9 :
- int LA44_27 = input.LA(1);
+ int LA44_42 = input.LA(1);
- int index44_27 = input.index();
+ int index44_42 = input.index();
input.rewind();
s = -1;
if ( (synpred1()) ) {s = 24;}
@@ -5396,14 +5945,14 @@ public abstract class Xpand3Parser extends Parser {
else if ( (true) ) {s = 2;}
- input.seek(index44_27);
+ input.seek(index44_42);
if ( s>=0 ) return s;
break;
case 10 :
- int LA44_10 = input.LA(1);
+ int LA44_35 = input.LA(1);
- int index44_10 = input.index();
+ int index44_35 = input.index();
input.rewind();
s = -1;
if ( (synpred1()) ) {s = 24;}
@@ -5411,22 +5960,52 @@ public abstract class Xpand3Parser extends Parser {
else if ( (true) ) {s = 2;}
- input.seek(index44_10);
+ input.seek(index44_35);
if ( s>=0 ) return s;
break;
case 11 :
- int LA44_33 = input.LA(1);
+ int LA44_6 = input.LA(1);
- int index44_33 = input.index();
+ int index44_6 = input.index();
input.rewind();
s = -1;
- if ( (synpred1()) ) {s = 24;}
+ if ( (LA44_6==78) && (synpred1())) {s = 9;}
- else if ( (true) ) {s = 2;}
+ else if ( (LA44_6==StringLiteral) && (synpred1())) {s = 10;}
+
+ else if ( (LA44_6==Identifier) ) {s = 11;}
+
+ else if ( ((LA44_6>=69 && LA44_6<=71)) && (synpred1())) {s = 12;}
+
+ else if ( (LA44_6==100) && (synpred1())) {s = 13;}
+
+ else if ( ((LA44_6>=101 && LA44_6<=108)) && (synpred1())) {s = 14;}
+
+ else if ( ((LA44_6>=97 && LA44_6<=98)) && (synpred1())) {s = 15;}
+
+ else if ( (LA44_6==IntLiteral) && (synpred1())) {s = 16;}
+
+ else if ( (LA44_6==99) && (synpred1())) {s = 17;}
+
+ else if ( (LA44_6==79) && (synpred1())) {s = 18;}
+
+ else if ( (LA44_6==96) && (synpred1())) {s = 19;}
+
+ else if ( (LA44_6==95) && (synpred1())) {s = 20;}
+
+ else if ( (LA44_6==31) && (synpred1())) {s = 21;}
+
+ else if ( (LA44_6==94) && (synpred1())) {s = 22;}
+
+ else if ( (LA44_6==36) ) {s = 23;}
+
+ else if ( (LA44_6==59) && (synpred1())) {s = 24;}
+
+ else if ( (LA44_6==EOF||LA44_6==TEXT||LA44_6==28||(LA44_6>=32 && LA44_6<=34)||LA44_6==37||LA44_6==40||LA44_6==43||(LA44_6>=54 && LA44_6<=56)||(LA44_6>=60 && LA44_6<=61)||LA44_6==68||(LA44_6>=74 && LA44_6<=76)||(LA44_6>=80 && LA44_6<=93)) ) {s = 2;}
- input.seek(index44_33);
+ input.seek(index44_6);
if ( s>=0 ) return s;
break;
case 12 :
@@ -5445,10 +6024,10 @@ public abstract class Xpand3Parser extends Parser {
if ( s>=0 ) return s;
break;
case 13 :
- int LA44_43 = input.LA(1);
+ int LA44_30 = input.LA(1);
- int index44_43 = input.index();
+ int index44_30 = input.index();
input.rewind();
s = -1;
if ( (synpred1()) ) {s = 24;}
@@ -5456,7 +6035,7 @@ public abstract class Xpand3Parser extends Parser {
else if ( (true) ) {s = 2;}
- input.seek(index44_43);
+ input.seek(index44_30);
if ( s>=0 ) return s;
break;
}
@@ -5520,9 +6099,9 @@ public abstract class Xpand3Parser extends Parser {
public static final BitSet FOLLOW_r_sequence_in_r_definitionAround235 = new BitSet(new long[]{0x0000000000000200L});
public static final BitSet FOLLOW_ENDAROUND_in_r_definitionAround238 = new BitSet(new long[]{0x0000000000000020L});
public static final BitSet FOLLOW_RG_in_r_definitionAround240 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_textSequence_in_r_sequence252 = new BitSet(new long[]{0x081442F080003802L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_r_textSequence_in_r_sequence252 = new BitSet(new long[]{0x081442F080003802L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_statement_in_r_sequence258 = new BitSet(new long[]{0x0000001000000400L});
- public static final BitSet FOLLOW_r_textSequence_in_r_sequence264 = new BitSet(new long[]{0x081442F080003802L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_r_textSequence_in_r_sequence264 = new BitSet(new long[]{0x081442F080003802L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_simpleStatement_in_r_statement279 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_r_fileStatement_in_r_statement284 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_r_foreachStatement_in_r_statement289 = new BitSet(new long[]{0x0000000000000002L});
@@ -5536,69 +6115,69 @@ public abstract class Xpand3Parser extends Parser {
public static final BitSet FOLLOW_r_errorStatement_in_r_simpleStatement344 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_r_expandStatement_in_r_simpleStatement348 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_r_expressionStmt_in_r_simpleStatement352 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_37_in_r_errorStatement363 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_37_in_r_errorStatement363 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_expression_in_r_errorStatement365 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_38_in_r_expandStatement376 = new BitSet(new long[]{0x0000000000002000L});
public static final BitSet FOLLOW_r_simpleType_in_r_expandStatement378 = new BitSet(new long[]{0x0000008880000002L});
- public static final BitSet FOLLOW_31_in_r_expandStatement381 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_31_in_r_expandStatement381 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_parameterList_in_r_expandStatement383 = new BitSet(new long[]{0x0000000400000000L});
public static final BitSet FOLLOW_34_in_r_expandStatement385 = new BitSet(new long[]{0x0000008800000002L});
- public static final BitSet FOLLOW_35_in_r_expandStatement391 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_35_in_r_expandStatement391 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_expression_in_r_expandStatement393 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_39_in_r_expandStatement401 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_39_in_r_expandStatement401 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_expression_in_r_expandStatement402 = new BitSet(new long[]{0x0000010000000002L});
- public static final BitSet FOLLOW_40_in_r_expandStatement405 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_40_in_r_expandStatement405 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_expression_in_r_expandStatement407 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_r_expression_in_r_expressionStmt423 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_41_in_r_fileStatement433 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_41_in_r_fileStatement433 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_expression_in_r_fileStatement435 = new BitSet(new long[]{0x0000001000002400L});
public static final BitSet FOLLOW_r_identifier_in_r_fileStatement438 = new BitSet(new long[]{0x0000001000000400L});
public static final BitSet FOLLOW_r_sequence_in_r_fileStatement444 = new BitSet(new long[]{0x0000040000000000L});
public static final BitSet FOLLOW_42_in_r_fileStatement448 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_39_in_r_foreachStatement460 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_39_in_r_foreachStatement460 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_expression_in_r_foreachStatement462 = new BitSet(new long[]{0x0000080000000000L});
public static final BitSet FOLLOW_43_in_r_foreachStatement464 = new BitSet(new long[]{0x0000000000002000L});
public static final BitSet FOLLOW_r_identifier_in_r_foreachStatement466 = new BitSet(new long[]{0x0000111000000400L});
public static final BitSet FOLLOW_44_in_r_foreachStatement469 = new BitSet(new long[]{0x0000000000002000L});
public static final BitSet FOLLOW_r_identifier_in_r_foreachStatement471 = new BitSet(new long[]{0x0000011000000400L});
- public static final BitSet FOLLOW_40_in_r_foreachStatement476 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_40_in_r_foreachStatement476 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_expression_in_r_foreachStatement478 = new BitSet(new long[]{0x0000001000000400L});
public static final BitSet FOLLOW_r_sequence_in_r_foreachStatement486 = new BitSet(new long[]{0x0000200000000000L});
public static final BitSet FOLLOW_45_in_r_foreachStatement491 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_46_in_r_ifStatement506 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_46_in_r_ifStatement506 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_expression_in_r_ifStatement508 = new BitSet(new long[]{0x0000001000000400L});
public static final BitSet FOLLOW_r_sequence_in_r_ifStatement512 = new BitSet(new long[]{0x0003800000000000L});
public static final BitSet FOLLOW_r_elseIfStatement_in_r_ifStatement517 = new BitSet(new long[]{0x0003800000000000L});
public static final BitSet FOLLOW_r_elseStatement_in_r_ifStatement522 = new BitSet(new long[]{0x0000800000000000L});
public static final BitSet FOLLOW_47_in_r_ifStatement527 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_48_in_r_elseIfStatement537 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_48_in_r_elseIfStatement537 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_expression_in_r_elseIfStatement539 = new BitSet(new long[]{0x0000001000000400L});
public static final BitSet FOLLOW_r_sequence_in_r_elseIfStatement543 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_49_in_r_elseStatement555 = new BitSet(new long[]{0x0000001000000400L});
public static final BitSet FOLLOW_r_sequence_in_r_elseStatement559 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_50_in_r_letStatement571 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_50_in_r_letStatement571 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_expression_in_r_letStatement573 = new BitSet(new long[]{0x0000080000000000L});
public static final BitSet FOLLOW_43_in_r_letStatement575 = new BitSet(new long[]{0x0000000000002000L});
public static final BitSet FOLLOW_r_identifier_in_r_letStatement577 = new BitSet(new long[]{0x0000001000000400L});
public static final BitSet FOLLOW_r_sequence_in_r_letStatement583 = new BitSet(new long[]{0x0008000000000000L});
public static final BitSet FOLLOW_51_in_r_letStatement588 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_52_in_r_protectStatement599 = new BitSet(new long[]{0x0020000000000000L});
- public static final BitSet FOLLOW_53_in_r_protectStatement604 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_53_in_r_protectStatement604 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_expression_in_r_protectStatement606 = new BitSet(new long[]{0x0040000000000000L});
- public static final BitSet FOLLOW_54_in_r_protectStatement611 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_54_in_r_protectStatement611 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_expression_in_r_protectStatement613 = new BitSet(new long[]{0x0080000000000000L});
- public static final BitSet FOLLOW_55_in_r_protectStatement626 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_55_in_r_protectStatement626 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_expression_in_r_protectStatement628 = new BitSet(new long[]{0x0100001000000400L});
public static final BitSet FOLLOW_56_in_r_protectStatement630 = new BitSet(new long[]{0x0000001000000400L});
public static final BitSet FOLLOW_r_sequence_in_r_protectStatement636 = new BitSet(new long[]{0x0200000000000000L});
public static final BitSet FOLLOW_57_in_r_protectStatement640 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_58_in_r_check652 = new BitSet(new long[]{0x0000000000002000L,0x00000000000000E0L});
public static final BitSet FOLLOW_r_type_in_r_check654 = new BitSet(new long[]{0x1800002000000000L});
- public static final BitSet FOLLOW_59_in_r_check657 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_59_in_r_check657 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_expression_in_r_check659 = new BitSet(new long[]{0x1000002000000000L});
- public static final BitSet FOLLOW_set_in_r_check663 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_set_in_r_check663 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_expression_in_r_check669 = new BitSet(new long[]{0x2000000000000000L});
- public static final BitSet FOLLOW_61_in_r_check671 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_61_in_r_check671 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_expression_in_r_check675 = new BitSet(new long[]{0x0000000010000000L});
public static final BitSet FOLLOW_28_in_r_check677 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_62_in_r_around692 = new BitSet(new long[]{0x0000000200002000L});
@@ -5609,7 +6188,7 @@ public abstract class Xpand3Parser extends Parser {
public static final BitSet FOLLOW_33_in_r_around705 = new BitSet(new long[]{0x0000000400000000L});
public static final BitSet FOLLOW_33_in_r_around711 = new BitSet(new long[]{0x0000000400000000L});
public static final BitSet FOLLOW_34_in_r_around715 = new BitSet(new long[]{0x2000000000000000L});
- public static final BitSet FOLLOW_61_in_r_around717 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_61_in_r_around717 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_expression_in_r_around724 = new BitSet(new long[]{0x0000000010000000L});
public static final BitSet FOLLOW_28_in_r_around726 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_33_in_r_pointcut743 = new BitSet(new long[]{0x8000000200002002L});
@@ -5624,7 +6203,7 @@ public abstract class Xpand3Parser extends Parser {
public static final BitSet FOLLOW_31_in_r_extension804 = new BitSet(new long[]{0x0000000400002000L,0x00000000000000E0L});
public static final BitSet FOLLOW_r_declaredParameterList_in_r_extension806 = new BitSet(new long[]{0x0000000400000000L});
public static final BitSet FOLLOW_34_in_r_extension809 = new BitSet(new long[]{0x2000000000000000L});
- public static final BitSet FOLLOW_61_in_r_extension811 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E8L});
+ public static final BitSet FOLLOW_61_in_r_extension811 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E8L});
public static final BitSet FOLLOW_67_in_r_extension816 = new BitSet(new long[]{0x0000000000002000L});
public static final BitSet FOLLOW_r_javaType_in_r_extension818 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
public static final BitSet FOLLOW_68_in_r_extension820 = new BitSet(new long[]{0x0000000000002000L});
@@ -5647,134 +6226,136 @@ public abstract class Xpand3Parser extends Parser {
public static final BitSet FOLLOW_r_letExpression_in_r_expression909 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_72_in_r_letExpression922 = new BitSet(new long[]{0x0000000000002000L});
public static final BitSet FOLLOW_r_identifier_in_r_letExpression924 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000200L});
- public static final BitSet FOLLOW_73_in_r_letExpression926 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00040E0L});
+ public static final BitSet FOLLOW_73_in_r_letExpression926 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C0E0L});
public static final BitSet FOLLOW_r_castedExpression_in_r_letExpression928 = new BitSet(new long[]{0x2000000000000000L});
- public static final BitSet FOLLOW_61_in_r_letExpression930 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
+ public static final BitSet FOLLOW_61_in_r_letExpression930 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
public static final BitSet FOLLOW_r_expression_in_r_letExpression932 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_r_castedExpression_in_r_letExpression938 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_31_in_r_castedExpression964 = new BitSet(new long[]{0x0000000000002000L,0x00000000000000E0L});
public static final BitSet FOLLOW_r_type_in_r_castedExpression966 = new BitSet(new long[]{0x0000000400000000L});
- public static final BitSet FOLLOW_34_in_r_castedExpression968 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00040E0L});
+ public static final BitSet FOLLOW_34_in_r_castedExpression968 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C0E0L});
public static final BitSet FOLLOW_r_chainExpression_in_r_castedExpression970 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_r_chainExpression_in_r_castedExpression976 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_ifExpression_in_r_chainExpression988 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000400L});
- public static final BitSet FOLLOW_74_in_r_chainExpression993 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00040E0L});
- public static final BitSet FOLLOW_r_ifExpression_in_r_chainExpression995 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000400L});
- public static final BitSet FOLLOW_r_switchExpression_in_r_ifExpression1009 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000800L});
- public static final BitSet FOLLOW_75_in_r_ifExpression1012 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
- public static final BitSet FOLLOW_r_expression_in_r_ifExpression1014 = new BitSet(new long[]{0x2000000000000000L});
- public static final BitSet FOLLOW_61_in_r_ifExpression1016 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFE00040E0L});
- public static final BitSet FOLLOW_r_switchExpression_in_r_ifExpression1018 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_59_in_r_ifExpression1025 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
- public static final BitSet FOLLOW_r_expression_in_r_ifExpression1027 = new BitSet(new long[]{0x0000000000000000L,0x0000000000001000L});
- public static final BitSet FOLLOW_76_in_r_ifExpression1029 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFE00040E0L});
- public static final BitSet FOLLOW_r_switchExpression_in_r_ifExpression1031 = new BitSet(new long[]{0x0000000000000002L,0x0000000000002000L});
- public static final BitSet FOLLOW_77_in_r_ifExpression1034 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFE00040E0L});
- public static final BitSet FOLLOW_r_switchExpression_in_r_ifExpression1036 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_78_in_r_switchExpression1052 = new BitSet(new long[]{0x0000000080000000L,0x0000000000028000L});
- public static final BitSet FOLLOW_31_in_r_switchExpression1055 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFE00000E0L});
- public static final BitSet FOLLOW_r_orExpression_in_r_switchExpression1057 = new BitSet(new long[]{0x0000000400000000L});
- public static final BitSet FOLLOW_34_in_r_switchExpression1059 = new BitSet(new long[]{0x0000000000000000L,0x0000000000028000L});
- public static final BitSet FOLLOW_r_casePart_in_r_switchExpression1064 = new BitSet(new long[]{0x0000000000000000L,0x0000000000028000L});
- public static final BitSet FOLLOW_79_in_r_switchExpression1070 = new BitSet(new long[]{0x2000000000000000L});
- public static final BitSet FOLLOW_61_in_r_switchExpression1072 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFE00000E0L});
- public static final BitSet FOLLOW_r_orExpression_in_r_switchExpression1074 = new BitSet(new long[]{0x0000000000000000L,0x0000000000010000L});
- public static final BitSet FOLLOW_80_in_r_switchExpression1079 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_orExpression_in_r_switchExpression1084 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_81_in_r_casePart1095 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
- public static final BitSet FOLLOW_r_expression_in_r_casePart1097 = new BitSet(new long[]{0x2000000000000000L});
- public static final BitSet FOLLOW_61_in_r_casePart1099 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
- public static final BitSet FOLLOW_r_expression_in_r_casePart1101 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_andExpression_in_r_orExpression1113 = new BitSet(new long[]{0x0000000000000002L,0x0000000000040000L});
- public static final BitSet FOLLOW_82_in_r_orExpression1117 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFE00000E0L});
- public static final BitSet FOLLOW_r_andExpression_in_r_orExpression1119 = new BitSet(new long[]{0x0000000000000002L,0x0000000000040000L});
- public static final BitSet FOLLOW_r_impliesExpression_in_r_andExpression1134 = new BitSet(new long[]{0x0000000000000002L,0x0000000000080000L});
- public static final BitSet FOLLOW_83_in_r_andExpression1138 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFE00000E0L});
- public static final BitSet FOLLOW_r_impliesExpression_in_r_andExpression1140 = new BitSet(new long[]{0x0000000000000002L,0x0000000000080000L});
- public static final BitSet FOLLOW_r_relationalExpression_in_r_impliesExpression1155 = new BitSet(new long[]{0x0000000000000002L,0x0000000000100000L});
- public static final BitSet FOLLOW_84_in_r_impliesExpression1159 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFE00000E0L});
- public static final BitSet FOLLOW_r_relationalExpression_in_r_impliesExpression1161 = new BitSet(new long[]{0x0000000000000002L,0x0000000000100000L});
- public static final BitSet FOLLOW_r_additiveExpression_in_r_relationalExpression1177 = new BitSet(new long[]{0x0000000000000002L,0x0000000007E00000L});
- public static final BitSet FOLLOW_set_in_r_relationalExpression1182 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFE00000E0L});
- public static final BitSet FOLLOW_r_additiveExpression_in_r_relationalExpression1206 = new BitSet(new long[]{0x0000000000000002L,0x0000000007E00000L});
- public static final BitSet FOLLOW_r_multiplicativeExpression_in_r_additiveExpression1219 = new BitSet(new long[]{0x0000001000000002L,0x0000000008000000L});
- public static final BitSet FOLLOW_set_in_r_additiveExpression1226 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFE00000E0L});
- public static final BitSet FOLLOW_r_multiplicativeExpression_in_r_additiveExpression1233 = new BitSet(new long[]{0x0000001000000002L,0x0000000008000000L});
- public static final BitSet FOLLOW_r_unaryExpression_in_r_multiplicativeExpression1246 = new BitSet(new long[]{0x0000000200000002L,0x0000000010000000L});
- public static final BitSet FOLLOW_set_in_r_multiplicativeExpression1251 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFE00000E0L});
- public static final BitSet FOLLOW_r_unaryExpression_in_r_multiplicativeExpression1259 = new BitSet(new long[]{0x0000000200000002L,0x0000000010000000L});
- public static final BitSet FOLLOW_r_infixExpression_in_r_unaryExpression1273 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_93_in_r_unaryExpression1278 = new BitSet(new long[]{0x0000000080003800L,0x00001FFFC00000E0L});
- public static final BitSet FOLLOW_r_infixExpression_in_r_unaryExpression1280 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_36_in_r_unaryExpression1285 = new BitSet(new long[]{0x0000000080003800L,0x00001FFFC00000E0L});
- public static final BitSet FOLLOW_r_infixExpression_in_r_unaryExpression1287 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_primaryExpression_in_r_infixExpression1298 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000010L});
- public static final BitSet FOLLOW_68_in_r_infixExpression1303 = new BitSet(new long[]{0x0000000000002000L,0x00001FF0000000E0L});
- public static final BitSet FOLLOW_r_featureCall_in_r_infixExpression1305 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000010L});
- public static final BitSet FOLLOW_StringLiteral_in_r_primaryExpression1323 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_featureCall_in_r_primaryExpression1331 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_booleanLiteral_in_r_primaryExpression1338 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_numberLiteral_in_r_primaryExpression1345 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_nullLiteral_in_r_primaryExpression1352 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_listLiteral_in_r_primaryExpression1359 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_constructorCall_in_r_primaryExpression1366 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_globalVarExpression_in_r_primaryExpression1373 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_paranthesizedExpression_in_r_primaryExpression1380 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_31_in_r_paranthesizedExpression1394 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
- public static final BitSet FOLLOW_r_expression_in_r_paranthesizedExpression1396 = new BitSet(new long[]{0x0000000400000000L});
- public static final BitSet FOLLOW_34_in_r_paranthesizedExpression1398 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_94_in_r_globalVarExpression1413 = new BitSet(new long[]{0x0000000000002000L});
- public static final BitSet FOLLOW_r_identifier_in_r_globalVarExpression1415 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_identifier_in_r_featureCall1429 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_31_in_r_featureCall1431 = new BitSet(new long[]{0x0800001480003800L,0x00001FFFE00041E0L});
- public static final BitSet FOLLOW_r_parameterList_in_r_featureCall1434 = new BitSet(new long[]{0x0000000400000000L});
- public static final BitSet FOLLOW_34_in_r_featureCall1438 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_type_in_r_featureCall1445 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_collectionExpression_in_r_featureCall1453 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_95_in_r_listLiteral1465 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00141E0L});
- public static final BitSet FOLLOW_r_expression_in_r_listLiteral1467 = new BitSet(new long[]{0x0000000100000000L,0x0000000000010000L});
- public static final BitSet FOLLOW_32_in_r_listLiteral1470 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
- public static final BitSet FOLLOW_r_expression_in_r_listLiteral1472 = new BitSet(new long[]{0x0000000100000000L,0x0000000000010000L});
- public static final BitSet FOLLOW_80_in_r_listLiteral1477 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_96_in_r_constructorCall1488 = new BitSet(new long[]{0x0000000000002000L});
- public static final BitSet FOLLOW_r_simpleType_in_r_constructorCall1490 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_ifExpression_in_r_chainExpression990 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000400L});
+ public static final BitSet FOLLOW_74_in_r_chainExpression995 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C0E0L});
+ public static final BitSet FOLLOW_r_ifExpression_in_r_chainExpression997 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000400L});
+ public static final BitSet FOLLOW_r_switchExpression_in_r_ifExpression1011 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000800L});
+ public static final BitSet FOLLOW_75_in_r_ifExpression1014 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
+ public static final BitSet FOLLOW_r_expression_in_r_ifExpression1016 = new BitSet(new long[]{0x2000000000000000L});
+ public static final BitSet FOLLOW_61_in_r_ifExpression1018 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFC000C0E0L});
+ public static final BitSet FOLLOW_r_switchExpression_in_r_ifExpression1020 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_59_in_r_ifExpression1027 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
+ public static final BitSet FOLLOW_r_expression_in_r_ifExpression1029 = new BitSet(new long[]{0x0000000000000000L,0x0000000000001000L});
+ public static final BitSet FOLLOW_76_in_r_ifExpression1031 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFC000C0E0L});
+ public static final BitSet FOLLOW_r_switchExpression_in_r_ifExpression1033 = new BitSet(new long[]{0x0000000000000002L,0x0000000000002000L});
+ public static final BitSet FOLLOW_77_in_r_ifExpression1036 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFC000C0E0L});
+ public static final BitSet FOLLOW_r_switchExpression_in_r_ifExpression1038 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_78_in_r_switchExpression1054 = new BitSet(new long[]{0x0000000080000000L,0x0000000000008000L});
+ public static final BitSet FOLLOW_31_in_r_switchExpression1057 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFC00080E0L});
+ public static final BitSet FOLLOW_r_orExpression_in_r_switchExpression1059 = new BitSet(new long[]{0x0000000400000000L});
+ public static final BitSet FOLLOW_34_in_r_switchExpression1061 = new BitSet(new long[]{0x0000000000000000L,0x0000000000008000L});
+ public static final BitSet FOLLOW_79_in_r_switchExpression1065 = new BitSet(new long[]{0x0000000000000000L,0x0000000000050000L});
+ public static final BitSet FOLLOW_r_casePart_in_r_switchExpression1068 = new BitSet(new long[]{0x0000000000000000L,0x0000000000050000L});
+ public static final BitSet FOLLOW_80_in_r_switchExpression1074 = new BitSet(new long[]{0x2000000000000000L});
+ public static final BitSet FOLLOW_61_in_r_switchExpression1076 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFC00080E0L});
+ public static final BitSet FOLLOW_r_orExpression_in_r_switchExpression1078 = new BitSet(new long[]{0x0000000000000000L,0x0000000000020000L});
+ public static final BitSet FOLLOW_81_in_r_switchExpression1083 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_orExpression_in_r_switchExpression1088 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_82_in_r_casePart1099 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
+ public static final BitSet FOLLOW_r_expression_in_r_casePart1101 = new BitSet(new long[]{0x2000000000000000L});
+ public static final BitSet FOLLOW_61_in_r_casePart1103 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
+ public static final BitSet FOLLOW_r_expression_in_r_casePart1105 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_andExpression_in_r_orExpression1117 = new BitSet(new long[]{0x0000000000000002L,0x0000000000080000L});
+ public static final BitSet FOLLOW_83_in_r_orExpression1121 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFC00080E0L});
+ public static final BitSet FOLLOW_r_andExpression_in_r_orExpression1123 = new BitSet(new long[]{0x0000000000000002L,0x0000000000080000L});
+ public static final BitSet FOLLOW_r_impliesExpression_in_r_andExpression1138 = new BitSet(new long[]{0x0000000000000002L,0x0000000000100000L});
+ public static final BitSet FOLLOW_84_in_r_andExpression1142 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFC00080E0L});
+ public static final BitSet FOLLOW_r_impliesExpression_in_r_andExpression1144 = new BitSet(new long[]{0x0000000000000002L,0x0000000000100000L});
+ public static final BitSet FOLLOW_r_relationalExpression_in_r_impliesExpression1159 = new BitSet(new long[]{0x0000000000000002L,0x0000000000200000L});
+ public static final BitSet FOLLOW_85_in_r_impliesExpression1163 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFC00080E0L});
+ public static final BitSet FOLLOW_r_relationalExpression_in_r_impliesExpression1165 = new BitSet(new long[]{0x0000000000000002L,0x0000000000200000L});
+ public static final BitSet FOLLOW_r_additiveExpression_in_r_relationalExpression1181 = new BitSet(new long[]{0x0000000000000002L,0x000000000FC00000L});
+ public static final BitSet FOLLOW_set_in_r_relationalExpression1186 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFC00080E0L});
+ public static final BitSet FOLLOW_r_additiveExpression_in_r_relationalExpression1210 = new BitSet(new long[]{0x0000000000000002L,0x000000000FC00000L});
+ public static final BitSet FOLLOW_r_multiplicativeExpression_in_r_additiveExpression1223 = new BitSet(new long[]{0x0000001000000002L,0x0000000010000000L});
+ public static final BitSet FOLLOW_set_in_r_additiveExpression1230 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFC00080E0L});
+ public static final BitSet FOLLOW_r_multiplicativeExpression_in_r_additiveExpression1237 = new BitSet(new long[]{0x0000001000000002L,0x0000000010000000L});
+ public static final BitSet FOLLOW_r_unaryExpression_in_r_multiplicativeExpression1250 = new BitSet(new long[]{0x0000000200000002L,0x0000000020000000L});
+ public static final BitSet FOLLOW_set_in_r_multiplicativeExpression1255 = new BitSet(new long[]{0x0000001080003800L,0x00001FFFC00080E0L});
+ public static final BitSet FOLLOW_r_unaryExpression_in_r_multiplicativeExpression1263 = new BitSet(new long[]{0x0000000200000002L,0x0000000020000000L});
+ public static final BitSet FOLLOW_r_infixExpression_in_r_unaryExpression1277 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_94_in_r_unaryExpression1282 = new BitSet(new long[]{0x0000000080003800L,0x00001FFF800080E0L});
+ public static final BitSet FOLLOW_r_infixExpression_in_r_unaryExpression1284 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_36_in_r_unaryExpression1289 = new BitSet(new long[]{0x0000000080003800L,0x00001FFF800080E0L});
+ public static final BitSet FOLLOW_r_infixExpression_in_r_unaryExpression1291 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_primaryExpression_in_r_infixExpression1302 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000010L});
+ public static final BitSet FOLLOW_68_in_r_infixExpression1307 = new BitSet(new long[]{0x0000000000002000L,0x00001FF0000000E0L});
+ public static final BitSet FOLLOW_r_featureCall_in_r_infixExpression1309 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000010L});
+ public static final BitSet FOLLOW_r_stringLiteral_in_r_primaryExpression1328 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_featureCall_in_r_primaryExpression1336 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_booleanLiteral_in_r_primaryExpression1343 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_numberLiteral_in_r_primaryExpression1350 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_nullLiteral_in_r_primaryExpression1357 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_listLiteral_in_r_primaryExpression1364 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_constructorCall_in_r_primaryExpression1371 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_globalVarExpression_in_r_primaryExpression1378 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_paranthesizedExpression_in_r_primaryExpression1385 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_StringLiteral_in_r_stringLiteral1398 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_31_in_r_paranthesizedExpression1411 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
+ public static final BitSet FOLLOW_r_expression_in_r_paranthesizedExpression1413 = new BitSet(new long[]{0x0000000400000000L});
+ public static final BitSet FOLLOW_34_in_r_paranthesizedExpression1415 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_95_in_r_globalVarExpression1430 = new BitSet(new long[]{0x0000000000002000L});
+ public static final BitSet FOLLOW_r_identifier_in_r_globalVarExpression1432 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_identifier_in_r_featureCall1446 = new BitSet(new long[]{0x0000000080000000L});
+ public static final BitSet FOLLOW_31_in_r_featureCall1448 = new BitSet(new long[]{0x0800001480003800L,0x00001FFFC000C1E0L});
+ public static final BitSet FOLLOW_r_parameterList_in_r_featureCall1451 = new BitSet(new long[]{0x0000000400000000L});
+ public static final BitSet FOLLOW_34_in_r_featureCall1455 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_type_in_r_featureCall1462 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_collectionExpression_in_r_featureCall1470 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_79_in_r_listLiteral1482 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC002C1E0L});
+ public static final BitSet FOLLOW_r_expression_in_r_listLiteral1484 = new BitSet(new long[]{0x0000000100000000L,0x0000000000020000L});
+ public static final BitSet FOLLOW_32_in_r_listLiteral1487 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
+ public static final BitSet FOLLOW_r_expression_in_r_listLiteral1489 = new BitSet(new long[]{0x0000000100000000L,0x0000000000020000L});
+ public static final BitSet FOLLOW_81_in_r_listLiteral1494 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_96_in_r_constructorCall1505 = new BitSet(new long[]{0x0000000000002000L});
+ public static final BitSet FOLLOW_r_simpleType_in_r_constructorCall1507 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_set_in_r_booleanLiteral0 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_99_in_r_nullLiteral1516 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_IntLiteral_in_r_numberLiteral1529 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_IntLiteral_in_r_numberLiteral1535 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
- public static final BitSet FOLLOW_68_in_r_numberLiteral1537 = new BitSet(new long[]{0x0000000000001000L});
- public static final BitSet FOLLOW_IntLiteral_in_r_numberLiteral1539 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_100_in_r_collectionExpression1552 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_31_in_r_collectionExpression1556 = new BitSet(new long[]{0x0000000000002000L,0x00000000000000E0L});
- public static final BitSet FOLLOW_r_type_in_r_collectionExpression1558 = new BitSet(new long[]{0x0000000400000000L});
- public static final BitSet FOLLOW_34_in_r_collectionExpression1560 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_set_in_r_collectionExpression1569 = new BitSet(new long[]{0x0000000080000000L});
- public static final BitSet FOLLOW_31_in_r_collectionExpression1619 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
- public static final BitSet FOLLOW_r_identifier_in_r_collectionExpression1622 = new BitSet(new long[]{0x0000000000000000L,0x0000200000000000L});
- public static final BitSet FOLLOW_109_in_r_collectionExpression1624 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
- public static final BitSet FOLLOW_r_expression_in_r_collectionExpression1628 = new BitSet(new long[]{0x0000000400000000L});
- public static final BitSet FOLLOW_34_in_r_collectionExpression1630 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_declaredParameter_in_r_declaredParameterList1647 = new BitSet(new long[]{0x0000000100000002L});
- public static final BitSet FOLLOW_32_in_r_declaredParameterList1650 = new BitSet(new long[]{0x0000000000002000L,0x00000000000000E0L});
- public static final BitSet FOLLOW_r_declaredParameter_in_r_declaredParameterList1652 = new BitSet(new long[]{0x0000000100000002L});
- public static final BitSet FOLLOW_r_type_in_r_declaredParameter1665 = new BitSet(new long[]{0x0000000000002000L});
- public static final BitSet FOLLOW_r_identifier_in_r_declaredParameter1667 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_expression_in_r_parameterList1682 = new BitSet(new long[]{0x0000000100000002L});
- public static final BitSet FOLLOW_32_in_r_parameterList1686 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00041E0L});
- public static final BitSet FOLLOW_r_expression_in_r_parameterList1688 = new BitSet(new long[]{0x0000000100000002L});
- public static final BitSet FOLLOW_r_collectionType_in_r_type1705 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_simpleType_in_r_type1710 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_set_in_r_collectionType1725 = new BitSet(new long[]{0x0000000000000002L,0x0000400000000000L});
- public static final BitSet FOLLOW_110_in_r_collectionType1743 = new BitSet(new long[]{0x0000000000002000L});
- public static final BitSet FOLLOW_r_simpleType_in_r_collectionType1745 = new BitSet(new long[]{0x0000000000000000L,0x0000800000000000L});
- public static final BitSet FOLLOW_111_in_r_collectionType1747 = new BitSet(new long[]{0x0000000000000002L});
- public static final BitSet FOLLOW_r_identifier_in_r_simpleType1760 = new BitSet(new long[]{0x8000000000000002L});
- public static final BitSet FOLLOW_63_in_r_simpleType1765 = new BitSet(new long[]{0x0000000000002000L});
- public static final BitSet FOLLOW_r_identifier_in_r_simpleType1767 = new BitSet(new long[]{0x8000000000000002L});
- public static final BitSet FOLLOW_Identifier_in_r_identifier1783 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_99_in_r_nullLiteral1533 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_IntLiteral_in_r_numberLiteral1546 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_IntLiteral_in_r_numberLiteral1552 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
+ public static final BitSet FOLLOW_68_in_r_numberLiteral1554 = new BitSet(new long[]{0x0000000000001000L});
+ public static final BitSet FOLLOW_IntLiteral_in_r_numberLiteral1556 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_100_in_r_collectionExpression1569 = new BitSet(new long[]{0x0000000080000000L});
+ public static final BitSet FOLLOW_31_in_r_collectionExpression1573 = new BitSet(new long[]{0x0000000000002000L,0x00000000000000E0L});
+ public static final BitSet FOLLOW_r_type_in_r_collectionExpression1575 = new BitSet(new long[]{0x0000000400000000L});
+ public static final BitSet FOLLOW_34_in_r_collectionExpression1577 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_set_in_r_collectionExpression1586 = new BitSet(new long[]{0x0000000080000000L});
+ public static final BitSet FOLLOW_31_in_r_collectionExpression1636 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
+ public static final BitSet FOLLOW_r_identifier_in_r_collectionExpression1639 = new BitSet(new long[]{0x0000000000000000L,0x0000200000000000L});
+ public static final BitSet FOLLOW_109_in_r_collectionExpression1641 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
+ public static final BitSet FOLLOW_r_expression_in_r_collectionExpression1645 = new BitSet(new long[]{0x0000000400000000L});
+ public static final BitSet FOLLOW_34_in_r_collectionExpression1647 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_declaredParameter_in_r_declaredParameterList1664 = new BitSet(new long[]{0x0000000100000002L});
+ public static final BitSet FOLLOW_32_in_r_declaredParameterList1667 = new BitSet(new long[]{0x0000000000002000L,0x00000000000000E0L});
+ public static final BitSet FOLLOW_r_declaredParameter_in_r_declaredParameterList1669 = new BitSet(new long[]{0x0000000100000002L});
+ public static final BitSet FOLLOW_r_type_in_r_declaredParameter1682 = new BitSet(new long[]{0x0000000000002000L});
+ public static final BitSet FOLLOW_r_identifier_in_r_declaredParameter1684 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_expression_in_r_parameterList1699 = new BitSet(new long[]{0x0000000100000002L});
+ public static final BitSet FOLLOW_32_in_r_parameterList1703 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C1E0L});
+ public static final BitSet FOLLOW_r_expression_in_r_parameterList1705 = new BitSet(new long[]{0x0000000100000002L});
+ public static final BitSet FOLLOW_r_collectionType_in_r_type1722 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_simpleType_in_r_type1727 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_set_in_r_collectionType1742 = new BitSet(new long[]{0x0000000000000002L,0x0000400000000000L});
+ public static final BitSet FOLLOW_110_in_r_collectionType1760 = new BitSet(new long[]{0x0000000000002000L});
+ public static final BitSet FOLLOW_r_simpleType_in_r_collectionType1762 = new BitSet(new long[]{0x0000000000000000L,0x0000800000000000L});
+ public static final BitSet FOLLOW_111_in_r_collectionType1764 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_r_identifier_in_r_simpleType1777 = new BitSet(new long[]{0x8000000000000002L});
+ public static final BitSet FOLLOW_63_in_r_simpleType1782 = new BitSet(new long[]{0x0000000000002000L});
+ public static final BitSet FOLLOW_r_identifier_in_r_simpleType1784 = new BitSet(new long[]{0x8000000000000002L});
+ public static final BitSet FOLLOW_Identifier_in_r_identifier1800 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_31_in_synpred1953 = new BitSet(new long[]{0x0000000000002000L,0x00000000000000E0L});
public static final BitSet FOLLOW_r_type_in_synpred1955 = new BitSet(new long[]{0x0000000400000000L});
- public static final BitSet FOLLOW_34_in_synpred1957 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFE00040E0L});
- public static final BitSet FOLLOW_r_castedExpression_in_synpred1959 = new BitSet(new long[]{0x0000000000000002L});
+ public static final BitSet FOLLOW_34_in_synpred1957 = new BitSet(new long[]{0x0800001080003800L,0x00001FFFC000C0E0L});
+ public static final BitSet FOLLOW_r_chainExpression_in_synpred1959 = new BitSet(new long[]{0x0000000000000002L});
} \ No newline at end of file
diff --git a/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3__.g b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3__.g
index 39e4a9c6..a3883968 100644
--- a/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3__.g
+++ b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/Xpand3__.g
@@ -60,23 +60,23 @@ T75 : '?' ;
T76 : 'then' ;
T77 : 'else' ;
T78 : 'switch' ;
-T79 : 'default' ;
-T80 : '}' ;
-T81 : 'case' ;
-T82 : '||' ;
-T83 : '&&' ;
-T84 : 'implies' ;
-T85 : '==' ;
-T86 : '!=' ;
-T87 : '>=' ;
-T88 : '<=' ;
-T89 : '>' ;
-T90 : '<' ;
-T91 : '+' ;
-T92 : '/' ;
-T93 : '!' ;
-T94 : 'GLOBALVAR' ;
-T95 : '{' ;
+T79 : '{' ;
+T80 : 'default' ;
+T81 : '}' ;
+T82 : 'case' ;
+T83 : '||' ;
+T84 : '&&' ;
+T85 : 'implies' ;
+T86 : '==' ;
+T87 : '!=' ;
+T88 : '>=' ;
+T89 : '<=' ;
+T90 : '>' ;
+T91 : '<' ;
+T92 : '+' ;
+T93 : '/' ;
+T94 : '!' ;
+T95 : 'GLOBALVAR' ;
T96 : 'new' ;
T97 : 'false' ;
T98 : 'true' ;
@@ -94,16 +94,16 @@ T109 : '|' ;
T110 : '[' ;
T111 : ']' ;
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 351
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 355
IntLiteral : ('0' | '1'..'9' '0'..'9'*) ;
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 353
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 357
StringLiteral
: '"' ( EscapeSequence | ~('\\'|'"') )* '"'
| '\'' ( EscapeSequence | ~('\''|'\\') )* '\''
;
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 358
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 362
fragment
EscapeSequence
: '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\')
@@ -111,7 +111,7 @@ EscapeSequence
| OctalEscape
;
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 365
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 369
fragment
OctalEscape
: '\\' ('0'..'3') ('0'..'7') ('0'..'7')
@@ -119,33 +119,33 @@ OctalEscape
| '\\' ('0'..'7')
;
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 372
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 376
fragment
UnicodeEscape
: '\\' 'u' HexDigit HexDigit HexDigit HexDigit
;
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 376
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 380
fragment
HexDigit : ('0'..'9'|'a'..'f'|'A'..'F') ;
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 380
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 384
DEFINE : {xpandMode=true;} 'DEFINE';
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 381
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 385
ENDDEFINE
: 'ENDDEFINE' {xpandMode=false;};
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 384
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 388
AROUND : {xpandMode=true;}'AROUND';
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 385
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 389
ENDAROUND : 'ENDAROUND'{xpandMode=false;};
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 387
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 391
Identifier
: ('^')? Letter (Letter|JavaIDDigit)*
;
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 391
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 395
fragment
Letter
: '\u0024' |
@@ -163,7 +163,7 @@ Letter
'\uf900'..'\ufaff'
;
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 408
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 412
fragment
JavaIDDigit
: '\u0030'..'\u0039' |
@@ -183,40 +183,40 @@ JavaIDDigit
'\u1040'..'\u1049'
;
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 427
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 431
WS : (' '|'\r'|'\t'|'\u000C'|'\n') {$channel=HIDDEN;}
;
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 430
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 434
COMMENT
: '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}
;
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 434
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 438
LINE_COMMENT
: '//' ~('\n'|'\r')* ('\r'? '\n'|EOF) {$channel=HIDDEN;}
;
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 439
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 443
REM_COMMENT_OUT
: {!xpandMode}?=> LG 'REM' RG ( options {greedy=false;} : . )* '\u00ABENDREM' RG {$channel=HIDDEN;}
;
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 443
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 447
REM_COMMENT :
{xpandMode}?=> 'REM' RG ( options {greedy=false;} : . )* '\u00ABENDREM' {$channel=HIDDEN;}
;
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 448
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 452
TEXT :
{xpandMode}?=> RG ~(LG)* (LG)?
;
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 452
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 456
LG
: '\u00AB';
-// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 454
+// $ANTLR src "src/org/eclipse/xpand3/parser/Xpand3.g" 458
RG
: '\u00BB';
diff --git a/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/classes/__Test__.class b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/classes/__Test__.class
new file mode 100644
index 00000000..3432a835
--- /dev/null
+++ b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/classes/__Test__.class
Binary files differ
diff --git a/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/classes/org/eclipse/xpand3/parser/Xpand3Lexer.class b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/classes/org/eclipse/xpand3/parser/Xpand3Lexer.class
new file mode 100644
index 00000000..580ae41a
--- /dev/null
+++ b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/classes/org/eclipse/xpand3/parser/Xpand3Lexer.class
Binary files differ
diff --git a/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/classes/org/eclipse/xpand3/parser/Xpand3Parser$DFA44.class b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/classes/org/eclipse/xpand3/parser/Xpand3Parser$DFA44.class
new file mode 100644
index 00000000..022f0391
--- /dev/null
+++ b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/classes/org/eclipse/xpand3/parser/Xpand3Parser$DFA44.class
Binary files differ
diff --git a/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/classes/org/eclipse/xpand3/parser/Xpand3Parser.class b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/classes/org/eclipse/xpand3/parser/Xpand3Parser.class
new file mode 100644
index 00000000..242e9c12
--- /dev/null
+++ b/plugins/org.eclipse.xpand3/src/org/eclipse/xpand3/parser/classes/org/eclipse/xpand3/parser/Xpand3Parser.class
Binary files differ
diff --git a/tests/org.eclipse.xpand3.tests/src/org/eclipse/xpand3/parser/Xpand3MigratedNodeParserTest.java b/tests/org.eclipse.xpand3.tests/src/org/eclipse/xpand3/parser/Xpand3MigratedNodeParserTest.java
new file mode 100644
index 00000000..8611c568
--- /dev/null
+++ b/tests/org.eclipse.xpand3.tests/src/org/eclipse/xpand3/parser/Xpand3MigratedNodeParserTest.java
@@ -0,0 +1,240 @@
+package org.eclipse.xpand3.parser;
+
+import java.util.List;
+
+import junit.framework.TestCase;
+
+import org.antlr.runtime.ANTLRStringStream;
+import org.antlr.runtime.CommonTokenStream;
+import org.eclipse.xpand3.node.CompositeNode;
+import org.eclipse.xpand3.node.LeafNode;
+import org.eclipse.xpand3.node.LexedToken;
+import org.eclipse.xpand3.node.Node;
+import org.eclipse.xpand3.node.NodeUtil;
+
+public class Xpand3MigratedNodeParserTest extends TestCase {
+
+ private CompositeNode parse(String s) throws Exception {
+ ANTLRStringStream stream = new ANTLRStringStream(s);
+ Xpand3Lexer lexer = new Xpand3Lexer(stream);
+ CommonTokenStream tokenStream = new CommonTokenStream(lexer);
+ AbstractXpand3NodeParser xpand3NodeParser = new Xpand3NodeParser(
+ tokenStream);
+ xpand3NodeParser.test_expression();
+ Node rootNode = xpand3NodeParser.getRootNode();
+ System.out.println(NodeUtil.toString(rootNode));
+ // System.out.println(NodeUtil.serialize(rootNode));
+ return (CompositeNode) rootNode;
+ }
+
+ private CompositeNode checkIsRule(Node node, String ruleName,
+ int numChildren) {
+ assertTrue(node instanceof CompositeNode);
+ assertEquals(ruleName, ((CompositeNode) node).getRule());
+ assertEquals(numChildren, ((CompositeNode) node).getChildren().size());
+ return (CompositeNode) node;
+ }
+
+ private CompositeNode checkChildIsRule(Node parent, int index,
+ String ruleName, int numChildren) {
+ return checkIsRule(getChild(parent, index), ruleName, numChildren);
+ }
+
+ private CompositeNode checkChildIsIdentifier(Node parent, int index,
+ String identifierName) {
+ CompositeNode st = checkChildIsRule(parent, index, "r_simpleType", 1);
+ CompositeNode i = checkChildIsRule(st, 0, "r_identifier", 1);
+ checkChildIsToken(i, 0, identifierName);
+ return st;
+ }
+
+ private LeafNode checkIsToken(Node node, String tokenText) {
+ assertTrue(node instanceof LeafNode);
+ LexedToken token = ((LeafNode) node).getToken();
+ assertNotNull(token);
+ assertEquals(tokenText, token.getText());
+ return (LeafNode) node;
+ }
+
+ private LeafNode checkChildIsToken(Node parent, int index, String tokenText) {
+ return checkIsToken(getChild(parent, index), tokenText);
+ }
+
+ private Node getChild(Node parent, int index) {
+ assertNotNull(parent);
+ assertTrue(parent instanceof CompositeNode);
+ List<Node> children = ((CompositeNode) parent).getChildren();
+ assertTrue(children.size() > index);
+ Node child = children.get(index);
+ return child;
+ }
+
+ public final void testSimple() throws Exception {
+ CompositeNode parse = parse("true == null");
+ CompositeNode cn = checkIsRule(parse, "r_relationalExpression", 3);
+ CompositeNode bl = checkChildIsRule(cn, 0, "r_booleanLiteral", 1);
+ checkChildIsToken(bl, 0, "true");
+ checkChildIsToken(cn, 1, "==");
+ CompositeNode nl = checkChildIsRule(cn, 2, "r_nullLiteral", 1);
+ checkChildIsToken(nl, 0, "null");
+ }
+
+ public final void testSimple2() throws Exception {
+ CompositeNode ie = checkIsRule(
+ parse("String.feature.test(true,{\"test\",\"hallo\"})"),
+ "r_infixExpression", 5);
+ checkChildIsIdentifier(ie, 0, "String");
+ checkChildIsToken(ie, 1, ".");
+ checkChildIsIdentifier(ie, 2, "feature");
+ checkChildIsToken(ie, 3, ".");
+ CompositeNode fc = checkChildIsRule(ie, 4, "r_featureCall", 4);
+ CompositeNode i3 = checkChildIsRule(fc, 0, "r_identifier", 1);
+ checkChildIsToken(i3, 0, "test");
+ checkChildIsToken(fc, 1, "(");
+ CompositeNode pl = checkChildIsRule(fc, 2, "r_parameterList", 3);
+ CompositeNode bl = checkChildIsRule(pl, 0, "r_booleanLiteral", 1);
+ checkChildIsToken(bl, 0, "true");
+ checkChildIsToken(pl, 1, ",");
+ CompositeNode ll = checkChildIsRule(pl, 2, "r_listLiteral", 5);
+ checkChildIsToken(ll, 0, "{");
+ CompositeNode pe1 = checkChildIsRule(ll, 1, "r_stringLiteral", 1);
+ checkChildIsToken(pe1, 0, "\"test\"");
+ checkChildIsToken(ll, 2, ",");
+ CompositeNode pe2 = checkChildIsRule(ll, 3, "r_stringLiteral", 1);
+ checkChildIsToken(pe2, 0, "\"hallo\"");
+ checkChildIsToken(ll, 4, "}");
+ checkChildIsToken(fc, 3, ")");
+ }
+
+ public final void testIfExpression() throws Exception {
+ CompositeNode expr = parse("(client.sIdent1 != null) ? client.sIdent1 : \"XXXXXXXX\"");
+ CompositeNode ie = checkIsRule(expr, "r_ifExpression", 5);
+ CompositeNode pe = checkChildIsRule(ie, 0, "r_paranthesizedExpression",
+ 3);
+ checkChildIsToken(pe, 0, "(");
+ CompositeNode re = checkChildIsRule(pe, 1, "r_relationalExpression", 3);
+ CompositeNode ie0 = checkChildIsRule(re, 0, "r_infixExpression", 3);
+ checkChildIsIdentifier(ie0, 0, "client");
+ checkChildIsToken(ie0, 1, ".");
+ checkChildIsIdentifier(ie0, 2, "sIdent1");
+ checkChildIsToken(re, 1, "!=");
+ CompositeNode nl = checkChildIsRule(re, 2, "r_nullLiteral", 1);
+ checkChildIsToken(nl, 0, "null");
+ checkChildIsToken(pe, 2, ")");
+ checkChildIsToken(ie, 1, "?");
+ CompositeNode ie1 = checkChildIsRule(ie, 2, "r_infixExpression", 3);
+ checkChildIsIdentifier(ie1, 0, "client");
+ checkChildIsToken(ie1, 1, ".");
+ checkChildIsIdentifier(ie1, 2, "sIdent1");
+ checkChildIsToken(ie, 3, ":");
+ CompositeNode pe1 = checkChildIsRule(ie, 4, "r_stringLiteral", 1);
+ checkChildIsToken(pe1, 0, "\"XXXXXXXX\"");
+ }
+
+ public void testIfExpression2() throws Exception {
+ Node expr = parse("if true then true else false");
+ checkIsRule(expr, "r_ifExpression", 6);
+ checkChildIsToken(expr, 0, "if");
+ CompositeNode bl0 = checkChildIsRule(expr, 1, "r_booleanLiteral", 1);
+ checkChildIsToken(bl0, 0, "true");
+ checkChildIsToken(expr, 2, "then");
+ CompositeNode bl1 = checkChildIsRule(expr, 3, "r_booleanLiteral", 1);
+ checkChildIsToken(bl1, 0, "true");
+ checkChildIsToken(expr, 4, "else");
+ CompositeNode bl2 = checkChildIsRule(expr, 5, "r_booleanLiteral", 1);
+ checkChildIsToken(bl2, 0, "false");
+ }
+
+ public final void testEscaped() throws Exception {
+ Node expr = parse("\"\\\"\"");
+ checkIsRule(expr, "r_stringLiteral", 1);
+ checkChildIsToken(expr, 0, "\"\\\"\"");
+ }
+
+ public final void testNot() throws Exception {
+ Node expr = parse("! ts.checked");
+ checkIsRule(expr, "r_unaryExpression", 2);
+ checkChildIsToken(expr, 0, "!");
+ }
+
+ public final void testCast() throws Exception {
+ Node expr = parse("(List[InnerType]) anExpr");
+ checkIsRule(expr, "r_castedExpression", 4);
+ checkChildIsToken(expr, 0, "(");
+ CompositeNode ct = checkChildIsRule(expr, 1, "r_collectionType", 4);
+ checkChildIsToken(ct, 0, "List");
+ checkChildIsToken(ct, 1, "[");
+ checkChildIsIdentifier(ct, 2, "InnerType");
+ checkChildIsToken(ct, 3, "]");
+ checkChildIsToken(expr, 2, ")");
+ checkChildIsIdentifier(expr, 3, "anExpr");
+ }
+
+ public final void testSwitch() throws Exception {
+ Node expr = parse("switch { default : true }");
+
+ }
+ // assertNull(expr.getSwitchExpr());
+ // assertTrue(expr.getCases().isEmpty());
+ // assertEquals("true", ((BooleanLiteral)
+ // expr.getDefaultExpr()).getLiteralValue().getValue());
+ //
+ // expr = (SwitchExpression) parse("switch (\"test\") { case \"horst\":
+ // false default : true }");
+ // assertEquals("\"test\"", ((StringLiteral)
+ // expr.getSwitchExpr()).getLiteralValue().getValue());
+ // final Case c = expr.getCases().get(0);
+ // assertEquals("\"horst\"", ((StringLiteral)
+ // c.getCondition()).getLiteralValue().getValue());
+ // assertEquals("false", ((BooleanLiteral)
+ // c.getThenPart()).getLiteralValue().getValue());
+ //
+ // assertEquals("true", ((BooleanLiteral)
+ // expr.getDefaultExpr()).getLiteralValue().getValue());
+ // }
+ //
+ // public final void testChainExpression() {
+ // final ChainExpression expr = (ChainExpression) parse("1 -> 2 -> 3 -> 4");
+ // assertEquals("4", expr.getNext().toString());
+ // assertEquals("1->2->3", expr.getFirst().toString());
+ // }
+ //
+ // public final void testPositionInfo() {
+ // final Expression exp = parse("\n\n\n1");
+ // assertEquals(4, exp.getLine());
+ // assertEquals(3, exp.getStart());
+ // assertEquals(4, exp.getEnd());
+ //
+ // }
+ //
+ // public final void testPositionInfo2() {
+ // final Expression exp = parse("/*\n\n\n*/1");
+ // assertEquals(4, exp.getLine());
+ // assertEquals(7, exp.getStart());
+ // assertEquals(8, exp.getEnd());
+ // }
+ //
+ // public final void testPositionInfo3() {
+ // final OperationCall exp = (OperationCall) parse("'/*\n\n\n*/'+1");
+ // assertEquals(1, exp.getLine());
+ // assertEquals(0, exp.getStart());
+ // assertEquals(11, exp.getEnd());
+ // final StringLiteral target = (StringLiteral) exp.getTarget();
+ // assertEquals(1, target.getLine());
+ // assertEquals(0, target.getStart());
+ // assertEquals(9, target.getEnd());
+ // final IntegerLiteral param = (IntegerLiteral) exp.getParams()[0];
+ // assertEquals(4, param.getLine());
+ // assertEquals(10, param.getStart());
+ // assertEquals(11, param.getEnd());
+ // }
+ //
+ // public final void testTypeLiterals() {
+ // final Expression e = parse("{" + " Object,\n" + " String,\n" +
+ // "Collection,\n" + " Set,\n" + " List,\n"
+ // + " oaw::Type,\n" + " oaw::Feature,\n" + " oaw::Property\n}");
+ //
+ // assertNotNull(e);
+ // }
+ //
+}

Back to the top