| author | szarnekow | 2009-02-08 14:07:51 (EST) |
|---|---|---|
| committer | sefftinge | 2009-02-08 14:07:51 (EST) |
| commit | e142857112ecca11969304f3f7fc45983fb7c0e6 (patch) (side-by-side diff) | |
| tree | 5af995320937d74e0e7114293ab68270ee38ecf8 | |
| parent | 07c963eabdd9b3948bf8a6f93f3afd013976aa68 (diff) | |
| download | org.eclipse.xtext-e142857112ecca11969304f3f7fc45983fb7c0e6.zip org.eclipse.xtext-e142857112ecca11969304f3f7fc45983fb7c0e6.tar.gz org.eclipse.xtext-e142857112ecca11969304f3f7fc45983fb7c0e6.tar.bz2 | |
Fix: Metamodeltransformation: containment references have to be unique
Feature: Bootstrapped builtin
Feature: allow to define hidden tokens per grammar (https://bugs.eclipse.org/bugs/show_bug.cgi?id=262770)
373 files changed, 9905 insertions, 7451 deletions
diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/ReferenceGrammar.ecore b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/ReferenceGrammar.ecore index c70d0ae..e9ccfbe 100644 --- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/ReferenceGrammar.ecore +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/ReferenceGrammar.ecore @@ -7,21 +7,21 @@ <eStructuralFeatures xsi:type="ecore:EAttribute" name="beschreibung"> <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/> </eStructuralFeatures> - <eStructuralFeatures xsi:type="ecore:EReference" name="kinder" unique="false" upperBound="-1" eType="//Kind" containment="true"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="erzieher" unique="false" upperBound="-1" eType="//Erwachsener" containment="true"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="spielzeuge" unique="false" upperBound="-1" eType="//Spielzeug" containment="true"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="familie" unique="false" upperBound="-1" eType="//Familie" containment="true"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="types" unique="false" upperBound="-1" containment="true"> + <eStructuralFeatures xsi:type="ecore:EReference" name="kinder" upperBound="-1" eType="//Kind" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="erzieher" upperBound="-1" eType="//Erwachsener" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="spielzeuge" upperBound="-1" eType="//Spielzeug" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="familie" upperBound="-1" eType="//Familie" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="types" upperBound="-1" containment="true"> <eType xsi:type="ecore:EClass" href="http://eclipse.org/xtext/reference/ReferenceModel#//CustomType"/> </eStructuralFeatures> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Person"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="name"> - <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/> - </eStructuralFeatures> <eStructuralFeatures xsi:type="ecore:EAttribute" name="age"> <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/> </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="name"> + <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/> + </eStructuralFeatures> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Kind" eSuperTypes="//Person"/> <eClassifiers xsi:type="ecore:EClass" name="Erwachsener" eSuperTypes="//Person"/> diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/ReferenceGrammarParser.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/ReferenceGrammarParser.java index f484fd6..175a988 100644 --- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/ReferenceGrammarParser.java +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/ReferenceGrammarParser.java @@ -23,6 +23,7 @@ public class ReferenceGrammarParser extends org.eclipse.xtext.parser.antlr.Abstr protected IParseResult parse(String ruleName, ANTLRInputStream in) { InternalReferenceGrammarLexer lexer = new InternalReferenceGrammarLexer(in); XtextTokenStream stream = new XtextTokenStream(lexer, antlrTokenDefProvider); + stream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT"); InternalReferenceGrammarParser parser = new InternalReferenceGrammarParser( stream, getElementFactory(), grammarAccess.getGrammar()); parser.setTokenTypeMap(antlrTokenDefProvider.getTokenDefMap()); diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g index 282b6ed..e180e7e 100644 --- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g @@ -723,13 +723,16 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +RULE_WS : (' '|'\t'|'\r'|'\n')+; RULE_ANY_OTHER : .; diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammarLexer.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammarLexer.java index af3d8b2..9a6f822 100644 --- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammarLexer.java +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammarLexer.java @@ -489,10 +489,10 @@ public class InternalReferenceGrammarLexer extends Lexer { } switch (alt6) { case 1 : - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:726:15: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:727:6: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' { match('\"'); - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:726:19: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:727:10: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* loop4: do { int alt4=3; @@ -508,7 +508,7 @@ public class InternalReferenceGrammarLexer extends Lexer { switch (alt4) { case 1 : - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:726:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:727:12: '\\\\' ( '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' ) { @@ -525,7 +525,7 @@ public class InternalReferenceGrammarLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:726:65: ~ ( '\\\\' | '\"' ) + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:727:56: ~ ( '\\\\' | '\"' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -551,10 +551,10 @@ public class InternalReferenceGrammarLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:726:101: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:728:15: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' { match('\''); - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:726:106: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:728:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* loop5: do { int alt5=3; @@ -570,7 +570,7 @@ public class InternalReferenceGrammarLexer extends Lexer { switch (alt5) { case 1 : - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:726:108: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:728:22: '\\\\' ( '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' ) { @@ -587,7 +587,7 @@ public class InternalReferenceGrammarLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:726:152: ~ ( '\\\\' | '\\'' ) + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:728:66: ~ ( '\\\\' | '\\'' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -625,12 +625,12 @@ public class InternalReferenceGrammarLexer extends Lexer { public final void mRULE_ML_COMMENT() throws RecognitionException { try { int _type = RULE_ML_COMMENT; - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:728:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:728:19: '/*' ( options {greedy=false; } : . )* '*/' + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:731:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:731:19: '/*' ( options {greedy=false; } : . )* '*/' { match("/*"); - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:728:24: ( options {greedy=false; } : . )* + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:731:24: ( options {greedy=false; } : . )* loop7: do { int alt7=2; @@ -655,7 +655,7 @@ public class InternalReferenceGrammarLexer extends Lexer { switch (alt7) { case 1 : - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:728:52: . + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:731:52: . { matchAny(); @@ -669,7 +669,6 @@ public class InternalReferenceGrammarLexer extends Lexer { match("*/"); - channel=HIDDEN; } @@ -684,12 +683,12 @@ public class InternalReferenceGrammarLexer extends Lexer { public final void mRULE_SL_COMMENT() throws RecognitionException { try { int _type = RULE_SL_COMMENT; - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:730:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:730:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:733:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:733:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? { match("//"); - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:730:24: (~ ( '\\n' | '\\r' ) )* + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:733:24: (~ ( '\\n' | '\\r' ) )* loop8: do { int alt8=2; @@ -702,7 +701,7 @@ public class InternalReferenceGrammarLexer extends Lexer { switch (alt8) { case 1 : - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:730:24: ~ ( '\\n' | '\\r' ) + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:733:24: ~ ( '\\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(); @@ -723,7 +722,7 @@ public class InternalReferenceGrammarLexer extends Lexer { } } while (true); - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:730:38: ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:733:38: ( ( '\\r' )? '\\n' )? int alt10=2; int LA10_0 = input.LA(1); @@ -732,9 +731,9 @@ public class InternalReferenceGrammarLexer extends Lexer { } switch (alt10) { case 1 : - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:730:39: ( '\\r' )? '\\n' + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:733:39: ( '\\r' )? '\\n' { - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:730:39: ( '\\r' )? + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:733:39: ( '\\r' )? int alt9=2; int LA9_0 = input.LA(1); @@ -743,7 +742,7 @@ public class InternalReferenceGrammarLexer extends Lexer { } switch (alt9) { case 1 : - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:730:39: '\\r' + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:733:39: '\\r' { match('\r'); @@ -759,7 +758,6 @@ public class InternalReferenceGrammarLexer extends Lexer { } - channel=HIDDEN; } @@ -774,10 +772,10 @@ public class InternalReferenceGrammarLexer extends Lexer { public final void mRULE_WS() throws RecognitionException { try { int _type = RULE_WS; - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:732:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:732:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:735:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:735:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ { - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:732:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:735:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ int cnt11=0; loop11: do { @@ -816,7 +814,6 @@ public class InternalReferenceGrammarLexer extends Lexer { cnt11++; } while (true); - channel=HIDDEN; } @@ -831,8 +828,8 @@ public class InternalReferenceGrammarLexer extends Lexer { public final void mRULE_ANY_OTHER() throws RecognitionException { try { int _type = RULE_ANY_OTHER; - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:734:16: ( . ) - // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:734:18: . + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:737:16: ( . ) + // ../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g:737:18: . { matchAny(); diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar__.g b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar__.g index b420b53..f46876b 100644 --- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar__.g +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar__.g @@ -31,18 +31,21 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; // $ANTLR src "../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g" 726 -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -// $ANTLR src "../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g" 728 -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g" 731 +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -// $ANTLR src "../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g" 730 -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g" 733 +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -// $ANTLR src "../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g" 732 -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g" 735 +RULE_WS : (' '|'\t'|'\r'|'\n')+; -// $ANTLR src "../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g" 734 +// $ANTLR src "../org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/antlr/internal/InternalReferenceGrammar.g" 737 RULE_ANY_OTHER : .; diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/ReferenceGrammarDelimiters.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/ReferenceGrammarDelimiters.java index d850f5a..c454db7 100644 --- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/ReferenceGrammarDelimiters.java +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/ReferenceGrammarDelimiters.java @@ -7,6 +7,7 @@ import org.eclipse.xtext.parser.packrat.matching.ICharacterClass; import org.eclipse.xtext.parser.packrat.matching.ISequenceMatcher; import org.eclipse.xtext.parser.packrat.matching.SetBasedKeywordMatcher; +@SuppressWarnings("unused") public final class ReferenceGrammarDelimiters { private ReferenceGrammarDelimiters() { diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/ReferenceGrammarPackratParser.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/ReferenceGrammarPackratParser.java index dd6822c..668e96b 100644 --- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/ReferenceGrammarPackratParser.java +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/ReferenceGrammarPackratParser.java @@ -12,5 +12,5 @@ public class ReferenceGrammarPackratParser extends AbstractPackratParser { protected ReferenceGrammarParserConfiguration createParserConfiguration(IInternalParserConfiguration configuration) { return new ReferenceGrammarParserConfiguration(configuration); } - + } diff --git a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/ReferenceGrammarParserConfiguration.java b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/ReferenceGrammarParserConfiguration.java index acb97a5..8619d1a 100644 --- a/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/ReferenceGrammarParserConfiguration.java +++ b/devtools/org.eclipse.xtext.reference/src-gen/org/eclipse/xtext/reference/parser/packrat/ReferenceGrammarParserConfiguration.java @@ -5,6 +5,7 @@ package org.eclipse.xtext.reference.parser.packrat; import org.eclipse.xtext.parser.packrat.AbstractParserConfiguration; import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.INonTerminalConsumer; import org.eclipse.xtext.builtin.parser.packrat.XtextBuiltinParserConfiguration; @@ -46,7 +47,7 @@ public class ReferenceGrammarParserConfiguration extends AbstractParserConfigura public ReferenceGrammarSpielplatzConsumer getRootConsumer() { return spielplatzConsumer; } - + public void createNonTerminalConsumers() { getXtextBuiltinConfiguration().createNonTerminalConsumers(); spielplatzConsumer = new ReferenceGrammarSpielplatzConsumer( @@ -209,4 +210,9 @@ public class ReferenceGrammarParserConfiguration extends AbstractParserConfigura } + @Override + public ITerminalConsumer[] getInitialHiddenTerminals() { + return getXtextBuiltinConfiguration().getInitialHiddenTerminals(); + } + } diff --git a/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/domainmodel.ecore b/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/domainmodel.ecore index 6d74b1d..1b4861b 100644 --- a/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/domainmodel.ecore +++ b/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/domainmodel.ecore @@ -1,8 +1,8 @@ <?xml version="1.0" encoding="ASCII"?> <ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="domainmodel" nsURI="http://www.example.xtext/Domainmodel" nsPrefix="domainmodel"> <eClassifiers xsi:type="ecore:EClass" name="File"> - <eStructuralFeatures xsi:type="ecore:EReference" name="imports" unique="false" upperBound="-1" eType="//Import" containment="true"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="namedElements" unique="false" upperBound="-1" eType="//NamedElement" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="imports" upperBound="-1" eType="//Import" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="namedElements" upperBound="-1" eType="//NamedElement" containment="true"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Import"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="importURI"> @@ -15,13 +15,13 @@ </eStructuralFeatures> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Package" eSuperTypes="//NamedElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="namedElements" unique="false" upperBound="-1" eType="//NamedElement" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="namedElements" upperBound="-1" eType="//NamedElement" containment="true"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Type" eSuperTypes="//NamedElement"/> <eClassifiers xsi:type="ecore:EClass" name="DataType" eSuperTypes="//Type"/> <eClassifiers xsi:type="ecore:EClass" name="Entity" eSuperTypes="//Type"> <eStructuralFeatures xsi:type="ecore:EReference" name="superType" eType="//Entity"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="features" unique="false" upperBound="-1" eType="//Feature" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="features" upperBound="-1" eType="//Feature" containment="true"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Feature" eSuperTypes="//TypedElement"/> <eClassifiers xsi:type="ecore:EClass" name="StructuralFeature" eSuperTypes="//Feature"/> @@ -30,7 +30,7 @@ <eStructuralFeatures xsi:type="ecore:EReference" name="opposite" eType="//Reference"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Operation" eSuperTypes="//Feature"> - <eStructuralFeatures xsi:type="ecore:EReference" name="params" unique="false" upperBound="-1" eType="//Parameter" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="params" upperBound="-1" eType="//Parameter" containment="true"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Parameter" eSuperTypes="//TypedElement"/> <eClassifiers xsi:type="ecore:EClass" name="TypedElement"> diff --git a/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/DomainmodelParser.java b/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/DomainmodelParser.java index ce8ea03..2621dd8 100644 --- a/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/DomainmodelParser.java +++ b/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/DomainmodelParser.java @@ -23,6 +23,7 @@ public class DomainmodelParser extends org.eclipse.xtext.parser.antlr.AbstractAn protected IParseResult parse(String ruleName, ANTLRInputStream in) { InternalDomainmodelLexer lexer = new InternalDomainmodelLexer(in); XtextTokenStream stream = new XtextTokenStream(lexer, antlrTokenDefProvider); + stream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT"); InternalDomainmodelParser parser = new InternalDomainmodelParser( stream, getElementFactory(), grammarAccess.getGrammar()); parser.setTokenTypeMap(antlrTokenDefProvider.getTokenDefMap()); diff --git a/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g b/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g index 1d4d3a4..c5ab0a6 100644 --- a/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g +++ b/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g @@ -1021,13 +1021,16 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +RULE_WS : (' '|'\t'|'\r'|'\n')+; RULE_ANY_OTHER : .; diff --git a/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodelLexer.java b/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodelLexer.java index 287abca..f262b3c 100644 --- a/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodelLexer.java +++ b/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodelLexer.java @@ -487,10 +487,10 @@ public class InternalDomainmodelLexer extends Lexer { } switch (alt6) { case 1 : - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1024:15: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1025:6: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' { match('\"'); - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1024:19: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1025:10: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* loop4: do { int alt4=3; @@ -506,7 +506,7 @@ public class InternalDomainmodelLexer extends Lexer { switch (alt4) { case 1 : - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1024:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1025:12: '\\\\' ( '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' ) { @@ -523,7 +523,7 @@ public class InternalDomainmodelLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1024:65: ~ ( '\\\\' | '\"' ) + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1025:56: ~ ( '\\\\' | '\"' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -549,10 +549,10 @@ public class InternalDomainmodelLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1024:101: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1026:15: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' { match('\''); - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1024:106: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1026:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* loop5: do { int alt5=3; @@ -568,7 +568,7 @@ public class InternalDomainmodelLexer extends Lexer { switch (alt5) { case 1 : - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1024:108: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1026:22: '\\\\' ( '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' ) { @@ -585,7 +585,7 @@ public class InternalDomainmodelLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1024:152: ~ ( '\\\\' | '\\'' ) + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1026:66: ~ ( '\\\\' | '\\'' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -623,12 +623,12 @@ public class InternalDomainmodelLexer extends Lexer { public final void mRULE_ML_COMMENT() throws RecognitionException { try { int _type = RULE_ML_COMMENT; - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1026:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1026:19: '/*' ( options {greedy=false; } : . )* '*/' + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1029:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1029:19: '/*' ( options {greedy=false; } : . )* '*/' { match("/*"); - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1026:24: ( options {greedy=false; } : . )* + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1029:24: ( options {greedy=false; } : . )* loop7: do { int alt7=2; @@ -653,7 +653,7 @@ public class InternalDomainmodelLexer extends Lexer { switch (alt7) { case 1 : - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1026:52: . + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1029:52: . { matchAny(); @@ -667,7 +667,6 @@ public class InternalDomainmodelLexer extends Lexer { match("*/"); - channel=HIDDEN; } @@ -682,12 +681,12 @@ public class InternalDomainmodelLexer extends Lexer { public final void mRULE_SL_COMMENT() throws RecognitionException { try { int _type = RULE_SL_COMMENT; - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1028:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1028:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1031:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1031:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? { match("//"); - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1028:24: (~ ( '\\n' | '\\r' ) )* + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1031:24: (~ ( '\\n' | '\\r' ) )* loop8: do { int alt8=2; @@ -700,7 +699,7 @@ public class InternalDomainmodelLexer extends Lexer { switch (alt8) { case 1 : - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1028:24: ~ ( '\\n' | '\\r' ) + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1031:24: ~ ( '\\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(); @@ -721,7 +720,7 @@ public class InternalDomainmodelLexer extends Lexer { } } while (true); - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1028:38: ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1031:38: ( ( '\\r' )? '\\n' )? int alt10=2; int LA10_0 = input.LA(1); @@ -730,9 +729,9 @@ public class InternalDomainmodelLexer extends Lexer { } switch (alt10) { case 1 : - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1028:39: ( '\\r' )? '\\n' + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1031:39: ( '\\r' )? '\\n' { - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1028:39: ( '\\r' )? + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1031:39: ( '\\r' )? int alt9=2; int LA9_0 = input.LA(1); @@ -741,7 +740,7 @@ public class InternalDomainmodelLexer extends Lexer { } switch (alt9) { case 1 : - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1028:39: '\\r' + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1031:39: '\\r' { match('\r'); @@ -757,7 +756,6 @@ public class InternalDomainmodelLexer extends Lexer { } - channel=HIDDEN; } @@ -772,10 +770,10 @@ public class InternalDomainmodelLexer extends Lexer { public final void mRULE_WS() throws RecognitionException { try { int _type = RULE_WS; - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1030:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1030:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1033:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1033:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ { - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1030:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1033:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ int cnt11=0; loop11: do { @@ -814,7 +812,6 @@ public class InternalDomainmodelLexer extends Lexer { cnt11++; } while (true); - channel=HIDDEN; } @@ -829,8 +826,8 @@ public class InternalDomainmodelLexer extends Lexer { public final void mRULE_ANY_OTHER() throws RecognitionException { try { int _type = RULE_ANY_OTHER; - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1032:16: ( . ) - // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1032:18: . + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1035:16: ( . ) + // ../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g:1035:18: . { matchAny(); diff --git a/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel__.g b/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel__.g index b170841..8958e4a 100644 --- a/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel__.g +++ b/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel__.g @@ -31,18 +31,21 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; // $ANTLR src "../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g" 1024 -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -// $ANTLR src "../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g" 1026 -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g" 1029 +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -// $ANTLR src "../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g" 1028 -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g" 1031 +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -// $ANTLR src "../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g" 1030 -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g" 1033 +RULE_WS : (' '|'\t'|'\r'|'\n')+; -// $ANTLR src "../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g" 1032 +// $ANTLR src "../org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalDomainmodel.g" 1035 RULE_ANY_OTHER : .; diff --git a/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/packrat/DomainmodelDelimiters.java b/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/packrat/DomainmodelDelimiters.java index 6aad275..422a90c 100644 --- a/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/packrat/DomainmodelDelimiters.java +++ b/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/packrat/DomainmodelDelimiters.java @@ -7,6 +7,7 @@ import org.eclipse.xtext.parser.packrat.matching.ICharacterClass; import org.eclipse.xtext.parser.packrat.matching.ISequenceMatcher; import org.eclipse.xtext.parser.packrat.matching.SetBasedKeywordMatcher; +@SuppressWarnings("unused") public final class DomainmodelDelimiters { private DomainmodelDelimiters() { diff --git a/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/packrat/DomainmodelPackratParser.java b/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/packrat/DomainmodelPackratParser.java index da4eade..6fde5b1 100644 --- a/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/packrat/DomainmodelPackratParser.java +++ b/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/packrat/DomainmodelPackratParser.java @@ -12,5 +12,5 @@ public class DomainmodelPackratParser extends AbstractPackratParser { protected DomainmodelParserConfiguration createParserConfiguration(IInternalParserConfiguration configuration) { return new DomainmodelParserConfiguration(configuration); } - + } diff --git a/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/packrat/DomainmodelParserConfiguration.java b/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/packrat/DomainmodelParserConfiguration.java index 9302ae0..57a950e 100644 --- a/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/packrat/DomainmodelParserConfiguration.java +++ b/examples/org.eclipse.xtext.example.domainmodel/src-gen/org/eclipse/xtext/example/parser/packrat/DomainmodelParserConfiguration.java @@ -5,6 +5,7 @@ package org.eclipse.xtext.example.parser.packrat; import org.eclipse.xtext.parser.packrat.AbstractParserConfiguration; import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.INonTerminalConsumer; import org.eclipse.xtext.builtin.parser.packrat.XtextBuiltinParserConfiguration; @@ -62,7 +63,7 @@ public class DomainmodelParserConfiguration extends AbstractParserConfiguration public DomainmodelFileConsumer getRootConsumer() { return fileConsumer; } - + public void createNonTerminalConsumers() { getXtextBuiltinConfiguration().createNonTerminalConsumers(); fileConsumer = new DomainmodelFileConsumer( @@ -297,4 +298,9 @@ public class DomainmodelParserConfiguration extends AbstractParserConfiguration } + @Override + public ITerminalConsumer[] getInitialHiddenTerminals() { + return getXtextBuiltinConfiguration().getInitialHiddenTerminals(); + } + } diff --git a/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/ecoredsl.ecore b/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/ecoredsl.ecore index e26de04..ae4eeb2 100644 --- a/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/ecoredsl.ecore +++ b/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/ecoredsl.ecore @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="ASCII"?> <ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="ecoredsl" nsURI="http://example.xtext.org/EcoreDsl" nsPrefix="ecoredsl"> <eClassifiers xsi:type="ecore:EClass" name="EcoreDsl"> - <eStructuralFeatures xsi:type="ecore:EReference" name="imports" unique="false" upperBound="-1" eType="//ImportStatementDecl" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="imports" upperBound="-1" eType="//ImportStatementDecl" containment="true"/> <eStructuralFeatures xsi:type="ecore:EReference" name="package" containment="true"> <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EPackage"/> </eStructuralFeatures> diff --git a/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/EcoreDslParser.java b/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/EcoreDslParser.java index 760aa27..977584c 100644 --- a/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/EcoreDslParser.java +++ b/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/EcoreDslParser.java @@ -23,6 +23,7 @@ public class EcoreDslParser extends org.eclipse.xtext.parser.antlr.AbstractAntlr protected IParseResult parse(String ruleName, ANTLRInputStream in) { InternalEcoreDslLexer lexer = new InternalEcoreDslLexer(in); XtextTokenStream stream = new XtextTokenStream(lexer, antlrTokenDefProvider); + stream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT"); InternalEcoreDslParser parser = new InternalEcoreDslParser( stream, getElementFactory(), grammarAccess.getGrammar()); parser.setTokenTypeMap(antlrTokenDefProvider.getTokenDefMap()); diff --git a/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g b/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g index ab4695d..14e65ad 100644 --- a/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g +++ b/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g @@ -3006,13 +3006,16 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +RULE_WS : (' '|'\t'|'\r'|'\n')+; RULE_ANY_OTHER : .; diff --git a/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDslLexer.java b/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDslLexer.java index 4d7a85c..eaa9829 100644 --- a/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDslLexer.java +++ b/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDslLexer.java @@ -1076,10 +1076,10 @@ public class InternalEcoreDslLexer extends Lexer { } switch (alt6) { case 1 : - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3009:15: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3010:6: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' { match('\"'); - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3009:19: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3010:10: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* loop4: do { int alt4=3; @@ -1095,7 +1095,7 @@ public class InternalEcoreDslLexer extends Lexer { switch (alt4) { case 1 : - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3009:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3010:12: '\\\\' ( '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' ) { @@ -1112,7 +1112,7 @@ public class InternalEcoreDslLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3009:65: ~ ( '\\\\' | '\"' ) + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3010:56: ~ ( '\\\\' | '\"' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -1138,10 +1138,10 @@ public class InternalEcoreDslLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3009:101: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3011:15: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' { match('\''); - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3009:106: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3011:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* loop5: do { int alt5=3; @@ -1157,7 +1157,7 @@ public class InternalEcoreDslLexer extends Lexer { switch (alt5) { case 1 : - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3009:108: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3011:22: '\\\\' ( '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' ) { @@ -1174,7 +1174,7 @@ public class InternalEcoreDslLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3009:152: ~ ( '\\\\' | '\\'' ) + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3011:66: ~ ( '\\\\' | '\\'' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -1212,12 +1212,12 @@ public class InternalEcoreDslLexer extends Lexer { public final void mRULE_ML_COMMENT() throws RecognitionException { try { int _type = RULE_ML_COMMENT; - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3011:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3011:19: '/*' ( options {greedy=false; } : . )* '*/' + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3014:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3014:19: '/*' ( options {greedy=false; } : . )* '*/' { match("/*"); - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3011:24: ( options {greedy=false; } : . )* + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3014:24: ( options {greedy=false; } : . )* loop7: do { int alt7=2; @@ -1242,7 +1242,7 @@ public class InternalEcoreDslLexer extends Lexer { switch (alt7) { case 1 : - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3011:52: . + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3014:52: . { matchAny(); @@ -1256,7 +1256,6 @@ public class InternalEcoreDslLexer extends Lexer { match("*/"); - channel=HIDDEN; } @@ -1271,12 +1270,12 @@ public class InternalEcoreDslLexer extends Lexer { public final void mRULE_SL_COMMENT() throws RecognitionException { try { int _type = RULE_SL_COMMENT; - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3013:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3013:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3016:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3016:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? { match("//"); - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3013:24: (~ ( '\\n' | '\\r' ) )* + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3016:24: (~ ( '\\n' | '\\r' ) )* loop8: do { int alt8=2; @@ -1289,7 +1288,7 @@ public class InternalEcoreDslLexer extends Lexer { switch (alt8) { case 1 : - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3013:24: ~ ( '\\n' | '\\r' ) + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3016:24: ~ ( '\\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(); @@ -1310,7 +1309,7 @@ public class InternalEcoreDslLexer extends Lexer { } } while (true); - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3013:38: ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3016:38: ( ( '\\r' )? '\\n' )? int alt10=2; int LA10_0 = input.LA(1); @@ -1319,9 +1318,9 @@ public class InternalEcoreDslLexer extends Lexer { } switch (alt10) { case 1 : - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3013:39: ( '\\r' )? '\\n' + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3016:39: ( '\\r' )? '\\n' { - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3013:39: ( '\\r' )? + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3016:39: ( '\\r' )? int alt9=2; int LA9_0 = input.LA(1); @@ -1330,7 +1329,7 @@ public class InternalEcoreDslLexer extends Lexer { } switch (alt9) { case 1 : - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3013:39: '\\r' + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3016:39: '\\r' { match('\r'); @@ -1346,7 +1345,6 @@ public class InternalEcoreDslLexer extends Lexer { } - channel=HIDDEN; } @@ -1361,10 +1359,10 @@ public class InternalEcoreDslLexer extends Lexer { public final void mRULE_WS() throws RecognitionException { try { int _type = RULE_WS; - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3015:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3015:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3018:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3018:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ { - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3015:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3018:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ int cnt11=0; loop11: do { @@ -1403,7 +1401,6 @@ public class InternalEcoreDslLexer extends Lexer { cnt11++; } while (true); - channel=HIDDEN; } @@ -1418,8 +1415,8 @@ public class InternalEcoreDslLexer extends Lexer { public final void mRULE_ANY_OTHER() throws RecognitionException { try { int _type = RULE_ANY_OTHER; - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3017:16: ( . ) - // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3017:18: . + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3020:16: ( . ) + // ../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g:3020:18: . { matchAny(); diff --git a/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl__.g b/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl__.g index a901f1f..a6ae6b9 100644 --- a/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl__.g +++ b/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl__.g @@ -61,18 +61,21 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; // $ANTLR src "../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g" 3009 -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -// $ANTLR src "../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g" 3011 -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g" 3014 +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -// $ANTLR src "../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g" 3013 -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g" 3016 +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -// $ANTLR src "../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g" 3015 -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g" 3018 +RULE_WS : (' '|'\t'|'\r'|'\n')+; -// $ANTLR src "../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g" 3017 +// $ANTLR src "../org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalEcoreDsl.g" 3020 RULE_ANY_OTHER : .; diff --git a/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/packrat/EcoreDslDelimiters.java b/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/packrat/EcoreDslDelimiters.java index 4bfe2a9..c80993a 100644 --- a/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/packrat/EcoreDslDelimiters.java +++ b/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/packrat/EcoreDslDelimiters.java @@ -7,6 +7,7 @@ import org.eclipse.xtext.parser.packrat.matching.ICharacterClass; import org.eclipse.xtext.parser.packrat.matching.ISequenceMatcher; import org.eclipse.xtext.parser.packrat.matching.SetBasedKeywordMatcher; +@SuppressWarnings("unused") public final class EcoreDslDelimiters { private EcoreDslDelimiters() { diff --git a/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/packrat/EcoreDslPackratParser.java b/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/packrat/EcoreDslPackratParser.java index a8a76a5..c0dcbf6 100644 --- a/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/packrat/EcoreDslPackratParser.java +++ b/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/packrat/EcoreDslPackratParser.java @@ -12,5 +12,5 @@ public class EcoreDslPackratParser extends AbstractPackratParser { protected EcoreDslParserConfiguration createParserConfiguration(IInternalParserConfiguration configuration) { return new EcoreDslParserConfiguration(configuration); } - + } diff --git a/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/packrat/EcoreDslParserConfiguration.java b/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/packrat/EcoreDslParserConfiguration.java index f8d0ebf..b9b2a2f 100644 --- a/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/packrat/EcoreDslParserConfiguration.java +++ b/examples/org.eclipse.xtext.example.ecoredsl/src-gen/org/eclipse/xtext/example/parser/packrat/EcoreDslParserConfiguration.java @@ -5,6 +5,7 @@ package org.eclipse.xtext.example.parser.packrat; import org.eclipse.xtext.parser.packrat.AbstractParserConfiguration; import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.INonTerminalConsumer; import org.eclipse.xtext.builtin.parser.packrat.XtextBuiltinParserConfiguration; @@ -78,7 +79,7 @@ public class EcoreDslParserConfiguration extends AbstractParserConfiguration { public EcoreDslEcoreDslConsumer getRootConsumer() { return ecoreDslConsumer; } - + public void createNonTerminalConsumers() { getXtextBuiltinConfiguration().createNonTerminalConsumers(); ecoreDslConsumer = new EcoreDslEcoreDslConsumer( @@ -514,4 +515,9 @@ public class EcoreDslParserConfiguration extends AbstractParserConfiguration { } + @Override + public ITerminalConsumer[] getInitialHiddenTerminals() { + return getXtextBuiltinConfiguration().getInitialHiddenTerminals(); + } + } diff --git a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/fowlerdsl.ecore b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/fowlerdsl.ecore index e8367c2..07f1c55 100644 --- a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/fowlerdsl.ecore +++ b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/fowlerdsl.ecore @@ -1,9 +1,9 @@ <?xml version="1.0" encoding="ASCII"?> <ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="fowlerdsl" nsURI="http://example.xtext.org/FowlerDsl" nsPrefix="fowlerdsl"> <eClassifiers xsi:type="ecore:EClass" name="Statemachine"> - <eStructuralFeatures xsi:type="ecore:EReference" name="events" unique="false" upperBound="-1" eType="//Event" containment="true"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="commands" unique="false" upperBound="-1" eType="//Command" containment="true"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="states" unique="false" upperBound="-1" eType="//State" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="events" upperBound="-1" eType="//Event" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="commands" upperBound="-1" eType="//Command" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="states" upperBound="-1" eType="//State" containment="true"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Event"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="resetting"> @@ -29,7 +29,7 @@ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/> </eStructuralFeatures> <eStructuralFeatures xsi:type="ecore:EReference" name="actions" unique="false" upperBound="-1" eType="//Command"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="transitions" unique="false" upperBound="-1" eType="//Transition" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="transitions" upperBound="-1" eType="//Transition" containment="true"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Transition"> <eStructuralFeatures xsi:type="ecore:EReference" name="event" eType="//Event"/> diff --git a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/FowlerDslParser.java b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/FowlerDslParser.java index 8c881ed..834f557 100644 --- a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/FowlerDslParser.java +++ b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/FowlerDslParser.java @@ -23,6 +23,7 @@ public class FowlerDslParser extends org.eclipse.xtext.parser.antlr.AbstractAntl protected IParseResult parse(String ruleName, ANTLRInputStream in) { InternalFowlerDslLexer lexer = new InternalFowlerDslLexer(in); XtextTokenStream stream = new XtextTokenStream(lexer, antlrTokenDefProvider); + stream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT"); InternalFowlerDslParser parser = new InternalFowlerDslParser( stream, getElementFactory(), grammarAccess.getGrammar()); parser.setTokenTypeMap(antlrTokenDefProvider.getTokenDefMap()); diff --git a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g index f6236bf..fdd3727 100644 --- a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g +++ b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g @@ -477,13 +477,16 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +RULE_WS : (' '|'\t'|'\r'|'\n')+; RULE_ANY_OTHER : .; diff --git a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDslLexer.java b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDslLexer.java index a5cc3cb..677a485 100644 --- a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDslLexer.java +++ b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDslLexer.java @@ -352,10 +352,10 @@ public class InternalFowlerDslLexer extends Lexer { } switch (alt6) { case 1 : - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:480:15: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:481:6: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' { match('\"'); - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:480:19: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:481:10: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* loop4: do { int alt4=3; @@ -371,7 +371,7 @@ public class InternalFowlerDslLexer extends Lexer { switch (alt4) { case 1 : - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:480:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:481:12: '\\\\' ( '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' ) { @@ -388,7 +388,7 @@ public class InternalFowlerDslLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:480:65: ~ ( '\\\\' | '\"' ) + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:481:56: ~ ( '\\\\' | '\"' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -414,10 +414,10 @@ public class InternalFowlerDslLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:480:101: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:482:15: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' { match('\''); - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:480:106: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:482:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* loop5: do { int alt5=3; @@ -433,7 +433,7 @@ public class InternalFowlerDslLexer extends Lexer { switch (alt5) { case 1 : - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:480:108: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:482:22: '\\\\' ( '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' ) { @@ -450,7 +450,7 @@ public class InternalFowlerDslLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:480:152: ~ ( '\\\\' | '\\'' ) + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:482:66: ~ ( '\\\\' | '\\'' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -488,12 +488,12 @@ public class InternalFowlerDslLexer extends Lexer { public final void mRULE_ML_COMMENT() throws RecognitionException { try { int _type = RULE_ML_COMMENT; - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:482:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:482:19: '/*' ( options {greedy=false; } : . )* '*/' + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:485:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:485:19: '/*' ( options {greedy=false; } : . )* '*/' { match("/*"); - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:482:24: ( options {greedy=false; } : . )* + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:485:24: ( options {greedy=false; } : . )* loop7: do { int alt7=2; @@ -518,7 +518,7 @@ public class InternalFowlerDslLexer extends Lexer { switch (alt7) { case 1 : - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:482:52: . + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:485:52: . { matchAny(); @@ -532,7 +532,6 @@ public class InternalFowlerDslLexer extends Lexer { match("*/"); - channel=HIDDEN; } @@ -547,12 +546,12 @@ public class InternalFowlerDslLexer extends Lexer { public final void mRULE_SL_COMMENT() throws RecognitionException { try { int _type = RULE_SL_COMMENT; - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:484:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:484:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:487:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:487:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? { match("//"); - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:484:24: (~ ( '\\n' | '\\r' ) )* + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:487:24: (~ ( '\\n' | '\\r' ) )* loop8: do { int alt8=2; @@ -565,7 +564,7 @@ public class InternalFowlerDslLexer extends Lexer { switch (alt8) { case 1 : - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:484:24: ~ ( '\\n' | '\\r' ) + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:487:24: ~ ( '\\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(); @@ -586,7 +585,7 @@ public class InternalFowlerDslLexer extends Lexer { } } while (true); - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:484:38: ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:487:38: ( ( '\\r' )? '\\n' )? int alt10=2; int LA10_0 = input.LA(1); @@ -595,9 +594,9 @@ public class InternalFowlerDslLexer extends Lexer { } switch (alt10) { case 1 : - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:484:39: ( '\\r' )? '\\n' + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:487:39: ( '\\r' )? '\\n' { - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:484:39: ( '\\r' )? + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:487:39: ( '\\r' )? int alt9=2; int LA9_0 = input.LA(1); @@ -606,7 +605,7 @@ public class InternalFowlerDslLexer extends Lexer { } switch (alt9) { case 1 : - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:484:39: '\\r' + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:487:39: '\\r' { match('\r'); @@ -622,7 +621,6 @@ public class InternalFowlerDslLexer extends Lexer { } - channel=HIDDEN; } @@ -637,10 +635,10 @@ public class InternalFowlerDslLexer extends Lexer { public final void mRULE_WS() throws RecognitionException { try { int _type = RULE_WS; - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:486:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:486:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:489:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:489:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ { - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:486:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:489:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ int cnt11=0; loop11: do { @@ -679,7 +677,6 @@ public class InternalFowlerDslLexer extends Lexer { cnt11++; } while (true); - channel=HIDDEN; } @@ -694,8 +691,8 @@ public class InternalFowlerDslLexer extends Lexer { public final void mRULE_ANY_OTHER() throws RecognitionException { try { int _type = RULE_ANY_OTHER; - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:488:16: ( . ) - // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:488:18: . + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:491:16: ( . ) + // ../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g:491:18: . { matchAny(); diff --git a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl__.g b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl__.g index c78cd9b..bbe668c 100644 --- a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl__.g +++ b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl__.g @@ -24,18 +24,21 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; // $ANTLR src "../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g" 480 -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -// $ANTLR src "../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g" 482 -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g" 485 +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -// $ANTLR src "../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g" 484 -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g" 487 +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -// $ANTLR src "../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g" 486 -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g" 489 +RULE_WS : (' '|'\t'|'\r'|'\n')+; -// $ANTLR src "../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g" 488 +// $ANTLR src "../org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/antlr/internal/InternalFowlerDsl.g" 491 RULE_ANY_OTHER : .; diff --git a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/packrat/FowlerDslDelimiters.java b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/packrat/FowlerDslDelimiters.java index 8ba7292..09611ab 100644 --- a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/packrat/FowlerDslDelimiters.java +++ b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/packrat/FowlerDslDelimiters.java @@ -7,6 +7,7 @@ import org.eclipse.xtext.parser.packrat.matching.ICharacterClass; import org.eclipse.xtext.parser.packrat.matching.ISequenceMatcher; import org.eclipse.xtext.parser.packrat.matching.SetBasedKeywordMatcher; +@SuppressWarnings("unused") public final class FowlerDslDelimiters { private FowlerDslDelimiters() { diff --git a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/packrat/FowlerDslPackratParser.java b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/packrat/FowlerDslPackratParser.java index 8669b0a..ecacc0d 100644 --- a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/packrat/FowlerDslPackratParser.java +++ b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/packrat/FowlerDslPackratParser.java @@ -12,5 +12,5 @@ public class FowlerDslPackratParser extends AbstractPackratParser { protected FowlerDslParserConfiguration createParserConfiguration(IInternalParserConfiguration configuration) { return new FowlerDslParserConfiguration(configuration); } - + } diff --git a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/packrat/FowlerDslParserConfiguration.java b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/packrat/FowlerDslParserConfiguration.java index 6933f77..6cea00c 100644 --- a/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/packrat/FowlerDslParserConfiguration.java +++ b/examples/org.eclipse.xtext.example.fowlerdsl/src-gen/org/eclipse/xtext/example/parser/packrat/FowlerDslParserConfiguration.java @@ -5,6 +5,7 @@ package org.eclipse.xtext.example.parser.packrat; import org.eclipse.xtext.parser.packrat.AbstractParserConfiguration; import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.INonTerminalConsumer; import org.eclipse.xtext.builtin.parser.packrat.XtextBuiltinParserConfiguration; @@ -40,7 +41,7 @@ public class FowlerDslParserConfiguration extends AbstractParserConfiguration { public FowlerDslStatemachineConsumer getRootConsumer() { return statemachineConsumer; } - + public void createNonTerminalConsumers() { getXtextBuiltinConfiguration().createNonTerminalConsumers(); statemachineConsumer = new FowlerDslStatemachineConsumer( @@ -153,4 +154,9 @@ public class FowlerDslParserConfiguration extends AbstractParserConfiguration { } + @Override + public ITerminalConsumer[] getInitialHiddenTerminals() { + return getXtextBuiltinConfiguration().getInitialHiddenTerminals(); + } + } diff --git a/tests/org.eclipse.xtext.generator.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.xtext.generator.tests/META-INF/MANIFEST.MF index 30c387b..9a38477 100644 --- a/tests/org.eclipse.xtext.generator.tests/META-INF/MANIFEST.MF +++ b/tests/org.eclipse.xtext.generator.tests/META-INF/MANIFEST.MF @@ -19,6 +19,7 @@ Require-Bundle: org.eclipse.xtext, org.easymock;bundle-version="2.3.0" Export-Package: org.eclipse.xtext, org.eclipse.xtext.crossrefs, + org.eclipse.xtext.grammarinheritance, org.eclipse.xtext.parser.keywords, org.eclipse.xtext.testlanguages, org.eclipse.xtext.testlanguages.parser.antlr.internal, diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/XtextGrammarTestLanguage.xmi b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/XtextGrammarTestLanguage.xmi index bbf95e1..2d67edc 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/XtextGrammarTestLanguage.xmi +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/XtextGrammarTestLanguage.xmi @@ -10,56 +10,87 @@ <metamodelDeclarations xsi:type="xtext:ReferencedMetamodel" alias="ecore"> <ePackage href="http://www.eclipse.org/emf/2002/Ecore#/"/> </metamodelDeclarations> - <rules xsi:type="xtext:ParserRule" name="Grammar" definesHiddenTokens="true"> + <rules xsi:type="xtext:ParserRule" name="Grammar"> <type metamodel="//@metamodelDeclarations.0"> <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//Grammar"/> </type> - <hiddenTokens href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.5"/> - <hiddenTokens href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.3"/> - <hiddenTokens href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.4"/> <alternatives xsi:type="xtext:Group"> <abstractTokens xsi:type="xtext:Group"> <abstractTokens xsi:type="xtext:Group"> <abstractTokens xsi:type="xtext:Group"> <abstractTokens xsi:type="xtext:Group"> - <abstractTokens xsi:type="xtext:Alternatives"> - <groups xsi:type="xtext:Assignment" feature="abstract" operator="?="> - <terminal xsi:type="xtext:Keyword" value="abstract language"/> - </groups> - <groups xsi:type="xtext:Keyword" value="language"/> + <abstractTokens xsi:type="xtext:Group"> + <abstractTokens xsi:type="xtext:Alternatives"> + <groups xsi:type="xtext:Assignment" feature="abstract" operator="?="> + <terminal xsi:type="xtext:Keyword" value="abstract language"/> + </groups> + <groups xsi:type="xtext:Keyword" value="language"/> + </abstractTokens> + <abstractTokens xsi:type="xtext:Assignment" feature="idElements" operator="+="> + <terminal xsi:type="xtext:RuleCall"> + <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/> + </terminal> + </abstractTokens> </abstractTokens> - <abstractTokens xsi:type="xtext:Assignment" feature="idElements" operator="+="> - <terminal xsi:type="xtext:RuleCall"> - <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/> - </terminal> + <abstractTokens xsi:type="xtext:Group" cardinality="*"> + <abstractTokens xsi:type="xtext:Keyword" value="."/> + <abstractTokens xsi:type="xtext:Assignment" feature="idElements" operator="+="> + <terminal xsi:type="xtext:RuleCall"> + <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/> + </terminal> + </abstractTokens> </abstractTokens> </abstractTokens> - <abstractTokens xsi:type="xtext:Group" cardinality="*"> - <abstractTokens xsi:type="xtext:Keyword" value="."/> - <abstractTokens xsi:type="xtext:Assignment" feature="idElements" operator="+="> - <terminal xsi:type="xtext:RuleCall"> - <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/> - </terminal> + <abstractTokens xsi:type="xtext:Group" cardinality="?"> + <abstractTokens xsi:type="xtext:Group"> + <abstractTokens xsi:type="xtext:Keyword" value="extends"/> + <abstractTokens xsi:type="xtext:Assignment" feature="superGrammarIdElements" operator="+="> + <terminal xsi:type="xtext:RuleCall"> + <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/> + </terminal> + </abstractTokens> + </abstractTokens> + <abstractTokens xsi:type="xtext:Group" cardinality="*"> + <abstractTokens xsi:type="xtext:Keyword" value="."/> + <abstractTokens xsi:type="xtext:Assignment" feature="superGrammarIdElements" operator="+="> + <terminal xsi:type="xtext:RuleCall"> + <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/> + </terminal> + </abstractTokens> </abstractTokens> </abstractTokens> </abstractTokens> <abstractTokens xsi:type="xtext:Group" cardinality="?"> <abstractTokens xsi:type="xtext:Group"> - <abstractTokens xsi:type="xtext:Keyword" value="extends"/> - <abstractTokens xsi:type="xtext:Assignment" feature="superGrammarIdElements" operator="+="> - <terminal xsi:type="xtext:RuleCall"> - <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/> - </terminal> + <abstractTokens xsi:type="xtext:Group"> + <abstractTokens xsi:type="xtext:Assignment" feature="definesHiddenTokens" operator="?="> + <terminal xsi:type="xtext:Keyword" value="hidden"/> + </abstractTokens> + <abstractTokens xsi:type="xtext:Keyword" value="("/> </abstractTokens> - </abstractTokens> - <abstractTokens xsi:type="xtext:Group" cardinality="*"> - <abstractTokens xsi:type="xtext:Keyword" value="."/> - <abstractTokens xsi:type="xtext:Assignment" feature="superGrammarIdElements" operator="+="> - <terminal xsi:type="xtext:RuleCall"> - <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/> - </terminal> + <abstractTokens xsi:type="xtext:Group" cardinality="?"> + <abstractTokens xsi:type="xtext:Assignment" feature="hiddenTokens" operator="+="> + <terminal xsi:type="xtext:CrossReference"> + <type metamodel="//@metamodelDeclarations.0"> + <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//AbstractRule"/> + </type> + <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/> + </terminal> + </abstractTokens> + <abstractTokens xsi:type="xtext:Group" cardinality="*"> + <abstractTokens xsi:type="xtext:Keyword" value=","/> + <abstractTokens xsi:type="xtext:Assignment" feature="hiddenTokens" operator="+="> + <terminal xsi:type="xtext:CrossReference"> + <type metamodel="//@metamodelDeclarations.0"> + <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//AbstractRule"/> + </type> + <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/> + </terminal> + </abstractTokens> + </abstractTokens> </abstractTokens> </abstractTokens> + <abstractTokens xsi:type="xtext:Keyword" value=")"/> </abstractTokens> </abstractTokens> <abstractTokens xsi:type="xtext:Assignment" cardinality="*" feature="metamodelDeclarations" operator="+="> @@ -212,23 +243,12 @@ <abstractTokens xsi:type="xtext:Group" cardinality="?"> <abstractTokens xsi:type="xtext:Group"> <abstractTokens xsi:type="xtext:Group"> - <abstractTokens xsi:type="xtext:Group"> - <abstractTokens xsi:type="xtext:Assignment" feature="definesHiddenTokens" operator="?="> - <terminal xsi:type="xtext:Keyword" value="hidden"/> - </abstractTokens> - <abstractTokens xsi:type="xtext:Keyword" value="("/> - </abstractTokens> - <abstractTokens xsi:type="xtext:Assignment" feature="hiddenTokens" operator="+="> - <terminal xsi:type="xtext:CrossReference"> - <type metamodel="//@metamodelDeclarations.0"> - <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//AbstractRule"/> - </type> - <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/> - </terminal> + <abstractTokens xsi:type="xtext:Assignment" feature="definesHiddenTokens" operator="?="> + <terminal xsi:type="xtext:Keyword" value="hidden"/> </abstractTokens> + <abstractTokens xsi:type="xtext:Keyword" value="("/> </abstractTokens> - <abstractTokens xsi:type="xtext:Group"> - <abstractTokens xsi:type="xtext:Keyword" value=","/> + <abstractTokens xsi:type="xtext:Group" cardinality="?"> <abstractTokens xsi:type="xtext:Assignment" feature="hiddenTokens" operator="+="> <terminal xsi:type="xtext:CrossReference"> <type metamodel="//@metamodelDeclarations.0"> @@ -237,6 +257,17 @@ <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/> </terminal> </abstractTokens> + <abstractTokens xsi:type="xtext:Group" cardinality="*"> + <abstractTokens xsi:type="xtext:Keyword" value=","/> + <abstractTokens xsi:type="xtext:Assignment" feature="hiddenTokens" operator="+="> + <terminal xsi:type="xtext:CrossReference"> + <type metamodel="//@metamodelDeclarations.0"> + <type xsi:type="ecore:EClass" href="http://www.eclipse.org/2008/Test/XtextTest#//AbstractRule"/> + </type> + <rule href="classpath:/org/eclipse/xtext/builtin/XtextBuiltin.xmi#//@rules.0"/> + </terminal> + </abstractTokens> + </abstractTokens> </abstractTokens> </abstractTokens> <abstractTokens xsi:type="xtext:Keyword" value=")"/> diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/XtextTest.ecore b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/XtextTest.ecore index 30c6432..319db9d 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/XtextTest.ecore +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/XtextTest.ecore @@ -10,22 +10,26 @@ <eStructuralFeatures xsi:type="ecore:EAttribute" name="superGrammarIdElements" unique="false" upperBound="-1"> <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/> </eStructuralFeatures> - <eStructuralFeatures xsi:type="ecore:EReference" name="metamodelDeclarations" unique="false" upperBound="-1" eType="//AbstractMetamodelDeclaration" containment="true"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="rules" unique="false" upperBound="-1" eType="//AbstractRule" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EAttribute" name="definesHiddenTokens"> + <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> + </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="hiddenTokens" unique="false" upperBound="-1" eType="//AbstractRule"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="metamodelDeclarations" upperBound="-1" eType="//AbstractMetamodelDeclaration" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="rules" upperBound="-1" eType="//AbstractRule" containment="true"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="AbstractRule"> + <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="//TypeRef" containment="true"/> <eStructuralFeatures xsi:type="ecore:EAttribute" name="name"> <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/> </eStructuralFeatures> - <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="//TypeRef" containment="true"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="AbstractMetamodelDeclaration"> - <eStructuralFeatures xsi:type="ecore:EReference" name="ePackage"> - <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EPackage"/> - </eStructuralFeatures> <eStructuralFeatures xsi:type="ecore:EAttribute" name="alias"> <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/> </eStructuralFeatures> + <eStructuralFeatures xsi:type="ecore:EReference" name="ePackage"> + <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EPackage"/> + </eStructuralFeatures> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="GeneratedMetamodel" eSuperTypes="//AbstractMetamodelDeclaration"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="name"> @@ -100,10 +104,10 @@ <eStructuralFeatures xsi:type="ecore:EReference" name="rule" eType="//AbstractRule"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Alternatives" eSuperTypes="//AbstractElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="groups" unique="false" upperBound="-1" eType="//AbstractElement" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="groups" upperBound="-1" eType="//AbstractElement" containment="true"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Group" eSuperTypes="//AbstractElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="abstractTokens" unique="false" upperBound="-1" eType="//AbstractElement" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="abstractTokens" upperBound="-1" eType="//AbstractElement" containment="true"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="CharacterRange" eSuperTypes="//AbstractElement"> <eStructuralFeatures xsi:type="ecore:EReference" name="left" eType="//Keyword" containment="true"/> diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/importedURI.ecore b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/importedURI.ecore index 6d79434..d3ca6c2 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/importedURI.ecore +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/importedURI.ecore @@ -1,8 +1,8 @@ <?xml version="1.0" encoding="ASCII"?> <ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="importedURI" nsURI="http://eclipse.org/xtext/importUriTestLanguage" nsPrefix="importedURI"> <eClassifiers xsi:type="ecore:EClass" name="Main"> - <eStructuralFeatures xsi:type="ecore:EReference" name="imports" unique="false" upperBound="-1" eType="//Import" containment="true"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="types" unique="false" upperBound="-1" eType="//Type" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="imports" upperBound="-1" eType="//Import" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="types" upperBound="-1" eType="//Type" containment="true"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Import"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="importURI"> diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/langATestLanguage.ecore b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/langATestLanguage.ecore index c08b8d2..28f9361 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/langATestLanguage.ecore +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/langATestLanguage.ecore @@ -1,8 +1,8 @@ <?xml version="1.0" encoding="ASCII"?> <ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="langATestLanguage" nsURI="http://eclipse.org/xtext/langATestLanguage" nsPrefix="langATestLanguage"> <eClassifiers xsi:type="ecore:EClass" name="Main"> - <eStructuralFeatures xsi:type="ecore:EReference" name="imports" unique="false" upperBound="-1" eType="//Import" containment="true"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="types" unique="false" upperBound="-1" eType="//Type" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="imports" upperBound="-1" eType="//Import" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="types" upperBound="-1" eType="//Type" containment="true"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Import"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="uri"> diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/ImportUriTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/ImportUriTestLanguageParser.java index 0ff9569..6b0df3d 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/ImportUriTestLanguageParser.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/ImportUriTestLanguageParser.java @@ -23,6 +23,7 @@ public class ImportUriTestLanguageParser extends org.eclipse.xtext.parser.antlr. protected IParseResult parse(String ruleName, ANTLRInputStream in) { InternalImportUriTestLanguageLexer lexer = new InternalImportUriTestLanguageLexer(in); XtextTokenStream stream = new XtextTokenStream(lexer, antlrTokenDefProvider); + stream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT"); InternalImportUriTestLanguageParser parser = new InternalImportUriTestLanguageParser( stream, getElementFactory(), grammarAccess.getGrammar()); parser.setTokenTypeMap(antlrTokenDefProvider.getTokenDefMap()); diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/LangATestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/LangATestLanguageParser.java index 9f49e1d..8b4c963 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/LangATestLanguageParser.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/LangATestLanguageParser.java @@ -23,6 +23,7 @@ public class LangATestLanguageParser extends org.eclipse.xtext.parser.antlr.Abst protected IParseResult parse(String ruleName, ANTLRInputStream in) { InternalLangATestLanguageLexer lexer = new InternalLangATestLanguageLexer(in); XtextTokenStream stream = new XtextTokenStream(lexer, antlrTokenDefProvider); + stream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT"); InternalLangATestLanguageParser parser = new InternalLangATestLanguageParser( stream, getElementFactory(), grammarAccess.getGrammar()); parser.setTokenTypeMap(antlrTokenDefProvider.getTokenDefMap()); diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g index 9ac9a01..ba2613f 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g @@ -249,13 +249,16 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +RULE_WS : (' '|'\t'|'\r'|'\n')+; RULE_ANY_OTHER : .; diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguageLexer.java index 7c312e4..ae59a78 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguageLexer.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguageLexer.java @@ -234,10 +234,10 @@ public class InternalImportUriTestLanguageLexer extends Lexer { } switch (alt6) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:252:15: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:253:6: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' { match('\"'); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:252:19: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:253:10: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* loop4: do { int alt4=3; @@ -253,7 +253,7 @@ public class InternalImportUriTestLanguageLexer extends Lexer { switch (alt4) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:252:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:253:12: '\\\\' ( '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' ) { @@ -270,7 +270,7 @@ public class InternalImportUriTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:252:65: ~ ( '\\\\' | '\"' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:253:56: ~ ( '\\\\' | '\"' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -296,10 +296,10 @@ public class InternalImportUriTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:252:101: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:254:15: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' { match('\''); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:252:106: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:254:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* loop5: do { int alt5=3; @@ -315,7 +315,7 @@ public class InternalImportUriTestLanguageLexer extends Lexer { switch (alt5) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:252:108: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:254:22: '\\\\' ( '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' ) { @@ -332,7 +332,7 @@ public class InternalImportUriTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:252:152: ~ ( '\\\\' | '\\'' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:254:66: ~ ( '\\\\' | '\\'' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -370,12 +370,12 @@ public class InternalImportUriTestLanguageLexer extends Lexer { public final void mRULE_ML_COMMENT() throws RecognitionException { try { int _type = RULE_ML_COMMENT; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:254:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:254:19: '/*' ( options {greedy=false; } : . )* '*/' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:257:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:257:19: '/*' ( options {greedy=false; } : . )* '*/' { match("/*"); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:254:24: ( options {greedy=false; } : . )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:257:24: ( options {greedy=false; } : . )* loop7: do { int alt7=2; @@ -400,7 +400,7 @@ public class InternalImportUriTestLanguageLexer extends Lexer { switch (alt7) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:254:52: . + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:257:52: . { matchAny(); @@ -414,7 +414,6 @@ public class InternalImportUriTestLanguageLexer extends Lexer { match("*/"); - channel=HIDDEN; } @@ -429,12 +428,12 @@ public class InternalImportUriTestLanguageLexer extends Lexer { public final void mRULE_SL_COMMENT() throws RecognitionException { try { int _type = RULE_SL_COMMENT; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:256:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:256:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:259:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:259:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? { match("//"); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:256:24: (~ ( '\\n' | '\\r' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:259:24: (~ ( '\\n' | '\\r' ) )* loop8: do { int alt8=2; @@ -447,7 +446,7 @@ public class InternalImportUriTestLanguageLexer extends Lexer { switch (alt8) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:256:24: ~ ( '\\n' | '\\r' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:259:24: ~ ( '\\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(); @@ -468,7 +467,7 @@ public class InternalImportUriTestLanguageLexer extends Lexer { } } while (true); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:256:38: ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:259:38: ( ( '\\r' )? '\\n' )? int alt10=2; int LA10_0 = input.LA(1); @@ -477,9 +476,9 @@ public class InternalImportUriTestLanguageLexer extends Lexer { } switch (alt10) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:256:39: ( '\\r' )? '\\n' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:259:39: ( '\\r' )? '\\n' { - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:256:39: ( '\\r' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:259:39: ( '\\r' )? int alt9=2; int LA9_0 = input.LA(1); @@ -488,7 +487,7 @@ public class InternalImportUriTestLanguageLexer extends Lexer { } switch (alt9) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:256:39: '\\r' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:259:39: '\\r' { match('\r'); @@ -504,7 +503,6 @@ public class InternalImportUriTestLanguageLexer extends Lexer { } - channel=HIDDEN; } @@ -519,10 +517,10 @@ public class InternalImportUriTestLanguageLexer extends Lexer { public final void mRULE_WS() throws RecognitionException { try { int _type = RULE_WS; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:258:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:258:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:261:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:261:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ { - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:258:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:261:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ int cnt11=0; loop11: do { @@ -561,7 +559,6 @@ public class InternalImportUriTestLanguageLexer extends Lexer { cnt11++; } while (true); - channel=HIDDEN; } @@ -576,8 +573,8 @@ public class InternalImportUriTestLanguageLexer extends Lexer { public final void mRULE_ANY_OTHER() throws RecognitionException { try { int _type = RULE_ANY_OTHER; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:260:16: ( . ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:260:18: . + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:263:16: ( . ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g:263:18: . { matchAny(); diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage__.g b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage__.g index 26f2d3e..9d5cd03 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage__.g +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage__.g @@ -18,18 +18,21 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; // $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g" 252 -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g" 254 -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g" 257 +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g" 256 -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g" 259 +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g" 258 -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g" 261 +RULE_WS : (' '|'\t'|'\r'|'\n')+; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g" 260 +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalImportUriTestLanguage.g" 263 RULE_ANY_OTHER : .; diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g index 7128621..82e22f1 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g @@ -249,13 +249,16 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +RULE_WS : (' '|'\t'|'\r'|'\n')+; RULE_ANY_OTHER : .; diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguageLexer.java index c076c7b..2ca93d1 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguageLexer.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguageLexer.java @@ -234,10 +234,10 @@ public class InternalLangATestLanguageLexer extends Lexer { } switch (alt6) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:252:15: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:253:6: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' { match('\"'); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:252:19: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:253:10: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* loop4: do { int alt4=3; @@ -253,7 +253,7 @@ public class InternalLangATestLanguageLexer extends Lexer { switch (alt4) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:252:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:253:12: '\\\\' ( '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' ) { @@ -270,7 +270,7 @@ public class InternalLangATestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:252:65: ~ ( '\\\\' | '\"' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:253:56: ~ ( '\\\\' | '\"' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -296,10 +296,10 @@ public class InternalLangATestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:252:101: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:254:15: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' { match('\''); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:252:106: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:254:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* loop5: do { int alt5=3; @@ -315,7 +315,7 @@ public class InternalLangATestLanguageLexer extends Lexer { switch (alt5) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:252:108: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:254:22: '\\\\' ( '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' ) { @@ -332,7 +332,7 @@ public class InternalLangATestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:252:152: ~ ( '\\\\' | '\\'' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:254:66: ~ ( '\\\\' | '\\'' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -370,12 +370,12 @@ public class InternalLangATestLanguageLexer extends Lexer { public final void mRULE_ML_COMMENT() throws RecognitionException { try { int _type = RULE_ML_COMMENT; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:254:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:254:19: '/*' ( options {greedy=false; } : . )* '*/' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:257:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:257:19: '/*' ( options {greedy=false; } : . )* '*/' { match("/*"); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:254:24: ( options {greedy=false; } : . )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:257:24: ( options {greedy=false; } : . )* loop7: do { int alt7=2; @@ -400,7 +400,7 @@ public class InternalLangATestLanguageLexer extends Lexer { switch (alt7) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:254:52: . + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:257:52: . { matchAny(); @@ -414,7 +414,6 @@ public class InternalLangATestLanguageLexer extends Lexer { match("*/"); - channel=HIDDEN; } @@ -429,12 +428,12 @@ public class InternalLangATestLanguageLexer extends Lexer { public final void mRULE_SL_COMMENT() throws RecognitionException { try { int _type = RULE_SL_COMMENT; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:256:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:256:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:259:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:259:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? { match("//"); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:256:24: (~ ( '\\n' | '\\r' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:259:24: (~ ( '\\n' | '\\r' ) )* loop8: do { int alt8=2; @@ -447,7 +446,7 @@ public class InternalLangATestLanguageLexer extends Lexer { switch (alt8) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:256:24: ~ ( '\\n' | '\\r' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:259:24: ~ ( '\\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(); @@ -468,7 +467,7 @@ public class InternalLangATestLanguageLexer extends Lexer { } } while (true); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:256:38: ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:259:38: ( ( '\\r' )? '\\n' )? int alt10=2; int LA10_0 = input.LA(1); @@ -477,9 +476,9 @@ public class InternalLangATestLanguageLexer extends Lexer { } switch (alt10) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:256:39: ( '\\r' )? '\\n' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:259:39: ( '\\r' )? '\\n' { - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:256:39: ( '\\r' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:259:39: ( '\\r' )? int alt9=2; int LA9_0 = input.LA(1); @@ -488,7 +487,7 @@ public class InternalLangATestLanguageLexer extends Lexer { } switch (alt9) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:256:39: '\\r' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:259:39: '\\r' { match('\r'); @@ -504,7 +503,6 @@ public class InternalLangATestLanguageLexer extends Lexer { } - channel=HIDDEN; } @@ -519,10 +517,10 @@ public class InternalLangATestLanguageLexer extends Lexer { public final void mRULE_WS() throws RecognitionException { try { int _type = RULE_WS; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:258:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:258:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:261:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:261:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ { - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:258:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:261:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ int cnt11=0; loop11: do { @@ -561,7 +559,6 @@ public class InternalLangATestLanguageLexer extends Lexer { cnt11++; } while (true); - channel=HIDDEN; } @@ -576,8 +573,8 @@ public class InternalLangATestLanguageLexer extends Lexer { public final void mRULE_ANY_OTHER() throws RecognitionException { try { int _type = RULE_ANY_OTHER; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:260:16: ( . ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:260:18: . + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:263:16: ( . ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g:263:18: . { matchAny(); diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage__.g b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage__.g index bf95f43..4791b3d 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage__.g +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage__.g @@ -18,18 +18,21 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; // $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g" 252 -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g" 254 -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g" 257 +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g" 256 -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g" 259 +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g" 258 -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g" 261 +RULE_WS : (' '|'\t'|'\r'|'\n')+; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g" 260 +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/crossrefs/parser/antlr/internal/InternalLangATestLanguage.g" 263 RULE_ANY_OTHER : .; diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/ImportUriTestLanguageDelimiters.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/ImportUriTestLanguageDelimiters.java index 4030ac9..7224bab 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/ImportUriTestLanguageDelimiters.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/ImportUriTestLanguageDelimiters.java @@ -7,6 +7,7 @@ import org.eclipse.xtext.parser.packrat.matching.ICharacterClass; import org.eclipse.xtext.parser.packrat.matching.ISequenceMatcher; import org.eclipse.xtext.parser.packrat.matching.SetBasedKeywordMatcher; +@SuppressWarnings("unused") public final class ImportUriTestLanguageDelimiters { private ImportUriTestLanguageDelimiters() { diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/ImportUriTestLanguagePackratParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/ImportUriTestLanguagePackratParser.java index 0985711..fec8884 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/ImportUriTestLanguagePackratParser.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/ImportUriTestLanguagePackratParser.java @@ -12,5 +12,5 @@ public class ImportUriTestLanguagePackratParser extends AbstractPackratParser { protected ImportUriTestLanguageParserConfiguration createParserConfiguration(IInternalParserConfiguration configuration) { return new ImportUriTestLanguageParserConfiguration(configuration); } - + } diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/ImportUriTestLanguageParserConfiguration.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/ImportUriTestLanguageParserConfiguration.java index a6e8336..ab4048e 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/ImportUriTestLanguageParserConfiguration.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/ImportUriTestLanguageParserConfiguration.java @@ -5,6 +5,7 @@ package org.eclipse.xtext.crossrefs.parser.packrat; import org.eclipse.xtext.parser.packrat.AbstractParserConfiguration; import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.INonTerminalConsumer; import org.eclipse.xtext.builtin.parser.packrat.XtextBuiltinParserConfiguration; @@ -36,7 +37,7 @@ public class ImportUriTestLanguageParserConfiguration extends AbstractParserConf public ImportUriTestLanguageMainConsumer getRootConsumer() { return mainConsumer; } - + public void createNonTerminalConsumers() { getXtextBuiltinConfiguration().createNonTerminalConsumers(); mainConsumer = new ImportUriTestLanguageMainConsumer( @@ -116,4 +117,9 @@ public class ImportUriTestLanguageParserConfiguration extends AbstractParserConf } + @Override + public ITerminalConsumer[] getInitialHiddenTerminals() { + return getXtextBuiltinConfiguration().getInitialHiddenTerminals(); + } + } diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/LangATestLanguageDelimiters.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/LangATestLanguageDelimiters.java index a4a7205..05d43be 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/LangATestLanguageDelimiters.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/LangATestLanguageDelimiters.java @@ -7,6 +7,7 @@ import org.eclipse.xtext.parser.packrat.matching.ICharacterClass; import org.eclipse.xtext.parser.packrat.matching.ISequenceMatcher; import org.eclipse.xtext.parser.packrat.matching.SetBasedKeywordMatcher; +@SuppressWarnings("unused") public final class LangATestLanguageDelimiters { private LangATestLanguageDelimiters() { diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/LangATestLanguagePackratParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/LangATestLanguagePackratParser.java index 75ca709..7e28886 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/LangATestLanguagePackratParser.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/LangATestLanguagePackratParser.java @@ -12,5 +12,5 @@ public class LangATestLanguagePackratParser extends AbstractPackratParser { protected LangATestLanguageParserConfiguration createParserConfiguration(IInternalParserConfiguration configuration) { return new LangATestLanguageParserConfiguration(configuration); } - + } diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/LangATestLanguageParserConfiguration.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/LangATestLanguageParserConfiguration.java index 2510d97..1b0292e 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/LangATestLanguageParserConfiguration.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/crossrefs/parser/packrat/LangATestLanguageParserConfiguration.java @@ -5,6 +5,7 @@ package org.eclipse.xtext.crossrefs.parser.packrat; import org.eclipse.xtext.parser.packrat.AbstractParserConfiguration; import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.INonTerminalConsumer; import org.eclipse.xtext.builtin.parser.packrat.XtextBuiltinParserConfiguration; @@ -36,7 +37,7 @@ public class LangATestLanguageParserConfiguration extends AbstractParserConfigur public LangATestLanguageMainConsumer getRootConsumer() { return mainConsumer; } - + public void createNonTerminalConsumers() { getXtextBuiltinConfiguration().createNonTerminalConsumers(); mainConsumer = new LangATestLanguageMainConsumer( @@ -116,4 +117,9 @@ public class LangATestLanguageParserConfiguration extends AbstractParserConfigur } + @Override + public ITerminalConsumer[] getInitialHiddenTerminals() { + return getXtextBuiltinConfiguration().getInitialHiddenTerminals(); + } + } diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/DummyLang.ecore b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/DummyLang.ecore index 7839955..d1e4197 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/DummyLang.ecore +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/DummyLang.ecore @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="ASCII"?> <ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="DummyLang" nsURI="http://www.eclipse.org/2008/xtext/DummyLang" nsPrefix="DummyLang"> <eClassifiers xsi:type="ecore:EClass" name="Model"> - <eStructuralFeatures xsi:type="ecore:EReference" name="elements" unique="false" upperBound="-1" eType="//Element" containment="true"/> + <eStructuralFeatures xsi:type="ecore:EReference" name="elements" upperBound="-1" eType="//Element" containment="true"/> </eClassifiers> <eClassifiers xsi:type="ecore:EClass" name="Element"> <eStructuralFeatures xsi:type="ecore:EAttribute" name="optional"> diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/antlr/DummyTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/antlr/DummyTestLanguageParser.java index eae3fbb..b8dbf2b 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/antlr/DummyTestLanguageParser.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/antlr/DummyTestLanguageParser.java @@ -23,6 +23,7 @@ public class DummyTestLanguageParser extends org.eclipse.xtext.parser.antlr.Abst protected IParseResult parse(String ruleName, ANTLRInputStream in) { InternalDummyTestLanguageLexer lexer = new InternalDummyTestLanguageLexer(in); XtextTokenStream stream = new XtextTokenStream(lexer, antlrTokenDefProvider); + stream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT"); InternalDummyTestLanguageParser parser = new InternalDummyTestLanguageParser( stream, getElementFactory(), grammarAccess.getGrammar()); parser.setTokenTypeMap(antlrTokenDefProvider.getTokenDefMap()); diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g index cb0fd35..8f4f21b 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g @@ -205,13 +205,16 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +RULE_WS : (' '|'\t'|'\r'|'\n')+; RULE_ANY_OTHER : .; diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguageLexer.java index 6aa9754..4baa0c8 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguageLexer.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguageLexer.java @@ -233,10 +233,10 @@ public class InternalDummyTestLanguageLexer extends Lexer { } switch (alt6) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:208:15: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:209:6: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' { match('\"'); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:208:19: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:209:10: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* loop4: do { int alt4=3; @@ -252,7 +252,7 @@ public class InternalDummyTestLanguageLexer extends Lexer { switch (alt4) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:208:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:209:12: '\\\\' ( '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' ) { @@ -269,7 +269,7 @@ public class InternalDummyTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:208:65: ~ ( '\\\\' | '\"' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:209:56: ~ ( '\\\\' | '\"' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -295,10 +295,10 @@ public class InternalDummyTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:208:101: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:210:15: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' { match('\''); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:208:106: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:210:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* loop5: do { int alt5=3; @@ -314,7 +314,7 @@ public class InternalDummyTestLanguageLexer extends Lexer { switch (alt5) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:208:108: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:210:22: '\\\\' ( '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' ) { @@ -331,7 +331,7 @@ public class InternalDummyTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:208:152: ~ ( '\\\\' | '\\'' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:210:66: ~ ( '\\\\' | '\\'' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -369,12 +369,12 @@ public class InternalDummyTestLanguageLexer extends Lexer { public final void mRULE_ML_COMMENT() throws RecognitionException { try { int _type = RULE_ML_COMMENT; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:210:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:210:19: '/*' ( options {greedy=false; } : . )* '*/' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:213:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:213:19: '/*' ( options {greedy=false; } : . )* '*/' { match("/*"); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:210:24: ( options {greedy=false; } : . )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:213:24: ( options {greedy=false; } : . )* loop7: do { int alt7=2; @@ -399,7 +399,7 @@ public class InternalDummyTestLanguageLexer extends Lexer { switch (alt7) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:210:52: . + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:213:52: . { matchAny(); @@ -413,7 +413,6 @@ public class InternalDummyTestLanguageLexer extends Lexer { match("*/"); - channel=HIDDEN; } @@ -428,12 +427,12 @@ public class InternalDummyTestLanguageLexer extends Lexer { public final void mRULE_SL_COMMENT() throws RecognitionException { try { int _type = RULE_SL_COMMENT; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:212:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:212:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:215:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:215:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? { match("//"); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:212:24: (~ ( '\\n' | '\\r' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:215:24: (~ ( '\\n' | '\\r' ) )* loop8: do { int alt8=2; @@ -446,7 +445,7 @@ public class InternalDummyTestLanguageLexer extends Lexer { switch (alt8) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:212:24: ~ ( '\\n' | '\\r' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:215:24: ~ ( '\\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(); @@ -467,7 +466,7 @@ public class InternalDummyTestLanguageLexer extends Lexer { } } while (true); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:212:38: ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:215:38: ( ( '\\r' )? '\\n' )? int alt10=2; int LA10_0 = input.LA(1); @@ -476,9 +475,9 @@ public class InternalDummyTestLanguageLexer extends Lexer { } switch (alt10) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:212:39: ( '\\r' )? '\\n' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:215:39: ( '\\r' )? '\\n' { - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:212:39: ( '\\r' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:215:39: ( '\\r' )? int alt9=2; int LA9_0 = input.LA(1); @@ -487,7 +486,7 @@ public class InternalDummyTestLanguageLexer extends Lexer { } switch (alt9) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:212:39: '\\r' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:215:39: '\\r' { match('\r'); @@ -503,7 +502,6 @@ public class InternalDummyTestLanguageLexer extends Lexer { } - channel=HIDDEN; } @@ -518,10 +516,10 @@ public class InternalDummyTestLanguageLexer extends Lexer { public final void mRULE_WS() throws RecognitionException { try { int _type = RULE_WS; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:214:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:214:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:217:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:217:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ { - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:214:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:217:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ int cnt11=0; loop11: do { @@ -560,7 +558,6 @@ public class InternalDummyTestLanguageLexer extends Lexer { cnt11++; } while (true); - channel=HIDDEN; } @@ -575,8 +572,8 @@ public class InternalDummyTestLanguageLexer extends Lexer { public final void mRULE_ANY_OTHER() throws RecognitionException { try { int _type = RULE_ANY_OTHER; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:216:16: ( . ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:216:18: . + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:219:16: ( . ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g:219:18: . { matchAny(); diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage__.g b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage__.g index c2e6733..8b683fc 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage__.g +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage__.g @@ -18,18 +18,21 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; // $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g" 208 -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g" 210 -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g" 213 +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g" 212 -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g" 215 +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g" 214 -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g" 217 +RULE_WS : (' '|'\t'|'\r'|'\n')+; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g" 216 +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/dummy/parser/antlr/internal/InternalDummyTestLanguage.g" 219 RULE_ANY_OTHER : .; diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/packrat/DummyTestLanguageDelimiters.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/packrat/DummyTestLanguageDelimiters.java index fdc6192..2d1a7ea 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/packrat/DummyTestLanguageDelimiters.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/packrat/DummyTestLanguageDelimiters.java @@ -7,6 +7,7 @@ import org.eclipse.xtext.parser.packrat.matching.ICharacterClass; import org.eclipse.xtext.parser.packrat.matching.ISequenceMatcher; import org.eclipse.xtext.parser.packrat.matching.SetBasedKeywordMatcher; +@SuppressWarnings("unused") public final class DummyTestLanguageDelimiters { private DummyTestLanguageDelimiters() { diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/packrat/DummyTestLanguagePackratParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/packrat/DummyTestLanguagePackratParser.java index cfabe9b..89661e3 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/packrat/DummyTestLanguagePackratParser.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/packrat/DummyTestLanguagePackratParser.java @@ -12,5 +12,5 @@ public class DummyTestLanguagePackratParser extends AbstractPackratParser { protected DummyTestLanguageParserConfiguration createParserConfiguration(IInternalParserConfiguration configuration) { return new DummyTestLanguageParserConfiguration(configuration); } - + } diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/packrat/DummyTestLanguageParserConfiguration.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/packrat/DummyTestLanguageParserConfiguration.java index eeabe4a..3041650 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/packrat/DummyTestLanguageParserConfiguration.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/dummy/parser/packrat/DummyTestLanguageParserConfiguration.java @@ -5,6 +5,7 @@ package org.eclipse.xtext.dummy.parser.packrat; import org.eclipse.xtext.parser.packrat.AbstractParserConfiguration; import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.INonTerminalConsumer; import org.eclipse.xtext.builtin.parser.packrat.XtextBuiltinParserConfiguration; @@ -34,7 +35,7 @@ public class DummyTestLanguageParserConfiguration extends AbstractParserConfigur public DummyTestLanguageModelConsumer getRootConsumer() { return modelConsumer; } - + public void createNonTerminalConsumers() { getXtextBuiltinConfiguration().createNonTerminalConsumers(); modelConsumer = new DummyTestLanguageModelConsumer( @@ -104,4 +105,9 @@ public class DummyTestLanguageParserConfiguration extends AbstractParserConfigur } + @Override + public ITerminalConsumer[] getInitialHiddenTerminals() { + return getXtextBuiltinConfiguration().getInitialHiddenTerminals(); + } + } diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/antlr/LowerCaseNamedTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/antlr/LowerCaseNamedTestLanguageParser.java index 541e3a5..635bf81 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/antlr/LowerCaseNamedTestLanguageParser.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/antlr/LowerCaseNamedTestLanguageParser.java @@ -23,6 +23,7 @@ public class LowerCaseNamedTestLanguageParser extends org.eclipse.xtext.parser.a protected IParseResult parse(String ruleName, ANTLRInputStream in) { InternalLowerCaseNamedTestLanguageLexer lexer = new InternalLowerCaseNamedTestLanguageLexer(in); XtextTokenStream stream = new XtextTokenStream(lexer, antlrTokenDefProvider); + stream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT"); InternalLowerCaseNamedTestLanguageParser parser = new InternalLowerCaseNamedTestLanguageParser( stream, getElementFactory(), grammarAccess.getGrammar()); parser.setTokenTypeMap(antlrTokenDefProvider.getTokenDefMap()); diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g index 1fcb7aa..25c1ea6 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g @@ -112,13 +112,16 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +RULE_WS : (' '|'\t'|'\r'|'\n')+; RULE_ANY_OTHER : .; diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguageLexer.java index c601b2e..3c0cbae 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguageLexer.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguageLexer.java @@ -174,10 +174,10 @@ public class InternalLowerCaseNamedTestLanguageLexer extends Lexer { } switch (alt6) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:115:15: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:116:6: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' { match('\"'); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:115:19: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:116:10: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* loop4: do { int alt4=3; @@ -193,7 +193,7 @@ public class InternalLowerCaseNamedTestLanguageLexer extends Lexer { switch (alt4) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:115:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:116:12: '\\\\' ( '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' ) { @@ -210,7 +210,7 @@ public class InternalLowerCaseNamedTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:115:65: ~ ( '\\\\' | '\"' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:116:56: ~ ( '\\\\' | '\"' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -236,10 +236,10 @@ public class InternalLowerCaseNamedTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:115:101: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:117:15: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' { match('\''); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:115:106: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:117:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* loop5: do { int alt5=3; @@ -255,7 +255,7 @@ public class InternalLowerCaseNamedTestLanguageLexer extends Lexer { switch (alt5) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:115:108: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:117:22: '\\\\' ( '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' ) { @@ -272,7 +272,7 @@ public class InternalLowerCaseNamedTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:115:152: ~ ( '\\\\' | '\\'' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:117:66: ~ ( '\\\\' | '\\'' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -310,12 +310,12 @@ public class InternalLowerCaseNamedTestLanguageLexer extends Lexer { public final void mRULE_ML_COMMENT() throws RecognitionException { try { int _type = RULE_ML_COMMENT; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:117:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:117:19: '/*' ( options {greedy=false; } : . )* '*/' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:120:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:120:19: '/*' ( options {greedy=false; } : . )* '*/' { match("/*"); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:117:24: ( options {greedy=false; } : . )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:120:24: ( options {greedy=false; } : . )* loop7: do { int alt7=2; @@ -340,7 +340,7 @@ public class InternalLowerCaseNamedTestLanguageLexer extends Lexer { switch (alt7) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:117:52: . + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:120:52: . { matchAny(); @@ -354,7 +354,6 @@ public class InternalLowerCaseNamedTestLanguageLexer extends Lexer { match("*/"); - channel=HIDDEN; } @@ -369,12 +368,12 @@ public class InternalLowerCaseNamedTestLanguageLexer extends Lexer { public final void mRULE_SL_COMMENT() throws RecognitionException { try { int _type = RULE_SL_COMMENT; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:119:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:119:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:122:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:122:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? { match("//"); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:119:24: (~ ( '\\n' | '\\r' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:122:24: (~ ( '\\n' | '\\r' ) )* loop8: do { int alt8=2; @@ -387,7 +386,7 @@ public class InternalLowerCaseNamedTestLanguageLexer extends Lexer { switch (alt8) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:119:24: ~ ( '\\n' | '\\r' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:122:24: ~ ( '\\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(); @@ -408,7 +407,7 @@ public class InternalLowerCaseNamedTestLanguageLexer extends Lexer { } } while (true); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:119:38: ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:122:38: ( ( '\\r' )? '\\n' )? int alt10=2; int LA10_0 = input.LA(1); @@ -417,9 +416,9 @@ public class InternalLowerCaseNamedTestLanguageLexer extends Lexer { } switch (alt10) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:119:39: ( '\\r' )? '\\n' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:122:39: ( '\\r' )? '\\n' { - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:119:39: ( '\\r' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:122:39: ( '\\r' )? int alt9=2; int LA9_0 = input.LA(1); @@ -428,7 +427,7 @@ public class InternalLowerCaseNamedTestLanguageLexer extends Lexer { } switch (alt9) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:119:39: '\\r' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:122:39: '\\r' { match('\r'); @@ -444,7 +443,6 @@ public class InternalLowerCaseNamedTestLanguageLexer extends Lexer { } - channel=HIDDEN; } @@ -459,10 +457,10 @@ public class InternalLowerCaseNamedTestLanguageLexer extends Lexer { public final void mRULE_WS() throws RecognitionException { try { int _type = RULE_WS; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:121:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:121:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:124:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:124:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ { - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:121:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:124:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ int cnt11=0; loop11: do { @@ -501,7 +499,6 @@ public class InternalLowerCaseNamedTestLanguageLexer extends Lexer { cnt11++; } while (true); - channel=HIDDEN; } @@ -516,8 +513,8 @@ public class InternalLowerCaseNamedTestLanguageLexer extends Lexer { public final void mRULE_ANY_OTHER() throws RecognitionException { try { int _type = RULE_ANY_OTHER; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:123:16: ( . ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:123:18: . + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:126:16: ( . ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g:126:18: . { matchAny(); diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage__.g b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage__.g index 406c9c1..7d2ae1f 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage__.g +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage__.g @@ -14,18 +14,21 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; // $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g" 115 -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g" 117 -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g" 120 +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g" 119 -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g" 122 +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g" 121 -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g" 124 +RULE_WS : (' '|'\t'|'\r'|'\n')+; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g" 123 +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/generator/parser/antlr/internal/InternalLowerCaseNamedTestLanguage.g" 126 RULE_ANY_OTHER : .; diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/packrat/LowerCaseNamedTestLanguageDelimiters.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/packrat/LowerCaseNamedTestLanguageDelimiters.java index 4b273e9..e18bdc8 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/packrat/LowerCaseNamedTestLanguageDelimiters.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/packrat/LowerCaseNamedTestLanguageDelimiters.java @@ -7,6 +7,7 @@ import org.eclipse.xtext.parser.packrat.matching.ICharacterClass; import org.eclipse.xtext.parser.packrat.matching.ISequenceMatcher; import org.eclipse.xtext.parser.packrat.matching.SetBasedKeywordMatcher; +@SuppressWarnings("unused") public final class LowerCaseNamedTestLanguageDelimiters { private LowerCaseNamedTestLanguageDelimiters() { diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/packrat/LowerCaseNamedTestLanguagePackratParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/packrat/LowerCaseNamedTestLanguagePackratParser.java index bddabd9..cc2ae0f 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/packrat/LowerCaseNamedTestLanguagePackratParser.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/packrat/LowerCaseNamedTestLanguagePackratParser.java @@ -12,5 +12,5 @@ public class LowerCaseNamedTestLanguagePackratParser extends AbstractPackratPars protected LowerCaseNamedTestLanguageParserConfiguration createParserConfiguration(IInternalParserConfiguration configuration) { return new LowerCaseNamedTestLanguageParserConfiguration(configuration); } - + } diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/packrat/LowerCaseNamedTestLanguageParserConfiguration.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/packrat/LowerCaseNamedTestLanguageParserConfiguration.java index 5bee5b3..8a092fc 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/packrat/LowerCaseNamedTestLanguageParserConfiguration.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/generator/parser/packrat/LowerCaseNamedTestLanguageParserConfiguration.java @@ -5,6 +5,7 @@ package org.eclipse.xtext.generator.parser.packrat; import org.eclipse.xtext.parser.packrat.AbstractParserConfiguration; import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.INonTerminalConsumer; import org.eclipse.xtext.builtin.parser.packrat.XtextBuiltinParserConfiguration; @@ -32,7 +33,7 @@ public class LowerCaseNamedTestLanguageParserConfiguration extends AbstractParse public LowerCaseNamedTestLanguageModelConsumer getRootConsumer() { return modelConsumer; } - + public void createNonTerminalConsumers() { getXtextBuiltinConfiguration().createNonTerminalConsumers(); modelConsumer = new LowerCaseNamedTestLanguageModelConsumer( @@ -88,4 +89,9 @@ public class LowerCaseNamedTestLanguageParserConfiguration extends AbstractParse } + @Override + public ITerminalConsumer[] getInitialHiddenTerminals() { + return getXtextBuiltinConfiguration().getInitialHiddenTerminals(); + } + } diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/foo.ecore b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/foo.ecore index 51f76e1..a47f69a 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/foo.ecore +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/foo.ecore @@ -5,7 +5,7 @@ <eStructuralFeatures xsi:type="ecore:EAttribute" name="magicNumber"> <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EDouble"/> </eStructuralFeatures> - <eStructuralFeatures xsi:type="ecore:EReference" name="elements" unique="false" upperBound="-1" containment="true"> + <eStructuralFeatures xsi:type="ecore:EReference" name="elements" upperBound="-1" containment="true"> <eType xsi:type="ecore:EClass" href="classpath:/org/eclipse/xtext/grammarinheritance/ametamodel.ecore#//AType"/> </eStructuralFeatures> </eClassifiers> diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/ConcreteTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/ConcreteTestLanguageParser.java index 6fd04c6..3dba3fd 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/ConcreteTestLanguageParser.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/ConcreteTestLanguageParser.java @@ -23,6 +23,7 @@ public class ConcreteTestLanguageParser extends org.eclipse.xtext.parser.antlr.A protected IParseResult parse(String ruleName, ANTLRInputStream in) { InternalConcreteTestLanguageLexer lexer = new InternalConcreteTestLanguageLexer(in); XtextTokenStream stream = new XtextTokenStream(lexer, antlrTokenDefProvider); + stream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT"); InternalConcreteTestLanguageParser parser = new InternalConcreteTestLanguageParser( stream, getElementFactory(), grammarAccess.getGrammar()); parser.setTokenTypeMap(antlrTokenDefProvider.getTokenDefMap()); diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g index f4dbefb..8ad308a 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g @@ -328,13 +328,16 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'ö'|'ä'|'ü'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'.. RULE_INT : ('0'..'9')+; -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +RULE_WS : (' '|'\t'|'\r'|'\n')+; RULE_ANY_OTHER : .; diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguageLexer.java index 656bcac..0c9e69a 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguageLexer.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguageLexer.java @@ -254,10 +254,10 @@ public class InternalConcreteTestLanguageLexer extends Lexer { } switch (alt6) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:331:15: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:332:6: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' { match('\"'); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:331:19: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:332:10: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* loop4: do { int alt4=3; @@ -273,7 +273,7 @@ public class InternalConcreteTestLanguageLexer extends Lexer { switch (alt4) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:331:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:332:12: '\\\\' ( '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' ) { @@ -290,7 +290,7 @@ public class InternalConcreteTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:331:65: ~ ( '\\\\' | '\"' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:332:56: ~ ( '\\\\' | '\"' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -316,10 +316,10 @@ public class InternalConcreteTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:331:101: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:333:15: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' { match('\''); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:331:106: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:333:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* loop5: do { int alt5=3; @@ -335,7 +335,7 @@ public class InternalConcreteTestLanguageLexer extends Lexer { switch (alt5) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:331:108: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:333:22: '\\\\' ( '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' ) { @@ -352,7 +352,7 @@ public class InternalConcreteTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:331:152: ~ ( '\\\\' | '\\'' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:333:66: ~ ( '\\\\' | '\\'' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -390,12 +390,12 @@ public class InternalConcreteTestLanguageLexer extends Lexer { public final void mRULE_ML_COMMENT() throws RecognitionException { try { int _type = RULE_ML_COMMENT; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:333:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:333:19: '/*' ( options {greedy=false; } : . )* '*/' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:336:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:336:19: '/*' ( options {greedy=false; } : . )* '*/' { match("/*"); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:333:24: ( options {greedy=false; } : . )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:336:24: ( options {greedy=false; } : . )* loop7: do { int alt7=2; @@ -420,7 +420,7 @@ public class InternalConcreteTestLanguageLexer extends Lexer { switch (alt7) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:333:52: . + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:336:52: . { matchAny(); @@ -434,7 +434,6 @@ public class InternalConcreteTestLanguageLexer extends Lexer { match("*/"); - channel=HIDDEN; } @@ -449,12 +448,12 @@ public class InternalConcreteTestLanguageLexer extends Lexer { public final void mRULE_SL_COMMENT() throws RecognitionException { try { int _type = RULE_SL_COMMENT; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:335:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:335:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:338:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:338:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? { match("//"); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:335:24: (~ ( '\\n' | '\\r' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:338:24: (~ ( '\\n' | '\\r' ) )* loop8: do { int alt8=2; @@ -467,7 +466,7 @@ public class InternalConcreteTestLanguageLexer extends Lexer { switch (alt8) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:335:24: ~ ( '\\n' | '\\r' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:338:24: ~ ( '\\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(); @@ -488,7 +487,7 @@ public class InternalConcreteTestLanguageLexer extends Lexer { } } while (true); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:335:38: ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:338:38: ( ( '\\r' )? '\\n' )? int alt10=2; int LA10_0 = input.LA(1); @@ -497,9 +496,9 @@ public class InternalConcreteTestLanguageLexer extends Lexer { } switch (alt10) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:335:39: ( '\\r' )? '\\n' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:338:39: ( '\\r' )? '\\n' { - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:335:39: ( '\\r' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:338:39: ( '\\r' )? int alt9=2; int LA9_0 = input.LA(1); @@ -508,7 +507,7 @@ public class InternalConcreteTestLanguageLexer extends Lexer { } switch (alt9) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:335:39: '\\r' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:338:39: '\\r' { match('\r'); @@ -524,7 +523,6 @@ public class InternalConcreteTestLanguageLexer extends Lexer { } - channel=HIDDEN; } @@ -539,10 +537,10 @@ public class InternalConcreteTestLanguageLexer extends Lexer { public final void mRULE_WS() throws RecognitionException { try { int _type = RULE_WS; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:337:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:337:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:340:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:340:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ { - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:337:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:340:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ int cnt11=0; loop11: do { @@ -581,7 +579,6 @@ public class InternalConcreteTestLanguageLexer extends Lexer { cnt11++; } while (true); - channel=HIDDEN; } @@ -596,8 +593,8 @@ public class InternalConcreteTestLanguageLexer extends Lexer { public final void mRULE_ANY_OTHER() throws RecognitionException { try { int _type = RULE_ANY_OTHER; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:339:16: ( . ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:339:18: . + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:342:16: ( . ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g:342:18: . { matchAny(); diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage__.g b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage__.g index f4790fb..fc3c822 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage__.g +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage__.g @@ -21,18 +21,21 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'ö'|'ä'|'ü'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'.. RULE_INT : ('0'..'9')+; // $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g" 331 -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g" 333 -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g" 336 +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g" 335 -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g" 338 +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g" 337 -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g" 340 +RULE_WS : (' '|'\t'|'\r'|'\n')+; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g" 339 +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/grammarinheritance/parser/antlr/internal/InternalConcreteTestLanguage.g" 342 RULE_ANY_OTHER : .; diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/AbstractTestLanguageDelimiters.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/AbstractTestLanguageDelimiters.java index d6f7262..fe3b62d 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/AbstractTestLanguageDelimiters.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/AbstractTestLanguageDelimiters.java @@ -7,6 +7,7 @@ import org.eclipse.xtext.parser.packrat.matching.ICharacterClass; import org.eclipse.xtext.parser.packrat.matching.ISequenceMatcher; import org.eclipse.xtext.parser.packrat.matching.SetBasedKeywordMatcher; +@SuppressWarnings("unused") public final class AbstractTestLanguageDelimiters { private AbstractTestLanguageDelimiters() { diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/AbstractTestLanguagePackratParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/AbstractTestLanguagePackratParser.java index 3b13481..65df8dc 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/AbstractTestLanguagePackratParser.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/AbstractTestLanguagePackratParser.java @@ -12,5 +12,5 @@ public class AbstractTestLanguagePackratParser extends AbstractPackratParser { protected AbstractTestLanguageParserConfiguration createParserConfiguration(IInternalParserConfiguration configuration) { return new AbstractTestLanguageParserConfiguration(configuration); } - + } diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/AbstractTestLanguageParserConfiguration.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/AbstractTestLanguageParserConfiguration.java index a151cd5..d627dce 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/AbstractTestLanguageParserConfiguration.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/AbstractTestLanguageParserConfiguration.java @@ -5,6 +5,7 @@ package org.eclipse.xtext.grammarinheritance.parser.packrat; import org.eclipse.xtext.parser.packrat.AbstractParserConfiguration; import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.INonTerminalConsumer; import org.eclipse.xtext.builtin.parser.packrat.XtextBuiltinParserConfiguration; @@ -43,7 +44,7 @@ public class AbstractTestLanguageParserConfiguration extends AbstractParserConfi public AbstractTestLanguageInheritedParserRuleConsumer getRootConsumer() { return inheritedParserRuleConsumer; } - + public void createNonTerminalConsumers() { getXtextBuiltinConfiguration().createNonTerminalConsumers(); inheritedParserRuleConsumer = new AbstractTestLanguageInheritedParserRuleConsumer( @@ -148,4 +149,9 @@ public class AbstractTestLanguageParserConfiguration extends AbstractParserConfi } + @Override + public ITerminalConsumer[] getInitialHiddenTerminals() { + return getXtextBuiltinConfiguration().getInitialHiddenTerminals(); + } + } diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/ConcreteTestLanguageDelimiters.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/ConcreteTestLanguageDelimiters.java index 1c1e256..4023ca6 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/ConcreteTestLanguageDelimiters.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/ConcreteTestLanguageDelimiters.java @@ -7,6 +7,7 @@ import org.eclipse.xtext.parser.packrat.matching.ICharacterClass; import org.eclipse.xtext.parser.packrat.matching.ISequenceMatcher; import org.eclipse.xtext.parser.packrat.matching.SetBasedKeywordMatcher; +@SuppressWarnings("unused") public final class ConcreteTestLanguageDelimiters { private ConcreteTestLanguageDelimiters() { diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/ConcreteTestLanguagePackratParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/ConcreteTestLanguagePackratParser.java index 216a2b6..133c6a3 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/ConcreteTestLanguagePackratParser.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/ConcreteTestLanguagePackratParser.java @@ -12,5 +12,5 @@ public class ConcreteTestLanguagePackratParser extends AbstractPackratParser { protected ConcreteTestLanguageParserConfiguration createParserConfiguration(IInternalParserConfiguration configuration) { return new ConcreteTestLanguageParserConfiguration(configuration); } - + } diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/ConcreteTestLanguageParserConfiguration.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/ConcreteTestLanguageParserConfiguration.java index 9819742..aa0f62f 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/ConcreteTestLanguageParserConfiguration.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/grammarinheritance/parser/packrat/ConcreteTestLanguageParserConfiguration.java @@ -5,6 +5,7 @@ package org.eclipse.xtext.grammarinheritance.parser.packrat; import org.eclipse.xtext.parser.packrat.AbstractParserConfiguration; import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.INonTerminalConsumer; import org.eclipse.xtext.grammarinheritance.parser.packrat.AbstractTestLanguageParserConfiguration; @@ -40,7 +41,7 @@ public class ConcreteTestLanguageParserConfiguration extends AbstractParserConfi public ConcreteTestLanguageRootRuleConsumer getRootConsumer() { return rootRuleConsumer; } - + public void createNonTerminalConsumers() { getAbstractTestLanguageConfiguration().createNonTerminalConsumers(); rootRuleConsumer = new ConcreteTestLanguageRootRuleConsumer( @@ -150,4 +151,9 @@ public class ConcreteTestLanguageParserConfiguration extends AbstractParserConfi } + @Override + public ITerminalConsumer[] getInitialHiddenTerminals() { + return getAbstractTestLanguageConfiguration().getInitialHiddenTerminals(); + } + } diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/SimpleTest.ecore b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/SimpleTest.ecore index 8f641d9..9ed9244 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/SimpleTest.ecore +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/SimpleTest.ecore @@ -4,7 +4,7 @@ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name"> <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/> </eStructuralFeatures> - <eStructuralFeatures xsi:type="ecore:EReference" name="nameRefs" unique="false" upperBound="-1" containment="true"> + <eStructuralFeatures xsi:type="ecore:EReference" name="nameRefs" upperBound="-1" containment="true"> <eType xsi:type="ecore:EClass" href="../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/OtherTest.ecore#//FooBar"/> </eStructuralFeatures> </eClassifiers> diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/MetamodelRefTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/MetamodelRefTestLanguageParser.java index 8a9c682..7b2714d 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/MetamodelRefTestLanguageParser.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/MetamodelRefTestLanguageParser.java @@ -23,6 +23,7 @@ public class MetamodelRefTestLanguageParser extends org.eclipse.xtext.parser.ant protected IParseResult parse(String ruleName, ANTLRInputStream in) { InternalMetamodelRefTestLanguageLexer lexer = new InternalMetamodelRefTestLanguageLexer(in); XtextTokenStream stream = new XtextTokenStream(lexer, antlrTokenDefProvider); + stream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT"); InternalMetamodelRefTestLanguageParser parser = new InternalMetamodelRefTestLanguageParser( stream, getElementFactory(), grammarAccess.getGrammar()); parser.setTokenTypeMap(antlrTokenDefProvider.getTokenDefMap()); diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/MultiGenMMTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/MultiGenMMTestLanguageParser.java index 34915ae..9db5373 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/MultiGenMMTestLanguageParser.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/MultiGenMMTestLanguageParser.java @@ -23,6 +23,7 @@ public class MultiGenMMTestLanguageParser extends org.eclipse.xtext.parser.antlr protected IParseResult parse(String ruleName, ANTLRInputStream in) { InternalMultiGenMMTestLanguageLexer lexer = new InternalMultiGenMMTestLanguageLexer(in); XtextTokenStream stream = new XtextTokenStream(lexer, antlrTokenDefProvider); + stream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT"); InternalMultiGenMMTestLanguageParser parser = new InternalMultiGenMMTestLanguageParser( stream, getElementFactory(), grammarAccess.getGrammar()); parser.setTokenTypeMap(antlrTokenDefProvider.getTokenDefMap()); diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g index e4925e9..f046d49 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g @@ -176,13 +176,16 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +RULE_WS : (' '|'\t'|'\r'|'\n')+; RULE_ANY_OTHER : .; diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguageLexer.java index de846fa..8aa2234 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguageLexer.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguageLexer.java @@ -174,10 +174,10 @@ public class InternalMetamodelRefTestLanguageLexer extends Lexer { } switch (alt6) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:179:15: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:180:6: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' { match('\"'); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:179:19: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:180:10: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* loop4: do { int alt4=3; @@ -193,7 +193,7 @@ public class InternalMetamodelRefTestLanguageLexer extends Lexer { switch (alt4) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:179:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:180:12: '\\\\' ( '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' ) { @@ -210,7 +210,7 @@ public class InternalMetamodelRefTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:179:65: ~ ( '\\\\' | '\"' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:180:56: ~ ( '\\\\' | '\"' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -236,10 +236,10 @@ public class InternalMetamodelRefTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:179:101: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:181:15: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' { match('\''); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:179:106: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:181:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* loop5: do { int alt5=3; @@ -255,7 +255,7 @@ public class InternalMetamodelRefTestLanguageLexer extends Lexer { switch (alt5) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:179:108: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:181:22: '\\\\' ( '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' ) { @@ -272,7 +272,7 @@ public class InternalMetamodelRefTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:179:152: ~ ( '\\\\' | '\\'' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:181:66: ~ ( '\\\\' | '\\'' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -310,12 +310,12 @@ public class InternalMetamodelRefTestLanguageLexer extends Lexer { public final void mRULE_ML_COMMENT() throws RecognitionException { try { int _type = RULE_ML_COMMENT; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:181:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:181:19: '/*' ( options {greedy=false; } : . )* '*/' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:184:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:184:19: '/*' ( options {greedy=false; } : . )* '*/' { match("/*"); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:181:24: ( options {greedy=false; } : . )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:184:24: ( options {greedy=false; } : . )* loop7: do { int alt7=2; @@ -340,7 +340,7 @@ public class InternalMetamodelRefTestLanguageLexer extends Lexer { switch (alt7) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:181:52: . + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:184:52: . { matchAny(); @@ -354,7 +354,6 @@ public class InternalMetamodelRefTestLanguageLexer extends Lexer { match("*/"); - channel=HIDDEN; } @@ -369,12 +368,12 @@ public class InternalMetamodelRefTestLanguageLexer extends Lexer { public final void mRULE_SL_COMMENT() throws RecognitionException { try { int _type = RULE_SL_COMMENT; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:183:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:183:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:186:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:186:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? { match("//"); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:183:24: (~ ( '\\n' | '\\r' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:186:24: (~ ( '\\n' | '\\r' ) )* loop8: do { int alt8=2; @@ -387,7 +386,7 @@ public class InternalMetamodelRefTestLanguageLexer extends Lexer { switch (alt8) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:183:24: ~ ( '\\n' | '\\r' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:186:24: ~ ( '\\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(); @@ -408,7 +407,7 @@ public class InternalMetamodelRefTestLanguageLexer extends Lexer { } } while (true); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:183:38: ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:186:38: ( ( '\\r' )? '\\n' )? int alt10=2; int LA10_0 = input.LA(1); @@ -417,9 +416,9 @@ public class InternalMetamodelRefTestLanguageLexer extends Lexer { } switch (alt10) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:183:39: ( '\\r' )? '\\n' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:186:39: ( '\\r' )? '\\n' { - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:183:39: ( '\\r' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:186:39: ( '\\r' )? int alt9=2; int LA9_0 = input.LA(1); @@ -428,7 +427,7 @@ public class InternalMetamodelRefTestLanguageLexer extends Lexer { } switch (alt9) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:183:39: '\\r' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:186:39: '\\r' { match('\r'); @@ -444,7 +443,6 @@ public class InternalMetamodelRefTestLanguageLexer extends Lexer { } - channel=HIDDEN; } @@ -459,10 +457,10 @@ public class InternalMetamodelRefTestLanguageLexer extends Lexer { public final void mRULE_WS() throws RecognitionException { try { int _type = RULE_WS; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:185:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:185:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:188:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:188:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ { - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:185:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:188:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ int cnt11=0; loop11: do { @@ -501,7 +499,6 @@ public class InternalMetamodelRefTestLanguageLexer extends Lexer { cnt11++; } while (true); - channel=HIDDEN; } @@ -516,8 +513,8 @@ public class InternalMetamodelRefTestLanguageLexer extends Lexer { public final void mRULE_ANY_OTHER() throws RecognitionException { try { int _type = RULE_ANY_OTHER; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:187:16: ( . ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:187:18: . + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:190:16: ( . ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g:190:18: . { matchAny(); diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage__.g b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage__.g index f74c72d..f2e1362 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage__.g +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage__.g @@ -14,18 +14,21 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; // $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g" 179 -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g" 181 -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g" 184 +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g" 183 -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g" 186 +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g" 185 -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g" 188 +RULE_WS : (' '|'\t'|'\r'|'\n')+; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g" 187 +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMetamodelRefTestLanguage.g" 190 RULE_ANY_OTHER : .; diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g index 0bc1026..606ed16 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g @@ -177,13 +177,16 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +RULE_WS : (' '|'\t'|'\r'|'\n')+; RULE_ANY_OTHER : .; diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguageLexer.java index 70b0509..3c823bd 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguageLexer.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguageLexer.java @@ -174,10 +174,10 @@ public class InternalMultiGenMMTestLanguageLexer extends Lexer { } switch (alt6) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:180:15: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:181:6: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' { match('\"'); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:180:19: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:181:10: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* loop4: do { int alt4=3; @@ -193,7 +193,7 @@ public class InternalMultiGenMMTestLanguageLexer extends Lexer { switch (alt4) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:180:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:181:12: '\\\\' ( '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' ) { @@ -210,7 +210,7 @@ public class InternalMultiGenMMTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:180:65: ~ ( '\\\\' | '\"' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:181:56: ~ ( '\\\\' | '\"' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -236,10 +236,10 @@ public class InternalMultiGenMMTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:180:101: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:182:15: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' { match('\''); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:180:106: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:182:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* loop5: do { int alt5=3; @@ -255,7 +255,7 @@ public class InternalMultiGenMMTestLanguageLexer extends Lexer { switch (alt5) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:180:108: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:182:22: '\\\\' ( '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' ) { @@ -272,7 +272,7 @@ public class InternalMultiGenMMTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:180:152: ~ ( '\\\\' | '\\'' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:182:66: ~ ( '\\\\' | '\\'' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -310,12 +310,12 @@ public class InternalMultiGenMMTestLanguageLexer extends Lexer { public final void mRULE_ML_COMMENT() throws RecognitionException { try { int _type = RULE_ML_COMMENT; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:182:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:182:19: '/*' ( options {greedy=false; } : . )* '*/' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:185:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:185:19: '/*' ( options {greedy=false; } : . )* '*/' { match("/*"); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:182:24: ( options {greedy=false; } : . )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:185:24: ( options {greedy=false; } : . )* loop7: do { int alt7=2; @@ -340,7 +340,7 @@ public class InternalMultiGenMMTestLanguageLexer extends Lexer { switch (alt7) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:182:52: . + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:185:52: . { matchAny(); @@ -354,7 +354,6 @@ public class InternalMultiGenMMTestLanguageLexer extends Lexer { match("*/"); - channel=HIDDEN; } @@ -369,12 +368,12 @@ public class InternalMultiGenMMTestLanguageLexer extends Lexer { public final void mRULE_SL_COMMENT() throws RecognitionException { try { int _type = RULE_SL_COMMENT; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:184:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:184:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:187:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:187:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? { match("//"); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:184:24: (~ ( '\\n' | '\\r' ) )* + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:187:24: (~ ( '\\n' | '\\r' ) )* loop8: do { int alt8=2; @@ -387,7 +386,7 @@ public class InternalMultiGenMMTestLanguageLexer extends Lexer { switch (alt8) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:184:24: ~ ( '\\n' | '\\r' ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:187:24: ~ ( '\\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(); @@ -408,7 +407,7 @@ public class InternalMultiGenMMTestLanguageLexer extends Lexer { } } while (true); - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:184:38: ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:187:38: ( ( '\\r' )? '\\n' )? int alt10=2; int LA10_0 = input.LA(1); @@ -417,9 +416,9 @@ public class InternalMultiGenMMTestLanguageLexer extends Lexer { } switch (alt10) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:184:39: ( '\\r' )? '\\n' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:187:39: ( '\\r' )? '\\n' { - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:184:39: ( '\\r' )? + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:187:39: ( '\\r' )? int alt9=2; int LA9_0 = input.LA(1); @@ -428,7 +427,7 @@ public class InternalMultiGenMMTestLanguageLexer extends Lexer { } switch (alt9) { case 1 : - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:184:39: '\\r' + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:187:39: '\\r' { match('\r'); @@ -444,7 +443,6 @@ public class InternalMultiGenMMTestLanguageLexer extends Lexer { } - channel=HIDDEN; } @@ -459,10 +457,10 @@ public class InternalMultiGenMMTestLanguageLexer extends Lexer { public final void mRULE_WS() throws RecognitionException { try { int _type = RULE_WS; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:186:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:186:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:189:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:189:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ { - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:186:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:189:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ int cnt11=0; loop11: do { @@ -501,7 +499,6 @@ public class InternalMultiGenMMTestLanguageLexer extends Lexer { cnt11++; } while (true); - channel=HIDDEN; } @@ -516,8 +513,8 @@ public class InternalMultiGenMMTestLanguageLexer extends Lexer { public final void mRULE_ANY_OTHER() throws RecognitionException { try { int _type = RULE_ANY_OTHER; - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:188:16: ( . ) - // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:188:18: . + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:191:16: ( . ) + // ../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g:191:18: . { matchAny(); diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage__.g b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage__.g index 6145ab6..af1fe1a 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage__.g +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage__.g @@ -14,18 +14,21 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; // $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g" 180 -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g" 182 -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g" 185 +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g" 184 -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g" 187 +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g" 186 -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g" 189 +RULE_WS : (' '|'\t'|'\r'|'\n')+; -// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g" 188 +// $ANTLR src "../org.eclipse.xtext.generator.tests//src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/antlr/internal/InternalMultiGenMMTestLanguage.g" 191 RULE_ANY_OTHER : .; diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MetamodelRefTestLanguageDelimiters.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MetamodelRefTestLanguageDelimiters.java index 993dcbd..0118b0e 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MetamodelRefTestLanguageDelimiters.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MetamodelRefTestLanguageDelimiters.java @@ -7,6 +7,7 @@ import org.eclipse.xtext.parser.packrat.matching.ICharacterClass; import org.eclipse.xtext.parser.packrat.matching.ISequenceMatcher; import org.eclipse.xtext.parser.packrat.matching.SetBasedKeywordMatcher; +@SuppressWarnings("unused") public final class MetamodelRefTestLanguageDelimiters { private MetamodelRefTestLanguageDelimiters() { diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MetamodelRefTestLanguagePackratParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MetamodelRefTestLanguagePackratParser.java index 4f27412..9170300 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MetamodelRefTestLanguagePackratParser.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MetamodelRefTestLanguagePackratParser.java @@ -12,5 +12,5 @@ public class MetamodelRefTestLanguagePackratParser extends AbstractPackratParser protected MetamodelRefTestLanguageParserConfiguration createParserConfiguration(IInternalParserConfiguration configuration) { return new MetamodelRefTestLanguageParserConfiguration(configuration); } - + } diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MetamodelRefTestLanguageParserConfiguration.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MetamodelRefTestLanguageParserConfiguration.java index bd24f15..e5c7ee5 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MetamodelRefTestLanguageParserConfiguration.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MetamodelRefTestLanguageParserConfiguration.java @@ -5,6 +5,7 @@ package org.eclipse.xtext.metamodelreferencing.tests.parser.packrat; import org.eclipse.xtext.parser.packrat.AbstractParserConfiguration; import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.INonTerminalConsumer; import org.eclipse.xtext.builtin.parser.packrat.XtextBuiltinParserConfiguration; @@ -36,7 +37,7 @@ public class MetamodelRefTestLanguageParserConfiguration extends AbstractParserC public MetamodelRefTestLanguageFooConsumer getRootConsumer() { return fooConsumer; } - + public void createNonTerminalConsumers() { getXtextBuiltinConfiguration().createNonTerminalConsumers(); fooConsumer = new MetamodelRefTestLanguageFooConsumer( @@ -113,4 +114,9 @@ public class MetamodelRefTestLanguageParserConfiguration extends AbstractParserC } + @Override + public ITerminalConsumer[] getInitialHiddenTerminals() { + return getXtextBuiltinConfiguration().getInitialHiddenTerminals(); + } + } diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MultiGenMMTestLanguageDelimiters.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MultiGenMMTestLanguageDelimiters.java index d5763c7..fd2cc44 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MultiGenMMTestLanguageDelimiters.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MultiGenMMTestLanguageDelimiters.java @@ -7,6 +7,7 @@ import org.eclipse.xtext.parser.packrat.matching.ICharacterClass; import org.eclipse.xtext.parser.packrat.matching.ISequenceMatcher; import org.eclipse.xtext.parser.packrat.matching.SetBasedKeywordMatcher; +@SuppressWarnings("unused") public final class MultiGenMMTestLanguageDelimiters { private MultiGenMMTestLanguageDelimiters() { diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MultiGenMMTestLanguagePackratParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MultiGenMMTestLanguagePackratParser.java index 9df6390..251bd79 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MultiGenMMTestLanguagePackratParser.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MultiGenMMTestLanguagePackratParser.java @@ -12,5 +12,5 @@ public class MultiGenMMTestLanguagePackratParser extends AbstractPackratParser { protected MultiGenMMTestLanguageParserConfiguration createParserConfiguration(IInternalParserConfiguration configuration) { return new MultiGenMMTestLanguageParserConfiguration(configuration); } - + } diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MultiGenMMTestLanguageParserConfiguration.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MultiGenMMTestLanguageParserConfiguration.java index 76d3825..5c6178b 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MultiGenMMTestLanguageParserConfiguration.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/metamodelreferencing/tests/parser/packrat/MultiGenMMTestLanguageParserConfiguration.java @@ -5,6 +5,7 @@ package org.eclipse.xtext.metamodelreferencing.tests.parser.packrat; import org.eclipse.xtext.parser.packrat.AbstractParserConfiguration; import org.eclipse.xtext.parser.packrat.consumers.ITerminalConsumer; +import org.eclipse.xtext.parser.packrat.consumers.INonTerminalConsumer; import org.eclipse.xtext.builtin.parser.packrat.XtextBuiltinParserConfiguration; @@ -34,7 +35,7 @@ public class MultiGenMMTestLanguageParserConfiguration extends AbstractParserCon public MultiGenMMTestLanguageFooConsumer getRootConsumer() { return fooConsumer; } - + public void createNonTerminalConsumers() { getXtextBuiltinConfiguration().createNonTerminalConsumers(); fooConsumer = new MultiGenMMTestLanguageFooConsumer( @@ -101,4 +102,9 @@ public class MultiGenMMTestLanguageParserConfiguration extends AbstractParserCon } + @Override + public ITerminalConsumer[] getInitialHiddenTerminals() { + return getXtextBuiltinConfiguration().getInitialHiddenTerminals(); + } + } diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/XtextGrammarTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/XtextGrammarTestLanguageParser.java index d2d3e11..01cc87e 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/XtextGrammarTestLanguageParser.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/XtextGrammarTestLanguageParser.java @@ -23,6 +23,7 @@ public class XtextGrammarTestLanguageParser extends org.eclipse.xtext.parser.ant protected IParseResult parse(String ruleName, ANTLRInputStream in) { InternalXtextGrammarTestLanguageLexer lexer = new InternalXtextGrammarTestLanguageLexer(in); XtextTokenStream stream = new XtextTokenStream(lexer, antlrTokenDefProvider); + stream.setInitialHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT"); InternalXtextGrammarTestLanguageParser parser = new InternalXtextGrammarTestLanguageParser( stream, getElementFactory(), grammarAccess.getGrammar()); parser.setTokenTypeMap(antlrTokenDefProvider.getTokenDefMap()); diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g index cc321b0..26b323d 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g @@ -75,16 +75,14 @@ entryRuleGrammar returns [EObject current=null] : // Rule Grammar ruleGrammar returns [EObject current=null] @init { EObject temp=null; setCurrentLookahead(); resetLookahead(); - HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT"); } @after { resetLookahead(); - myHiddenTokenState.restore(); }: -((((((( +(((((((( lv_abstract='abstract language' { - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@groups.0/@terminal" /* xtext::Keyword */, "abstract"); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@groups.0/@terminal" /* xtext::Keyword */, "abstract"); } { @@ -103,13 +101,13 @@ ruleGrammar returns [EObject current=null] ) |'language' { - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@groups.1" /* xtext::Keyword */, null); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@groups.1" /* xtext::Keyword */, null); } )( lv_idElements=RULE_ID { - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "idElements"); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "idElements"); } { @@ -127,13 +125,13 @@ ruleGrammar returns [EObject current=null] ))('.' { - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); } ( lv_idElements=RULE_ID { - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "idElements"); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "idElements"); } { @@ -151,13 +149,13 @@ ruleGrammar returns [EObject current=null] ))*)(('extends' { - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); } ( lv_superGrammarIdElements=RULE_ID { - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "superGrammarIdElements"); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "superGrammarIdElements"); } { @@ -175,13 +173,13 @@ ruleGrammar returns [EObject current=null] ))('.' { - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); } ( lv_superGrammarIdElements=RULE_ID { - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "superGrammarIdElements"); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "superGrammarIdElements"); } { @@ -197,7 +195,69 @@ ruleGrammar returns [EObject current=null] } } -))*)?)( +))*)?)(((( + + lv_definesHiddenTokens='hidden' + { + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@terminal" /* xtext::Keyword */, "definesHiddenTokens"); + } + + { + if ($current==null) { + $current = factory.create("Grammar"); + associateNodeWithAstElement(currentNode, $current); + } + + try { + factory.set($current, "definesHiddenTokens", true, "hidden", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + } + +)'(' + { + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); + } +)(( + + + { + if ($current==null) { + $current = factory.create("Grammar"); + associateNodeWithAstElement(currentNode, $current); + } + } +( + RULE_ID { + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@terminal" /* xtext::CrossReference */, "hiddenTokens"); + } +) + +)(',' + { + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); + } +( + + + { + if ($current==null) { + $current = factory.create("Grammar"); + associateNodeWithAstElement(currentNode, $current); + } + } +( + RULE_ID { + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "hiddenTokens"); + } +) + +))*)?)')' + { + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1" /* xtext::Keyword */, null); + } +)?)( { @@ -652,11 +712,11 @@ ruleParserRule returns [EObject current=null] currentNode = currentNode.getParent(); } -))?)((((( +))?)(((( lv_definesHiddenTokens='hidden' { - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@terminal" /* xtext::Keyword */, "definesHiddenTokens"); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@terminal" /* xtext::Keyword */, "definesHiddenTokens"); } { @@ -674,9 +734,9 @@ ruleParserRule returns [EObject current=null] )'(' { - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); } -)( +)(( { @@ -687,13 +747,13 @@ ruleParserRule returns [EObject current=null] } ( RULE_ID { - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "hiddenTokens"); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@terminal" /* xtext::CrossReference */, "hiddenTokens"); } ) -))(',' +)(',' { - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); } ( @@ -706,11 +766,11 @@ ruleParserRule returns [EObject current=null] } ( RULE_ID { - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "hiddenTokens"); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "hiddenTokens"); } ) -)))')' +))*)?)')' { createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1" /* xtext::Keyword */, null); } @@ -2220,13 +2280,16 @@ RULE_ID : ('^')?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; RULE_INT : ('0'..'9')+; -RULE_STRING : '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\''; +RULE_STRING : + '"' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'"') )* '"' | + '\'' ( '\\' ('b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\') | ~('\\'|'\'') )* '\'' + ; -RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/' {$channel=HIDDEN;}; +RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )* '*/'; -RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')? {$channel=HIDDEN;}; +RULE_SL_COMMENT : '//' ~('\n'|'\r')* ('\r'? '\n')?; -RULE_WS : (' '|'\t'|'\r'|'\n')+ {$channel=HIDDEN;}; +RULE_WS : (' '|'\t'|'\r'|'\n')+; RULE_ANY_OTHER : .; diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.tokens b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.tokens index 11169e7..068688f 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.tokens +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.tokens @@ -6,32 +6,32 @@ RULE_STRING=5 RULE_ANY_OTHER=10 RULE_SL_COMMENT=8 '->'=40 -'returns'=20 +'returns'=24 '..'=41 -'generate'=15 +'generate'=19 'terminal'=27 '?='=35 -';'=22 +';'=26 ']'=43 '?'=30 -','=25 -'hidden'=23 +','=17 +'hidden'=15 '='=34 '['=42 'abstract language'=11 '::'=28 -'lexer'=19 +'lexer'=23 '|'=29 -')'=26 -'native'=18 +')'=18 +'native'=22 'language'=12 '{'=36 -'import'=17 +'import'=21 '!'=39 '+='=33 -'('=24 -'as'=16 -':'=21 +'('=16 +'as'=20 +':'=25 'extends'=14 '.'=13 '*'=31 diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguageLexer.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguageLexer.java index 83705ce..005e97e 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguageLexer.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguageLexer.java @@ -57,14 +57,14 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public InternalXtextGrammarTestLanguageLexer(CharStream input) { super(input); } - public String getGrammarFileName() { return "../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g"; } + public String getGrammarFileName() { return "../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g"; } // $ANTLR start T11 public final void mT11() throws RecognitionException { try { int _type = T11; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:10:5: ( 'abstract language' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:10:7: 'abstract language' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:10:5: ( 'abstract language' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:10:7: 'abstract language' { match("abstract language"); @@ -82,8 +82,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT12() throws RecognitionException { try { int _type = T12; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:11:5: ( 'language' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:11:7: 'language' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:11:5: ( 'language' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:11:7: 'language' { match("language"); @@ -101,8 +101,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT13() throws RecognitionException { try { int _type = T13; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:12:5: ( '.' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:12:7: '.' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:12:5: ( '.' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:12:7: '.' { match('.'); @@ -119,8 +119,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT14() throws RecognitionException { try { int _type = T14; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:13:5: ( 'extends' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:13:7: 'extends' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:13:5: ( 'extends' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:13:7: 'extends' { match("extends"); @@ -138,10 +138,10 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT15() throws RecognitionException { try { int _type = T15; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:14:5: ( 'generate' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:14:7: 'generate' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:14:5: ( 'hidden' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:14:7: 'hidden' { - match("generate"); + match("hidden"); } @@ -157,11 +157,10 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT16() throws RecognitionException { try { int _type = T16; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:15:5: ( 'as' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:15:7: 'as' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:15:5: ( '(' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:15:7: '(' { - match("as"); - + match('('); } @@ -176,11 +175,10 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT17() throws RecognitionException { try { int _type = T17; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:16:5: ( 'import' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:16:7: 'import' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:16:5: ( ',' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:16:7: ',' { - match("import"); - + match(','); } @@ -195,11 +193,10 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT18() throws RecognitionException { try { int _type = T18; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:17:5: ( 'native' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:17:7: 'native' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:17:5: ( ')' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:17:7: ')' { - match("native"); - + match(')'); } @@ -214,10 +211,10 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT19() throws RecognitionException { try { int _type = T19; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:18:5: ( 'lexer' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:18:7: 'lexer' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:18:5: ( 'generate' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:18:7: 'generate' { - match("lexer"); + match("generate"); } @@ -233,10 +230,10 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT20() throws RecognitionException { try { int _type = T20; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:19:5: ( 'returns' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:19:7: 'returns' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:19:5: ( 'as' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:19:7: 'as' { - match("returns"); + match("as"); } @@ -252,10 +249,11 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT21() throws RecognitionException { try { int _type = T21; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:20:5: ( ':' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:20:7: ':' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:20:5: ( 'import' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:20:7: 'import' { - match(':'); + match("import"); + } @@ -270,10 +268,11 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT22() throws RecognitionException { try { int _type = T22; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:21:5: ( ';' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:21:7: ';' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:21:5: ( 'native' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:21:7: 'native' { - match(';'); + match("native"); + } @@ -288,10 +287,10 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT23() throws RecognitionException { try { int _type = T23; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:22:5: ( 'hidden' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:22:7: 'hidden' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:22:5: ( 'lexer' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:22:7: 'lexer' { - match("hidden"); + match("lexer"); } @@ -307,10 +306,11 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT24() throws RecognitionException { try { int _type = T24; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:23:5: ( '(' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:23:7: '(' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:23:5: ( 'returns' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:23:7: 'returns' { - match('('); + match("returns"); + } @@ -325,10 +325,10 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT25() throws RecognitionException { try { int _type = T25; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:24:5: ( ',' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:24:7: ',' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:24:5: ( ':' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:24:7: ':' { - match(','); + match(':'); } @@ -343,10 +343,10 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT26() throws RecognitionException { try { int _type = T26; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:25:5: ( ')' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:25:7: ')' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:25:5: ( ';' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:25:7: ';' { - match(')'); + match(';'); } @@ -361,8 +361,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT27() throws RecognitionException { try { int _type = T27; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:26:5: ( 'terminal' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:26:7: 'terminal' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:26:5: ( 'terminal' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:26:7: 'terminal' { match("terminal"); @@ -380,8 +380,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT28() throws RecognitionException { try { int _type = T28; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:27:5: ( '::' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:27:7: '::' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:27:5: ( '::' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:27:7: '::' { match("::"); @@ -399,8 +399,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT29() throws RecognitionException { try { int _type = T29; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:28:5: ( '|' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:28:7: '|' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:28:5: ( '|' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:28:7: '|' { match('|'); @@ -417,8 +417,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT30() throws RecognitionException { try { int _type = T30; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:29:5: ( '?' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:29:7: '?' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:29:5: ( '?' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:29:7: '?' { match('?'); @@ -435,8 +435,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT31() throws RecognitionException { try { int _type = T31; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:30:5: ( '*' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:30:7: '*' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:30:5: ( '*' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:30:7: '*' { match('*'); @@ -453,8 +453,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT32() throws RecognitionException { try { int _type = T32; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:31:5: ( '+' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:31:7: '+' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:31:5: ( '+' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:31:7: '+' { match('+'); @@ -471,8 +471,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT33() throws RecognitionException { try { int _type = T33; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:32:5: ( '+=' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:32:7: '+=' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:32:5: ( '+=' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:32:7: '+=' { match("+="); @@ -490,8 +490,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT34() throws RecognitionException { try { int _type = T34; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:33:5: ( '=' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:33:7: '=' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:33:5: ( '=' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:33:7: '=' { match('='); @@ -508,8 +508,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT35() throws RecognitionException { try { int _type = T35; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:34:5: ( '?=' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:34:7: '?=' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:34:5: ( '?=' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:34:7: '?=' { match("?="); @@ -527,8 +527,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT36() throws RecognitionException { try { int _type = T36; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:35:5: ( '{' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:35:7: '{' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:35:5: ( '{' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:35:7: '{' { match('{'); @@ -545,8 +545,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT37() throws RecognitionException { try { int _type = T37; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:36:5: ( 'current' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:36:7: 'current' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:36:5: ( 'current' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:36:7: 'current' { match("current"); @@ -564,8 +564,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT38() throws RecognitionException { try { int _type = T38; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:37:5: ( '}' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:37:7: '}' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:37:5: ( '}' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:37:7: '}' { match('}'); @@ -582,8 +582,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT39() throws RecognitionException { try { int _type = T39; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:38:5: ( '!' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:38:7: '!' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:38:5: ( '!' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:38:7: '!' { match('!'); @@ -600,8 +600,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT40() throws RecognitionException { try { int _type = T40; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:39:5: ( '->' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:39:7: '->' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:39:5: ( '->' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:39:7: '->' { match("->"); @@ -619,8 +619,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT41() throws RecognitionException { try { int _type = T41; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:40:5: ( '..' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:40:7: '..' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:40:5: ( '..' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:40:7: '..' { match(".."); @@ -638,8 +638,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT42() throws RecognitionException { try { int _type = T42; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:41:5: ( '[' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:41:7: '[' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:41:5: ( '[' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:41:7: '[' { match('['); @@ -656,8 +656,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mT43() throws RecognitionException { try { int _type = T43; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:42:5: ( ']' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:42:7: ']' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:42:5: ( ']' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:42:7: ']' { match(']'); @@ -674,10 +674,10 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mRULE_ID() throws RecognitionException { try { int _type = RULE_ID; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2219:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2219:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2279:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2279:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2219:11: ( '^' )? + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2279:11: ( '^' )? int alt1=2; int LA1_0 = input.LA(1); @@ -686,7 +686,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { } switch (alt1) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2219:12: '^' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2279:12: '^' { match('^'); @@ -705,7 +705,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { recover(mse); throw mse; } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2219:41: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2279:41: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* loop2: do { int alt2=2; @@ -718,7 +718,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { switch (alt2) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g: + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g: { if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z') ) { input.consume(); @@ -753,10 +753,10 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mRULE_INT() throws RecognitionException { try { int _type = RULE_INT; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2221:10: ( ( '0' .. '9' )+ ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2221:12: ( '0' .. '9' )+ + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2281:10: ( ( '0' .. '9' )+ ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2281:12: ( '0' .. '9' )+ { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2221:12: ( '0' .. '9' )+ + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2281:12: ( '0' .. '9' )+ int cnt3=0; loop3: do { @@ -770,7 +770,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { switch (alt3) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2221:13: '0' .. '9' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2281:13: '0' .. '9' { matchRange('0','9'); @@ -800,7 +800,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mRULE_STRING() throws RecognitionException { try { int _type = RULE_STRING; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2223:13: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2283:13: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' ) int alt6=2; int LA6_0 = input.LA(1); @@ -812,16 +812,16 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { } else { NoViableAltException nvae = - new NoViableAltException("2223:1: RULE_STRING : ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' );", 6, 0, input); + new NoViableAltException("2283:1: RULE_STRING : ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' );", 6, 0, input); throw nvae; } switch (alt6) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2223:15: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2284:6: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* '\"' { match('\"'); - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2223:19: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2284:10: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\"' ) )* loop4: do { int alt4=3; @@ -837,7 +837,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { switch (alt4) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2223:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2284:12: '\\\\' ( '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' ) { @@ -854,7 +854,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2223:65: ~ ( '\\\\' | '\"' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2284:56: ~ ( '\\\\' | '\"' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -880,10 +880,10 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2223:101: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2285:15: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* '\\'' { match('\''); - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2223:106: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2285:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) | ~ ( '\\\\' | '\\'' ) )* loop5: do { int alt5=3; @@ -899,7 +899,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { switch (alt5) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2223:108: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2285:22: '\\\\' ( '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' ) { @@ -916,7 +916,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { } break; case 2 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2223:152: ~ ( '\\\\' | '\\'' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2285:66: ~ ( '\\\\' | '\\'' ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) { input.consume(); @@ -954,12 +954,12 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mRULE_ML_COMMENT() throws RecognitionException { try { int _type = RULE_ML_COMMENT; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2225:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2225:19: '/*' ( options {greedy=false; } : . )* '*/' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2288:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2288:19: '/*' ( options {greedy=false; } : . )* '*/' { match("/*"); - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2225:24: ( options {greedy=false; } : . )* + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2288:24: ( options {greedy=false; } : . )* loop7: do { int alt7=2; @@ -984,7 +984,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { switch (alt7) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2225:52: . + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2288:52: . { matchAny(); @@ -998,7 +998,6 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { match("*/"); - channel=HIDDEN; } @@ -1013,12 +1012,12 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mRULE_SL_COMMENT() throws RecognitionException { try { int _type = RULE_SL_COMMENT; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2227:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2227:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2290:17: ( '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2290:19: '//' (~ ( '\\n' | '\\r' ) )* ( ( '\\r' )? '\\n' )? { match("//"); - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2227:24: (~ ( '\\n' | '\\r' ) )* + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2290:24: (~ ( '\\n' | '\\r' ) )* loop8: do { int alt8=2; @@ -1031,7 +1030,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { switch (alt8) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2227:24: ~ ( '\\n' | '\\r' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2290:24: ~ ( '\\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(); @@ -1052,7 +1051,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { } } while (true); - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2227:38: ( ( '\\r' )? '\\n' )? + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2290:38: ( ( '\\r' )? '\\n' )? int alt10=2; int LA10_0 = input.LA(1); @@ -1061,9 +1060,9 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { } switch (alt10) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2227:39: ( '\\r' )? '\\n' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2290:39: ( '\\r' )? '\\n' { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2227:39: ( '\\r' )? + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2290:39: ( '\\r' )? int alt9=2; int LA9_0 = input.LA(1); @@ -1072,7 +1071,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { } switch (alt9) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2227:39: '\\r' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2290:39: '\\r' { match('\r'); @@ -1088,7 +1087,6 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { } - channel=HIDDEN; } @@ -1103,10 +1101,10 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mRULE_WS() throws RecognitionException { try { int _type = RULE_WS; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2229:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2229:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2292:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2292:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2229:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2292:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ int cnt11=0; loop11: do { @@ -1120,7 +1118,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { switch (alt11) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g: + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g: { if ( (input.LA(1)>='\t' && input.LA(1)<='\n')||input.LA(1)=='\r'||input.LA(1)==' ' ) { input.consume(); @@ -1145,7 +1143,6 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { cnt11++; } while (true); - channel=HIDDEN; } @@ -1160,8 +1157,8 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { public final void mRULE_ANY_OTHER() throws RecognitionException { try { int _type = RULE_ANY_OTHER; - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2231:16: ( . ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2231:18: . + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2294:16: ( . ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:2294:18: . { matchAny(); @@ -1175,20 +1172,31 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { // $ANTLR end RULE_ANY_OTHER public void mTokens() throws RecognitionException { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:8: ( T11 | T12 | T13 | T14 | T15 | T16 | T17 | T18 | T19 | T20 | T21 | T22 | T23 | T24 | T25 | T26 | T27 | T28 | T29 | T30 | T31 | T32 | T33 | T34 | T35 | T36 | T37 | T38 | T39 | T40 | T41 | T42 | T43 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:8: ( T11 | T12 | T13 | T14 | T15 | T16 | T17 | T18 | T19 | T20 | T21 | T22 | T23 | T24 | T25 | T26 | T27 | T28 | T29 | T30 | T31 | T32 | T33 | T34 | T35 | T36 | T37 | T38 | T39 | T40 | T41 | T42 | T43 | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER ) int alt12=40; int LA12_0 = input.LA(1); if ( (LA12_0=='a') ) { switch ( input.LA(2) ) { - case 'b': + case 's': { int LA12_36 = input.LA(3); - if ( (LA12_36=='s') ) { - int LA12_75 = input.LA(4); + if ( ((LA12_36>='0' && LA12_36<='9')||(LA12_36>='A' && LA12_36<='Z')||LA12_36=='_'||(LA12_36>='a' && LA12_36<='z')) ) { + alt12=34; + } + else { + alt12=10;} + } + break; + case 'b': + { + int LA12_37 = input.LA(3); + + if ( (LA12_37=='s') ) { + int LA12_76 = input.LA(4); - if ( (LA12_75=='t') ) { + if ( (LA12_76=='t') ) { int LA12_87 = input.LA(5); if ( (LA12_87=='r') ) { @@ -1228,17 +1236,6 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { alt12=34;} } break; - case 's': - { - int LA12_37 = input.LA(3); - - if ( ((LA12_37>='0' && LA12_37<='9')||(LA12_37>='A' && LA12_37<='Z')||LA12_37=='_'||(LA12_37>='a' && LA12_37<='z')) ) { - alt12=34; - } - else { - alt12=6;} - } - break; default: alt12=34;} @@ -1309,7 +1306,7 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { alt12=34; } else { - alt12=9;} + alt12=13;} } else { alt12=34;} @@ -1379,41 +1376,29 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { else { alt12=34;} } - else if ( (LA12_0=='g') ) { + else if ( (LA12_0=='h') ) { int LA12_5 = input.LA(2); - if ( (LA12_5=='e') ) { + if ( (LA12_5=='i') ) { int LA12_44 = input.LA(3); - if ( (LA12_44=='n') ) { + if ( (LA12_44=='d') ) { int LA12_80 = input.LA(4); - if ( (LA12_80=='e') ) { + if ( (LA12_80=='d') ) { int LA12_91 = input.LA(5); - if ( (LA12_91=='r') ) { + if ( (LA12_91=='e') ) { int LA12_102 = input.LA(6); - if ( (LA12_102=='a') ) { + if ( (LA12_102=='n') ) { int LA12_113 = input.LA(7); - if ( (LA12_113=='t') ) { - int LA12_123 = input.LA(8); - - if ( (LA12_123=='e') ) { - int LA12_133 = input.LA(9); - - if ( ((LA12_133>='0' && LA12_133<='9')||(LA12_133>='A' && LA12_133<='Z')||LA12_133=='_'||(LA12_133>='a' && LA12_133<='z')) ) { - alt12=34; - } - else { - alt12=5;} - } - else { - alt12=34;} + if ( ((LA12_113>='0' && LA12_113<='9')||(LA12_113>='A' && LA12_113<='Z')||LA12_113=='_'||(LA12_113>='a' && LA12_113<='z')) ) { + alt12=34; } else { - alt12=34;} + alt12=5;} } else { alt12=34;} @@ -1430,29 +1415,50 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { else { alt12=34;} } - else if ( (LA12_0=='i') ) { - int LA12_6 = input.LA(2); + else if ( (LA12_0=='(') ) { + alt12=6; + } + else if ( (LA12_0==',') ) { + alt12=7; + } + else if ( (LA12_0==')') ) { + alt12=8; + } + else if ( (LA12_0=='g') ) { + int LA12_9 = input.LA(2); - if ( (LA12_6=='m') ) { - int LA12_45 = input.LA(3); + if ( (LA12_9=='e') ) { + int LA12_48 = input.LA(3); - if ( (LA12_45=='p') ) { + if ( (LA12_48=='n') ) { int LA12_81 = input.LA(4); - if ( (LA12_81=='o') ) { + if ( (LA12_81=='e') ) { int LA12_92 = input.LA(5); if ( (LA12_92=='r') ) { int LA12_103 = input.LA(6); - if ( (LA12_103=='t') ) { + if ( (LA12_103=='a') ) { int LA12_114 = input.LA(7); - if ( ((LA12_114>='0' && LA12_114<='9')||(LA12_114>='A' && LA12_114<='Z')||LA12_114=='_'||(LA12_114>='a' && LA12_114<='z')) ) { - alt12=34; + if ( (LA12_114=='t') ) { + int LA12_124 = input.LA(8); + + if ( (LA12_124=='e') ) { + int LA12_133 = input.LA(9); + + if ( ((LA12_133>='0' && LA12_133<='9')||(LA12_133>='A' && LA12_133<='Z')||LA12_133=='_'||(LA12_133>='a' && LA12_133<='z')) ) { + alt12=34; + } + else { + alt12=9;} + } + else { + alt12=34;} } else { - alt12=7;} + alt12=34;} } else { alt12=34;} @@ -1469,29 +1475,29 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { else { alt12=34;} } - else if ( (LA12_0=='n') ) { - int LA12_7 = input.LA(2); + else if ( (LA12_0=='i') ) { + int LA12_10 = input.LA(2); - if ( (LA12_7=='a') ) { - int LA12_46 = input.LA(3); + if ( (LA12_10=='m') ) { + int LA12_49 = input.LA(3); - if ( (LA12_46=='t') ) { + if ( (LA12_49=='p') ) { int LA12_82 = input.LA(4); - if ( (LA12_82=='i') ) { + if ( (LA12_82=='o') ) { int LA12_93 = input.LA(5); - if ( (LA12_93=='v') ) { + if ( (LA12_93=='r') ) { int LA12_104 = input.LA(6); - if ( (LA12_104=='e') ) { + if ( (LA12_104=='t') ) { int LA12_115 = input.LA(7); if ( ((LA12_115>='0' && LA12_115<='9')||(LA12_115>='A' && LA12_115<='Z')||LA12_115=='_'||(LA12_115>='a' && LA12_115<='z')) ) { alt12=34; } else { - alt12=8;} + alt12=11;} } else { alt12=34;} @@ -1508,35 +1514,29 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { else { alt12=34;} } - else if ( (LA12_0=='r') ) { - int LA12_8 = input.LA(2); + else if ( (LA12_0=='n') ) { + int LA12_11 = input.LA(2); - if ( (LA12_8=='e') ) { - int LA12_47 = input.LA(3); + if ( (LA12_11=='a') ) { + int LA12_50 = input.LA(3); - if ( (LA12_47=='t') ) { + if ( (LA12_50=='t') ) { int LA12_83 = input.LA(4); - if ( (LA12_83=='u') ) { + if ( (LA12_83=='i') ) { int LA12_94 = input.LA(5); - if ( (LA12_94=='r') ) { + if ( (LA12_94=='v') ) { int LA12_105 = input.LA(6); - if ( (LA12_105=='n') ) { + if ( (LA12_105=='e') ) { int LA12_116 = input.LA(7); - if ( (LA12_116=='s') ) { - int LA12_126 = input.LA(8); - - if ( ((LA12_126>='0' && LA12_126<='9')||(LA12_126>='A' && LA12_126<='Z')||LA12_126=='_'||(LA12_126>='a' && LA12_126<='z')) ) { - alt12=34; - } - else { - alt12=10;} + if ( ((LA12_116>='0' && LA12_116<='9')||(LA12_116>='A' && LA12_116<='Z')||LA12_116=='_'||(LA12_116>='a' && LA12_116<='z')) ) { + alt12=34; } else { - alt12=34;} + alt12=12;} } else { alt12=34;} @@ -1553,41 +1553,35 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { else { alt12=34;} } - else if ( (LA12_0==':') ) { - int LA12_9 = input.LA(2); - - if ( (LA12_9==':') ) { - alt12=18; - } - else { - alt12=11;} - } - else if ( (LA12_0==';') ) { - alt12=12; - } - else if ( (LA12_0=='h') ) { - int LA12_11 = input.LA(2); + else if ( (LA12_0=='r') ) { + int LA12_12 = input.LA(2); - if ( (LA12_11=='i') ) { + if ( (LA12_12=='e') ) { int LA12_51 = input.LA(3); - if ( (LA12_51=='d') ) { + if ( (LA12_51=='t') ) { int LA12_84 = input.LA(4); - if ( (LA12_84=='d') ) { + if ( (LA12_84=='u') ) { int LA12_95 = input.LA(5); - if ( (LA12_95=='e') ) { + if ( (LA12_95=='r') ) { int LA12_106 = input.LA(6); if ( (LA12_106=='n') ) { int LA12_117 = input.LA(7); - if ( ((LA12_117>='0' && LA12_117<='9')||(LA12_117>='A' && LA12_117<='Z')||LA12_117=='_'||(LA12_117>='a' && LA12_117<='z')) ) { - alt12=34; + if ( (LA12_117=='s') ) { + int LA12_127 = input.LA(8); + + if ( ((LA12_127>='0' && LA12_127<='9')||(LA12_127>='A' && LA12_127<='Z')||LA12_127=='_'||(LA12_127>='a' && LA12_127<='z')) ) { + alt12=34; + } + else { + alt12=14;} } else { - alt12=13;} + alt12=34;} } else { alt12=34;} @@ -1604,13 +1598,16 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { else { alt12=34;} } - else if ( (LA12_0=='(') ) { - alt12=14; - } - else if ( (LA12_0==',') ) { - alt12=15; + else if ( (LA12_0==':') ) { + int LA12_13 = input.LA(2); + + if ( (LA12_13==':') ) { + alt12=18; + } + else { + alt12=15;} } - else if ( (LA12_0==')') ) { + else if ( (LA12_0==';') ) { alt12=16; } else if ( (LA12_0=='t') ) { @@ -1823,280 +1820,280 @@ public class InternalXtextGrammarTestLanguageLexer extends Lexer { } switch (alt12) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:10: T11 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:10: T11 { mT11(); } break; case 2 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:14: T12 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:14: T12 { mT12(); } break; case 3 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:18: T13 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:18: T13 { mT13(); } break; case 4 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:22: T14 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:22: T14 { mT14(); } break; case 5 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:26: T15 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:26: T15 { mT15(); } break; case 6 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:30: T16 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:30: T16 { mT16(); } break; case 7 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:34: T17 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:34: T17 { mT17(); } break; case 8 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:38: T18 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:38: T18 { mT18(); } break; case 9 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:42: T19 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:42: T19 { mT19(); } break; case 10 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:46: T20 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:46: T20 { mT20(); } break; case 11 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:50: T21 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:50: T21 { mT21(); } break; case 12 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:54: T22 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:54: T22 { mT22(); } break; case 13 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:58: T23 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:58: T23 { mT23(); } break; case 14 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:62: T24 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:62: T24 { mT24(); } break; case 15 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:66: T25 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:66: T25 { mT25(); } break; case 16 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:70: T26 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:70: T26 { mT26(); } break; case 17 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:74: T27 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:74: T27 { mT27(); } break; case 18 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:78: T28 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:78: T28 { mT28(); } break; case 19 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:82: T29 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:82: T29 { mT29(); } break; case 20 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:86: T30 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:86: T30 { mT30(); } break; case 21 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:90: T31 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:90: T31 { mT31(); } break; case 22 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:94: T32 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:94: T32 { mT32(); } break; case 23 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:98: T33 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:98: T33 { mT33(); } break; case 24 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:102: T34 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:102: T34 { mT34(); } break; case 25 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:106: T35 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:106: T35 { mT35(); } break; case 26 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:110: T36 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:110: T36 { mT36(); } break; case 27 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:114: T37 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:114: T37 { mT37(); } break; case 28 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:118: T38 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:118: T38 { mT38(); } break; case 29 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:122: T39 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:122: T39 { mT39(); } break; case 30 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:126: T40 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:126: T40 { mT40(); } break; case 31 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:130: T41 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:130: T41 { mT41(); } break; case 32 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:134: T42 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:134: T42 { mT42(); } break; case 33 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:138: T43 + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:138: T43 { mT43(); } break; case 34 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:142: RULE_ID + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:142: RULE_ID { mRULE_ID(); } break; case 35 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:150: RULE_INT + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:150: RULE_INT { mRULE_INT(); } break; case 36 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:159: RULE_STRING + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:159: RULE_STRING { mRULE_STRING(); } break; case 37 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:171: RULE_ML_COMMENT + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:171: RULE_ML_COMMENT { mRULE_ML_COMMENT(); } break; case 38 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:187: RULE_SL_COMMENT + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:187: RULE_SL_COMMENT { mRULE_SL_COMMENT(); } break; case 39 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:203: RULE_WS + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:203: RULE_WS { mRULE_WS(); } break; case 40 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:211: RULE_ANY_OTHER + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:1:211: RULE_ANY_OTHER { mRULE_ANY_OTHER(); diff --git a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguageParser.java b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguageParser.java index fa51527..ef90152 100644 --- a/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguageParser.java +++ b/tests/org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguageParser.java @@ -22,7 +22,7 @@ import java.util.ArrayList; public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntlrParser { public static final String[] tokenNames = new String[] { - "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_STRING", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'abstract language'", "'language'", "'.'", "'extends'", "'generate'", "'as'", "'import'", "'native'", "'lexer'", "'returns'", "':'", "';'", "'hidden'", "'('", "','", "')'", "'terminal'", "'::'", "'|'", "'?'", "'*'", "'+'", "'+='", "'='", "'?='", "'{'", "'current'", "'}'", "'!'", "'->'", "'..'", "'['", "']'" + "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_STRING", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'abstract language'", "'language'", "'.'", "'extends'", "'hidden'", "'('", "','", "')'", "'generate'", "'as'", "'import'", "'native'", "'lexer'", "'returns'", "':'", "';'", "'terminal'", "'::'", "'|'", "'?'", "'*'", "'+'", "'+='", "'='", "'?='", "'{'", "'current'", "'}'", "'!'", "'->'", "'..'", "'['", "']'" }; public static final int RULE_ML_COMMENT=7; public static final int RULE_ID=4; @@ -39,7 +39,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl public String[] getTokenNames() { return tokenNames; } - public String getGrammarFileName() { return "../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g"; } + public String getGrammarFileName() { return "../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g"; } @@ -63,7 +63,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start entryRuleGrammar - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:68:1: entryRuleGrammar returns [EObject current=null] : iv_ruleGrammar= ruleGrammar EOF ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:68:1: entryRuleGrammar returns [EObject current=null] : iv_ruleGrammar= ruleGrammar EOF ; public final EObject entryRuleGrammar() throws RecognitionException { EObject current = null; @@ -71,8 +71,8 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:68:49: (iv_ruleGrammar= ruleGrammar EOF ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:69:2: iv_ruleGrammar= ruleGrammar EOF + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:68:49: (iv_ruleGrammar= ruleGrammar EOF ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:69:2: iv_ruleGrammar= ruleGrammar EOF { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0" /* xtext::ParserRule */, currentNode); pushFollow(FOLLOW_ruleGrammar_in_entryRuleGrammar72); @@ -98,41 +98,44 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start ruleGrammar - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:76:1: ruleGrammar returns [EObject current=null] : ( ( ( ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? ) (lv_metamodelDeclarations= ruleAbstractMetamodelDeclaration )* ) (lv_rules= ruleAbstractRule )+ ) ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:76:1: ruleGrammar returns [EObject current=null] : ( ( ( ( ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? ) (lv_metamodelDeclarations= ruleAbstractMetamodelDeclaration )* ) (lv_rules= ruleAbstractRule )+ ) ; public final EObject ruleGrammar() throws RecognitionException { EObject current = null; Token lv_abstract=null; Token lv_idElements=null; Token lv_superGrammarIdElements=null; + Token lv_definesHiddenTokens=null; EObject lv_metamodelDeclarations = null; EObject lv_rules = null; EObject temp=null; setCurrentLookahead(); resetLookahead(); - HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens("RULE_WS", "RULE_ML_COMMENT", "RULE_SL_COMMENT"); try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:82:6: ( ( ( ( ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? ) (lv_metamodelDeclarations= ruleAbstractMetamodelDeclaration )* ) (lv_rules= ruleAbstractRule )+ ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:83:1: ( ( ( ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? ) (lv_metamodelDeclarations= ruleAbstractMetamodelDeclaration )* ) (lv_rules= ruleAbstractRule )+ ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:80:6: ( ( ( ( ( ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? ) (lv_metamodelDeclarations= ruleAbstractMetamodelDeclaration )* ) (lv_rules= ruleAbstractRule )+ ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:81:1: ( ( ( ( ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? ) (lv_metamodelDeclarations= ruleAbstractMetamodelDeclaration )* ) (lv_rules= ruleAbstractRule )+ ) + { + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:81:1: ( ( ( ( ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? ) (lv_metamodelDeclarations= ruleAbstractMetamodelDeclaration )* ) (lv_rules= ruleAbstractRule )+ ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:81:2: ( ( ( ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? ) (lv_metamodelDeclarations= ruleAbstractMetamodelDeclaration )* ) (lv_rules= ruleAbstractRule )+ { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:83:1: ( ( ( ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? ) (lv_metamodelDeclarations= ruleAbstractMetamodelDeclaration )* ) (lv_rules= ruleAbstractRule )+ ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:83:2: ( ( ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? ) (lv_metamodelDeclarations= ruleAbstractMetamodelDeclaration )* ) (lv_rules= ruleAbstractRule )+ + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:81:2: ( ( ( ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? ) (lv_metamodelDeclarations= ruleAbstractMetamodelDeclaration )* ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:81:3: ( ( ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? ) (lv_metamodelDeclarations= ruleAbstractMetamodelDeclaration )* { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:83:2: ( ( ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? ) (lv_metamodelDeclarations= ruleAbstractMetamodelDeclaration )* ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:83:3: ( ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? ) (lv_metamodelDeclarations= ruleAbstractMetamodelDeclaration )* + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:81:3: ( ( ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:81:4: ( ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:83:3: ( ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:83:4: ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:81:4: ( ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:81:5: ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:83:4: ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:83:5: ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:81:5: ( ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:81:6: ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) ( '.' (lv_idElements= RULE_ID ) )* { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:83:5: ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:83:6: ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:81:6: ( ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:81:7: ( (lv_abstract= 'abstract language' ) | 'language' ) (lv_idElements= RULE_ID ) { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:83:6: ( (lv_abstract= 'abstract language' ) | 'language' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:81:7: ( (lv_abstract= 'abstract language' ) | 'language' ) int alt1=2; int LA1_0 = input.LA(1); @@ -144,21 +147,21 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } else { NoViableAltException nvae = - new NoViableAltException("83:6: ( (lv_abstract= 'abstract language' ) | 'language' )", 1, 0, input); + new NoViableAltException("81:7: ( (lv_abstract= 'abstract language' ) | 'language' )", 1, 0, input); throw nvae; } switch (alt1) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:83:7: (lv_abstract= 'abstract language' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:81:8: (lv_abstract= 'abstract language' ) { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:83:7: (lv_abstract= 'abstract language' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:85:6: lv_abstract= 'abstract language' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:81:8: (lv_abstract= 'abstract language' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:83:6: lv_abstract= 'abstract language' { lv_abstract=(Token)input.LT(1); - match(input,11,FOLLOW_11_in_ruleGrammar133); + match(input,11,FOLLOW_11_in_ruleGrammar134); - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@groups.0/@terminal" /* xtext::Keyword */, "abstract"); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@groups.0/@terminal" /* xtext::Keyword */, "abstract"); if (current==null) { @@ -179,11 +182,11 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } break; case 2 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:104:6: 'language' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:102:6: 'language' { - match(input,12,FOLLOW_12_in_ruleGrammar160); + match(input,12,FOLLOW_12_in_ruleGrammar161); - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@groups.1" /* xtext::Keyword */, null); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@groups.1" /* xtext::Keyword */, null); } @@ -191,13 +194,13 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:108:2: (lv_idElements= RULE_ID ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:110:6: lv_idElements= RULE_ID + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:106:2: (lv_idElements= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:108:6: lv_idElements= RULE_ID { lv_idElements=(Token)input.LT(1); - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleGrammar182); + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleGrammar183); - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "idElements"); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "idElements"); if (current==null) { @@ -217,7 +220,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:128:3: ( '.' (lv_idElements= RULE_ID ) )* + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:126:3: ( '.' (lv_idElements= RULE_ID ) )* loop2: do { int alt2=2; @@ -230,19 +233,19 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl switch (alt2) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:128:4: '.' (lv_idElements= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:126:4: '.' (lv_idElements= RULE_ID ) { - match(input,13,FOLLOW_13_in_ruleGrammar204); + match(input,13,FOLLOW_13_in_ruleGrammar205); - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:132:1: (lv_idElements= RULE_ID ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:134:6: lv_idElements= RULE_ID + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:130:1: (lv_idElements= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:132:6: lv_idElements= RULE_ID { lv_idElements=(Token)input.LT(1); - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleGrammar225); + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleGrammar226); - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "idElements"); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "idElements"); if (current==null) { @@ -271,7 +274,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:152:5: ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:150:5: ( ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* )? int alt4=2; int LA4_0 = input.LA(1); @@ -280,22 +283,22 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } switch (alt4) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:152:6: ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:150:6: ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) ( '.' (lv_superGrammarIdElements= RULE_ID ) )* { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:152:6: ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:152:7: 'extends' (lv_superGrammarIdElements= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:150:6: ( 'extends' (lv_superGrammarIdElements= RULE_ID ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:150:7: 'extends' (lv_superGrammarIdElements= RULE_ID ) { - match(input,14,FOLLOW_14_in_ruleGrammar250); + match(input,14,FOLLOW_14_in_ruleGrammar251); - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:156:1: (lv_superGrammarIdElements= RULE_ID ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:158:6: lv_superGrammarIdElements= RULE_ID + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:154:1: (lv_superGrammarIdElements= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:156:6: lv_superGrammarIdElements= RULE_ID { lv_superGrammarIdElements=(Token)input.LT(1); - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleGrammar271); + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleGrammar272); - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "superGrammarIdElements"); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "superGrammarIdElements"); if (current==null) { @@ -315,7 +318,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:176:3: ( '.' (lv_superGrammarIdElements= RULE_ID ) )* + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:174:3: ( '.' (lv_superGrammarIdElements= RULE_ID ) )* loop3: do { int alt3=2; @@ -328,19 +331,19 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl switch (alt3) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:176:4: '.' (lv_superGrammarIdElements= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:174:4: '.' (lv_superGrammarIdElements= RULE_ID ) { - match(input,13,FOLLOW_13_in_ruleGrammar293); + match(input,13,FOLLOW_13_in_ruleGrammar294); - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:180:1: (lv_superGrammarIdElements= RULE_ID ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:182:6: lv_superGrammarIdElements= RULE_ID + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:178:1: (lv_superGrammarIdElements= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:180:6: lv_superGrammarIdElements= RULE_ID { lv_superGrammarIdElements=(Token)input.LT(1); - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleGrammar314); + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleGrammar315); - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "superGrammarIdElements"); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "superGrammarIdElements"); if (current==null) { @@ -375,25 +378,177 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:200:7: (lv_metamodelDeclarations= ruleAbstractMetamodelDeclaration )* - loop5: + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:198:7: ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? + int alt7=2; + int LA7_0 = input.LA(1); + + if ( (LA7_0==15) ) { + alt7=1; + } + switch (alt7) { + case 1 : + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:198:8: ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' + { + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:198:8: ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:198:9: ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? + { + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:198:9: ( (lv_definesHiddenTokens= 'hidden' ) '(' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:198:10: (lv_definesHiddenTokens= 'hidden' ) '(' + { + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:198:10: (lv_definesHiddenTokens= 'hidden' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:200:6: lv_definesHiddenTokens= 'hidden' + { + lv_definesHiddenTokens=(Token)input.LT(1); + match(input,15,FOLLOW_15_in_ruleGrammar355); + + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@terminal" /* xtext::Keyword */, "definesHiddenTokens"); + + + if (current==null) { + current = factory.create("Grammar"); + associateNodeWithAstElement(currentNode, current); + } + + try { + factory.set(current, "definesHiddenTokens", true, "hidden", currentNode); + } catch (ValueConverterException vce) { + handleValueConverterException(vce); + } + + + } + + match(input,16,FOLLOW_16_in_ruleGrammar376); + + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); + + + } + + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:222:2: ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? + int alt6=2; + int LA6_0 = input.LA(1); + + if ( (LA6_0==RULE_ID) ) { + alt6=1; + } + switch (alt6) { + case 1 : + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:222:3: ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* + { + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:222:3: ( ( RULE_ID ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:225:3: ( RULE_ID ) + { + + if (current==null) { + current = factory.create("Grammar"); + associateNodeWithAstElement(currentNode, current); + } + + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:231:1: ( RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:232:2: RULE_ID + { + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleGrammar402); + + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@terminal" /* xtext::CrossReference */, "hiddenTokens"); + + + } + + + } + + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:237:2: ( ',' ( ( RULE_ID ) ) )* + loop5: + do { + int alt5=2; + int LA5_0 = input.LA(1); + + if ( (LA5_0==17) ) { + alt5=1; + } + + + switch (alt5) { + case 1 : + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:237:3: ',' ( ( RULE_ID ) ) + { + match(input,17,FOLLOW_17_in_ruleGrammar416); + + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); + + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:241:1: ( ( RULE_ID ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:244:3: ( RULE_ID ) + { + + if (current==null) { + current = factory.create("Grammar"); + associateNodeWithAstElement(currentNode, current); + } + + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:250:1: ( RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:251:2: RULE_ID + { + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleGrammar440); + + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "hiddenTokens"); + + + } + + + } + + + } + break; + + default : + break loop5; + } + } while (true); + + + } + break; + + } + + + } + + match(input,18,FOLLOW_18_in_ruleGrammar458); + + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1" /* xtext::Keyword */, null); + + + } + break; + + } + + + } + + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:260:4: (lv_metamodelDeclarations= ruleAbstractMetamodelDeclaration )* + loop8: do { - int alt5=2; - int LA5_0 = input.LA(1); + int alt8=2; + int LA8_0 = input.LA(1); - if ( (LA5_0==15||LA5_0==17) ) { - alt5=1; + if ( (LA8_0==19||LA8_0==21) ) { + alt8=1; } - switch (alt5) { + switch (alt8) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:203:6: lv_metamodelDeclarations= ruleAbstractMetamodelDeclaration + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:263:6: lv_metamodelDeclarations= ruleAbstractMetamodelDeclaration { currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, currentNode); - pushFollow(FOLLOW_ruleAbstractMetamodelDeclaration_in_ruleGrammar364); + pushFollow(FOLLOW_ruleAbstractMetamodelDeclaration_in_ruleGrammar495); lv_metamodelDeclarations=ruleAbstractMetamodelDeclaration(); _fsp--; @@ -415,33 +570,33 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl break; default : - break loop5; + break loop8; } } while (true); } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:221:4: (lv_rules= ruleAbstractRule )+ - int cnt6=0; - loop6: + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:281:4: (lv_rules= ruleAbstractRule )+ + int cnt9=0; + loop9: do { - int alt6=2; - int LA6_0 = input.LA(1); + int alt9=2; + int LA9_0 = input.LA(1); - if ( (LA6_0==RULE_ID||(LA6_0>=18 && LA6_0<=19)||LA6_0==27) ) { - alt6=1; + if ( (LA9_0==RULE_ID||(LA9_0>=22 && LA9_0<=23)||LA9_0==27) ) { + alt9=1; } - switch (alt6) { + switch (alt9) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:224:6: lv_rules= ruleAbstractRule + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:284:6: lv_rules= ruleAbstractRule { currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.0/@alternatives/@abstractTokens.1/@terminal" /* xtext::RuleCall */, currentNode); - pushFollow(FOLLOW_ruleAbstractRule_in_ruleGrammar404); + pushFollow(FOLLOW_ruleAbstractRule_in_ruleGrammar535); lv_rules=ruleAbstractRule(); _fsp--; @@ -463,12 +618,12 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl break; default : - if ( cnt6 >= 1 ) break loop6; + if ( cnt9 >= 1 ) break loop9; EarlyExitException eee = - new EarlyExitException(6, input); + new EarlyExitException(9, input); throw eee; } - cnt6++; + cnt9++; } while (true); @@ -478,7 +633,6 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } resetLookahead(); - myHiddenTokenState.restore(); } @@ -494,7 +648,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start entryRuleAbstractRule - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:251:1: entryRuleAbstractRule returns [EObject current=null] : iv_ruleAbstractRule= ruleAbstractRule EOF ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:311:1: entryRuleAbstractRule returns [EObject current=null] : iv_ruleAbstractRule= ruleAbstractRule EOF ; public final EObject entryRuleAbstractRule() throws RecognitionException { EObject current = null; @@ -502,16 +656,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:251:54: (iv_ruleAbstractRule= ruleAbstractRule EOF ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:252:2: iv_ruleAbstractRule= ruleAbstractRule EOF + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:311:54: (iv_ruleAbstractRule= ruleAbstractRule EOF ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:312:2: iv_ruleAbstractRule= ruleAbstractRule EOF { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.1" /* xtext::ParserRule */, currentNode); - pushFollow(FOLLOW_ruleAbstractRule_in_entryRuleAbstractRule444); + pushFollow(FOLLOW_ruleAbstractRule_in_entryRuleAbstractRule575); iv_ruleAbstractRule=ruleAbstractRule(); _fsp--; current =iv_ruleAbstractRule; - match(input,EOF,FOLLOW_EOF_in_entryRuleAbstractRule454); + match(input,EOF,FOLLOW_EOF_in_entryRuleAbstractRule585); } @@ -529,7 +683,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start ruleAbstractRule - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:259:1: ruleAbstractRule returns [EObject current=null] : ( (this_LexerRule= ruleLexerRule | this_ParserRule= ruleParserRule ) | this_TerminalRule= ruleTerminalRule ) ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:319:1: ruleAbstractRule returns [EObject current=null] : ( (this_LexerRule= ruleLexerRule | this_ParserRule= ruleParserRule ) | this_TerminalRule= ruleTerminalRule ) ; public final EObject ruleAbstractRule() throws RecognitionException { EObject current = null; @@ -543,53 +697,53 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl EObject temp=null; setCurrentLookahead(); resetLookahead(); try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:263:6: ( ( (this_LexerRule= ruleLexerRule | this_ParserRule= ruleParserRule ) | this_TerminalRule= ruleTerminalRule ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:264:1: ( (this_LexerRule= ruleLexerRule | this_ParserRule= ruleParserRule ) | this_TerminalRule= ruleTerminalRule ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:323:6: ( ( (this_LexerRule= ruleLexerRule | this_ParserRule= ruleParserRule ) | this_TerminalRule= ruleTerminalRule ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:324:1: ( (this_LexerRule= ruleLexerRule | this_ParserRule= ruleParserRule ) | this_TerminalRule= ruleTerminalRule ) { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:264:1: ( (this_LexerRule= ruleLexerRule | this_ParserRule= ruleParserRule ) | this_TerminalRule= ruleTerminalRule ) - int alt8=2; - int LA8_0 = input.LA(1); + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:324:1: ( (this_LexerRule= ruleLexerRule | this_ParserRule= ruleParserRule ) | this_TerminalRule= ruleTerminalRule ) + int alt11=2; + int LA11_0 = input.LA(1); - if ( (LA8_0==RULE_ID||(LA8_0>=18 && LA8_0<=19)) ) { - alt8=1; + if ( (LA11_0==RULE_ID||(LA11_0>=22 && LA11_0<=23)) ) { + alt11=1; } - else if ( (LA8_0==27) ) { - alt8=2; + else if ( (LA11_0==27) ) { + alt11=2; } else { NoViableAltException nvae = - new NoViableAltException("264:1: ( (this_LexerRule= ruleLexerRule | this_ParserRule= ruleParserRule ) | this_TerminalRule= ruleTerminalRule )", 8, 0, input); + new NoViableAltException("324:1: ( (this_LexerRule= ruleLexerRule | this_ParserRule= ruleParserRule ) | this_TerminalRule= ruleTerminalRule )", 11, 0, input); throw nvae; } - switch (alt8) { + switch (alt11) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:264:2: (this_LexerRule= ruleLexerRule | this_ParserRule= ruleParserRule ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:324:2: (this_LexerRule= ruleLexerRule | this_ParserRule= ruleParserRule ) { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:264:2: (this_LexerRule= ruleLexerRule | this_ParserRule= ruleParserRule ) - int alt7=2; - int LA7_0 = input.LA(1); + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:324:2: (this_LexerRule= ruleLexerRule | this_ParserRule= ruleParserRule ) + int alt10=2; + int LA10_0 = input.LA(1); - if ( ((LA7_0>=18 && LA7_0<=19)) ) { - alt7=1; + if ( ((LA10_0>=22 && LA10_0<=23)) ) { + alt10=1; } - else if ( (LA7_0==RULE_ID) ) { - alt7=2; + else if ( (LA10_0==RULE_ID) ) { + alt10=2; } else { NoViableAltException nvae = - new NoViableAltException("264:2: (this_LexerRule= ruleLexerRule | this_ParserRule= ruleParserRule )", 7, 0, input); + new NoViableAltException("324:2: (this_LexerRule= ruleLexerRule | this_ParserRule= ruleParserRule )", 10, 0, input); throw nvae; } - switch (alt7) { + switch (alt10) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:265:5: this_LexerRule= ruleLexerRule + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:325:5: this_LexerRule= ruleLexerRule { currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.1/@alternatives/@groups.0/@groups.0" /* xtext::RuleCall */, currentNode); - pushFollow(FOLLOW_ruleLexerRule_in_ruleAbstractRule502); + pushFollow(FOLLOW_ruleLexerRule_in_ruleAbstractRule633); this_LexerRule=ruleLexerRule(); _fsp--; @@ -601,12 +755,12 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } break; case 2 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:275:5: this_ParserRule= ruleParserRule + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:335:5: this_ParserRule= ruleParserRule { currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.1/@alternatives/@groups.0/@groups.1" /* xtext::RuleCall */, currentNode); - pushFollow(FOLLOW_ruleParserRule_in_ruleAbstractRule529); + pushFollow(FOLLOW_ruleParserRule_in_ruleAbstractRule660); this_ParserRule=ruleParserRule(); _fsp--; @@ -624,12 +778,12 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } break; case 2 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:285:5: this_TerminalRule= ruleTerminalRule + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:345:5: this_TerminalRule= ruleTerminalRule { currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.1/@alternatives/@groups.1" /* xtext::RuleCall */, currentNode); - pushFollow(FOLLOW_ruleTerminalRule_in_ruleAbstractRule557); + pushFollow(FOLLOW_ruleTerminalRule_in_ruleAbstractRule688); this_TerminalRule=ruleTerminalRule(); _fsp--; @@ -662,7 +816,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start entryRuleAbstractMetamodelDeclaration - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:302:1: entryRuleAbstractMetamodelDeclaration returns [EObject current=null] : iv_ruleAbstractMetamodelDeclaration= ruleAbstractMetamodelDeclaration EOF ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:362:1: entryRuleAbstractMetamodelDeclaration returns [EObject current=null] : iv_ruleAbstractMetamodelDeclaration= ruleAbstractMetamodelDeclaration EOF ; public final EObject entryRuleAbstractMetamodelDeclaration() throws RecognitionException { EObject current = null; @@ -670,16 +824,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:302:70: (iv_ruleAbstractMetamodelDeclaration= ruleAbstractMetamodelDeclaration EOF ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:303:2: iv_ruleAbstractMetamodelDeclaration= ruleAbstractMetamodelDeclaration EOF + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:362:70: (iv_ruleAbstractMetamodelDeclaration= ruleAbstractMetamodelDeclaration EOF ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:363:2: iv_ruleAbstractMetamodelDeclaration= ruleAbstractMetamodelDeclaration EOF { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.2" /* xtext::ParserRule */, currentNode); - pushFollow(FOLLOW_ruleAbstractMetamodelDeclaration_in_entryRuleAbstractMetamodelDeclaration591); + pushFollow(FOLLOW_ruleAbstractMetamodelDeclaration_in_entryRuleAbstractMetamodelDeclaration722); iv_ruleAbstractMetamodelDeclaration=ruleAbstractMetamodelDeclaration(); _fsp--; current =iv_ruleAbstractMetamodelDeclaration; - match(input,EOF,FOLLOW_EOF_in_entryRuleAbstractMetamodelDeclaration601); + match(input,EOF,FOLLOW_EOF_in_entryRuleAbstractMetamodelDeclaration732); } @@ -697,7 +851,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start ruleAbstractMetamodelDeclaration - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:310:1: ruleAbstractMetamodelDeclaration returns [EObject current=null] : (this_GeneratedMetamodel= ruleGeneratedMetamodel | this_ReferencedMetamodel= ruleReferencedMetamodel ) ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:370:1: ruleAbstractMetamodelDeclaration returns [EObject current=null] : (this_GeneratedMetamodel= ruleGeneratedMetamodel | this_ReferencedMetamodel= ruleReferencedMetamodel ) ; public final EObject ruleAbstractMetamodelDeclaration() throws RecognitionException { EObject current = null; @@ -709,33 +863,33 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl EObject temp=null; setCurrentLookahead(); resetLookahead(); try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:314:6: ( (this_GeneratedMetamodel= ruleGeneratedMetamodel | this_ReferencedMetamodel= ruleReferencedMetamodel ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:315:1: (this_GeneratedMetamodel= ruleGeneratedMetamodel | this_ReferencedMetamodel= ruleReferencedMetamodel ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:374:6: ( (this_GeneratedMetamodel= ruleGeneratedMetamodel | this_ReferencedMetamodel= ruleReferencedMetamodel ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:375:1: (this_GeneratedMetamodel= ruleGeneratedMetamodel | this_ReferencedMetamodel= ruleReferencedMetamodel ) { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:315:1: (this_GeneratedMetamodel= ruleGeneratedMetamodel | this_ReferencedMetamodel= ruleReferencedMetamodel ) - int alt9=2; - int LA9_0 = input.LA(1); + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:375:1: (this_GeneratedMetamodel= ruleGeneratedMetamodel | this_ReferencedMetamodel= ruleReferencedMetamodel ) + int alt12=2; + int LA12_0 = input.LA(1); - if ( (LA9_0==15) ) { - alt9=1; + if ( (LA12_0==19) ) { + alt12=1; } - else if ( (LA9_0==17) ) { - alt9=2; + else if ( (LA12_0==21) ) { + alt12=2; } else { NoViableAltException nvae = - new NoViableAltException("315:1: (this_GeneratedMetamodel= ruleGeneratedMetamodel | this_ReferencedMetamodel= ruleReferencedMetamodel )", 9, 0, input); + new NoViableAltException("375:1: (this_GeneratedMetamodel= ruleGeneratedMetamodel | this_ReferencedMetamodel= ruleReferencedMetamodel )", 12, 0, input); throw nvae; } - switch (alt9) { + switch (alt12) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:316:5: this_GeneratedMetamodel= ruleGeneratedMetamodel + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:376:5: this_GeneratedMetamodel= ruleGeneratedMetamodel { currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.2/@alternatives/@groups.0" /* xtext::RuleCall */, currentNode); - pushFollow(FOLLOW_ruleGeneratedMetamodel_in_ruleAbstractMetamodelDeclaration648); + pushFollow(FOLLOW_ruleGeneratedMetamodel_in_ruleAbstractMetamodelDeclaration779); this_GeneratedMetamodel=ruleGeneratedMetamodel(); _fsp--; @@ -747,12 +901,12 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } break; case 2 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:326:5: this_ReferencedMetamodel= ruleReferencedMetamodel + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:386:5: this_ReferencedMetamodel= ruleReferencedMetamodel { currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.2/@alternatives/@groups.1" /* xtext::RuleCall */, currentNode); - pushFollow(FOLLOW_ruleReferencedMetamodel_in_ruleAbstractMetamodelDeclaration675); + pushFollow(FOLLOW_ruleReferencedMetamodel_in_ruleAbstractMetamodelDeclaration806); this_ReferencedMetamodel=ruleReferencedMetamodel(); _fsp--; @@ -785,7 +939,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start entryRuleGeneratedMetamodel - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:343:1: entryRuleGeneratedMetamodel returns [EObject current=null] : iv_ruleGeneratedMetamodel= ruleGeneratedMetamodel EOF ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:403:1: entryRuleGeneratedMetamodel returns [EObject current=null] : iv_ruleGeneratedMetamodel= ruleGeneratedMetamodel EOF ; public final EObject entryRuleGeneratedMetamodel() throws RecognitionException { EObject current = null; @@ -793,16 +947,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:343:60: (iv_ruleGeneratedMetamodel= ruleGeneratedMetamodel EOF ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:344:2: iv_ruleGeneratedMetamodel= ruleGeneratedMetamodel EOF + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:403:60: (iv_ruleGeneratedMetamodel= ruleGeneratedMetamodel EOF ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:404:2: iv_ruleGeneratedMetamodel= ruleGeneratedMetamodel EOF { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.3" /* xtext::ParserRule */, currentNode); - pushFollow(FOLLOW_ruleGeneratedMetamodel_in_entryRuleGeneratedMetamodel709); + pushFollow(FOLLOW_ruleGeneratedMetamodel_in_entryRuleGeneratedMetamodel840); iv_ruleGeneratedMetamodel=ruleGeneratedMetamodel(); _fsp--; current =iv_ruleGeneratedMetamodel; - match(input,EOF,FOLLOW_EOF_in_entryRuleGeneratedMetamodel719); + match(input,EOF,FOLLOW_EOF_in_entryRuleGeneratedMetamodel850); } @@ -820,7 +974,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start ruleGeneratedMetamodel - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:351:1: ruleGeneratedMetamodel returns [EObject current=null] : ( ( ( 'generate' (lv_name= RULE_ID ) ) ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? ) ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:411:1: ruleGeneratedMetamodel returns [EObject current=null] : ( ( ( 'generate' (lv_name= RULE_ID ) ) ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? ) ; public final EObject ruleGeneratedMetamodel() throws RecognitionException { EObject current = null; @@ -830,27 +984,27 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl EObject temp=null; setCurrentLookahead(); resetLookahead(); try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:355:6: ( ( ( ( 'generate' (lv_name= RULE_ID ) ) ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:356:1: ( ( ( 'generate' (lv_name= RULE_ID ) ) ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:415:6: ( ( ( ( 'generate' (lv_name= RULE_ID ) ) ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:416:1: ( ( ( 'generate' (lv_name= RULE_ID ) ) ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? ) { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:356:1: ( ( ( 'generate' (lv_name= RULE_ID ) ) ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:356:2: ( ( 'generate' (lv_name= RULE_ID ) ) ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:416:1: ( ( ( 'generate' (lv_name= RULE_ID ) ) ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:416:2: ( ( 'generate' (lv_name= RULE_ID ) ) ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:356:2: ( ( 'generate' (lv_name= RULE_ID ) ) ( ( RULE_STRING ) ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:356:3: ( 'generate' (lv_name= RULE_ID ) ) ( ( RULE_STRING ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:416:2: ( ( 'generate' (lv_name= RULE_ID ) ) ( ( RULE_STRING ) ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:416:3: ( 'generate' (lv_name= RULE_ID ) ) ( ( RULE_STRING ) ) { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:356:3: ( 'generate' (lv_name= RULE_ID ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:356:4: 'generate' (lv_name= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:416:3: ( 'generate' (lv_name= RULE_ID ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:416:4: 'generate' (lv_name= RULE_ID ) { - match(input,15,FOLLOW_15_in_ruleGeneratedMetamodel755); + match(input,19,FOLLOW_19_in_ruleGeneratedMetamodel886); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:360:1: (lv_name= RULE_ID ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:362:6: lv_name= RULE_ID + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:420:1: (lv_name= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:422:6: lv_name= RULE_ID { lv_name=(Token)input.LT(1); - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleGeneratedMetamodel776); + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleGeneratedMetamodel907); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); @@ -872,8 +1026,8 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:380:3: ( ( RULE_STRING ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:383:3: ( RULE_STRING ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:440:3: ( ( RULE_STRING ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:443:3: ( RULE_STRING ) { if (current==null) { @@ -881,10 +1035,10 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl associateNodeWithAstElement(currentNode, current); } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:389:1: ( RULE_STRING ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:390:2: RULE_STRING + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:449:1: ( RULE_STRING ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:450:2: RULE_STRING { - match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleGeneratedMetamodel812); + match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleGeneratedMetamodel943); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.3/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "ePackage"); @@ -897,26 +1051,26 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:395:3: ( 'as' (lv_alias= RULE_ID ) )? - int alt10=2; - int LA10_0 = input.LA(1); + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:455:3: ( 'as' (lv_alias= RULE_ID ) )? + int alt13=2; + int LA13_0 = input.LA(1); - if ( (LA10_0==16) ) { - alt10=1; + if ( (LA13_0==20) ) { + alt13=1; } - switch (alt10) { + switch (alt13) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:395:4: 'as' (lv_alias= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:455:4: 'as' (lv_alias= RULE_ID ) { - match(input,16,FOLLOW_16_in_ruleGeneratedMetamodel827); + match(input,20,FOLLOW_20_in_ruleGeneratedMetamodel958); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.3/@alternatives/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:399:1: (lv_alias= RULE_ID ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:401:6: lv_alias= RULE_ID + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:459:1: (lv_alias= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:461:6: lv_alias= RULE_ID { lv_alias=(Token)input.LT(1); - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleGeneratedMetamodel848); + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleGeneratedMetamodel979); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.3/@alternatives/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "alias"); @@ -963,7 +1117,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start entryRuleReferencedMetamodel - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:428:1: entryRuleReferencedMetamodel returns [EObject current=null] : iv_ruleReferencedMetamodel= ruleReferencedMetamodel EOF ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:488:1: entryRuleReferencedMetamodel returns [EObject current=null] : iv_ruleReferencedMetamodel= ruleReferencedMetamodel EOF ; public final EObject entryRuleReferencedMetamodel() throws RecognitionException { EObject current = null; @@ -971,16 +1125,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:428:61: (iv_ruleReferencedMetamodel= ruleReferencedMetamodel EOF ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:429:2: iv_ruleReferencedMetamodel= ruleReferencedMetamodel EOF + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:488:61: (iv_ruleReferencedMetamodel= ruleReferencedMetamodel EOF ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:489:2: iv_ruleReferencedMetamodel= ruleReferencedMetamodel EOF { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.4" /* xtext::ParserRule */, currentNode); - pushFollow(FOLLOW_ruleReferencedMetamodel_in_entryRuleReferencedMetamodel896); + pushFollow(FOLLOW_ruleReferencedMetamodel_in_entryRuleReferencedMetamodel1027); iv_ruleReferencedMetamodel=ruleReferencedMetamodel(); _fsp--; current =iv_ruleReferencedMetamodel; - match(input,EOF,FOLLOW_EOF_in_entryRuleReferencedMetamodel906); + match(input,EOF,FOLLOW_EOF_in_entryRuleReferencedMetamodel1037); } @@ -998,7 +1152,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start ruleReferencedMetamodel - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:436:1: ruleReferencedMetamodel returns [EObject current=null] : ( ( 'import' ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? ) ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:496:1: ruleReferencedMetamodel returns [EObject current=null] : ( ( 'import' ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? ) ; public final EObject ruleReferencedMetamodel() throws RecognitionException { EObject current = null; @@ -1007,21 +1161,21 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl EObject temp=null; setCurrentLookahead(); resetLookahead(); try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:440:6: ( ( ( 'import' ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:441:1: ( ( 'import' ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:500:6: ( ( ( 'import' ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:501:1: ( ( 'import' ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? ) { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:441:1: ( ( 'import' ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:441:2: ( 'import' ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:501:1: ( ( 'import' ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:501:2: ( 'import' ( ( RULE_STRING ) ) ) ( 'as' (lv_alias= RULE_ID ) )? { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:441:2: ( 'import' ( ( RULE_STRING ) ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:441:3: 'import' ( ( RULE_STRING ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:501:2: ( 'import' ( ( RULE_STRING ) ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:501:3: 'import' ( ( RULE_STRING ) ) { - match(input,17,FOLLOW_17_in_ruleReferencedMetamodel941); + match(input,21,FOLLOW_21_in_ruleReferencedMetamodel1072); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.4/@alternatives/@abstractTokens.0/@abstractTokens.0" /* xtext::Keyword */, null); - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:445:1: ( ( RULE_STRING ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:448:3: ( RULE_STRING ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:505:1: ( ( RULE_STRING ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:508:3: ( RULE_STRING ) { if (current==null) { @@ -1029,10 +1183,10 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl associateNodeWithAstElement(currentNode, current); } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:454:1: ( RULE_STRING ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:455:2: RULE_STRING + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:514:1: ( RULE_STRING ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:515:2: RULE_STRING { - match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleReferencedMetamodel965); + match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleReferencedMetamodel1096); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.4/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "ePackage"); @@ -1045,26 +1199,26 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:460:3: ( 'as' (lv_alias= RULE_ID ) )? - int alt11=2; - int LA11_0 = input.LA(1); + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:520:3: ( 'as' (lv_alias= RULE_ID ) )? + int alt14=2; + int LA14_0 = input.LA(1); - if ( (LA11_0==16) ) { - alt11=1; + if ( (LA14_0==20) ) { + alt14=1; } - switch (alt11) { + switch (alt14) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:460:4: 'as' (lv_alias= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:520:4: 'as' (lv_alias= RULE_ID ) { - match(input,16,FOLLOW_16_in_ruleReferencedMetamodel980); + match(input,20,FOLLOW_20_in_ruleReferencedMetamodel1111); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.4/@alternatives/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:464:1: (lv_alias= RULE_ID ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:466:6: lv_alias= RULE_ID + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:524:1: (lv_alias= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:526:6: lv_alias= RULE_ID { lv_alias=(Token)input.LT(1); - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleReferencedMetamodel1001); + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleReferencedMetamodel1132); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.4/@alternatives/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "alias"); @@ -1111,7 +1265,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start entryRuleLexerRule - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:493:1: entryRuleLexerRule returns [EObject current=null] : iv_ruleLexerRule= ruleLexerRule EOF ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:553:1: entryRuleLexerRule returns [EObject current=null] : iv_ruleLexerRule= ruleLexerRule EOF ; public final EObject entryRuleLexerRule() throws RecognitionException { EObject current = null; @@ -1119,16 +1273,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:493:51: (iv_ruleLexerRule= ruleLexerRule EOF ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:494:2: iv_ruleLexerRule= ruleLexerRule EOF + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:553:51: (iv_ruleLexerRule= ruleLexerRule EOF ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:554:2: iv_ruleLexerRule= ruleLexerRule EOF { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.5" /* xtext::ParserRule */, currentNode); - pushFollow(FOLLOW_ruleLexerRule_in_entryRuleLexerRule1049); + pushFollow(FOLLOW_ruleLexerRule_in_entryRuleLexerRule1180); iv_ruleLexerRule=ruleLexerRule(); _fsp--; current =iv_ruleLexerRule; - match(input,EOF,FOLLOW_EOF_in_entryRuleLexerRule1059); + match(input,EOF,FOLLOW_EOF_in_entryRuleLexerRule1190); } @@ -1146,7 +1300,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start ruleLexerRule - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:501:1: ruleLexerRule returns [EObject current=null] : ( ( ( ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_body= RULE_STRING ) ) ';' ) ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:561:1: ruleLexerRule returns [EObject current=null] : ( ( ( ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_body= RULE_STRING ) ) ';' ) ; public final EObject ruleLexerRule() throws RecognitionException { EObject current = null; @@ -1158,45 +1312,45 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl EObject temp=null; setCurrentLookahead(); resetLookahead(); try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:505:6: ( ( ( ( ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_body= RULE_STRING ) ) ';' ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:506:1: ( ( ( ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_body= RULE_STRING ) ) ';' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:565:6: ( ( ( ( ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_body= RULE_STRING ) ) ';' ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:566:1: ( ( ( ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_body= RULE_STRING ) ) ';' ) { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:506:1: ( ( ( ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_body= RULE_STRING ) ) ';' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:506:2: ( ( ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_body= RULE_STRING ) ) ';' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:566:1: ( ( ( ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_body= RULE_STRING ) ) ';' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:566:2: ( ( ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_body= RULE_STRING ) ) ';' { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:506:2: ( ( ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_body= RULE_STRING ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:506:3: ( ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_body= RULE_STRING ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:566:2: ( ( ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_body= RULE_STRING ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:566:3: ( ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_body= RULE_STRING ) { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:506:3: ( ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:506:4: ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:566:3: ( ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:566:4: ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:506:4: ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:506:5: ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:566:4: ( ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:566:5: ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:506:5: ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:506:6: ( 'native' | 'lexer' ) (lv_name= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:566:5: ( ( 'native' | 'lexer' ) (lv_name= RULE_ID ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:566:6: ( 'native' | 'lexer' ) (lv_name= RULE_ID ) { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:506:6: ( 'native' | 'lexer' ) - int alt12=2; - int LA12_0 = input.LA(1); + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:566:6: ( 'native' | 'lexer' ) + int alt15=2; + int LA15_0 = input.LA(1); - if ( (LA12_0==18) ) { - alt12=1; + if ( (LA15_0==22) ) { + alt15=1; } - else if ( (LA12_0==19) ) { - alt12=2; + else if ( (LA15_0==23) ) { + alt15=2; } else { NoViableAltException nvae = - new NoViableAltException("506:6: ( 'native' | 'lexer' )", 12, 0, input); + new NoViableAltException("566:6: ( 'native' | 'lexer' )", 15, 0, input); throw nvae; } - switch (alt12) { + switch (alt15) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:506:7: 'native' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:566:7: 'native' { - match(input,18,FOLLOW_18_in_ruleLexerRule1098); + match(input,22,FOLLOW_22_in_ruleLexerRule1229); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@groups.0" /* xtext::Keyword */, null); @@ -1204,9 +1358,9 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } break; case 2 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:511:6: 'lexer' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:571:6: 'lexer' { - match(input,19,FOLLOW_19_in_ruleLexerRule1113); + match(input,23,FOLLOW_23_in_ruleLexerRule1244); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@groups.1" /* xtext::Keyword */, null); @@ -1216,11 +1370,11 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:515:2: (lv_name= RULE_ID ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:517:6: lv_name= RULE_ID + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:575:2: (lv_name= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:577:6: lv_name= RULE_ID { lv_name=(Token)input.LT(1); - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleLexerRule1135); + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleLexerRule1266); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); @@ -1242,28 +1396,28 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:535:3: ( 'returns' (lv_type= ruleTypeRef ) )? - int alt13=2; - int LA13_0 = input.LA(1); + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:595:3: ( 'returns' (lv_type= ruleTypeRef ) )? + int alt16=2; + int LA16_0 = input.LA(1); - if ( (LA13_0==20) ) { - alt13=1; + if ( (LA16_0==24) ) { + alt16=1; } - switch (alt13) { + switch (alt16) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:535:4: 'returns' (lv_type= ruleTypeRef ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:595:4: 'returns' (lv_type= ruleTypeRef ) { - match(input,20,FOLLOW_20_in_ruleLexerRule1157); + match(input,24,FOLLOW_24_in_ruleLexerRule1288); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:539:1: (lv_type= ruleTypeRef ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:542:6: lv_type= ruleTypeRef + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:599:1: (lv_type= ruleTypeRef ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:602:6: lv_type= ruleTypeRef { currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::RuleCall */, currentNode); - pushFollow(FOLLOW_ruleTypeRef_in_ruleLexerRule1191); + pushFollow(FOLLOW_ruleTypeRef_in_ruleLexerRule1322); lv_type=ruleTypeRef(); _fsp--; @@ -1292,18 +1446,18 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - match(input,21,FOLLOW_21_in_ruleLexerRule1207); + match(input,25,FOLLOW_25_in_ruleLexerRule1338); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:564:2: (lv_body= RULE_STRING ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:566:6: lv_body= RULE_STRING + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:624:2: (lv_body= RULE_STRING ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:626:6: lv_body= RULE_STRING { lv_body=(Token)input.LT(1); - match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleLexerRule1229); + match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleLexerRule1360); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.5/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "body"); @@ -1325,7 +1479,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - match(input,22,FOLLOW_22_in_ruleLexerRule1250); + match(input,26,FOLLOW_26_in_ruleLexerRule1381); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.5/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); @@ -1351,7 +1505,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start entryRuleParserRule - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:597:1: entryRuleParserRule returns [EObject current=null] : iv_ruleParserRule= ruleParserRule EOF ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:657:1: entryRuleParserRule returns [EObject current=null] : iv_ruleParserRule= ruleParserRule EOF ; public final EObject entryRuleParserRule() throws RecognitionException { EObject current = null; @@ -1359,16 +1513,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:597:52: (iv_ruleParserRule= ruleParserRule EOF ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:598:2: iv_ruleParserRule= ruleParserRule EOF + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:657:52: (iv_ruleParserRule= ruleParserRule EOF ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:658:2: iv_ruleParserRule= ruleParserRule EOF { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6" /* xtext::ParserRule */, currentNode); - pushFollow(FOLLOW_ruleParserRule_in_entryRuleParserRule1285); + pushFollow(FOLLOW_ruleParserRule_in_entryRuleParserRule1416); iv_ruleParserRule=ruleParserRule(); _fsp--; current =iv_ruleParserRule; - match(input,EOF,FOLLOW_EOF_in_entryRuleParserRule1295); + match(input,EOF,FOLLOW_EOF_in_entryRuleParserRule1426); } @@ -1386,7 +1540,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start ruleParserRule - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:605:1: ruleParserRule returns [EObject current=null] : ( ( ( ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) ) ) ')' )? ) ':' ) (lv_alternatives= ruleAlternatives ) ) ';' ) ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:665:1: ruleParserRule returns [EObject current=null] : ( ( ( ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? ) ':' ) (lv_alternatives= ruleAlternatives ) ) ';' ) ; public final EObject ruleParserRule() throws RecognitionException { EObject current = null; @@ -1400,29 +1554,29 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl EObject temp=null; setCurrentLookahead(); resetLookahead(); try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:609:6: ( ( ( ( ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) ) ) ')' )? ) ':' ) (lv_alternatives= ruleAlternatives ) ) ';' ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:610:1: ( ( ( ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) ) ) ')' )? ) ':' ) (lv_alternatives= ruleAlternatives ) ) ';' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:669:6: ( ( ( ( ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? ) ':' ) (lv_alternatives= ruleAlternatives ) ) ';' ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:670:1: ( ( ( ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? ) ':' ) (lv_alternatives= ruleAlternatives ) ) ';' ) { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:610:1: ( ( ( ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) ) ) ')' )? ) ':' ) (lv_alternatives= ruleAlternatives ) ) ';' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:610:2: ( ( ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) ) ) ')' )? ) ':' ) (lv_alternatives= ruleAlternatives ) ) ';' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:670:1: ( ( ( ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? ) ':' ) (lv_alternatives= ruleAlternatives ) ) ';' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:670:2: ( ( ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? ) ':' ) (lv_alternatives= ruleAlternatives ) ) ';' { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:610:2: ( ( ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) ) ) ')' )? ) ':' ) (lv_alternatives= ruleAlternatives ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:610:3: ( ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) ) ) ')' )? ) ':' ) (lv_alternatives= ruleAlternatives ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:670:2: ( ( ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? ) ':' ) (lv_alternatives= ruleAlternatives ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:670:3: ( ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? ) ':' ) (lv_alternatives= ruleAlternatives ) { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:610:3: ( ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) ) ) ')' )? ) ':' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:610:4: ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) ) ) ')' )? ) ':' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:670:3: ( ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? ) ':' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:670:4: ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? ) ':' { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:610:4: ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) ) ) ')' )? ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:610:5: ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) ) ) ')' )? + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:670:4: ( ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:670:5: ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:610:5: ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:610:6: (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:670:5: ( (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:670:6: (lv_name= RULE_ID ) ( 'returns' (lv_type= ruleTypeRef ) )? { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:610:6: (lv_name= RULE_ID ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:612:6: lv_name= RULE_ID + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:670:6: (lv_name= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:672:6: lv_name= RULE_ID { lv_name=(Token)input.LT(1); - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleParserRule1345); + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleParserRule1476); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@terminal" /* xtext::RuleCall */, "name"); @@ -1441,28 +1595,28 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:630:2: ( 'returns' (lv_type= ruleTypeRef ) )? - int alt14=2; - int LA14_0 = input.LA(1); + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:690:2: ( 'returns' (lv_type= ruleTypeRef ) )? + int alt17=2; + int LA17_0 = input.LA(1); - if ( (LA14_0==20) ) { - alt14=1; + if ( (LA17_0==24) ) { + alt17=1; } - switch (alt14) { + switch (alt17) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:630:3: 'returns' (lv_type= ruleTypeRef ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:690:3: 'returns' (lv_type= ruleTypeRef ) { - match(input,20,FOLLOW_20_in_ruleParserRule1366); + match(input,24,FOLLOW_24_in_ruleParserRule1497); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:634:1: (lv_type= ruleTypeRef ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:637:6: lv_type= ruleTypeRef + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:694:1: (lv_type= ruleTypeRef ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:697:6: lv_type= ruleTypeRef { currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::RuleCall */, currentNode); - pushFollow(FOLLOW_ruleTypeRef_in_ruleParserRule1400); + pushFollow(FOLLOW_ruleTypeRef_in_ruleParserRule1531); lv_type=ruleTypeRef(); _fsp--; @@ -1491,33 +1645,30 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:655:5: ( ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) ) ) ')' )? - int alt15=2; - int LA15_0 = input.LA(1); + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:715:5: ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' )? + int alt20=2; + int LA20_0 = input.LA(1); - if ( (LA15_0==23) ) { - alt15=1; + if ( (LA20_0==15) ) { + alt20=1; } - switch (alt15) { + switch (alt20) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:655:6: ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) ) ) ')' - { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:655:6: ( ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:655:7: ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( RULE_ID ) ) ) ( ',' ( ( RULE_ID ) ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:715:6: ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) ')' { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:655:7: ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( RULE_ID ) ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:655:8: ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( RULE_ID ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:715:6: ( ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:715:7: ( (lv_definesHiddenTokens= 'hidden' ) '(' ) ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:655:8: ( (lv_definesHiddenTokens= 'hidden' ) '(' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:655:9: (lv_definesHiddenTokens= 'hidden' ) '(' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:715:7: ( (lv_definesHiddenTokens= 'hidden' ) '(' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:715:8: (lv_definesHiddenTokens= 'hidden' ) '(' { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:655:9: (lv_definesHiddenTokens= 'hidden' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:657:6: lv_definesHiddenTokens= 'hidden' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:715:8: (lv_definesHiddenTokens= 'hidden' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:717:6: lv_definesHiddenTokens= 'hidden' { lv_definesHiddenTokens=(Token)input.LT(1); - match(input,23,FOLLOW_23_in_ruleParserRule1432); + match(input,15,FOLLOW_15_in_ruleParserRule1562); - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@terminal" /* xtext::Keyword */, "definesHiddenTokens"); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@terminal" /* xtext::Keyword */, "definesHiddenTokens"); if (current==null) { @@ -1534,74 +1685,106 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - match(input,24,FOLLOW_24_in_ruleParserRule1453); + match(input,16,FOLLOW_16_in_ruleParserRule1583); - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:679:2: ( ( RULE_ID ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:682:3: ( RULE_ID ) - { - - if (current==null) { - current = factory.create("ParserRule"); - associateNodeWithAstElement(currentNode, current); - } - - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:688:1: ( RULE_ID ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:689:2: RULE_ID - { - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleParserRule1478); - - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "hiddenTokens"); - + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:739:2: ( ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* )? + int alt19=2; + int LA19_0 = input.LA(1); + if ( (LA19_0==RULE_ID) ) { + alt19=1; } + switch (alt19) { + case 1 : + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:739:3: ( ( RULE_ID ) ) ( ',' ( ( RULE_ID ) ) )* + { + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:739:3: ( ( RULE_ID ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:742:3: ( RULE_ID ) + { + if (current==null) { + current = factory.create("ParserRule"); + associateNodeWithAstElement(currentNode, current); + } + + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:748:1: ( RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:749:2: RULE_ID + { + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleParserRule1609); + + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@terminal" /* xtext::CrossReference */, "hiddenTokens"); + - } + } - } + } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:694:3: ( ',' ( ( RULE_ID ) ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:694:4: ',' ( ( RULE_ID ) ) - { - match(input,25,FOLLOW_25_in_ruleParserRule1493); + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:754:2: ( ',' ( ( RULE_ID ) ) )* + loop18: + do { + int alt18=2; + int LA18_0 = input.LA(1); - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); - - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:698:1: ( ( RULE_ID ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:701:3: ( RULE_ID ) - { + if ( (LA18_0==17) ) { + alt18=1; + } - if (current==null) { - current = factory.create("ParserRule"); - associateNodeWithAstElement(currentNode, current); - } - - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:707:1: ( RULE_ID ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:708:2: RULE_ID - { - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleParserRule1517); - - createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "hiddenTokens"); - - } + switch (alt18) { + case 1 : + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:754:3: ',' ( ( RULE_ID ) ) + { + match(input,17,FOLLOW_17_in_ruleParserRule1623); + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); + + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:758:1: ( ( RULE_ID ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:761:3: ( RULE_ID ) + { - } + if (current==null) { + current = factory.create("ParserRule"); + associateNodeWithAstElement(currentNode, current); + } + + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:767:1: ( RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:768:2: RULE_ID + { + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleParserRule1647); + + createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "hiddenTokens"); + + + } + } + + + } + break; + + default : + break loop18; + } + } while (true); + + + } + break; + } } - match(input,26,FOLLOW_26_in_ruleParserRule1532); + match(input,18,FOLLOW_18_in_ruleParserRule1665); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1" /* xtext::Keyword */, null); @@ -1614,20 +1797,20 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - match(input,21,FOLLOW_21_in_ruleParserRule1544); + match(input,25,FOLLOW_25_in_ruleParserRule1677); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:721:2: (lv_alternatives= ruleAlternatives ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:724:6: lv_alternatives= ruleAlternatives + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:781:2: (lv_alternatives= ruleAlternatives ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:784:6: lv_alternatives= ruleAlternatives { currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, currentNode); - pushFollow(FOLLOW_ruleAlternatives_in_ruleParserRule1579); + pushFollow(FOLLOW_ruleAlternatives_in_ruleParserRule1712); lv_alternatives=ruleAlternatives(); _fsp--; @@ -1650,7 +1833,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - match(input,22,FOLLOW_22_in_ruleParserRule1593); + match(input,26,FOLLOW_26_in_ruleParserRule1726); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.6/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); @@ -1676,7 +1859,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start entryRuleTerminalRule - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:755:1: entryRuleTerminalRule returns [EObject current=null] : iv_ruleTerminalRule= ruleTerminalRule EOF ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:815:1: entryRuleTerminalRule returns [EObject current=null] : iv_ruleTerminalRule= ruleTerminalRule EOF ; public final EObject entryRuleTerminalRule() throws RecognitionException { EObject current = null; @@ -1684,16 +1867,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:755:54: (iv_ruleTerminalRule= ruleTerminalRule EOF ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:756:2: iv_ruleTerminalRule= ruleTerminalRule EOF + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:815:54: (iv_ruleTerminalRule= ruleTerminalRule EOF ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:816:2: iv_ruleTerminalRule= ruleTerminalRule EOF { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.7" /* xtext::ParserRule */, currentNode); - pushFollow(FOLLOW_ruleTerminalRule_in_entryRuleTerminalRule1628); + pushFollow(FOLLOW_ruleTerminalRule_in_entryRuleTerminalRule1761); iv_ruleTerminalRule=ruleTerminalRule(); _fsp--; current =iv_ruleTerminalRule; - match(input,EOF,FOLLOW_EOF_in_entryRuleTerminalRule1638); + match(input,EOF,FOLLOW_EOF_in_entryRuleTerminalRule1771); } @@ -1711,7 +1894,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start ruleTerminalRule - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:763:1: ruleTerminalRule returns [EObject current=null] : ( ( ( ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_alternatives= ruleTerminalAlternatives ) ) ';' ) ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:823:1: ruleTerminalRule returns [EObject current=null] : ( ( ( ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_alternatives= ruleTerminalAlternatives ) ) ';' ) ; public final EObject ruleTerminalRule() throws RecognitionException { EObject current = null; @@ -1725,29 +1908,29 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl EObject temp=null; setCurrentLookahead(); resetLookahead(); try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:767:6: ( ( ( ( ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_alternatives= ruleTerminalAlternatives ) ) ';' ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:768:1: ( ( ( ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_alternatives= ruleTerminalAlternatives ) ) ';' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:827:6: ( ( ( ( ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_alternatives= ruleTerminalAlternatives ) ) ';' ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:828:1: ( ( ( ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_alternatives= ruleTerminalAlternatives ) ) ';' ) { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:768:1: ( ( ( ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_alternatives= ruleTerminalAlternatives ) ) ';' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:768:2: ( ( ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_alternatives= ruleTerminalAlternatives ) ) ';' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:828:1: ( ( ( ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_alternatives= ruleTerminalAlternatives ) ) ';' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:828:2: ( ( ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_alternatives= ruleTerminalAlternatives ) ) ';' { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:768:2: ( ( ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_alternatives= ruleTerminalAlternatives ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:768:3: ( ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_alternatives= ruleTerminalAlternatives ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:828:2: ( ( ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_alternatives= ruleTerminalAlternatives ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:828:3: ( ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) (lv_alternatives= ruleTerminalAlternatives ) { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:768:3: ( ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:768:4: ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:828:3: ( ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:828:4: ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) ':' { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:768:4: ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:768:5: ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:828:4: ( ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:828:5: ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) ( 'returns' (lv_type= ruleTypeRef ) )? { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:768:5: ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:768:6: (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:828:5: ( (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:828:6: (lv_terminal= 'terminal' ) (lv_name= RULE_ID ) { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:768:6: (lv_terminal= 'terminal' ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:770:6: lv_terminal= 'terminal' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:828:6: (lv_terminal= 'terminal' ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:830:6: lv_terminal= 'terminal' { lv_terminal=(Token)input.LT(1); - match(input,27,FOLLOW_27_in_ruleTerminalRule1688); + match(input,27,FOLLOW_27_in_ruleTerminalRule1821); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.7/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@terminal" /* xtext::Keyword */, "terminal"); @@ -1766,11 +1949,11 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:788:2: (lv_name= RULE_ID ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:790:6: lv_name= RULE_ID + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:848:2: (lv_name= RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:850:6: lv_name= RULE_ID { lv_name=(Token)input.LT(1); - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleTerminalRule1721); + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleTerminalRule1854); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.7/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, "name"); @@ -1792,28 +1975,28 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:808:3: ( 'returns' (lv_type= ruleTypeRef ) )? - int alt16=2; - int LA16_0 = input.LA(1); + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:868:3: ( 'returns' (lv_type= ruleTypeRef ) )? + int alt21=2; + int LA21_0 = input.LA(1); - if ( (LA16_0==20) ) { - alt16=1; + if ( (LA21_0==24) ) { + alt21=1; } - switch (alt16) { + switch (alt21) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:808:4: 'returns' (lv_type= ruleTypeRef ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:868:4: 'returns' (lv_type= ruleTypeRef ) { - match(input,20,FOLLOW_20_in_ruleTerminalRule1743); + match(input,24,FOLLOW_24_in_ruleTerminalRule1876); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.7/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.0" /* xtext::Keyword */, null); - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:812:1: (lv_type= ruleTypeRef ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:815:6: lv_type= ruleTypeRef + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:872:1: (lv_type= ruleTypeRef ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:875:6: lv_type= ruleTypeRef { currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.7/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1/@abstractTokens.1/@terminal" /* xtext::RuleCall */, currentNode); - pushFollow(FOLLOW_ruleTypeRef_in_ruleTerminalRule1777); + pushFollow(FOLLOW_ruleTypeRef_in_ruleTerminalRule1910); lv_type=ruleTypeRef(); _fsp--; @@ -1842,20 +2025,20 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - match(input,21,FOLLOW_21_in_ruleTerminalRule1793); + match(input,25,FOLLOW_25_in_ruleTerminalRule1926); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.7/@alternatives/@abstractTokens.0/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:837:2: (lv_alternatives= ruleTerminalAlternatives ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:840:6: lv_alternatives= ruleTerminalAlternatives + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:897:2: (lv_alternatives= ruleTerminalAlternatives ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:900:6: lv_alternatives= ruleTerminalAlternatives { currentNode=createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.7/@alternatives/@abstractTokens.0/@abstractTokens.1/@terminal" /* xtext::RuleCall */, currentNode); - pushFollow(FOLLOW_ruleTerminalAlternatives_in_ruleTerminalRule1828); + pushFollow(FOLLOW_ruleTerminalAlternatives_in_ruleTerminalRule1961); lv_alternatives=ruleTerminalAlternatives(); _fsp--; @@ -1878,7 +2061,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - match(input,22,FOLLOW_22_in_ruleTerminalRule1842); + match(input,26,FOLLOW_26_in_ruleTerminalRule1975); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.7/@alternatives/@abstractTokens.1" /* xtext::Keyword */, null); @@ -1904,7 +2087,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start entryRuleTypeRef - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:871:1: entryRuleTypeRef returns [EObject current=null] : iv_ruleTypeRef= ruleTypeRef EOF ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:931:1: entryRuleTypeRef returns [EObject current=null] : iv_ruleTypeRef= ruleTypeRef EOF ; public final EObject entryRuleTypeRef() throws RecognitionException { EObject current = null; @@ -1912,16 +2095,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:871:49: (iv_ruleTypeRef= ruleTypeRef EOF ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:872:2: iv_ruleTypeRef= ruleTypeRef EOF + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:931:49: (iv_ruleTypeRef= ruleTypeRef EOF ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:932:2: iv_ruleTypeRef= ruleTypeRef EOF { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.8" /* xtext::ParserRule */, currentNode); - pushFollow(FOLLOW_ruleTypeRef_in_entryRuleTypeRef1877); + pushFollow(FOLLOW_ruleTypeRef_in_entryRuleTypeRef2010); iv_ruleTypeRef=ruleTypeRef(); _fsp--; current =iv_ruleTypeRef; - match(input,EOF,FOLLOW_EOF_in_entryRuleTypeRef1887); + match(input,EOF,FOLLOW_EOF_in_entryRuleTypeRef2020); } @@ -1939,36 +2122,36 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start ruleTypeRef - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:879:1: ruleTypeRef returns [EObject current=null] : ( ( ( ( RULE_ID ) ) '::' )? ( ( RULE_ID ) ) ) ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:939:1: ruleTypeRef returns [EObject current=null] : ( ( ( ( RULE_ID ) ) '::' )? ( ( RULE_ID ) ) ) ; public final EObject ruleTypeRef() throws RecognitionException { EObject current = null; EObject temp=null; setCurrentLookahead(); resetLookahead(); try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:883:6: ( ( ( ( ( RULE_ID ) ) '::' )? ( ( RULE_ID ) ) ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:884:1: ( ( ( ( RULE_ID ) ) '::' )? ( ( RULE_ID ) ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:943:6: ( ( ( ( ( RULE_ID ) ) '::' )? ( ( RULE_ID ) ) ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:944:1: ( ( ( ( RULE_ID ) ) '::' )? ( ( RULE_ID ) ) ) { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:884:1: ( ( ( ( RULE_ID ) ) '::' )? ( ( RULE_ID ) ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:884:2: ( ( ( RULE_ID ) ) '::' )? ( ( RULE_ID ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:944:1: ( ( ( ( RULE_ID ) ) '::' )? ( ( RULE_ID ) ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:944:2: ( ( ( RULE_ID ) ) '::' )? ( ( RULE_ID ) ) { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:884:2: ( ( ( RULE_ID ) ) '::' )? - int alt17=2; - int LA17_0 = input.LA(1); + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:944:2: ( ( ( RULE_ID ) ) '::' )? + int alt22=2; + int LA22_0 = input.LA(1); - if ( (LA17_0==RULE_ID) ) { - int LA17_1 = input.LA(2); + if ( (LA22_0==RULE_ID) ) { + int LA22_1 = input.LA(2); - if ( (LA17_1==28) ) { - alt17=1; + if ( (LA22_1==28) ) { + alt22=1; } } - switch (alt17) { + switch (alt22) { case 1 : - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:884:3: ( ( RULE_ID ) ) '::' + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:944:3: ( ( RULE_ID ) ) '::' { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:884:3: ( ( RULE_ID ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:887:3: ( RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:944:3: ( ( RULE_ID ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:947:3: ( RULE_ID ) { if (current==null) { @@ -1976,10 +2159,10 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl associateNodeWithAstElement(currentNode, current); } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:893:1: ( RULE_ID ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:894:2: RULE_ID + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:953:1: ( RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:954:2: RULE_ID { - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleTypeRef1937); + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleTypeRef2070); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.8/@alternatives/@abstractTokens.0/@abstractTokens.0/@terminal" /* xtext::CrossReference */, "metamodel"); @@ -1989,7 +2172,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - match(input,28,FOLLOW_28_in_ruleTypeRef1950); + match(input,28,FOLLOW_28_in_ruleTypeRef2083); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.8/@alternatives/@abstractTokens.0/@abstractTokens.1" /* xtext::Keyword */, null); @@ -1999,8 +2182,8 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:903:3: ( ( RULE_ID ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:906:3: ( RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:963:3: ( ( RULE_ID ) ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:966:3: ( RULE_ID ) { if (current==null) { @@ -2008,10 +2191,10 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl associateNodeWithAstElement(currentNode, current); } - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:912:1: ( RULE_ID ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:913:2: RULE_ID + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:972:1: ( RULE_ID ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:973:2: RULE_ID { - match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleTypeRef1976); + match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleTypeRef2109); createLeafNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.8/@alternatives/@abstractTokens.1/@terminal" /* xtext::CrossReference */, "type"); @@ -2043,7 +2226,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start entryRuleAlternatives - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:927:1: entryRuleAlternatives returns [EObject current=null] : iv_ruleAlternatives= ruleAlternatives EOF ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:987:1: entryRuleAlternatives returns [EObject current=null] : iv_ruleAlternatives= ruleAlternatives EOF ; public final EObject entryRuleAlternatives() throws RecognitionException { EObject current = null; @@ -2051,16 +2234,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:927:54: (iv_ruleAlternatives= ruleAlternatives EOF ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:928:2: iv_ruleAlternatives= ruleAlternatives EOF + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:987:54: (iv_ruleAlternatives= ruleAlternatives EOF ) + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:988:2: iv_ruleAlternatives= ruleAlternatives EOF { currentNode = createCompositeNode("classpath:/org/eclipse/xtext/XtextGrammarTestLanguage.xmi#//@rules.9" /* xtext::ParserRule */, currentNode); - pushFollow(FOLLOW_ruleAlternatives_in_entryRuleAlternatives2015); + pushFollow(FOLLOW_ruleAlternatives_in_entryRuleAlternatives2148); iv_ruleAlternatives=ruleAlternatives(); _fsp--; current =iv_ruleAlternatives; - match(input,EOF,FOLLOW_EOF_in_entryRuleAlternatives2025); + match(input,EOF,FOLLOW_EOF_in_entryRuleAlternatives2158); } @@ -2078,7 +2261,7 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl // $ANTLR start ruleAlternatives - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:935:1: ruleAlternatives returns [EObject current=null] : (this_Group= ruleGroup ( ( () '|' ) (lv_groups= ruleGroup ) )* ) ; + // ../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:995:1: ruleAlternatives returns [EObject current=null] : (this_Group= ruleGroup ( ( () '|' ) (lv_groups= ruleGroup ) )* ) ; public final EObject ruleAlternatives() throws RecognitionException { EObject current = null; @@ -2090,16 +2273,16 @@ public class InternalXtextGrammarTestLanguageParser extends AbstractInternalAntl EObject temp=null; setCurrentLookahead(); resetLookahead(); try { - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src-gen/org/eclipse/xtext/parser/antlr/internal/InternalXtextGrammarTestLanguage.g:939:6: ( (this_Group= ruleGroup ( ( () '|' ) (lv_groups= ruleGroup ) )* ) ) - // ../org.eclipse.xtext.ui.common.tests//../org.eclipse.xtext.generator.tests/src |

