mirror of
https://github.com/sigmasternchen/xtext-core
synced 2025-03-15 08:18:55 +00:00
Merge pull request #1037 from eclipse/cd_bug544435
[544435] fixed issue with serializer and groups in non terminal rules
This commit is contained in:
commit
8e274f3daf
24 changed files with 1095 additions and 265 deletions
|
@ -38,7 +38,7 @@ public class HiddenTerminalsTestLanguageSyntacticSequencer extends AbstractSynta
|
|||
protected String getDatatypeRuleToken(EObject semanticObject, RuleCall ruleCall, INode node) {
|
||||
if (node != null)
|
||||
return getTokenText(node);
|
||||
return "rule;";
|
||||
return "rule ;";
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -59,7 +59,7 @@ public class SerializationErrorTestLanguageSemanticSequencer extends AbstractDel
|
|||
* Indent returns Indent
|
||||
*
|
||||
* Constraint:
|
||||
* ((req=TwoRequired? opt=TwoOptions indent+=Indent+) | (req=TwoRequired? indent+=Indent+) | indent+=Indent+)?
|
||||
* ((((req=TwoRequired opt=TwoOptions) | opt=TwoOptions)? indent+=Indent+) | indent+=Indent+)?
|
||||
*/
|
||||
protected void sequence_Indent(ISerializationContext context, Indent semanticObject) {
|
||||
genericSequencer.createSequence(context, semanticObject);
|
||||
|
|
|
@ -17,4 +17,5 @@
|
|||
<eClassifiers xsi:type="ecore:EClass" name="CommonTerminalsRule" eSuperTypes="#//Model">
|
||||
<eStructuralFeatures xsi:type="ecore:EAttribute" name="val" eType="ecore:EDataType platform:/resource/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
|
||||
</eClassifiers>
|
||||
<eClassifiers xsi:type="ecore:EClass" name="GroupRule" eSuperTypes="#//Model"/>
|
||||
</ecore:EPackage>
|
||||
|
|
|
@ -23,5 +23,6 @@
|
|||
<genClasses ecoreClass="UnassignedTextTestLanguage.ecore#//CommonTerminalsRule">
|
||||
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute UnassignedTextTestLanguage.ecore#//CommonTerminalsRule/val"/>
|
||||
</genClasses>
|
||||
<genClasses ecoreClass="UnassignedTextTestLanguage.ecore#//GroupRule"/>
|
||||
</genPackages>
|
||||
</genmodel:GenModel>
|
||||
|
|
Binary file not shown.
|
@ -120,6 +120,15 @@ ruleModel returns [EObject current=null]
|
|||
$current = $this_CommonTerminalsRule_4.current;
|
||||
afterParserOrEnumRuleCall();
|
||||
}
|
||||
|
|
||||
{
|
||||
newCompositeNode(grammarAccess.getModelAccess().getGroupRuleParserRuleCall_5());
|
||||
}
|
||||
this_GroupRule_5=ruleGroupRule
|
||||
{
|
||||
$current = $this_GroupRule_5.current;
|
||||
afterParserOrEnumRuleCall();
|
||||
}
|
||||
)
|
||||
;
|
||||
|
||||
|
@ -430,6 +439,82 @@ ruleCommonTerminalsRule returns [EObject current=null]
|
|||
)
|
||||
;
|
||||
|
||||
// Entry rule entryRuleGroupRule
|
||||
entryRuleGroupRule returns [EObject current=null]:
|
||||
{ newCompositeNode(grammarAccess.getGroupRuleRule()); }
|
||||
iv_ruleGroupRule=ruleGroupRule
|
||||
{ $current=$iv_ruleGroupRule.current; }
|
||||
EOF;
|
||||
|
||||
// Rule GroupRule
|
||||
ruleGroupRule returns [EObject current=null]
|
||||
@init {
|
||||
enterRule();
|
||||
}
|
||||
@after {
|
||||
leaveRule();
|
||||
}:
|
||||
(
|
||||
(
|
||||
{
|
||||
$current = forceCreateModelElement(
|
||||
grammarAccess.getGroupRuleAccess().getGroupRuleAction_0(),
|
||||
$current);
|
||||
}
|
||||
)
|
||||
otherlv_1='group'
|
||||
{
|
||||
newLeafNode(otherlv_1, grammarAccess.getGroupRuleAccess().getGroupKeyword_1());
|
||||
}
|
||||
{
|
||||
newCompositeNode(grammarAccess.getGroupRuleAccess().getGroupDataTypeRuleParserRuleCall_2());
|
||||
}
|
||||
ruleGroupDataTypeRule
|
||||
{
|
||||
afterParserOrEnumRuleCall();
|
||||
}
|
||||
)
|
||||
;
|
||||
|
||||
// Entry rule entryRuleGroupDataTypeRule
|
||||
entryRuleGroupDataTypeRule returns [String current=null]:
|
||||
{ newCompositeNode(grammarAccess.getGroupDataTypeRuleRule()); }
|
||||
iv_ruleGroupDataTypeRule=ruleGroupDataTypeRule
|
||||
{ $current=$iv_ruleGroupDataTypeRule.current.getText(); }
|
||||
EOF;
|
||||
|
||||
// Rule GroupDataTypeRule
|
||||
ruleGroupDataTypeRule returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()]
|
||||
@init {
|
||||
enterRule();
|
||||
}
|
||||
@after {
|
||||
leaveRule();
|
||||
}:
|
||||
(
|
||||
kw='this'
|
||||
{
|
||||
$current.merge(kw);
|
||||
newLeafNode(kw, grammarAccess.getGroupDataTypeRuleAccess().getThisKeyword_0());
|
||||
}
|
||||
kw='is'
|
||||
{
|
||||
$current.merge(kw);
|
||||
newLeafNode(kw, grammarAccess.getGroupDataTypeRuleAccess().getIsKeyword_1());
|
||||
}
|
||||
kw='a'
|
||||
{
|
||||
$current.merge(kw);
|
||||
newLeafNode(kw, grammarAccess.getGroupDataTypeRuleAccess().getAKeyword_2());
|
||||
}
|
||||
kw='test'
|
||||
{
|
||||
$current.merge(kw);
|
||||
newLeafNode(kw, grammarAccess.getGroupDataTypeRuleAccess().getTestKeyword_3());
|
||||
}
|
||||
)
|
||||
;
|
||||
|
||||
RULE_CASEINSENSITIVEKEYWORD : ('k'|'K') ('e'|'E') ('y'|'Y') ('w'|'W') ('o'|'O') ('r'|'R') ('d'|'D');
|
||||
|
||||
RULE_PLURAL : ('item'|'items');
|
||||
|
|
|
@ -1,8 +1,13 @@
|
|||
'a'=23
|
||||
'contents:'=15
|
||||
'datatype'=17
|
||||
'group'=20
|
||||
'is'=22
|
||||
'multi'=16
|
||||
'str'=18
|
||||
'terminals'=19
|
||||
'test'=24
|
||||
'this'=21
|
||||
RULE_ANY_OTHER=14
|
||||
RULE_CASEINSENSITIVEKEYWORD=4
|
||||
RULE_ID=9
|
||||
|
@ -19,3 +24,8 @@ T__16=16
|
|||
T__17=17
|
||||
T__18=18
|
||||
T__19=19
|
||||
T__20=20
|
||||
T__21=21
|
||||
T__22=22
|
||||
T__23=23
|
||||
T__24=24
|
||||
|
|
|
@ -27,8 +27,13 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
public static final int RULE_ANY_OTHER=14;
|
||||
public static final int RULE_MULTI=7;
|
||||
public static final int RULE_INT=5;
|
||||
public static final int T__22=22;
|
||||
public static final int RULE_ML_COMMENT=11;
|
||||
public static final int T__23=23;
|
||||
public static final int T__24=24;
|
||||
public static final int RULE_CASEINSENSITIVEKEYWORD=4;
|
||||
public static final int T__20=20;
|
||||
public static final int T__21=21;
|
||||
|
||||
// delegates
|
||||
// delegators
|
||||
|
@ -148,13 +153,117 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
}
|
||||
// $ANTLR end "T__19"
|
||||
|
||||
// $ANTLR start "T__20"
|
||||
public final void mT__20() throws RecognitionException {
|
||||
try {
|
||||
int _type = T__20;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalUnassignedTextTestLanguage.g:16:7: ( 'group' )
|
||||
// InternalUnassignedTextTestLanguage.g:16:9: 'group'
|
||||
{
|
||||
match("group");
|
||||
|
||||
|
||||
}
|
||||
|
||||
state.type = _type;
|
||||
state.channel = _channel;
|
||||
}
|
||||
finally {
|
||||
}
|
||||
}
|
||||
// $ANTLR end "T__20"
|
||||
|
||||
// $ANTLR start "T__21"
|
||||
public final void mT__21() throws RecognitionException {
|
||||
try {
|
||||
int _type = T__21;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalUnassignedTextTestLanguage.g:17:7: ( 'this' )
|
||||
// InternalUnassignedTextTestLanguage.g:17:9: 'this'
|
||||
{
|
||||
match("this");
|
||||
|
||||
|
||||
}
|
||||
|
||||
state.type = _type;
|
||||
state.channel = _channel;
|
||||
}
|
||||
finally {
|
||||
}
|
||||
}
|
||||
// $ANTLR end "T__21"
|
||||
|
||||
// $ANTLR start "T__22"
|
||||
public final void mT__22() throws RecognitionException {
|
||||
try {
|
||||
int _type = T__22;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalUnassignedTextTestLanguage.g:18:7: ( 'is' )
|
||||
// InternalUnassignedTextTestLanguage.g:18:9: 'is'
|
||||
{
|
||||
match("is");
|
||||
|
||||
|
||||
}
|
||||
|
||||
state.type = _type;
|
||||
state.channel = _channel;
|
||||
}
|
||||
finally {
|
||||
}
|
||||
}
|
||||
// $ANTLR end "T__22"
|
||||
|
||||
// $ANTLR start "T__23"
|
||||
public final void mT__23() throws RecognitionException {
|
||||
try {
|
||||
int _type = T__23;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalUnassignedTextTestLanguage.g:19:7: ( 'a' )
|
||||
// InternalUnassignedTextTestLanguage.g:19:9: 'a'
|
||||
{
|
||||
match('a');
|
||||
|
||||
}
|
||||
|
||||
state.type = _type;
|
||||
state.channel = _channel;
|
||||
}
|
||||
finally {
|
||||
}
|
||||
}
|
||||
// $ANTLR end "T__23"
|
||||
|
||||
// $ANTLR start "T__24"
|
||||
public final void mT__24() throws RecognitionException {
|
||||
try {
|
||||
int _type = T__24;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalUnassignedTextTestLanguage.g:20:7: ( 'test' )
|
||||
// InternalUnassignedTextTestLanguage.g:20:9: 'test'
|
||||
{
|
||||
match("test");
|
||||
|
||||
|
||||
}
|
||||
|
||||
state.type = _type;
|
||||
state.channel = _channel;
|
||||
}
|
||||
finally {
|
||||
}
|
||||
}
|
||||
// $ANTLR end "T__24"
|
||||
|
||||
// $ANTLR start "RULE_CASEINSENSITIVEKEYWORD"
|
||||
public final void mRULE_CASEINSENSITIVEKEYWORD() throws RecognitionException {
|
||||
try {
|
||||
int _type = RULE_CASEINSENSITIVEKEYWORD;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalUnassignedTextTestLanguage.g:433:29: ( ( 'k' | 'K' ) ( 'e' | 'E' ) ( 'y' | 'Y' ) ( 'w' | 'W' ) ( 'o' | 'O' ) ( 'r' | 'R' ) ( 'd' | 'D' ) )
|
||||
// InternalUnassignedTextTestLanguage.g:433:31: ( 'k' | 'K' ) ( 'e' | 'E' ) ( 'y' | 'Y' ) ( 'w' | 'W' ) ( 'o' | 'O' ) ( 'r' | 'R' ) ( 'd' | 'D' )
|
||||
// InternalUnassignedTextTestLanguage.g:518:29: ( ( 'k' | 'K' ) ( 'e' | 'E' ) ( 'y' | 'Y' ) ( 'w' | 'W' ) ( 'o' | 'O' ) ( 'r' | 'R' ) ( 'd' | 'D' ) )
|
||||
// InternalUnassignedTextTestLanguage.g:518:31: ( 'k' | 'K' ) ( 'e' | 'E' ) ( 'y' | 'Y' ) ( 'w' | 'W' ) ( 'o' | 'O' ) ( 'r' | 'R' ) ( 'd' | 'D' )
|
||||
{
|
||||
if ( input.LA(1)=='K'||input.LA(1)=='k' ) {
|
||||
input.consume();
|
||||
|
@ -235,10 +344,10 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
try {
|
||||
int _type = RULE_PLURAL;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalUnassignedTextTestLanguage.g:435:13: ( ( 'item' | 'items' ) )
|
||||
// InternalUnassignedTextTestLanguage.g:435:15: ( 'item' | 'items' )
|
||||
// InternalUnassignedTextTestLanguage.g:520:13: ( ( 'item' | 'items' ) )
|
||||
// InternalUnassignedTextTestLanguage.g:520:15: ( 'item' | 'items' )
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:435:15: ( 'item' | 'items' )
|
||||
// InternalUnassignedTextTestLanguage.g:520:15: ( 'item' | 'items' )
|
||||
int alt1=2;
|
||||
int LA1_0 = input.LA(1);
|
||||
|
||||
|
@ -289,7 +398,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
}
|
||||
switch (alt1) {
|
||||
case 1 :
|
||||
// InternalUnassignedTextTestLanguage.g:435:16: 'item'
|
||||
// InternalUnassignedTextTestLanguage.g:520:16: 'item'
|
||||
{
|
||||
match("item");
|
||||
|
||||
|
@ -297,7 +406,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
}
|
||||
break;
|
||||
case 2 :
|
||||
// InternalUnassignedTextTestLanguage.g:435:23: 'items'
|
||||
// InternalUnassignedTextTestLanguage.g:520:23: 'items'
|
||||
{
|
||||
match("items");
|
||||
|
||||
|
@ -323,11 +432,11 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
try {
|
||||
int _type = RULE_MULTI;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalUnassignedTextTestLanguage.g:437:12: ( 'a' ( 'b' )? ( 'c' )+ ( 'd' )* ( 'e' | 'f' ) ( ( 'g' | 'h' ) | ( 'i' )+ ) RULE_MULTI2 '0' .. '9' ( '0' .. '9' )+ )
|
||||
// InternalUnassignedTextTestLanguage.g:437:14: 'a' ( 'b' )? ( 'c' )+ ( 'd' )* ( 'e' | 'f' ) ( ( 'g' | 'h' ) | ( 'i' )+ ) RULE_MULTI2 '0' .. '9' ( '0' .. '9' )+
|
||||
// InternalUnassignedTextTestLanguage.g:522:12: ( 'a' ( 'b' )? ( 'c' )+ ( 'd' )* ( 'e' | 'f' ) ( ( 'g' | 'h' ) | ( 'i' )+ ) RULE_MULTI2 '0' .. '9' ( '0' .. '9' )+ )
|
||||
// InternalUnassignedTextTestLanguage.g:522:14: 'a' ( 'b' )? ( 'c' )+ ( 'd' )* ( 'e' | 'f' ) ( ( 'g' | 'h' ) | ( 'i' )+ ) RULE_MULTI2 '0' .. '9' ( '0' .. '9' )+
|
||||
{
|
||||
match('a');
|
||||
// InternalUnassignedTextTestLanguage.g:437:18: ( 'b' )?
|
||||
// InternalUnassignedTextTestLanguage.g:522:18: ( 'b' )?
|
||||
int alt2=2;
|
||||
int LA2_0 = input.LA(1);
|
||||
|
||||
|
@ -336,7 +445,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
}
|
||||
switch (alt2) {
|
||||
case 1 :
|
||||
// InternalUnassignedTextTestLanguage.g:437:18: 'b'
|
||||
// InternalUnassignedTextTestLanguage.g:522:18: 'b'
|
||||
{
|
||||
match('b');
|
||||
|
||||
|
@ -345,7 +454,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
|
||||
}
|
||||
|
||||
// InternalUnassignedTextTestLanguage.g:437:23: ( 'c' )+
|
||||
// InternalUnassignedTextTestLanguage.g:522:23: ( 'c' )+
|
||||
int cnt3=0;
|
||||
loop3:
|
||||
do {
|
||||
|
@ -359,7 +468,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
|
||||
switch (alt3) {
|
||||
case 1 :
|
||||
// InternalUnassignedTextTestLanguage.g:437:23: 'c'
|
||||
// InternalUnassignedTextTestLanguage.g:522:23: 'c'
|
||||
{
|
||||
match('c');
|
||||
|
||||
|
@ -375,7 +484,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
cnt3++;
|
||||
} while (true);
|
||||
|
||||
// InternalUnassignedTextTestLanguage.g:437:28: ( 'd' )*
|
||||
// InternalUnassignedTextTestLanguage.g:522:28: ( 'd' )*
|
||||
loop4:
|
||||
do {
|
||||
int alt4=2;
|
||||
|
@ -388,7 +497,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
|
||||
switch (alt4) {
|
||||
case 1 :
|
||||
// InternalUnassignedTextTestLanguage.g:437:28: 'd'
|
||||
// InternalUnassignedTextTestLanguage.g:522:28: 'd'
|
||||
{
|
||||
match('d');
|
||||
|
||||
|
@ -409,7 +518,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
recover(mse);
|
||||
throw mse;}
|
||||
|
||||
// InternalUnassignedTextTestLanguage.g:437:43: ( ( 'g' | 'h' ) | ( 'i' )+ )
|
||||
// InternalUnassignedTextTestLanguage.g:522:43: ( ( 'g' | 'h' ) | ( 'i' )+ )
|
||||
int alt6=2;
|
||||
int LA6_0 = input.LA(1);
|
||||
|
||||
|
@ -427,7 +536,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
}
|
||||
switch (alt6) {
|
||||
case 1 :
|
||||
// InternalUnassignedTextTestLanguage.g:437:44: ( 'g' | 'h' )
|
||||
// InternalUnassignedTextTestLanguage.g:522:44: ( 'g' | 'h' )
|
||||
{
|
||||
if ( (input.LA(1)>='g' && input.LA(1)<='h') ) {
|
||||
input.consume();
|
||||
|
@ -442,9 +551,9 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
}
|
||||
break;
|
||||
case 2 :
|
||||
// InternalUnassignedTextTestLanguage.g:437:54: ( 'i' )+
|
||||
// InternalUnassignedTextTestLanguage.g:522:54: ( 'i' )+
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:437:54: ( 'i' )+
|
||||
// InternalUnassignedTextTestLanguage.g:522:54: ( 'i' )+
|
||||
int cnt5=0;
|
||||
loop5:
|
||||
do {
|
||||
|
@ -458,7 +567,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
|
||||
switch (alt5) {
|
||||
case 1 :
|
||||
// InternalUnassignedTextTestLanguage.g:437:54: 'i'
|
||||
// InternalUnassignedTextTestLanguage.g:522:54: 'i'
|
||||
{
|
||||
match('i');
|
||||
|
||||
|
@ -482,7 +591,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
|
||||
mRULE_MULTI2();
|
||||
matchRange('0','9');
|
||||
// InternalUnassignedTextTestLanguage.g:437:81: ( '0' .. '9' )+
|
||||
// InternalUnassignedTextTestLanguage.g:522:81: ( '0' .. '9' )+
|
||||
int cnt7=0;
|
||||
loop7:
|
||||
do {
|
||||
|
@ -496,7 +605,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
|
||||
switch (alt7) {
|
||||
case 1 :
|
||||
// InternalUnassignedTextTestLanguage.g:437:82: '0' .. '9'
|
||||
// InternalUnassignedTextTestLanguage.g:522:82: '0' .. '9'
|
||||
{
|
||||
matchRange('0','9');
|
||||
|
||||
|
@ -526,8 +635,8 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
// $ANTLR start "RULE_MULTI2"
|
||||
public final void mRULE_MULTI2() throws RecognitionException {
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:439:22: ( 'j' )
|
||||
// InternalUnassignedTextTestLanguage.g:439:24: 'j'
|
||||
// InternalUnassignedTextTestLanguage.g:524:22: ( 'j' )
|
||||
// InternalUnassignedTextTestLanguage.g:524:24: 'j'
|
||||
{
|
||||
match('j');
|
||||
|
||||
|
@ -544,10 +653,10 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
try {
|
||||
int _type = RULE_ID;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalUnassignedTextTestLanguage.g:441:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
|
||||
// InternalUnassignedTextTestLanguage.g:441:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
|
||||
// InternalUnassignedTextTestLanguage.g:526:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
|
||||
// InternalUnassignedTextTestLanguage.g:526:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:441:11: ( '^' )?
|
||||
// InternalUnassignedTextTestLanguage.g:526:11: ( '^' )?
|
||||
int alt8=2;
|
||||
int LA8_0 = input.LA(1);
|
||||
|
||||
|
@ -556,7 +665,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
}
|
||||
switch (alt8) {
|
||||
case 1 :
|
||||
// InternalUnassignedTextTestLanguage.g:441:11: '^'
|
||||
// InternalUnassignedTextTestLanguage.g:526:11: '^'
|
||||
{
|
||||
match('^');
|
||||
|
||||
|
@ -574,7 +683,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
recover(mse);
|
||||
throw mse;}
|
||||
|
||||
// InternalUnassignedTextTestLanguage.g:441:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
|
||||
// InternalUnassignedTextTestLanguage.g:526:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
|
||||
loop9:
|
||||
do {
|
||||
int alt9=2;
|
||||
|
@ -623,10 +732,10 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
try {
|
||||
int _type = RULE_INT;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalUnassignedTextTestLanguage.g:443:10: ( ( '0' .. '9' )+ )
|
||||
// InternalUnassignedTextTestLanguage.g:443:12: ( '0' .. '9' )+
|
||||
// InternalUnassignedTextTestLanguage.g:528:10: ( ( '0' .. '9' )+ )
|
||||
// InternalUnassignedTextTestLanguage.g:528:12: ( '0' .. '9' )+
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:443:12: ( '0' .. '9' )+
|
||||
// InternalUnassignedTextTestLanguage.g:528:12: ( '0' .. '9' )+
|
||||
int cnt10=0;
|
||||
loop10:
|
||||
do {
|
||||
|
@ -640,7 +749,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
|
||||
switch (alt10) {
|
||||
case 1 :
|
||||
// InternalUnassignedTextTestLanguage.g:443:13: '0' .. '9'
|
||||
// InternalUnassignedTextTestLanguage.g:528:13: '0' .. '9'
|
||||
{
|
||||
matchRange('0','9');
|
||||
|
||||
|
@ -672,10 +781,10 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
try {
|
||||
int _type = RULE_STRING;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalUnassignedTextTestLanguage.g:445:13: ( ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
|
||||
// InternalUnassignedTextTestLanguage.g:445:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
|
||||
// InternalUnassignedTextTestLanguage.g:530:13: ( ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
|
||||
// InternalUnassignedTextTestLanguage.g:530:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:445:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
|
||||
// InternalUnassignedTextTestLanguage.g:530:15: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
|
||||
int alt13=2;
|
||||
int LA13_0 = input.LA(1);
|
||||
|
||||
|
@ -693,10 +802,10 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
}
|
||||
switch (alt13) {
|
||||
case 1 :
|
||||
// InternalUnassignedTextTestLanguage.g:445:16: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
|
||||
// InternalUnassignedTextTestLanguage.g:530:16: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
|
||||
{
|
||||
match('\"');
|
||||
// InternalUnassignedTextTestLanguage.g:445:20: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )*
|
||||
// InternalUnassignedTextTestLanguage.g:530:20: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )*
|
||||
loop11:
|
||||
do {
|
||||
int alt11=3;
|
||||
|
@ -712,7 +821,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
|
||||
switch (alt11) {
|
||||
case 1 :
|
||||
// InternalUnassignedTextTestLanguage.g:445:21: '\\\\' .
|
||||
// InternalUnassignedTextTestLanguage.g:530:21: '\\\\' .
|
||||
{
|
||||
match('\\');
|
||||
matchAny();
|
||||
|
@ -720,7 +829,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
}
|
||||
break;
|
||||
case 2 :
|
||||
// InternalUnassignedTextTestLanguage.g:445:28: ~ ( ( '\\\\' | '\"' ) )
|
||||
// InternalUnassignedTextTestLanguage.g:530:28: ~ ( ( '\\\\' | '\"' ) )
|
||||
{
|
||||
if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
|
||||
input.consume();
|
||||
|
@ -745,10 +854,10 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
}
|
||||
break;
|
||||
case 2 :
|
||||
// InternalUnassignedTextTestLanguage.g:445:48: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
|
||||
// InternalUnassignedTextTestLanguage.g:530:48: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
|
||||
{
|
||||
match('\'');
|
||||
// InternalUnassignedTextTestLanguage.g:445:53: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )*
|
||||
// InternalUnassignedTextTestLanguage.g:530:53: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )*
|
||||
loop12:
|
||||
do {
|
||||
int alt12=3;
|
||||
|
@ -764,7 +873,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
|
||||
switch (alt12) {
|
||||
case 1 :
|
||||
// InternalUnassignedTextTestLanguage.g:445:54: '\\\\' .
|
||||
// InternalUnassignedTextTestLanguage.g:530:54: '\\\\' .
|
||||
{
|
||||
match('\\');
|
||||
matchAny();
|
||||
|
@ -772,7 +881,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
}
|
||||
break;
|
||||
case 2 :
|
||||
// InternalUnassignedTextTestLanguage.g:445:61: ~ ( ( '\\\\' | '\\'' ) )
|
||||
// InternalUnassignedTextTestLanguage.g:530:61: ~ ( ( '\\\\' | '\\'' ) )
|
||||
{
|
||||
if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) {
|
||||
input.consume();
|
||||
|
@ -815,12 +924,12 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
try {
|
||||
int _type = RULE_ML_COMMENT;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalUnassignedTextTestLanguage.g:447:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
|
||||
// InternalUnassignedTextTestLanguage.g:447:19: '/*' ( options {greedy=false; } : . )* '*/'
|
||||
// InternalUnassignedTextTestLanguage.g:532:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
|
||||
// InternalUnassignedTextTestLanguage.g:532:19: '/*' ( options {greedy=false; } : . )* '*/'
|
||||
{
|
||||
match("/*");
|
||||
|
||||
// InternalUnassignedTextTestLanguage.g:447:24: ( options {greedy=false; } : . )*
|
||||
// InternalUnassignedTextTestLanguage.g:532:24: ( options {greedy=false; } : . )*
|
||||
loop14:
|
||||
do {
|
||||
int alt14=2;
|
||||
|
@ -845,7 +954,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
|
||||
switch (alt14) {
|
||||
case 1 :
|
||||
// InternalUnassignedTextTestLanguage.g:447:52: .
|
||||
// InternalUnassignedTextTestLanguage.g:532:52: .
|
||||
{
|
||||
matchAny();
|
||||
|
||||
|
@ -875,12 +984,12 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
try {
|
||||
int _type = RULE_SL_COMMENT;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalUnassignedTextTestLanguage.g:449:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
|
||||
// InternalUnassignedTextTestLanguage.g:449:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
|
||||
// InternalUnassignedTextTestLanguage.g:534:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
|
||||
// InternalUnassignedTextTestLanguage.g:534:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
|
||||
{
|
||||
match("//");
|
||||
|
||||
// InternalUnassignedTextTestLanguage.g:449:24: (~ ( ( '\\n' | '\\r' ) ) )*
|
||||
// InternalUnassignedTextTestLanguage.g:534:24: (~ ( ( '\\n' | '\\r' ) ) )*
|
||||
loop15:
|
||||
do {
|
||||
int alt15=2;
|
||||
|
@ -893,7 +1002,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
|
||||
switch (alt15) {
|
||||
case 1 :
|
||||
// InternalUnassignedTextTestLanguage.g:449:24: ~ ( ( '\\n' | '\\r' ) )
|
||||
// InternalUnassignedTextTestLanguage.g:534: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)<='\uFFFF') ) {
|
||||
input.consume();
|
||||
|
@ -913,7 +1022,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
}
|
||||
} while (true);
|
||||
|
||||
// InternalUnassignedTextTestLanguage.g:449:40: ( ( '\\r' )? '\\n' )?
|
||||
// InternalUnassignedTextTestLanguage.g:534:40: ( ( '\\r' )? '\\n' )?
|
||||
int alt17=2;
|
||||
int LA17_0 = input.LA(1);
|
||||
|
||||
|
@ -922,9 +1031,9 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
}
|
||||
switch (alt17) {
|
||||
case 1 :
|
||||
// InternalUnassignedTextTestLanguage.g:449:41: ( '\\r' )? '\\n'
|
||||
// InternalUnassignedTextTestLanguage.g:534:41: ( '\\r' )? '\\n'
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:449:41: ( '\\r' )?
|
||||
// InternalUnassignedTextTestLanguage.g:534:41: ( '\\r' )?
|
||||
int alt16=2;
|
||||
int LA16_0 = input.LA(1);
|
||||
|
||||
|
@ -933,7 +1042,7 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
}
|
||||
switch (alt16) {
|
||||
case 1 :
|
||||
// InternalUnassignedTextTestLanguage.g:449:41: '\\r'
|
||||
// InternalUnassignedTextTestLanguage.g:534:41: '\\r'
|
||||
{
|
||||
match('\r');
|
||||
|
||||
|
@ -965,10 +1074,10 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
try {
|
||||
int _type = RULE_WS;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalUnassignedTextTestLanguage.g:451:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
|
||||
// InternalUnassignedTextTestLanguage.g:451:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
|
||||
// InternalUnassignedTextTestLanguage.g:536:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
|
||||
// InternalUnassignedTextTestLanguage.g:536:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:451:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
|
||||
// InternalUnassignedTextTestLanguage.g:536:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
|
||||
int cnt18=0;
|
||||
loop18:
|
||||
do {
|
||||
|
@ -1022,8 +1131,8 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
try {
|
||||
int _type = RULE_ANY_OTHER;
|
||||
int _channel = DEFAULT_TOKEN_CHANNEL;
|
||||
// InternalUnassignedTextTestLanguage.g:453:16: ( . )
|
||||
// InternalUnassignedTextTestLanguage.g:453:18: .
|
||||
// InternalUnassignedTextTestLanguage.g:538:16: ( . )
|
||||
// InternalUnassignedTextTestLanguage.g:538:18: .
|
||||
{
|
||||
matchAny();
|
||||
|
||||
|
@ -1038,8 +1147,8 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
// $ANTLR end "RULE_ANY_OTHER"
|
||||
|
||||
public void mTokens() throws RecognitionException {
|
||||
// InternalUnassignedTextTestLanguage.g:1:8: ( T__15 | T__16 | T__17 | T__18 | T__19 | RULE_CASEINSENSITIVEKEYWORD | RULE_PLURAL | RULE_MULTI | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
|
||||
int alt19=15;
|
||||
// InternalUnassignedTextTestLanguage.g:1:8: ( T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | RULE_CASEINSENSITIVEKEYWORD | RULE_PLURAL | RULE_MULTI | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
|
||||
int alt19=20;
|
||||
alt19 = dfa19.predict(input);
|
||||
switch (alt19) {
|
||||
case 1 :
|
||||
|
@ -1078,70 +1187,105 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
}
|
||||
break;
|
||||
case 6 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:40: RULE_CASEINSENSITIVEKEYWORD
|
||||
// InternalUnassignedTextTestLanguage.g:1:40: T__20
|
||||
{
|
||||
mT__20();
|
||||
|
||||
}
|
||||
break;
|
||||
case 7 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:46: T__21
|
||||
{
|
||||
mT__21();
|
||||
|
||||
}
|
||||
break;
|
||||
case 8 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:52: T__22
|
||||
{
|
||||
mT__22();
|
||||
|
||||
}
|
||||
break;
|
||||
case 9 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:58: T__23
|
||||
{
|
||||
mT__23();
|
||||
|
||||
}
|
||||
break;
|
||||
case 10 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:64: T__24
|
||||
{
|
||||
mT__24();
|
||||
|
||||
}
|
||||
break;
|
||||
case 11 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:70: RULE_CASEINSENSITIVEKEYWORD
|
||||
{
|
||||
mRULE_CASEINSENSITIVEKEYWORD();
|
||||
|
||||
}
|
||||
break;
|
||||
case 7 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:68: RULE_PLURAL
|
||||
case 12 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:98: RULE_PLURAL
|
||||
{
|
||||
mRULE_PLURAL();
|
||||
|
||||
}
|
||||
break;
|
||||
case 8 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:80: RULE_MULTI
|
||||
case 13 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:110: RULE_MULTI
|
||||
{
|
||||
mRULE_MULTI();
|
||||
|
||||
}
|
||||
break;
|
||||
case 9 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:91: RULE_ID
|
||||
case 14 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:121: RULE_ID
|
||||
{
|
||||
mRULE_ID();
|
||||
|
||||
}
|
||||
break;
|
||||
case 10 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:99: RULE_INT
|
||||
case 15 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:129: RULE_INT
|
||||
{
|
||||
mRULE_INT();
|
||||
|
||||
}
|
||||
break;
|
||||
case 11 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:108: RULE_STRING
|
||||
case 16 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:138: RULE_STRING
|
||||
{
|
||||
mRULE_STRING();
|
||||
|
||||
}
|
||||
break;
|
||||
case 12 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:120: RULE_ML_COMMENT
|
||||
case 17 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:150: RULE_ML_COMMENT
|
||||
{
|
||||
mRULE_ML_COMMENT();
|
||||
|
||||
}
|
||||
break;
|
||||
case 13 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:136: RULE_SL_COMMENT
|
||||
case 18 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:166: RULE_SL_COMMENT
|
||||
{
|
||||
mRULE_SL_COMMENT();
|
||||
|
||||
}
|
||||
break;
|
||||
case 14 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:152: RULE_WS
|
||||
case 19 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:182: RULE_WS
|
||||
{
|
||||
mRULE_WS();
|
||||
|
||||
}
|
||||
break;
|
||||
case 15 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:160: RULE_ANY_OTHER
|
||||
case 20 :
|
||||
// InternalUnassignedTextTestLanguage.g:1:190: RULE_ANY_OTHER
|
||||
{
|
||||
mRULE_ANY_OTHER();
|
||||
|
||||
|
@ -1155,97 +1299,113 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
|
||||
protected DFA19 dfa19 = new DFA19(this);
|
||||
static final String DFA19_eotS =
|
||||
"\1\uffff\10\22\1\20\2\uffff\3\20\2\uffff\1\22\1\uffff\10\22\5\uffff\3\22\1\54\10\22\1\uffff\2\22\1\70\3\22\1\73\3\22\1\70\1\uffff\2\22\1\uffff\7\22\1\110\1\111\1\22\1\113\1\22\4\uffff\1\115\1\uffff";
|
||||
"\1\uffff\7\23\1\35\1\23\1\21\2\uffff\3\21\2\uffff\1\23\1\uffff\6\23\1\55\2\23\1\uffff\2\23\5\uffff\3\23\1\65\4\23\1\uffff\7\23\1\uffff\1\23\1\102\1\103\1\23\1\106\4\23\1\112\2\23\2\uffff\1\115\1\106\1\uffff\3\23\1\uffff\2\23\1\uffff\5\23\1\130\1\131\1\23\1\133\1\23\4\uffff\1\135\1\uffff";
|
||||
static final String DFA19_eofS =
|
||||
"\116\uffff";
|
||||
"\136\uffff";
|
||||
static final String DFA19_minS =
|
||||
"\1\0\1\157\1\165\1\141\1\164\1\145\1\105\1\164\1\142\1\101\2\uffff\2\0\1\52\2\uffff\1\156\1\uffff\1\154\1\164\2\162\1\131\1\145\2\143\5\uffff\2\164\1\141\1\60\1\155\1\127\1\155\1\144\1\147\1\145\1\151\1\164\1\uffff\1\151\1\117\1\60\1\152\1\151\1\156\1\60\1\171\1\156\1\122\1\60\1\uffff\1\60\1\164\1\uffff\1\160\1\141\1\104\1\60\1\163\1\145\1\154\2\60\1\72\1\60\1\163\4\uffff\1\60\1\uffff";
|
||||
"\1\0\1\157\1\165\1\141\1\164\1\145\1\162\1\163\1\60\1\105\1\101\2\uffff\2\0\1\52\2\uffff\1\156\1\uffff\1\154\1\164\2\162\1\151\1\157\1\60\1\145\1\143\1\uffff\1\143\1\131\5\uffff\2\164\1\141\1\60\1\155\1\164\1\163\1\165\1\uffff\1\155\1\144\1\147\1\127\1\145\1\151\1\164\1\uffff\1\151\2\60\1\160\1\60\1\152\1\151\1\117\1\156\1\60\1\171\1\156\2\uffff\2\60\1\uffff\1\60\1\122\1\164\1\uffff\1\160\1\141\1\uffff\1\60\1\104\1\163\1\145\1\154\2\60\1\72\1\60\1\163\4\uffff\1\60\1\uffff";
|
||||
static final String DFA19_maxS =
|
||||
"\1\uffff\1\157\1\165\1\141\1\164\2\145\1\164\1\143\1\172\2\uffff\2\uffff\1\57\2\uffff\1\156\1\uffff\1\154\1\164\2\162\1\171\1\145\1\143\1\146\5\uffff\2\164\1\141\1\172\1\155\1\167\1\155\1\146\1\151\1\145\1\151\1\164\1\uffff\1\151\1\157\1\172\2\152\1\156\1\172\1\171\1\156\1\162\1\172\1\uffff\1\71\1\164\1\uffff\1\160\1\141\1\144\1\71\1\163\1\145\1\154\2\172\1\72\1\172\1\163\4\uffff\1\172\1\uffff";
|
||||
"\1\uffff\1\157\1\165\1\141\1\164\1\150\1\162\1\164\1\172\1\145\1\172\2\uffff\2\uffff\1\57\2\uffff\1\156\1\uffff\1\154\1\164\1\162\1\163\1\151\1\157\1\172\1\145\1\143\1\uffff\1\146\1\171\5\uffff\2\164\1\141\1\172\1\155\1\164\1\163\1\165\1\uffff\1\155\1\146\1\151\1\167\1\145\1\151\1\164\1\uffff\1\151\2\172\1\160\1\172\2\152\1\157\1\156\1\172\1\171\1\156\2\uffff\2\172\1\uffff\1\71\1\162\1\164\1\uffff\1\160\1\141\1\uffff\1\71\1\144\1\163\1\145\1\154\2\172\1\72\1\172\1\163\4\uffff\1\172\1\uffff";
|
||||
static final String DFA19_acceptS =
|
||||
"\12\uffff\1\11\1\12\3\uffff\1\16\1\17\1\uffff\1\11\10\uffff\1\12\1\13\1\14\1\15\1\16\14\uffff\1\4\13\uffff\1\7\2\uffff\1\2\14\uffff\1\6\1\10\1\1\1\3\1\uffff\1\5";
|
||||
"\13\uffff\1\16\1\17\3\uffff\1\23\1\24\1\uffff\1\16\11\uffff\1\11\2\uffff\1\17\1\20\1\21\1\22\1\23\10\uffff\1\10\7\uffff\1\4\14\uffff\1\12\1\7\2\uffff\1\14\3\uffff\1\2\2\uffff\1\6\12\uffff\1\15\1\13\1\1\1\3\1\uffff\1\5";
|
||||
static final String DFA19_specialS =
|
||||
"\1\1\13\uffff\1\0\1\2\100\uffff}>";
|
||||
"\1\0\14\uffff\1\1\1\2\117\uffff}>";
|
||||
static final String[] DFA19_transitionS = DFA19_transitionS_.DFA19_transitionS;
|
||||
private static final class DFA19_transitionS_ {
|
||||
static final String[] DFA19_transitionS = {
|
||||
"\11\20\2\17\2\20\1\17\22\20\1\17\1\20\1\14\4\20\1\15\7\20\1\16\12\13\7\20\12\12\1\6\17\12\3\20\1\11\1\12\1\20\1\10\1\12\1\1\1\3\4\12\1\7\1\12\1\6\1\12\1\2\5\12\1\4\1\5\6\12\uff85\20",
|
||||
"\1\21",
|
||||
"\1\23",
|
||||
"\11\21\2\20\2\21\1\20\22\21\1\20\1\21\1\15\4\21\1\16\7\21\1\17\12\14\7\21\12\13\1\11\17\13\3\21\1\12\1\13\1\21\1\10\1\13\1\1\1\3\2\13\1\6\1\13\1\7\1\13\1\11\1\13\1\2\5\13\1\4\1\5\6\13\uff85\21",
|
||||
"\1\22",
|
||||
"\1\24",
|
||||
"\1\25",
|
||||
"\1\26",
|
||||
"\1\27\37\uffff\1\27",
|
||||
"\1\30",
|
||||
"\1\31\1\32",
|
||||
"\32\22\4\uffff\1\22\1\uffff\32\22",
|
||||
"\1\27\2\uffff\1\30",
|
||||
"\1\31",
|
||||
"\1\32\1\33",
|
||||
"\12\23\7\uffff\32\23\4\uffff\1\23\1\uffff\1\23\1\34\1\36\27\23",
|
||||
"\1\37\37\uffff\1\37",
|
||||
"\32\23\4\uffff\1\23\1\uffff\32\23",
|
||||
"",
|
||||
"",
|
||||
"\0\34",
|
||||
"\0\34",
|
||||
"\1\35\4\uffff\1\36",
|
||||
"\0\41",
|
||||
"\0\41",
|
||||
"\1\42\4\uffff\1\43",
|
||||
"",
|
||||
"",
|
||||
"\1\40",
|
||||
"\1\45",
|
||||
"",
|
||||
"\1\41",
|
||||
"\1\42",
|
||||
"\1\43",
|
||||
"\1\44",
|
||||
"\1\45\37\uffff\1\45",
|
||||
"\1\46",
|
||||
"\1\32",
|
||||
"\1\32\1\47\2\50",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\1\51",
|
||||
"\1\52",
|
||||
"\1\47",
|
||||
"\1\50",
|
||||
"\1\51\1\52",
|
||||
"\1\53",
|
||||
"\12\22\7\uffff\32\22\4\uffff\1\22\1\uffff\32\22",
|
||||
"\1\55",
|
||||
"\1\56\37\uffff\1\56",
|
||||
"\1\57",
|
||||
"\1\47\2\50",
|
||||
"\2\60\1\61",
|
||||
"\1\54",
|
||||
"\12\23\7\uffff\32\23\4\uffff\1\23\1\uffff\32\23",
|
||||
"\1\56",
|
||||
"\1\36",
|
||||
"",
|
||||
"\1\36\1\57\2\60",
|
||||
"\1\61\37\uffff\1\61",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"\1\62",
|
||||
"\1\63",
|
||||
"\1\64",
|
||||
"",
|
||||
"\1\65",
|
||||
"\1\66\37\uffff\1\66",
|
||||
"\12\22\7\uffff\32\22\4\uffff\1\22\1\uffff\22\22\1\67\7\22",
|
||||
"\12\23\7\uffff\32\23\4\uffff\1\23\1\uffff\32\23",
|
||||
"\1\66",
|
||||
"\1\67",
|
||||
"\1\70",
|
||||
"\1\71",
|
||||
"\1\61\1\71",
|
||||
"\1\72",
|
||||
"\12\22\7\uffff\32\22\4\uffff\1\22\1\uffff\32\22",
|
||||
"\1\74",
|
||||
"\1\75",
|
||||
"\1\76\37\uffff\1\76",
|
||||
"\12\22\7\uffff\32\22\4\uffff\1\22\1\uffff\32\22",
|
||||
"",
|
||||
"\12\77",
|
||||
"\1\72",
|
||||
"\1\57\2\60",
|
||||
"\2\73\1\74",
|
||||
"\1\75\37\uffff\1\75",
|
||||
"\1\76",
|
||||
"\1\77",
|
||||
"\1\100",
|
||||
"",
|
||||
"\1\101",
|
||||
"\1\102",
|
||||
"\1\103\37\uffff\1\103",
|
||||
"\12\104",
|
||||
"\1\105",
|
||||
"\1\106",
|
||||
"\12\23\7\uffff\32\23\4\uffff\1\23\1\uffff\32\23",
|
||||
"\12\23\7\uffff\32\23\4\uffff\1\23\1\uffff\32\23",
|
||||
"\1\104",
|
||||
"\12\23\7\uffff\32\23\4\uffff\1\23\1\uffff\22\23\1\105\7\23",
|
||||
"\1\107",
|
||||
"\12\22\7\uffff\32\22\4\uffff\1\22\1\uffff\32\22",
|
||||
"\12\104\7\uffff\32\22\4\uffff\1\22\1\uffff\32\22",
|
||||
"\1\112",
|
||||
"\12\22\7\uffff\32\22\4\uffff\1\22\1\uffff\32\22",
|
||||
"\1\74\1\107",
|
||||
"\1\110\37\uffff\1\110",
|
||||
"\1\111",
|
||||
"\12\23\7\uffff\32\23\4\uffff\1\23\1\uffff\32\23",
|
||||
"\1\113",
|
||||
"\1\114",
|
||||
"",
|
||||
"",
|
||||
"\12\23\7\uffff\32\23\4\uffff\1\23\1\uffff\32\23",
|
||||
"\12\23\7\uffff\32\23\4\uffff\1\23\1\uffff\32\23",
|
||||
"",
|
||||
"\12\116",
|
||||
"\1\117\37\uffff\1\117",
|
||||
"\1\120",
|
||||
"",
|
||||
"\1\121",
|
||||
"\1\122",
|
||||
"",
|
||||
"\12\123",
|
||||
"\1\124\37\uffff\1\124",
|
||||
"\1\125",
|
||||
"\1\126",
|
||||
"\1\127",
|
||||
"\12\123\7\uffff\32\23\4\uffff\1\23\1\uffff\32\23",
|
||||
"\12\23\7\uffff\32\23\4\uffff\1\23\1\uffff\32\23",
|
||||
"\1\132",
|
||||
"\12\23\7\uffff\32\23\4\uffff\1\23\1\uffff\32\23",
|
||||
"\1\134",
|
||||
"",
|
||||
"",
|
||||
"\12\22\7\uffff\32\22\4\uffff\1\22\1\uffff\32\22",
|
||||
"",
|
||||
"",
|
||||
"\12\23\7\uffff\32\23\4\uffff\1\23\1\uffff\32\23",
|
||||
""
|
||||
};
|
||||
}
|
||||
|
@ -1280,23 +1440,13 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
this.transition = DFA19_transition;
|
||||
}
|
||||
public String getDescription() {
|
||||
return "1:1: Tokens : ( T__15 | T__16 | T__17 | T__18 | T__19 | RULE_CASEINSENSITIVEKEYWORD | RULE_PLURAL | RULE_MULTI | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
|
||||
return "1:1: Tokens : ( T__15 | T__16 | T__17 | T__18 | T__19 | T__20 | T__21 | T__22 | T__23 | T__24 | RULE_CASEINSENSITIVEKEYWORD | RULE_PLURAL | RULE_MULTI | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
|
||||
}
|
||||
public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
|
||||
IntStream input = _input;
|
||||
int _s = s;
|
||||
switch ( s ) {
|
||||
case 0 :
|
||||
int LA19_12 = input.LA(1);
|
||||
|
||||
s = -1;
|
||||
if ( ((LA19_12>='\u0000' && LA19_12<='\uFFFF')) ) {s = 28;}
|
||||
|
||||
else s = 16;
|
||||
|
||||
if ( s>=0 ) return s;
|
||||
break;
|
||||
case 1 :
|
||||
int LA19_0 = input.LA(1);
|
||||
|
||||
s = -1;
|
||||
|
@ -1310,37 +1460,49 @@ public class InternalUnassignedTextTestLanguageLexer extends Lexer {
|
|||
|
||||
else if ( (LA19_0=='t') ) {s = 5;}
|
||||
|
||||
else if ( (LA19_0=='K'||LA19_0=='k') ) {s = 6;}
|
||||
else if ( (LA19_0=='g') ) {s = 6;}
|
||||
|
||||
else if ( (LA19_0=='i') ) {s = 7;}
|
||||
|
||||
else if ( (LA19_0=='a') ) {s = 8;}
|
||||
|
||||
else if ( (LA19_0=='^') ) {s = 9;}
|
||||
else if ( (LA19_0=='K'||LA19_0=='k') ) {s = 9;}
|
||||
|
||||
else if ( ((LA19_0>='A' && LA19_0<='J')||(LA19_0>='L' && LA19_0<='Z')||LA19_0=='_'||LA19_0=='b'||(LA19_0>='e' && LA19_0<='h')||LA19_0=='j'||LA19_0=='l'||(LA19_0>='n' && LA19_0<='r')||(LA19_0>='u' && LA19_0<='z')) ) {s = 10;}
|
||||
else if ( (LA19_0=='^') ) {s = 10;}
|
||||
|
||||
else if ( ((LA19_0>='0' && LA19_0<='9')) ) {s = 11;}
|
||||
else if ( ((LA19_0>='A' && LA19_0<='J')||(LA19_0>='L' && LA19_0<='Z')||LA19_0=='_'||LA19_0=='b'||(LA19_0>='e' && LA19_0<='f')||LA19_0=='h'||LA19_0=='j'||LA19_0=='l'||(LA19_0>='n' && LA19_0<='r')||(LA19_0>='u' && LA19_0<='z')) ) {s = 11;}
|
||||
|
||||
else if ( (LA19_0=='\"') ) {s = 12;}
|
||||
else if ( ((LA19_0>='0' && LA19_0<='9')) ) {s = 12;}
|
||||
|
||||
else if ( (LA19_0=='\'') ) {s = 13;}
|
||||
else if ( (LA19_0=='\"') ) {s = 13;}
|
||||
|
||||
else if ( (LA19_0=='/') ) {s = 14;}
|
||||
else if ( (LA19_0=='\'') ) {s = 14;}
|
||||
|
||||
else if ( ((LA19_0>='\t' && LA19_0<='\n')||LA19_0=='\r'||LA19_0==' ') ) {s = 15;}
|
||||
else if ( (LA19_0=='/') ) {s = 15;}
|
||||
|
||||
else if ( ((LA19_0>='\u0000' && LA19_0<='\b')||(LA19_0>='\u000B' && LA19_0<='\f')||(LA19_0>='\u000E' && LA19_0<='\u001F')||LA19_0=='!'||(LA19_0>='#' && LA19_0<='&')||(LA19_0>='(' && LA19_0<='.')||(LA19_0>=':' && LA19_0<='@')||(LA19_0>='[' && LA19_0<=']')||LA19_0=='`'||(LA19_0>='{' && LA19_0<='\uFFFF')) ) {s = 16;}
|
||||
else if ( ((LA19_0>='\t' && LA19_0<='\n')||LA19_0=='\r'||LA19_0==' ') ) {s = 16;}
|
||||
|
||||
else if ( ((LA19_0>='\u0000' && LA19_0<='\b')||(LA19_0>='\u000B' && LA19_0<='\f')||(LA19_0>='\u000E' && LA19_0<='\u001F')||LA19_0=='!'||(LA19_0>='#' && LA19_0<='&')||(LA19_0>='(' && LA19_0<='.')||(LA19_0>=':' && LA19_0<='@')||(LA19_0>='[' && LA19_0<=']')||LA19_0=='`'||(LA19_0>='{' && LA19_0<='\uFFFF')) ) {s = 17;}
|
||||
|
||||
if ( s>=0 ) return s;
|
||||
break;
|
||||
case 1 :
|
||||
int LA19_13 = input.LA(1);
|
||||
|
||||
s = -1;
|
||||
if ( ((LA19_13>='\u0000' && LA19_13<='\uFFFF')) ) {s = 33;}
|
||||
|
||||
else s = 17;
|
||||
|
||||
if ( s>=0 ) return s;
|
||||
break;
|
||||
case 2 :
|
||||
int LA19_13 = input.LA(1);
|
||||
int LA19_14 = input.LA(1);
|
||||
|
||||
s = -1;
|
||||
if ( ((LA19_13>='\u0000' && LA19_13<='\uFFFF')) ) {s = 28;}
|
||||
if ( ((LA19_14>='\u0000' && LA19_14<='\uFFFF')) ) {s = 33;}
|
||||
|
||||
else s = 16;
|
||||
else s = 17;
|
||||
|
||||
if ( s>=0 ) return s;
|
||||
break;
|
||||
|
|
|
@ -21,7 +21,7 @@ import java.util.ArrayList;
|
|||
@SuppressWarnings("all")
|
||||
public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAntlrParser {
|
||||
public static final String[] tokenNames = new String[] {
|
||||
"<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_CASEINSENSITIVEKEYWORD", "RULE_INT", "RULE_PLURAL", "RULE_MULTI", "RULE_STRING", "RULE_ID", "RULE_MULTI2", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'contents:'", "'multi'", "'datatype'", "'str'", "'terminals'"
|
||||
"<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_CASEINSENSITIVEKEYWORD", "RULE_INT", "RULE_PLURAL", "RULE_MULTI", "RULE_STRING", "RULE_ID", "RULE_MULTI2", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'contents:'", "'multi'", "'datatype'", "'str'", "'terminals'", "'group'", "'this'", "'is'", "'a'", "'test'"
|
||||
};
|
||||
public static final int RULE_STRING=8;
|
||||
public static final int RULE_SL_COMMENT=12;
|
||||
|
@ -38,8 +38,13 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
public static final int RULE_ANY_OTHER=14;
|
||||
public static final int RULE_MULTI=7;
|
||||
public static final int RULE_INT=5;
|
||||
public static final int T__22=22;
|
||||
public static final int RULE_ML_COMMENT=11;
|
||||
public static final int T__23=23;
|
||||
public static final int T__24=24;
|
||||
public static final int RULE_CASEINSENSITIVEKEYWORD=4;
|
||||
public static final int T__20=20;
|
||||
public static final int T__21=21;
|
||||
|
||||
// delegates
|
||||
// delegators
|
||||
|
@ -117,7 +122,7 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
// $ANTLR start "ruleModel"
|
||||
// InternalUnassignedTextTestLanguage.g:71:1: ruleModel returns [EObject current=null] : (this_CaseInsensitiveKeywordRule_0= ruleCaseInsensitiveKeywordRule | this_PluralRule_1= rulePluralRule | this_MultiRule_2= ruleMultiRule | this_DatatypeRule_3= ruleDatatypeRule | this_CommonTerminalsRule_4= ruleCommonTerminalsRule ) ;
|
||||
// InternalUnassignedTextTestLanguage.g:71:1: ruleModel returns [EObject current=null] : (this_CaseInsensitiveKeywordRule_0= ruleCaseInsensitiveKeywordRule | this_PluralRule_1= rulePluralRule | this_MultiRule_2= ruleMultiRule | this_DatatypeRule_3= ruleDatatypeRule | this_CommonTerminalsRule_4= ruleCommonTerminalsRule | this_GroupRule_5= ruleGroupRule ) ;
|
||||
public final EObject ruleModel() throws RecognitionException {
|
||||
EObject current = null;
|
||||
|
||||
|
@ -131,16 +136,18 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
EObject this_CommonTerminalsRule_4 = null;
|
||||
|
||||
EObject this_GroupRule_5 = null;
|
||||
|
||||
|
||||
|
||||
enterRule();
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:77:2: ( (this_CaseInsensitiveKeywordRule_0= ruleCaseInsensitiveKeywordRule | this_PluralRule_1= rulePluralRule | this_MultiRule_2= ruleMultiRule | this_DatatypeRule_3= ruleDatatypeRule | this_CommonTerminalsRule_4= ruleCommonTerminalsRule ) )
|
||||
// InternalUnassignedTextTestLanguage.g:78:2: (this_CaseInsensitiveKeywordRule_0= ruleCaseInsensitiveKeywordRule | this_PluralRule_1= rulePluralRule | this_MultiRule_2= ruleMultiRule | this_DatatypeRule_3= ruleDatatypeRule | this_CommonTerminalsRule_4= ruleCommonTerminalsRule )
|
||||
// InternalUnassignedTextTestLanguage.g:77:2: ( (this_CaseInsensitiveKeywordRule_0= ruleCaseInsensitiveKeywordRule | this_PluralRule_1= rulePluralRule | this_MultiRule_2= ruleMultiRule | this_DatatypeRule_3= ruleDatatypeRule | this_CommonTerminalsRule_4= ruleCommonTerminalsRule | this_GroupRule_5= ruleGroupRule ) )
|
||||
// InternalUnassignedTextTestLanguage.g:78:2: (this_CaseInsensitiveKeywordRule_0= ruleCaseInsensitiveKeywordRule | this_PluralRule_1= rulePluralRule | this_MultiRule_2= ruleMultiRule | this_DatatypeRule_3= ruleDatatypeRule | this_CommonTerminalsRule_4= ruleCommonTerminalsRule | this_GroupRule_5= ruleGroupRule )
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:78:2: (this_CaseInsensitiveKeywordRule_0= ruleCaseInsensitiveKeywordRule | this_PluralRule_1= rulePluralRule | this_MultiRule_2= ruleMultiRule | this_DatatypeRule_3= ruleDatatypeRule | this_CommonTerminalsRule_4= ruleCommonTerminalsRule )
|
||||
int alt1=5;
|
||||
// InternalUnassignedTextTestLanguage.g:78:2: (this_CaseInsensitiveKeywordRule_0= ruleCaseInsensitiveKeywordRule | this_PluralRule_1= rulePluralRule | this_MultiRule_2= ruleMultiRule | this_DatatypeRule_3= ruleDatatypeRule | this_CommonTerminalsRule_4= ruleCommonTerminalsRule | this_GroupRule_5= ruleGroupRule )
|
||||
int alt1=6;
|
||||
switch ( input.LA(1) ) {
|
||||
case RULE_CASEINSENSITIVEKEYWORD:
|
||||
{
|
||||
|
@ -167,6 +174,11 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
alt1=5;
|
||||
}
|
||||
break;
|
||||
case 20:
|
||||
{
|
||||
alt1=6;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
NoViableAltException nvae =
|
||||
new NoViableAltException("", 1, 0, input);
|
||||
|
@ -263,6 +275,24 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
afterParserOrEnumRuleCall();
|
||||
|
||||
|
||||
}
|
||||
break;
|
||||
case 6 :
|
||||
// InternalUnassignedTextTestLanguage.g:124:3: this_GroupRule_5= ruleGroupRule
|
||||
{
|
||||
|
||||
newCompositeNode(grammarAccess.getModelAccess().getGroupRuleParserRuleCall_5());
|
||||
|
||||
pushFollow(FollowSets000.FOLLOW_2);
|
||||
this_GroupRule_5=ruleGroupRule();
|
||||
|
||||
state._fsp--;
|
||||
|
||||
|
||||
current = this_GroupRule_5;
|
||||
afterParserOrEnumRuleCall();
|
||||
|
||||
|
||||
}
|
||||
break;
|
||||
|
||||
|
@ -288,7 +318,7 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
// $ANTLR start "entryRuleCaseInsensitiveKeywordRule"
|
||||
// InternalUnassignedTextTestLanguage.g:127:1: entryRuleCaseInsensitiveKeywordRule returns [EObject current=null] : iv_ruleCaseInsensitiveKeywordRule= ruleCaseInsensitiveKeywordRule EOF ;
|
||||
// InternalUnassignedTextTestLanguage.g:136:1: entryRuleCaseInsensitiveKeywordRule returns [EObject current=null] : iv_ruleCaseInsensitiveKeywordRule= ruleCaseInsensitiveKeywordRule EOF ;
|
||||
public final EObject entryRuleCaseInsensitiveKeywordRule() throws RecognitionException {
|
||||
EObject current = null;
|
||||
|
||||
|
@ -296,8 +326,8 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:127:67: (iv_ruleCaseInsensitiveKeywordRule= ruleCaseInsensitiveKeywordRule EOF )
|
||||
// InternalUnassignedTextTestLanguage.g:128:2: iv_ruleCaseInsensitiveKeywordRule= ruleCaseInsensitiveKeywordRule EOF
|
||||
// InternalUnassignedTextTestLanguage.g:136:67: (iv_ruleCaseInsensitiveKeywordRule= ruleCaseInsensitiveKeywordRule EOF )
|
||||
// InternalUnassignedTextTestLanguage.g:137:2: iv_ruleCaseInsensitiveKeywordRule= ruleCaseInsensitiveKeywordRule EOF
|
||||
{
|
||||
newCompositeNode(grammarAccess.getCaseInsensitiveKeywordRuleRule());
|
||||
pushFollow(FollowSets000.FOLLOW_1);
|
||||
|
@ -324,7 +354,7 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
// $ANTLR start "ruleCaseInsensitiveKeywordRule"
|
||||
// InternalUnassignedTextTestLanguage.g:134:1: ruleCaseInsensitiveKeywordRule returns [EObject current=null] : (this_CaseInsensitiveKeyword_0= RULE_CASEINSENSITIVEKEYWORD ( (lv_val_1_0= RULE_INT ) ) ) ;
|
||||
// InternalUnassignedTextTestLanguage.g:143:1: ruleCaseInsensitiveKeywordRule returns [EObject current=null] : (this_CaseInsensitiveKeyword_0= RULE_CASEINSENSITIVEKEYWORD ( (lv_val_1_0= RULE_INT ) ) ) ;
|
||||
public final EObject ruleCaseInsensitiveKeywordRule() throws RecognitionException {
|
||||
EObject current = null;
|
||||
|
||||
|
@ -335,21 +365,21 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
enterRule();
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:140:2: ( (this_CaseInsensitiveKeyword_0= RULE_CASEINSENSITIVEKEYWORD ( (lv_val_1_0= RULE_INT ) ) ) )
|
||||
// InternalUnassignedTextTestLanguage.g:141:2: (this_CaseInsensitiveKeyword_0= RULE_CASEINSENSITIVEKEYWORD ( (lv_val_1_0= RULE_INT ) ) )
|
||||
// InternalUnassignedTextTestLanguage.g:149:2: ( (this_CaseInsensitiveKeyword_0= RULE_CASEINSENSITIVEKEYWORD ( (lv_val_1_0= RULE_INT ) ) ) )
|
||||
// InternalUnassignedTextTestLanguage.g:150:2: (this_CaseInsensitiveKeyword_0= RULE_CASEINSENSITIVEKEYWORD ( (lv_val_1_0= RULE_INT ) ) )
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:141:2: (this_CaseInsensitiveKeyword_0= RULE_CASEINSENSITIVEKEYWORD ( (lv_val_1_0= RULE_INT ) ) )
|
||||
// InternalUnassignedTextTestLanguage.g:142:3: this_CaseInsensitiveKeyword_0= RULE_CASEINSENSITIVEKEYWORD ( (lv_val_1_0= RULE_INT ) )
|
||||
// InternalUnassignedTextTestLanguage.g:150:2: (this_CaseInsensitiveKeyword_0= RULE_CASEINSENSITIVEKEYWORD ( (lv_val_1_0= RULE_INT ) ) )
|
||||
// InternalUnassignedTextTestLanguage.g:151:3: this_CaseInsensitiveKeyword_0= RULE_CASEINSENSITIVEKEYWORD ( (lv_val_1_0= RULE_INT ) )
|
||||
{
|
||||
this_CaseInsensitiveKeyword_0=(Token)match(input,RULE_CASEINSENSITIVEKEYWORD,FollowSets000.FOLLOW_3);
|
||||
|
||||
newLeafNode(this_CaseInsensitiveKeyword_0, grammarAccess.getCaseInsensitiveKeywordRuleAccess().getCaseInsensitiveKeywordTerminalRuleCall_0());
|
||||
|
||||
// InternalUnassignedTextTestLanguage.g:146:3: ( (lv_val_1_0= RULE_INT ) )
|
||||
// InternalUnassignedTextTestLanguage.g:147:4: (lv_val_1_0= RULE_INT )
|
||||
// InternalUnassignedTextTestLanguage.g:155:3: ( (lv_val_1_0= RULE_INT ) )
|
||||
// InternalUnassignedTextTestLanguage.g:156:4: (lv_val_1_0= RULE_INT )
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:147:4: (lv_val_1_0= RULE_INT )
|
||||
// InternalUnassignedTextTestLanguage.g:148:5: lv_val_1_0= RULE_INT
|
||||
// InternalUnassignedTextTestLanguage.g:156:4: (lv_val_1_0= RULE_INT )
|
||||
// InternalUnassignedTextTestLanguage.g:157:5: lv_val_1_0= RULE_INT
|
||||
{
|
||||
lv_val_1_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2);
|
||||
|
||||
|
@ -394,7 +424,7 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
// $ANTLR start "entryRulePluralRule"
|
||||
// InternalUnassignedTextTestLanguage.g:168:1: entryRulePluralRule returns [EObject current=null] : iv_rulePluralRule= rulePluralRule EOF ;
|
||||
// InternalUnassignedTextTestLanguage.g:177:1: entryRulePluralRule returns [EObject current=null] : iv_rulePluralRule= rulePluralRule EOF ;
|
||||
public final EObject entryRulePluralRule() throws RecognitionException {
|
||||
EObject current = null;
|
||||
|
||||
|
@ -402,8 +432,8 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:168:51: (iv_rulePluralRule= rulePluralRule EOF )
|
||||
// InternalUnassignedTextTestLanguage.g:169:2: iv_rulePluralRule= rulePluralRule EOF
|
||||
// InternalUnassignedTextTestLanguage.g:177:51: (iv_rulePluralRule= rulePluralRule EOF )
|
||||
// InternalUnassignedTextTestLanguage.g:178:2: iv_rulePluralRule= rulePluralRule EOF
|
||||
{
|
||||
newCompositeNode(grammarAccess.getPluralRuleRule());
|
||||
pushFollow(FollowSets000.FOLLOW_1);
|
||||
|
@ -430,7 +460,7 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
// $ANTLR start "rulePluralRule"
|
||||
// InternalUnassignedTextTestLanguage.g:175:1: rulePluralRule returns [EObject current=null] : (otherlv_0= 'contents:' ( (lv_count_1_0= RULE_INT ) ) this_Plural_2= RULE_PLURAL ) ;
|
||||
// InternalUnassignedTextTestLanguage.g:184:1: rulePluralRule returns [EObject current=null] : (otherlv_0= 'contents:' ( (lv_count_1_0= RULE_INT ) ) this_Plural_2= RULE_PLURAL ) ;
|
||||
public final EObject rulePluralRule() throws RecognitionException {
|
||||
EObject current = null;
|
||||
|
||||
|
@ -442,21 +472,21 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
enterRule();
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:181:2: ( (otherlv_0= 'contents:' ( (lv_count_1_0= RULE_INT ) ) this_Plural_2= RULE_PLURAL ) )
|
||||
// InternalUnassignedTextTestLanguage.g:182:2: (otherlv_0= 'contents:' ( (lv_count_1_0= RULE_INT ) ) this_Plural_2= RULE_PLURAL )
|
||||
// InternalUnassignedTextTestLanguage.g:190:2: ( (otherlv_0= 'contents:' ( (lv_count_1_0= RULE_INT ) ) this_Plural_2= RULE_PLURAL ) )
|
||||
// InternalUnassignedTextTestLanguage.g:191:2: (otherlv_0= 'contents:' ( (lv_count_1_0= RULE_INT ) ) this_Plural_2= RULE_PLURAL )
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:182:2: (otherlv_0= 'contents:' ( (lv_count_1_0= RULE_INT ) ) this_Plural_2= RULE_PLURAL )
|
||||
// InternalUnassignedTextTestLanguage.g:183:3: otherlv_0= 'contents:' ( (lv_count_1_0= RULE_INT ) ) this_Plural_2= RULE_PLURAL
|
||||
// InternalUnassignedTextTestLanguage.g:191:2: (otherlv_0= 'contents:' ( (lv_count_1_0= RULE_INT ) ) this_Plural_2= RULE_PLURAL )
|
||||
// InternalUnassignedTextTestLanguage.g:192:3: otherlv_0= 'contents:' ( (lv_count_1_0= RULE_INT ) ) this_Plural_2= RULE_PLURAL
|
||||
{
|
||||
otherlv_0=(Token)match(input,15,FollowSets000.FOLLOW_3);
|
||||
|
||||
newLeafNode(otherlv_0, grammarAccess.getPluralRuleAccess().getContentsKeyword_0());
|
||||
|
||||
// InternalUnassignedTextTestLanguage.g:187:3: ( (lv_count_1_0= RULE_INT ) )
|
||||
// InternalUnassignedTextTestLanguage.g:188:4: (lv_count_1_0= RULE_INT )
|
||||
// InternalUnassignedTextTestLanguage.g:196:3: ( (lv_count_1_0= RULE_INT ) )
|
||||
// InternalUnassignedTextTestLanguage.g:197:4: (lv_count_1_0= RULE_INT )
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:188:4: (lv_count_1_0= RULE_INT )
|
||||
// InternalUnassignedTextTestLanguage.g:189:5: lv_count_1_0= RULE_INT
|
||||
// InternalUnassignedTextTestLanguage.g:197:4: (lv_count_1_0= RULE_INT )
|
||||
// InternalUnassignedTextTestLanguage.g:198:5: lv_count_1_0= RULE_INT
|
||||
{
|
||||
lv_count_1_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_4);
|
||||
|
||||
|
@ -505,7 +535,7 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
// $ANTLR start "entryRuleMultiRule"
|
||||
// InternalUnassignedTextTestLanguage.g:213:1: entryRuleMultiRule returns [EObject current=null] : iv_ruleMultiRule= ruleMultiRule EOF ;
|
||||
// InternalUnassignedTextTestLanguage.g:222:1: entryRuleMultiRule returns [EObject current=null] : iv_ruleMultiRule= ruleMultiRule EOF ;
|
||||
public final EObject entryRuleMultiRule() throws RecognitionException {
|
||||
EObject current = null;
|
||||
|
||||
|
@ -513,8 +543,8 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:213:50: (iv_ruleMultiRule= ruleMultiRule EOF )
|
||||
// InternalUnassignedTextTestLanguage.g:214:2: iv_ruleMultiRule= ruleMultiRule EOF
|
||||
// InternalUnassignedTextTestLanguage.g:222:50: (iv_ruleMultiRule= ruleMultiRule EOF )
|
||||
// InternalUnassignedTextTestLanguage.g:223:2: iv_ruleMultiRule= ruleMultiRule EOF
|
||||
{
|
||||
newCompositeNode(grammarAccess.getMultiRuleRule());
|
||||
pushFollow(FollowSets000.FOLLOW_1);
|
||||
|
@ -541,7 +571,7 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
// $ANTLR start "ruleMultiRule"
|
||||
// InternalUnassignedTextTestLanguage.g:220:1: ruleMultiRule returns [EObject current=null] : (otherlv_0= 'multi' ( (lv_val_1_0= RULE_INT ) ) this_Multi_2= RULE_MULTI this_Multi_3= RULE_MULTI this_Multi_4= RULE_MULTI ) ;
|
||||
// InternalUnassignedTextTestLanguage.g:229:1: ruleMultiRule returns [EObject current=null] : (otherlv_0= 'multi' ( (lv_val_1_0= RULE_INT ) ) this_Multi_2= RULE_MULTI this_Multi_3= RULE_MULTI this_Multi_4= RULE_MULTI ) ;
|
||||
public final EObject ruleMultiRule() throws RecognitionException {
|
||||
EObject current = null;
|
||||
|
||||
|
@ -555,21 +585,21 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
enterRule();
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:226:2: ( (otherlv_0= 'multi' ( (lv_val_1_0= RULE_INT ) ) this_Multi_2= RULE_MULTI this_Multi_3= RULE_MULTI this_Multi_4= RULE_MULTI ) )
|
||||
// InternalUnassignedTextTestLanguage.g:227:2: (otherlv_0= 'multi' ( (lv_val_1_0= RULE_INT ) ) this_Multi_2= RULE_MULTI this_Multi_3= RULE_MULTI this_Multi_4= RULE_MULTI )
|
||||
// InternalUnassignedTextTestLanguage.g:235:2: ( (otherlv_0= 'multi' ( (lv_val_1_0= RULE_INT ) ) this_Multi_2= RULE_MULTI this_Multi_3= RULE_MULTI this_Multi_4= RULE_MULTI ) )
|
||||
// InternalUnassignedTextTestLanguage.g:236:2: (otherlv_0= 'multi' ( (lv_val_1_0= RULE_INT ) ) this_Multi_2= RULE_MULTI this_Multi_3= RULE_MULTI this_Multi_4= RULE_MULTI )
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:227:2: (otherlv_0= 'multi' ( (lv_val_1_0= RULE_INT ) ) this_Multi_2= RULE_MULTI this_Multi_3= RULE_MULTI this_Multi_4= RULE_MULTI )
|
||||
// InternalUnassignedTextTestLanguage.g:228:3: otherlv_0= 'multi' ( (lv_val_1_0= RULE_INT ) ) this_Multi_2= RULE_MULTI this_Multi_3= RULE_MULTI this_Multi_4= RULE_MULTI
|
||||
// InternalUnassignedTextTestLanguage.g:236:2: (otherlv_0= 'multi' ( (lv_val_1_0= RULE_INT ) ) this_Multi_2= RULE_MULTI this_Multi_3= RULE_MULTI this_Multi_4= RULE_MULTI )
|
||||
// InternalUnassignedTextTestLanguage.g:237:3: otherlv_0= 'multi' ( (lv_val_1_0= RULE_INT ) ) this_Multi_2= RULE_MULTI this_Multi_3= RULE_MULTI this_Multi_4= RULE_MULTI
|
||||
{
|
||||
otherlv_0=(Token)match(input,16,FollowSets000.FOLLOW_3);
|
||||
|
||||
newLeafNode(otherlv_0, grammarAccess.getMultiRuleAccess().getMultiKeyword_0());
|
||||
|
||||
// InternalUnassignedTextTestLanguage.g:232:3: ( (lv_val_1_0= RULE_INT ) )
|
||||
// InternalUnassignedTextTestLanguage.g:233:4: (lv_val_1_0= RULE_INT )
|
||||
// InternalUnassignedTextTestLanguage.g:241:3: ( (lv_val_1_0= RULE_INT ) )
|
||||
// InternalUnassignedTextTestLanguage.g:242:4: (lv_val_1_0= RULE_INT )
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:233:4: (lv_val_1_0= RULE_INT )
|
||||
// InternalUnassignedTextTestLanguage.g:234:5: lv_val_1_0= RULE_INT
|
||||
// InternalUnassignedTextTestLanguage.g:242:4: (lv_val_1_0= RULE_INT )
|
||||
// InternalUnassignedTextTestLanguage.g:243:5: lv_val_1_0= RULE_INT
|
||||
{
|
||||
lv_val_1_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_5);
|
||||
|
||||
|
@ -626,7 +656,7 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
// $ANTLR start "entryRuleDatatypeRule"
|
||||
// InternalUnassignedTextTestLanguage.g:266:1: entryRuleDatatypeRule returns [EObject current=null] : iv_ruleDatatypeRule= ruleDatatypeRule EOF ;
|
||||
// InternalUnassignedTextTestLanguage.g:275:1: entryRuleDatatypeRule returns [EObject current=null] : iv_ruleDatatypeRule= ruleDatatypeRule EOF ;
|
||||
public final EObject entryRuleDatatypeRule() throws RecognitionException {
|
||||
EObject current = null;
|
||||
|
||||
|
@ -634,8 +664,8 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:266:53: (iv_ruleDatatypeRule= ruleDatatypeRule EOF )
|
||||
// InternalUnassignedTextTestLanguage.g:267:2: iv_ruleDatatypeRule= ruleDatatypeRule EOF
|
||||
// InternalUnassignedTextTestLanguage.g:275:53: (iv_ruleDatatypeRule= ruleDatatypeRule EOF )
|
||||
// InternalUnassignedTextTestLanguage.g:276:2: iv_ruleDatatypeRule= ruleDatatypeRule EOF
|
||||
{
|
||||
newCompositeNode(grammarAccess.getDatatypeRuleRule());
|
||||
pushFollow(FollowSets000.FOLLOW_1);
|
||||
|
@ -662,7 +692,7 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
// $ANTLR start "ruleDatatypeRule"
|
||||
// InternalUnassignedTextTestLanguage.g:273:1: ruleDatatypeRule returns [EObject current=null] : (otherlv_0= 'datatype' ( (lv_val_1_0= RULE_INT ) ) ruleDatatype ) ;
|
||||
// InternalUnassignedTextTestLanguage.g:282:1: ruleDatatypeRule returns [EObject current=null] : (otherlv_0= 'datatype' ( (lv_val_1_0= RULE_INT ) ) ruleDatatype ) ;
|
||||
public final EObject ruleDatatypeRule() throws RecognitionException {
|
||||
EObject current = null;
|
||||
|
||||
|
@ -673,21 +703,21 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
enterRule();
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:279:2: ( (otherlv_0= 'datatype' ( (lv_val_1_0= RULE_INT ) ) ruleDatatype ) )
|
||||
// InternalUnassignedTextTestLanguage.g:280:2: (otherlv_0= 'datatype' ( (lv_val_1_0= RULE_INT ) ) ruleDatatype )
|
||||
// InternalUnassignedTextTestLanguage.g:288:2: ( (otherlv_0= 'datatype' ( (lv_val_1_0= RULE_INT ) ) ruleDatatype ) )
|
||||
// InternalUnassignedTextTestLanguage.g:289:2: (otherlv_0= 'datatype' ( (lv_val_1_0= RULE_INT ) ) ruleDatatype )
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:280:2: (otherlv_0= 'datatype' ( (lv_val_1_0= RULE_INT ) ) ruleDatatype )
|
||||
// InternalUnassignedTextTestLanguage.g:281:3: otherlv_0= 'datatype' ( (lv_val_1_0= RULE_INT ) ) ruleDatatype
|
||||
// InternalUnassignedTextTestLanguage.g:289:2: (otherlv_0= 'datatype' ( (lv_val_1_0= RULE_INT ) ) ruleDatatype )
|
||||
// InternalUnassignedTextTestLanguage.g:290:3: otherlv_0= 'datatype' ( (lv_val_1_0= RULE_INT ) ) ruleDatatype
|
||||
{
|
||||
otherlv_0=(Token)match(input,17,FollowSets000.FOLLOW_3);
|
||||
|
||||
newLeafNode(otherlv_0, grammarAccess.getDatatypeRuleAccess().getDatatypeKeyword_0());
|
||||
|
||||
// InternalUnassignedTextTestLanguage.g:285:3: ( (lv_val_1_0= RULE_INT ) )
|
||||
// InternalUnassignedTextTestLanguage.g:286:4: (lv_val_1_0= RULE_INT )
|
||||
// InternalUnassignedTextTestLanguage.g:294:3: ( (lv_val_1_0= RULE_INT ) )
|
||||
// InternalUnassignedTextTestLanguage.g:295:4: (lv_val_1_0= RULE_INT )
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:286:4: (lv_val_1_0= RULE_INT )
|
||||
// InternalUnassignedTextTestLanguage.g:287:5: lv_val_1_0= RULE_INT
|
||||
// InternalUnassignedTextTestLanguage.g:295:4: (lv_val_1_0= RULE_INT )
|
||||
// InternalUnassignedTextTestLanguage.g:296:5: lv_val_1_0= RULE_INT
|
||||
{
|
||||
lv_val_1_0=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_6);
|
||||
|
||||
|
@ -743,7 +773,7 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
// $ANTLR start "entryRuleDatatype"
|
||||
// InternalUnassignedTextTestLanguage.g:314:1: entryRuleDatatype returns [String current=null] : iv_ruleDatatype= ruleDatatype EOF ;
|
||||
// InternalUnassignedTextTestLanguage.g:323:1: entryRuleDatatype returns [String current=null] : iv_ruleDatatype= ruleDatatype EOF ;
|
||||
public final String entryRuleDatatype() throws RecognitionException {
|
||||
String current = null;
|
||||
|
||||
|
@ -751,8 +781,8 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:314:48: (iv_ruleDatatype= ruleDatatype EOF )
|
||||
// InternalUnassignedTextTestLanguage.g:315:2: iv_ruleDatatype= ruleDatatype EOF
|
||||
// InternalUnassignedTextTestLanguage.g:323:48: (iv_ruleDatatype= ruleDatatype EOF )
|
||||
// InternalUnassignedTextTestLanguage.g:324:2: iv_ruleDatatype= ruleDatatype EOF
|
||||
{
|
||||
newCompositeNode(grammarAccess.getDatatypeRule());
|
||||
pushFollow(FollowSets000.FOLLOW_1);
|
||||
|
@ -779,7 +809,7 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
// $ANTLR start "ruleDatatype"
|
||||
// InternalUnassignedTextTestLanguage.g:321:1: ruleDatatype returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (kw= 'str' | this_INT_1= RULE_INT | this_Datatype2_2= ruleDatatype2 ) ;
|
||||
// InternalUnassignedTextTestLanguage.g:330:1: ruleDatatype returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (kw= 'str' | this_INT_1= RULE_INT | this_Datatype2_2= ruleDatatype2 ) ;
|
||||
public final AntlrDatatypeRuleToken ruleDatatype() throws RecognitionException {
|
||||
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
|
||||
|
||||
|
@ -792,10 +822,10 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
enterRule();
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:327:2: ( (kw= 'str' | this_INT_1= RULE_INT | this_Datatype2_2= ruleDatatype2 ) )
|
||||
// InternalUnassignedTextTestLanguage.g:328:2: (kw= 'str' | this_INT_1= RULE_INT | this_Datatype2_2= ruleDatatype2 )
|
||||
// InternalUnassignedTextTestLanguage.g:336:2: ( (kw= 'str' | this_INT_1= RULE_INT | this_Datatype2_2= ruleDatatype2 ) )
|
||||
// InternalUnassignedTextTestLanguage.g:337:2: (kw= 'str' | this_INT_1= RULE_INT | this_Datatype2_2= ruleDatatype2 )
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:328:2: (kw= 'str' | this_INT_1= RULE_INT | this_Datatype2_2= ruleDatatype2 )
|
||||
// InternalUnassignedTextTestLanguage.g:337:2: (kw= 'str' | this_INT_1= RULE_INT | this_Datatype2_2= ruleDatatype2 )
|
||||
int alt2=3;
|
||||
switch ( input.LA(1) ) {
|
||||
case 18:
|
||||
|
@ -822,7 +852,7 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
switch (alt2) {
|
||||
case 1 :
|
||||
// InternalUnassignedTextTestLanguage.g:329:3: kw= 'str'
|
||||
// InternalUnassignedTextTestLanguage.g:338:3: kw= 'str'
|
||||
{
|
||||
kw=(Token)match(input,18,FollowSets000.FOLLOW_2);
|
||||
|
||||
|
@ -833,7 +863,7 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
}
|
||||
break;
|
||||
case 2 :
|
||||
// InternalUnassignedTextTestLanguage.g:335:3: this_INT_1= RULE_INT
|
||||
// InternalUnassignedTextTestLanguage.g:344:3: this_INT_1= RULE_INT
|
||||
{
|
||||
this_INT_1=(Token)match(input,RULE_INT,FollowSets000.FOLLOW_2);
|
||||
|
||||
|
@ -846,7 +876,7 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
}
|
||||
break;
|
||||
case 3 :
|
||||
// InternalUnassignedTextTestLanguage.g:343:3: this_Datatype2_2= ruleDatatype2
|
||||
// InternalUnassignedTextTestLanguage.g:352:3: this_Datatype2_2= ruleDatatype2
|
||||
{
|
||||
|
||||
newCompositeNode(grammarAccess.getDatatypeAccess().getDatatype2ParserRuleCall_2());
|
||||
|
@ -888,7 +918,7 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
// $ANTLR start "entryRuleDatatype2"
|
||||
// InternalUnassignedTextTestLanguage.g:357:1: entryRuleDatatype2 returns [String current=null] : iv_ruleDatatype2= ruleDatatype2 EOF ;
|
||||
// InternalUnassignedTextTestLanguage.g:366:1: entryRuleDatatype2 returns [String current=null] : iv_ruleDatatype2= ruleDatatype2 EOF ;
|
||||
public final String entryRuleDatatype2() throws RecognitionException {
|
||||
String current = null;
|
||||
|
||||
|
@ -896,8 +926,8 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:357:49: (iv_ruleDatatype2= ruleDatatype2 EOF )
|
||||
// InternalUnassignedTextTestLanguage.g:358:2: iv_ruleDatatype2= ruleDatatype2 EOF
|
||||
// InternalUnassignedTextTestLanguage.g:366:49: (iv_ruleDatatype2= ruleDatatype2 EOF )
|
||||
// InternalUnassignedTextTestLanguage.g:367:2: iv_ruleDatatype2= ruleDatatype2 EOF
|
||||
{
|
||||
newCompositeNode(grammarAccess.getDatatype2Rule());
|
||||
pushFollow(FollowSets000.FOLLOW_1);
|
||||
|
@ -924,7 +954,7 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
// $ANTLR start "ruleDatatype2"
|
||||
// InternalUnassignedTextTestLanguage.g:364:1: ruleDatatype2 returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_STRING_0= RULE_STRING ;
|
||||
// InternalUnassignedTextTestLanguage.g:373:1: ruleDatatype2 returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : this_STRING_0= RULE_STRING ;
|
||||
public final AntlrDatatypeRuleToken ruleDatatype2() throws RecognitionException {
|
||||
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
|
||||
|
||||
|
@ -934,8 +964,8 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
enterRule();
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:370:2: (this_STRING_0= RULE_STRING )
|
||||
// InternalUnassignedTextTestLanguage.g:371:2: this_STRING_0= RULE_STRING
|
||||
// InternalUnassignedTextTestLanguage.g:379:2: (this_STRING_0= RULE_STRING )
|
||||
// InternalUnassignedTextTestLanguage.g:380:2: this_STRING_0= RULE_STRING
|
||||
{
|
||||
this_STRING_0=(Token)match(input,RULE_STRING,FollowSets000.FOLLOW_2);
|
||||
|
||||
|
@ -964,7 +994,7 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
// $ANTLR start "entryRuleCommonTerminalsRule"
|
||||
// InternalUnassignedTextTestLanguage.g:381:1: entryRuleCommonTerminalsRule returns [EObject current=null] : iv_ruleCommonTerminalsRule= ruleCommonTerminalsRule EOF ;
|
||||
// InternalUnassignedTextTestLanguage.g:390:1: entryRuleCommonTerminalsRule returns [EObject current=null] : iv_ruleCommonTerminalsRule= ruleCommonTerminalsRule EOF ;
|
||||
public final EObject entryRuleCommonTerminalsRule() throws RecognitionException {
|
||||
EObject current = null;
|
||||
|
||||
|
@ -972,8 +1002,8 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:381:60: (iv_ruleCommonTerminalsRule= ruleCommonTerminalsRule EOF )
|
||||
// InternalUnassignedTextTestLanguage.g:382:2: iv_ruleCommonTerminalsRule= ruleCommonTerminalsRule EOF
|
||||
// InternalUnassignedTextTestLanguage.g:390:60: (iv_ruleCommonTerminalsRule= ruleCommonTerminalsRule EOF )
|
||||
// InternalUnassignedTextTestLanguage.g:391:2: iv_ruleCommonTerminalsRule= ruleCommonTerminalsRule EOF
|
||||
{
|
||||
newCompositeNode(grammarAccess.getCommonTerminalsRuleRule());
|
||||
pushFollow(FollowSets000.FOLLOW_1);
|
||||
|
@ -1000,7 +1030,7 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
|
||||
// $ANTLR start "ruleCommonTerminalsRule"
|
||||
// InternalUnassignedTextTestLanguage.g:388:1: ruleCommonTerminalsRule returns [EObject current=null] : (otherlv_0= 'terminals' this_ID_1= RULE_ID this_INT_2= RULE_INT this_STRING_3= RULE_STRING ( (lv_val_4_0= RULE_ID ) ) ) ;
|
||||
// InternalUnassignedTextTestLanguage.g:397:1: ruleCommonTerminalsRule returns [EObject current=null] : (otherlv_0= 'terminals' this_ID_1= RULE_ID this_INT_2= RULE_INT this_STRING_3= RULE_STRING ( (lv_val_4_0= RULE_ID ) ) ) ;
|
||||
public final EObject ruleCommonTerminalsRule() throws RecognitionException {
|
||||
EObject current = null;
|
||||
|
||||
|
@ -1014,11 +1044,11 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
enterRule();
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:394:2: ( (otherlv_0= 'terminals' this_ID_1= RULE_ID this_INT_2= RULE_INT this_STRING_3= RULE_STRING ( (lv_val_4_0= RULE_ID ) ) ) )
|
||||
// InternalUnassignedTextTestLanguage.g:395:2: (otherlv_0= 'terminals' this_ID_1= RULE_ID this_INT_2= RULE_INT this_STRING_3= RULE_STRING ( (lv_val_4_0= RULE_ID ) ) )
|
||||
// InternalUnassignedTextTestLanguage.g:403:2: ( (otherlv_0= 'terminals' this_ID_1= RULE_ID this_INT_2= RULE_INT this_STRING_3= RULE_STRING ( (lv_val_4_0= RULE_ID ) ) ) )
|
||||
// InternalUnassignedTextTestLanguage.g:404:2: (otherlv_0= 'terminals' this_ID_1= RULE_ID this_INT_2= RULE_INT this_STRING_3= RULE_STRING ( (lv_val_4_0= RULE_ID ) ) )
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:395:2: (otherlv_0= 'terminals' this_ID_1= RULE_ID this_INT_2= RULE_INT this_STRING_3= RULE_STRING ( (lv_val_4_0= RULE_ID ) ) )
|
||||
// InternalUnassignedTextTestLanguage.g:396:3: otherlv_0= 'terminals' this_ID_1= RULE_ID this_INT_2= RULE_INT this_STRING_3= RULE_STRING ( (lv_val_4_0= RULE_ID ) )
|
||||
// InternalUnassignedTextTestLanguage.g:404:2: (otherlv_0= 'terminals' this_ID_1= RULE_ID this_INT_2= RULE_INT this_STRING_3= RULE_STRING ( (lv_val_4_0= RULE_ID ) ) )
|
||||
// InternalUnassignedTextTestLanguage.g:405:3: otherlv_0= 'terminals' this_ID_1= RULE_ID this_INT_2= RULE_INT this_STRING_3= RULE_STRING ( (lv_val_4_0= RULE_ID ) )
|
||||
{
|
||||
otherlv_0=(Token)match(input,19,FollowSets000.FOLLOW_7);
|
||||
|
||||
|
@ -1036,11 +1066,11 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
|
||||
newLeafNode(this_STRING_3, grammarAccess.getCommonTerminalsRuleAccess().getSTRINGTerminalRuleCall_3());
|
||||
|
||||
// InternalUnassignedTextTestLanguage.g:412:3: ( (lv_val_4_0= RULE_ID ) )
|
||||
// InternalUnassignedTextTestLanguage.g:413:4: (lv_val_4_0= RULE_ID )
|
||||
// InternalUnassignedTextTestLanguage.g:421:3: ( (lv_val_4_0= RULE_ID ) )
|
||||
// InternalUnassignedTextTestLanguage.g:422:4: (lv_val_4_0= RULE_ID )
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:413:4: (lv_val_4_0= RULE_ID )
|
||||
// InternalUnassignedTextTestLanguage.g:414:5: lv_val_4_0= RULE_ID
|
||||
// InternalUnassignedTextTestLanguage.g:422:4: (lv_val_4_0= RULE_ID )
|
||||
// InternalUnassignedTextTestLanguage.g:423:5: lv_val_4_0= RULE_ID
|
||||
{
|
||||
lv_val_4_0=(Token)match(input,RULE_ID,FollowSets000.FOLLOW_2);
|
||||
|
||||
|
@ -1083,6 +1113,202 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
}
|
||||
// $ANTLR end "ruleCommonTerminalsRule"
|
||||
|
||||
|
||||
// $ANTLR start "entryRuleGroupRule"
|
||||
// InternalUnassignedTextTestLanguage.g:443:1: entryRuleGroupRule returns [EObject current=null] : iv_ruleGroupRule= ruleGroupRule EOF ;
|
||||
public final EObject entryRuleGroupRule() throws RecognitionException {
|
||||
EObject current = null;
|
||||
|
||||
EObject iv_ruleGroupRule = null;
|
||||
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:443:50: (iv_ruleGroupRule= ruleGroupRule EOF )
|
||||
// InternalUnassignedTextTestLanguage.g:444:2: iv_ruleGroupRule= ruleGroupRule EOF
|
||||
{
|
||||
newCompositeNode(grammarAccess.getGroupRuleRule());
|
||||
pushFollow(FollowSets000.FOLLOW_1);
|
||||
iv_ruleGroupRule=ruleGroupRule();
|
||||
|
||||
state._fsp--;
|
||||
|
||||
current =iv_ruleGroupRule;
|
||||
match(input,EOF,FollowSets000.FOLLOW_2);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
catch (RecognitionException re) {
|
||||
recover(input,re);
|
||||
appendSkippedTokens();
|
||||
}
|
||||
finally {
|
||||
}
|
||||
return current;
|
||||
}
|
||||
// $ANTLR end "entryRuleGroupRule"
|
||||
|
||||
|
||||
// $ANTLR start "ruleGroupRule"
|
||||
// InternalUnassignedTextTestLanguage.g:450:1: ruleGroupRule returns [EObject current=null] : ( () otherlv_1= 'group' ruleGroupDataTypeRule ) ;
|
||||
public final EObject ruleGroupRule() throws RecognitionException {
|
||||
EObject current = null;
|
||||
|
||||
Token otherlv_1=null;
|
||||
|
||||
|
||||
enterRule();
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:456:2: ( ( () otherlv_1= 'group' ruleGroupDataTypeRule ) )
|
||||
// InternalUnassignedTextTestLanguage.g:457:2: ( () otherlv_1= 'group' ruleGroupDataTypeRule )
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:457:2: ( () otherlv_1= 'group' ruleGroupDataTypeRule )
|
||||
// InternalUnassignedTextTestLanguage.g:458:3: () otherlv_1= 'group' ruleGroupDataTypeRule
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:458:3: ()
|
||||
// InternalUnassignedTextTestLanguage.g:459:4:
|
||||
{
|
||||
|
||||
current = forceCreateModelElement(
|
||||
grammarAccess.getGroupRuleAccess().getGroupRuleAction_0(),
|
||||
current);
|
||||
|
||||
|
||||
}
|
||||
|
||||
otherlv_1=(Token)match(input,20,FollowSets000.FOLLOW_9);
|
||||
|
||||
newLeafNode(otherlv_1, grammarAccess.getGroupRuleAccess().getGroupKeyword_1());
|
||||
|
||||
|
||||
newCompositeNode(grammarAccess.getGroupRuleAccess().getGroupDataTypeRuleParserRuleCall_2());
|
||||
|
||||
pushFollow(FollowSets000.FOLLOW_2);
|
||||
ruleGroupDataTypeRule();
|
||||
|
||||
state._fsp--;
|
||||
|
||||
|
||||
afterParserOrEnumRuleCall();
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
leaveRule();
|
||||
|
||||
}
|
||||
|
||||
catch (RecognitionException re) {
|
||||
recover(input,re);
|
||||
appendSkippedTokens();
|
||||
}
|
||||
finally {
|
||||
}
|
||||
return current;
|
||||
}
|
||||
// $ANTLR end "ruleGroupRule"
|
||||
|
||||
|
||||
// $ANTLR start "entryRuleGroupDataTypeRule"
|
||||
// InternalUnassignedTextTestLanguage.g:480:1: entryRuleGroupDataTypeRule returns [String current=null] : iv_ruleGroupDataTypeRule= ruleGroupDataTypeRule EOF ;
|
||||
public final String entryRuleGroupDataTypeRule() throws RecognitionException {
|
||||
String current = null;
|
||||
|
||||
AntlrDatatypeRuleToken iv_ruleGroupDataTypeRule = null;
|
||||
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:480:57: (iv_ruleGroupDataTypeRule= ruleGroupDataTypeRule EOF )
|
||||
// InternalUnassignedTextTestLanguage.g:481:2: iv_ruleGroupDataTypeRule= ruleGroupDataTypeRule EOF
|
||||
{
|
||||
newCompositeNode(grammarAccess.getGroupDataTypeRuleRule());
|
||||
pushFollow(FollowSets000.FOLLOW_1);
|
||||
iv_ruleGroupDataTypeRule=ruleGroupDataTypeRule();
|
||||
|
||||
state._fsp--;
|
||||
|
||||
current =iv_ruleGroupDataTypeRule.getText();
|
||||
match(input,EOF,FollowSets000.FOLLOW_2);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
catch (RecognitionException re) {
|
||||
recover(input,re);
|
||||
appendSkippedTokens();
|
||||
}
|
||||
finally {
|
||||
}
|
||||
return current;
|
||||
}
|
||||
// $ANTLR end "entryRuleGroupDataTypeRule"
|
||||
|
||||
|
||||
// $ANTLR start "ruleGroupDataTypeRule"
|
||||
// InternalUnassignedTextTestLanguage.g:487:1: ruleGroupDataTypeRule returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (kw= 'this' kw= 'is' kw= 'a' kw= 'test' ) ;
|
||||
public final AntlrDatatypeRuleToken ruleGroupDataTypeRule() throws RecognitionException {
|
||||
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
|
||||
|
||||
Token kw=null;
|
||||
|
||||
|
||||
enterRule();
|
||||
|
||||
try {
|
||||
// InternalUnassignedTextTestLanguage.g:493:2: ( (kw= 'this' kw= 'is' kw= 'a' kw= 'test' ) )
|
||||
// InternalUnassignedTextTestLanguage.g:494:2: (kw= 'this' kw= 'is' kw= 'a' kw= 'test' )
|
||||
{
|
||||
// InternalUnassignedTextTestLanguage.g:494:2: (kw= 'this' kw= 'is' kw= 'a' kw= 'test' )
|
||||
// InternalUnassignedTextTestLanguage.g:495:3: kw= 'this' kw= 'is' kw= 'a' kw= 'test'
|
||||
{
|
||||
kw=(Token)match(input,21,FollowSets000.FOLLOW_10);
|
||||
|
||||
current.merge(kw);
|
||||
newLeafNode(kw, grammarAccess.getGroupDataTypeRuleAccess().getThisKeyword_0());
|
||||
|
||||
kw=(Token)match(input,22,FollowSets000.FOLLOW_11);
|
||||
|
||||
current.merge(kw);
|
||||
newLeafNode(kw, grammarAccess.getGroupDataTypeRuleAccess().getIsKeyword_1());
|
||||
|
||||
kw=(Token)match(input,23,FollowSets000.FOLLOW_12);
|
||||
|
||||
current.merge(kw);
|
||||
newLeafNode(kw, grammarAccess.getGroupDataTypeRuleAccess().getAKeyword_2());
|
||||
|
||||
kw=(Token)match(input,24,FollowSets000.FOLLOW_2);
|
||||
|
||||
current.merge(kw);
|
||||
newLeafNode(kw, grammarAccess.getGroupDataTypeRuleAccess().getTestKeyword_3());
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
leaveRule();
|
||||
|
||||
}
|
||||
|
||||
catch (RecognitionException re) {
|
||||
recover(input,re);
|
||||
appendSkippedTokens();
|
||||
}
|
||||
finally {
|
||||
}
|
||||
return current;
|
||||
}
|
||||
// $ANTLR end "ruleGroupDataTypeRule"
|
||||
|
||||
// Delegated rules
|
||||
|
||||
|
||||
|
@ -1098,6 +1324,10 @@ public class InternalUnassignedTextTestLanguageParser extends AbstractInternalAn
|
|||
public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000000040120L});
|
||||
public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000000000000200L});
|
||||
public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000000000100L});
|
||||
public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000200000L});
|
||||
public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0000000000400000L});
|
||||
public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000000000800000L});
|
||||
public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000000001000000L});
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -14,6 +14,7 @@ import org.eclipse.xtext.parsetree.unassignedtext.services.UnassignedTextTestLan
|
|||
import org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.CaseInsensitiveKeywordRule;
|
||||
import org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.CommonTerminalsRule;
|
||||
import org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.DatatypeRule;
|
||||
import org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.GroupRule;
|
||||
import org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.MultiRule;
|
||||
import org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.PluralRule;
|
||||
import org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.UnassignedtextPackage;
|
||||
|
@ -45,6 +46,9 @@ public abstract class AbstractUnassignedTextTestLanguageSemanticSequencer extend
|
|||
case UnassignedtextPackage.DATATYPE_RULE:
|
||||
sequence_DatatypeRule(context, (DatatypeRule) semanticObject);
|
||||
return;
|
||||
case UnassignedtextPackage.GROUP_RULE:
|
||||
sequence_GroupRule(context, (GroupRule) semanticObject);
|
||||
return;
|
||||
case UnassignedtextPackage.MULTI_RULE:
|
||||
sequence_MultiRule(context, (MultiRule) semanticObject);
|
||||
return;
|
||||
|
@ -113,6 +117,19 @@ public abstract class AbstractUnassignedTextTestLanguageSemanticSequencer extend
|
|||
}
|
||||
|
||||
|
||||
/**
|
||||
* Contexts:
|
||||
* Model returns GroupRule
|
||||
* GroupRule returns GroupRule
|
||||
*
|
||||
* Constraint:
|
||||
* {GroupRule}
|
||||
*/
|
||||
protected void sequence_GroupRule(ISerializationContext context, GroupRule semanticObject) {
|
||||
genericSequencer.createSequence(context, semanticObject);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Contexts:
|
||||
* Model returns MultiRule
|
||||
|
|
|
@ -30,6 +30,8 @@ public abstract class AbstractUnassignedTextTestLanguageSyntacticSequencer exten
|
|||
return getCaseInsensitiveKeywordToken(semanticObject, ruleCall, node);
|
||||
else if (ruleCall.getRule() == grammarAccess.getDatatypeRule())
|
||||
return getDatatypeToken(semanticObject, ruleCall, node);
|
||||
else if (ruleCall.getRule() == grammarAccess.getGroupDataTypeRuleRule())
|
||||
return getGroupDataTypeRuleToken(semanticObject, ruleCall, node);
|
||||
else if (ruleCall.getRule() == grammarAccess.getIDRule())
|
||||
return getIDToken(semanticObject, ruleCall, node);
|
||||
else if (ruleCall.getRule() == grammarAccess.getINTRule())
|
||||
|
@ -63,6 +65,17 @@ public abstract class AbstractUnassignedTextTestLanguageSyntacticSequencer exten
|
|||
return "str";
|
||||
}
|
||||
|
||||
/**
|
||||
* GroupDataTypeRule:
|
||||
* ('this' 'is' 'a' 'test')
|
||||
* ;
|
||||
*/
|
||||
protected String getGroupDataTypeRuleToken(EObject semanticObject, RuleCall ruleCall, INode node) {
|
||||
if (node != null)
|
||||
return getTokenText(node);
|
||||
return "this is a test";
|
||||
}
|
||||
|
||||
/**
|
||||
* terminal ID: '^'?('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*;
|
||||
*/
|
||||
|
|
|
@ -6,6 +6,7 @@ package org.eclipse.xtext.parsetree.unassignedtext.services;
|
|||
import com.google.inject.Inject;
|
||||
import com.google.inject.Singleton;
|
||||
import java.util.List;
|
||||
import org.eclipse.xtext.Action;
|
||||
import org.eclipse.xtext.Alternatives;
|
||||
import org.eclipse.xtext.Assignment;
|
||||
import org.eclipse.xtext.Grammar;
|
||||
|
@ -30,12 +31,13 @@ public class UnassignedTextTestLanguageGrammarAccess extends AbstractGrammarElem
|
|||
private final RuleCall cMultiRuleParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
|
||||
private final RuleCall cDatatypeRuleParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3);
|
||||
private final RuleCall cCommonTerminalsRuleParserRuleCall_4 = (RuleCall)cAlternatives.eContents().get(4);
|
||||
private final RuleCall cGroupRuleParserRuleCall_5 = (RuleCall)cAlternatives.eContents().get(5);
|
||||
|
||||
//Model:
|
||||
// CaseInsensitiveKeywordRule | PluralRule | MultiRule | DatatypeRule | CommonTerminalsRule;
|
||||
// CaseInsensitiveKeywordRule | PluralRule | MultiRule | DatatypeRule | CommonTerminalsRule | GroupRule;
|
||||
@Override public ParserRule getRule() { return rule; }
|
||||
|
||||
//CaseInsensitiveKeywordRule | PluralRule | MultiRule | DatatypeRule | CommonTerminalsRule
|
||||
//CaseInsensitiveKeywordRule | PluralRule | MultiRule | DatatypeRule | CommonTerminalsRule | GroupRule
|
||||
public Alternatives getAlternatives() { return cAlternatives; }
|
||||
|
||||
//CaseInsensitiveKeywordRule
|
||||
|
@ -52,6 +54,9 @@ public class UnassignedTextTestLanguageGrammarAccess extends AbstractGrammarElem
|
|||
|
||||
//CommonTerminalsRule
|
||||
public RuleCall getCommonTerminalsRuleParserRuleCall_4() { return cCommonTerminalsRuleParserRuleCall_4; }
|
||||
|
||||
//GroupRule
|
||||
public RuleCall getGroupRuleParserRuleCall_5() { return cGroupRuleParserRuleCall_5; }
|
||||
}
|
||||
public class CaseInsensitiveKeywordRuleElements extends AbstractParserRuleElementFinder {
|
||||
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.xtext.parsetree.unassignedtext.UnassignedTextTestLanguage.CaseInsensitiveKeywordRule");
|
||||
|
@ -234,6 +239,56 @@ public class UnassignedTextTestLanguageGrammarAccess extends AbstractGrammarElem
|
|||
//ID
|
||||
public RuleCall getValIDTerminalRuleCall_4_0() { return cValIDTerminalRuleCall_4_0; }
|
||||
}
|
||||
public class GroupRuleElements extends AbstractParserRuleElementFinder {
|
||||
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.xtext.parsetree.unassignedtext.UnassignedTextTestLanguage.GroupRule");
|
||||
private final Group cGroup = (Group)rule.eContents().get(1);
|
||||
private final Action cGroupRuleAction_0 = (Action)cGroup.eContents().get(0);
|
||||
private final Keyword cGroupKeyword_1 = (Keyword)cGroup.eContents().get(1);
|
||||
private final RuleCall cGroupDataTypeRuleParserRuleCall_2 = (RuleCall)cGroup.eContents().get(2);
|
||||
|
||||
//GroupRule:
|
||||
// {GroupRule} 'group' GroupDataTypeRule;
|
||||
@Override public ParserRule getRule() { return rule; }
|
||||
|
||||
//{GroupRule} 'group' GroupDataTypeRule
|
||||
public Group getGroup() { return cGroup; }
|
||||
|
||||
//{GroupRule}
|
||||
public Action getGroupRuleAction_0() { return cGroupRuleAction_0; }
|
||||
|
||||
//'group'
|
||||
public Keyword getGroupKeyword_1() { return cGroupKeyword_1; }
|
||||
|
||||
//GroupDataTypeRule
|
||||
public RuleCall getGroupDataTypeRuleParserRuleCall_2() { return cGroupDataTypeRuleParserRuleCall_2; }
|
||||
}
|
||||
public class GroupDataTypeRuleElements extends AbstractParserRuleElementFinder {
|
||||
private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.xtext.parsetree.unassignedtext.UnassignedTextTestLanguage.GroupDataTypeRule");
|
||||
private final Group cGroup = (Group)rule.eContents().get(1);
|
||||
private final Keyword cThisKeyword_0 = (Keyword)cGroup.eContents().get(0);
|
||||
private final Keyword cIsKeyword_1 = (Keyword)cGroup.eContents().get(1);
|
||||
private final Keyword cAKeyword_2 = (Keyword)cGroup.eContents().get(2);
|
||||
private final Keyword cTestKeyword_3 = (Keyword)cGroup.eContents().get(3);
|
||||
|
||||
//GroupDataTypeRule:
|
||||
// 'this' 'is' 'a' 'test';
|
||||
@Override public ParserRule getRule() { return rule; }
|
||||
|
||||
//'this' 'is' 'a' 'test'
|
||||
public Group getGroup() { return cGroup; }
|
||||
|
||||
//'this'
|
||||
public Keyword getThisKeyword_0() { return cThisKeyword_0; }
|
||||
|
||||
//'is'
|
||||
public Keyword getIsKeyword_1() { return cIsKeyword_1; }
|
||||
|
||||
//'a'
|
||||
public Keyword getAKeyword_2() { return cAKeyword_2; }
|
||||
|
||||
//'test'
|
||||
public Keyword getTestKeyword_3() { return cTestKeyword_3; }
|
||||
}
|
||||
|
||||
|
||||
private final ModelElements pModel;
|
||||
|
@ -248,6 +303,8 @@ public class UnassignedTextTestLanguageGrammarAccess extends AbstractGrammarElem
|
|||
private final DatatypeElements pDatatype;
|
||||
private final Datatype2Elements pDatatype2;
|
||||
private final CommonTerminalsRuleElements pCommonTerminalsRule;
|
||||
private final GroupRuleElements pGroupRule;
|
||||
private final GroupDataTypeRuleElements pGroupDataTypeRule;
|
||||
|
||||
private final Grammar grammar;
|
||||
|
||||
|
@ -270,6 +327,8 @@ public class UnassignedTextTestLanguageGrammarAccess extends AbstractGrammarElem
|
|||
this.pDatatype = new DatatypeElements();
|
||||
this.pDatatype2 = new Datatype2Elements();
|
||||
this.pCommonTerminalsRule = new CommonTerminalsRuleElements();
|
||||
this.pGroupRule = new GroupRuleElements();
|
||||
this.pGroupDataTypeRule = new GroupDataTypeRuleElements();
|
||||
}
|
||||
|
||||
protected Grammar internalFindGrammar(GrammarProvider grammarProvider) {
|
||||
|
@ -300,7 +359,7 @@ public class UnassignedTextTestLanguageGrammarAccess extends AbstractGrammarElem
|
|||
|
||||
|
||||
//Model:
|
||||
// CaseInsensitiveKeywordRule | PluralRule | MultiRule | DatatypeRule | CommonTerminalsRule;
|
||||
// CaseInsensitiveKeywordRule | PluralRule | MultiRule | DatatypeRule | CommonTerminalsRule | GroupRule;
|
||||
public ModelElements getModelAccess() {
|
||||
return pModel;
|
||||
}
|
||||
|
@ -403,6 +462,26 @@ public class UnassignedTextTestLanguageGrammarAccess extends AbstractGrammarElem
|
|||
return getCommonTerminalsRuleAccess().getRule();
|
||||
}
|
||||
|
||||
//GroupRule:
|
||||
// {GroupRule} 'group' GroupDataTypeRule;
|
||||
public GroupRuleElements getGroupRuleAccess() {
|
||||
return pGroupRule;
|
||||
}
|
||||
|
||||
public ParserRule getGroupRuleRule() {
|
||||
return getGroupRuleAccess().getRule();
|
||||
}
|
||||
|
||||
//GroupDataTypeRule:
|
||||
// 'this' 'is' 'a' 'test';
|
||||
public GroupDataTypeRuleElements getGroupDataTypeRuleAccess() {
|
||||
return pGroupDataTypeRule;
|
||||
}
|
||||
|
||||
public ParserRule getGroupDataTypeRuleRule() {
|
||||
return getGroupDataTypeRuleAccess().getRule();
|
||||
}
|
||||
|
||||
//terminal ID:
|
||||
// '^'? ('a'..'z' | 'A'..'Z' | '_') ('a'..'z' | 'A'..'Z' | '_' | '0'..'9')*;
|
||||
public TerminalRule getIDRule() {
|
||||
|
|
|
@ -0,0 +1,19 @@
|
|||
/**
|
||||
* generated by Xtext
|
||||
*/
|
||||
package org.eclipse.xtext.parsetree.unassignedtext.unassignedtext;
|
||||
|
||||
|
||||
/**
|
||||
* <!-- begin-user-doc -->
|
||||
* A representation of the model object '<em><b>Group Rule</b></em>'.
|
||||
* <!-- end-user-doc -->
|
||||
*
|
||||
*
|
||||
* @see org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.UnassignedtextPackage#getGroupRule()
|
||||
* @model
|
||||
* @generated
|
||||
*/
|
||||
public interface GroupRule extends Model
|
||||
{
|
||||
} // GroupRule
|
|
@ -77,6 +77,15 @@ public interface UnassignedtextFactory extends EFactory
|
|||
*/
|
||||
CommonTerminalsRule createCommonTerminalsRule();
|
||||
|
||||
/**
|
||||
* Returns a new object of class '<em>Group Rule</em>'.
|
||||
* <!-- begin-user-doc -->
|
||||
* <!-- end-user-doc -->
|
||||
* @return a new object of class '<em>Group Rule</em>'.
|
||||
* @generated
|
||||
*/
|
||||
GroupRule createGroupRule();
|
||||
|
||||
/**
|
||||
* Returns the package supported by this factory.
|
||||
* <!-- begin-user-doc -->
|
||||
|
|
|
@ -215,6 +215,25 @@ public interface UnassignedtextPackage extends EPackage
|
|||
*/
|
||||
int COMMON_TERMINALS_RULE_FEATURE_COUNT = MODEL_FEATURE_COUNT + 1;
|
||||
|
||||
/**
|
||||
* The meta object id for the '{@link org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.impl.GroupRuleImpl <em>Group Rule</em>}' class.
|
||||
* <!-- begin-user-doc -->
|
||||
* <!-- end-user-doc -->
|
||||
* @see org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.impl.GroupRuleImpl
|
||||
* @see org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.impl.UnassignedtextPackageImpl#getGroupRule()
|
||||
* @generated
|
||||
*/
|
||||
int GROUP_RULE = 6;
|
||||
|
||||
/**
|
||||
* The number of structural features of the '<em>Group Rule</em>' class.
|
||||
* <!-- begin-user-doc -->
|
||||
* <!-- end-user-doc -->
|
||||
* @generated
|
||||
* @ordered
|
||||
*/
|
||||
int GROUP_RULE_FEATURE_COUNT = MODEL_FEATURE_COUNT + 0;
|
||||
|
||||
|
||||
/**
|
||||
* Returns the meta object for class '{@link org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.Model <em>Model</em>}'.
|
||||
|
@ -331,6 +350,16 @@ public interface UnassignedtextPackage extends EPackage
|
|||
*/
|
||||
EAttribute getCommonTerminalsRule_Val();
|
||||
|
||||
/**
|
||||
* Returns the meta object for class '{@link org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.GroupRule <em>Group Rule</em>}'.
|
||||
* <!-- begin-user-doc -->
|
||||
* <!-- end-user-doc -->
|
||||
* @return the meta object for class '<em>Group Rule</em>'.
|
||||
* @see org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.GroupRule
|
||||
* @generated
|
||||
*/
|
||||
EClass getGroupRule();
|
||||
|
||||
/**
|
||||
* Returns the factory that creates the instances of the model.
|
||||
* <!-- begin-user-doc -->
|
||||
|
@ -454,6 +483,16 @@ public interface UnassignedtextPackage extends EPackage
|
|||
*/
|
||||
EAttribute COMMON_TERMINALS_RULE__VAL = eINSTANCE.getCommonTerminalsRule_Val();
|
||||
|
||||
/**
|
||||
* The meta object literal for the '{@link org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.impl.GroupRuleImpl <em>Group Rule</em>}' class.
|
||||
* <!-- begin-user-doc -->
|
||||
* <!-- end-user-doc -->
|
||||
* @see org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.impl.GroupRuleImpl
|
||||
* @see org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.impl.UnassignedtextPackageImpl#getGroupRule()
|
||||
* @generated
|
||||
*/
|
||||
EClass GROUP_RULE = eINSTANCE.getGroupRule();
|
||||
|
||||
}
|
||||
|
||||
} //UnassignedtextPackage
|
||||
|
|
|
@ -0,0 +1,41 @@
|
|||
/**
|
||||
* generated by Xtext
|
||||
*/
|
||||
package org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.impl;
|
||||
|
||||
import org.eclipse.emf.ecore.EClass;
|
||||
|
||||
import org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.GroupRule;
|
||||
import org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.UnassignedtextPackage;
|
||||
|
||||
/**
|
||||
* <!-- begin-user-doc -->
|
||||
* An implementation of the model object '<em><b>Group Rule</b></em>'.
|
||||
* <!-- end-user-doc -->
|
||||
*
|
||||
* @generated
|
||||
*/
|
||||
public class GroupRuleImpl extends ModelImpl implements GroupRule
|
||||
{
|
||||
/**
|
||||
* <!-- begin-user-doc -->
|
||||
* <!-- end-user-doc -->
|
||||
* @generated
|
||||
*/
|
||||
protected GroupRuleImpl()
|
||||
{
|
||||
super();
|
||||
}
|
||||
|
||||
/**
|
||||
* <!-- begin-user-doc -->
|
||||
* <!-- end-user-doc -->
|
||||
* @generated
|
||||
*/
|
||||
@Override
|
||||
protected EClass eStaticClass()
|
||||
{
|
||||
return UnassignedtextPackage.Literals.GROUP_RULE;
|
||||
}
|
||||
|
||||
} //GroupRuleImpl
|
|
@ -71,6 +71,7 @@ public class UnassignedtextFactoryImpl extends EFactoryImpl implements Unassigne
|
|||
case UnassignedtextPackage.MULTI_RULE: return createMultiRule();
|
||||
case UnassignedtextPackage.DATATYPE_RULE: return createDatatypeRule();
|
||||
case UnassignedtextPackage.COMMON_TERMINALS_RULE: return createCommonTerminalsRule();
|
||||
case UnassignedtextPackage.GROUP_RULE: return createGroupRule();
|
||||
default:
|
||||
throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
|
||||
}
|
||||
|
@ -142,6 +143,17 @@ public class UnassignedtextFactoryImpl extends EFactoryImpl implements Unassigne
|
|||
return commonTerminalsRule;
|
||||
}
|
||||
|
||||
/**
|
||||
* <!-- begin-user-doc -->
|
||||
* <!-- end-user-doc -->
|
||||
* @generated
|
||||
*/
|
||||
public GroupRule createGroupRule()
|
||||
{
|
||||
GroupRuleImpl groupRule = new GroupRuleImpl();
|
||||
return groupRule;
|
||||
}
|
||||
|
||||
/**
|
||||
* <!-- begin-user-doc -->
|
||||
* <!-- end-user-doc -->
|
||||
|
|
|
@ -13,6 +13,7 @@ import org.eclipse.emf.ecore.impl.EPackageImpl;
|
|||
import org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.CaseInsensitiveKeywordRule;
|
||||
import org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.CommonTerminalsRule;
|
||||
import org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.DatatypeRule;
|
||||
import org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.GroupRule;
|
||||
import org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.Model;
|
||||
import org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.MultiRule;
|
||||
import org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.PluralRule;
|
||||
|
@ -69,6 +70,13 @@ public class UnassignedtextPackageImpl extends EPackageImpl implements Unassigne
|
|||
*/
|
||||
private EClass commonTerminalsRuleEClass = null;
|
||||
|
||||
/**
|
||||
* <!-- begin-user-doc -->
|
||||
* <!-- end-user-doc -->
|
||||
* @generated
|
||||
*/
|
||||
private EClass groupRuleEClass = null;
|
||||
|
||||
/**
|
||||
* Creates an instance of the model <b>Package</b>, registered with
|
||||
* {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
|
||||
|
@ -245,6 +253,16 @@ public class UnassignedtextPackageImpl extends EPackageImpl implements Unassigne
|
|||
return (EAttribute)commonTerminalsRuleEClass.getEStructuralFeatures().get(0);
|
||||
}
|
||||
|
||||
/**
|
||||
* <!-- begin-user-doc -->
|
||||
* <!-- end-user-doc -->
|
||||
* @generated
|
||||
*/
|
||||
public EClass getGroupRule()
|
||||
{
|
||||
return groupRuleEClass;
|
||||
}
|
||||
|
||||
/**
|
||||
* <!-- begin-user-doc -->
|
||||
* <!-- end-user-doc -->
|
||||
|
@ -291,6 +309,8 @@ public class UnassignedtextPackageImpl extends EPackageImpl implements Unassigne
|
|||
|
||||
commonTerminalsRuleEClass = createEClass(COMMON_TERMINALS_RULE);
|
||||
createEAttribute(commonTerminalsRuleEClass, COMMON_TERMINALS_RULE__VAL);
|
||||
|
||||
groupRuleEClass = createEClass(GROUP_RULE);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -330,6 +350,7 @@ public class UnassignedtextPackageImpl extends EPackageImpl implements Unassigne
|
|||
multiRuleEClass.getESuperTypes().add(this.getModel());
|
||||
datatypeRuleEClass.getESuperTypes().add(this.getModel());
|
||||
commonTerminalsRuleEClass.getESuperTypes().add(this.getModel());
|
||||
groupRuleEClass.getESuperTypes().add(this.getModel());
|
||||
|
||||
// Initialize classes and features; add operations and parameters
|
||||
initEClass(modelEClass, Model.class, "Model", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
||||
|
@ -349,6 +370,8 @@ public class UnassignedtextPackageImpl extends EPackageImpl implements Unassigne
|
|||
initEClass(commonTerminalsRuleEClass, CommonTerminalsRule.class, "CommonTerminalsRule", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
||||
initEAttribute(getCommonTerminalsRule_Val(), theEcorePackage.getEString(), "val", null, 0, 1, CommonTerminalsRule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
|
||||
|
||||
initEClass(groupRuleEClass, GroupRule.class, "GroupRule", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
|
||||
|
||||
// Create resource
|
||||
createResource(eNS_URI);
|
||||
}
|
||||
|
|
|
@ -106,6 +106,11 @@ public class UnassignedtextAdapterFactory extends AdapterFactoryImpl
|
|||
return createCommonTerminalsRuleAdapter();
|
||||
}
|
||||
@Override
|
||||
public Adapter caseGroupRule(GroupRule object)
|
||||
{
|
||||
return createGroupRuleAdapter();
|
||||
}
|
||||
@Override
|
||||
public Adapter defaultCase(EObject object)
|
||||
{
|
||||
return createEObjectAdapter();
|
||||
|
@ -217,6 +222,21 @@ public class UnassignedtextAdapterFactory extends AdapterFactoryImpl
|
|||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a new adapter for an object of class '{@link org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.GroupRule <em>Group Rule</em>}'.
|
||||
* <!-- begin-user-doc -->
|
||||
* This default implementation returns null so that we can easily ignore cases;
|
||||
* it's useful to ignore a case when inheritance will catch all the cases anyway.
|
||||
* <!-- end-user-doc -->
|
||||
* @return the new adapter.
|
||||
* @see org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.GroupRule
|
||||
* @generated
|
||||
*/
|
||||
public Adapter createGroupRuleAdapter()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a new adapter for the default case.
|
||||
* <!-- begin-user-doc -->
|
||||
|
|
|
@ -120,6 +120,14 @@ public class UnassignedtextSwitch<T> extends Switch<T>
|
|||
if (result == null) result = defaultCase(theEObject);
|
||||
return result;
|
||||
}
|
||||
case UnassignedtextPackage.GROUP_RULE:
|
||||
{
|
||||
GroupRule groupRule = (GroupRule)theEObject;
|
||||
T result = caseGroupRule(groupRule);
|
||||
if (result == null) result = caseModel(groupRule);
|
||||
if (result == null) result = defaultCase(theEObject);
|
||||
return result;
|
||||
}
|
||||
default: return defaultCase(theEObject);
|
||||
}
|
||||
}
|
||||
|
@ -220,6 +228,22 @@ public class UnassignedtextSwitch<T> extends Switch<T>
|
|||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the result of interpreting the object as an instance of '<em>Group Rule</em>'.
|
||||
* <!-- begin-user-doc -->
|
||||
* This implementation returns null;
|
||||
* returning a non-null result will terminate the switch.
|
||||
* <!-- end-user-doc -->
|
||||
* @param object the target of the switch.
|
||||
* @return the result of interpreting the object as an instance of '<em>Group Rule</em>'.
|
||||
* @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
|
||||
* @generated
|
||||
*/
|
||||
public T caseGroupRule(GroupRule object)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
|
||||
* <!-- begin-user-doc -->
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
package org.eclipse.xtext.parsetree.unassignedtext;
|
||||
|
||||
import org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.Model;
|
||||
import org.eclipse.xtext.parsetree.unassignedtext.unassignedtext.UnassignedtextFactory;
|
||||
import org.eclipse.xtext.resource.XtextResource;
|
||||
import org.eclipse.xtext.tests.AbstractXtextTests;
|
||||
import org.junit.Test;
|
||||
|
@ -75,4 +77,17 @@ public class UnassignedTextTest extends AbstractXtextTests {
|
|||
String s = serialize(getModel(in)).trim();
|
||||
assertEquals(out, s);
|
||||
}
|
||||
|
||||
@Test public void testGroup() throws Exception {
|
||||
final String in = "group this is a test";
|
||||
final String out = "group this is a test";
|
||||
String s = serialize(getModel(in)).trim();
|
||||
assertEquals(out, s);
|
||||
}
|
||||
|
||||
@Test public void testGroup_02() throws Exception {
|
||||
final String out = "group this is a test";
|
||||
String s = serialize(UnassignedtextFactory.eINSTANCE.createGroupRule()).trim();
|
||||
assertEquals(out, s);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,7 +13,7 @@ import "http://www.eclipse.org/emf/2002/Ecore" as ecore
|
|||
generate unassignedtext "http://simple/unassignedtext"
|
||||
|
||||
Model:
|
||||
CaseInsensitiveKeywordRule | PluralRule | MultiRule | DatatypeRule | CommonTerminalsRule;
|
||||
CaseInsensitiveKeywordRule | PluralRule | MultiRule | DatatypeRule | CommonTerminalsRule | GroupRule;
|
||||
|
||||
CaseInsensitiveKeywordRule:
|
||||
CaseInsensitiveKeyword val=INT;
|
||||
|
@ -55,3 +55,9 @@ Datatype2 returns ecore::EString:
|
|||
|
||||
CommonTerminalsRule:
|
||||
'terminals' ID INT STRING val=ID;
|
||||
|
||||
GroupRule: {GroupRule}'group' GroupDataTypeRule;
|
||||
|
||||
GroupDataTypeRule:
|
||||
('this' 'is' 'a' 'test')
|
||||
;
|
||||
|
|
|
@ -499,14 +499,20 @@ import static extension org.eclipse.xtext.xtext.generator.util.GenModelUtil2.*
|
|||
return ass === null || ass.isBooleanAssignment
|
||||
}
|
||||
|
||||
private def String defaultValue(AbstractElement ele, Set<AbstractElement> visited) {
|
||||
private def String defaultValue(AbstractElement ele, AbstractRule rule, Set<AbstractElement> visited) {
|
||||
switch (ele) {
|
||||
case !visited.add(ele): ""
|
||||
case ele.isOptionalCardinality(): ""
|
||||
Alternatives: ele.elements.head.defaultValue(visited)
|
||||
Group: ele.elements.map[defaultValue(visited)].join
|
||||
Alternatives: ele.elements.head.defaultValue(rule, visited)
|
||||
Group:
|
||||
if (rule instanceof TerminalRule) {
|
||||
ele.elements.map[defaultValue(rule, visited)].filter[!isNullOrEmpty].join()
|
||||
} else {
|
||||
ele.elements.map[defaultValue(rule, visited)].filter[!isNullOrEmpty].join(" ")
|
||||
}
|
||||
|
||||
Keyword: ele.value
|
||||
RuleCall: ele.rule.alternatives.defaultValue(visited)
|
||||
RuleCall: ele.rule.alternatives.defaultValue(ele.rule, visited)
|
||||
default: ''
|
||||
}
|
||||
}
|
||||
|
@ -549,7 +555,7 @@ import static extension org.eclipse.xtext.xtext.generator.util.GenModelUtil2.*
|
|||
protected String «rule.unassignedCalledTokenRuleName»(«EObject» semanticObject, «RuleCall» ruleCall, «INode» node) {
|
||||
if (node != null)
|
||||
return getTokenText(node);
|
||||
return "«Strings.convertToJavaString(rule.alternatives.defaultValue(newHashSet))»";
|
||||
return "«Strings.convertToJavaString(rule.alternatives.defaultValue(rule, newHashSet))»";
|
||||
}
|
||||
'''
|
||||
}
|
||||
|
|
|
@ -73,6 +73,7 @@ import org.eclipse.xtext.xbase.lib.IterableExtensions;
|
|||
import org.eclipse.xtext.xbase.lib.ListExtensions;
|
||||
import org.eclipse.xtext.xbase.lib.Pair;
|
||||
import org.eclipse.xtext.xbase.lib.Pure;
|
||||
import org.eclipse.xtext.xbase.lib.StringExtensions;
|
||||
import org.eclipse.xtext.xtext.generator.AbstractStubGeneratingFragment;
|
||||
import org.eclipse.xtext.xtext.generator.XtextGeneratorNaming;
|
||||
import org.eclipse.xtext.xtext.generator.grammarAccess.GrammarAccessExtensions;
|
||||
|
@ -1386,7 +1387,7 @@ public class SerializerFragment2 extends AbstractStubGeneratingFragment {
|
|||
return ((ass == null) || GrammarUtil.isBooleanAssignment(ass));
|
||||
}
|
||||
|
||||
private String defaultValue(final AbstractElement ele, final Set<AbstractElement> visited) {
|
||||
private String defaultValue(final AbstractElement ele, final AbstractRule rule, final Set<AbstractElement> visited) {
|
||||
String _switchResult = null;
|
||||
boolean _matched = false;
|
||||
boolean _add = visited.add(ele);
|
||||
|
@ -1405,16 +1406,33 @@ public class SerializerFragment2 extends AbstractStubGeneratingFragment {
|
|||
if (!_matched) {
|
||||
if (ele instanceof Alternatives) {
|
||||
_matched=true;
|
||||
_switchResult = this.defaultValue(IterableExtensions.<AbstractElement>head(((Alternatives)ele).getElements()), visited);
|
||||
_switchResult = this.defaultValue(IterableExtensions.<AbstractElement>head(((Alternatives)ele).getElements()), rule, visited);
|
||||
}
|
||||
}
|
||||
if (!_matched) {
|
||||
if (ele instanceof Group) {
|
||||
_matched=true;
|
||||
final Function1<AbstractElement, String> _function = (AbstractElement it) -> {
|
||||
return this.defaultValue(it, visited);
|
||||
};
|
||||
_switchResult = IterableExtensions.join(ListExtensions.<AbstractElement, String>map(((Group)ele).getElements(), _function));
|
||||
String _xifexpression = null;
|
||||
if ((rule instanceof TerminalRule)) {
|
||||
final Function1<AbstractElement, String> _function = (AbstractElement it) -> {
|
||||
return this.defaultValue(it, rule, visited);
|
||||
};
|
||||
final Function1<String, Boolean> _function_1 = (String it) -> {
|
||||
boolean _isNullOrEmpty = StringExtensions.isNullOrEmpty(it);
|
||||
return Boolean.valueOf((!_isNullOrEmpty));
|
||||
};
|
||||
_xifexpression = IterableExtensions.join(IterableExtensions.<String>filter(ListExtensions.<AbstractElement, String>map(((Group)ele).getElements(), _function), _function_1));
|
||||
} else {
|
||||
final Function1<AbstractElement, String> _function_2 = (AbstractElement it) -> {
|
||||
return this.defaultValue(it, rule, visited);
|
||||
};
|
||||
final Function1<String, Boolean> _function_3 = (String it) -> {
|
||||
boolean _isNullOrEmpty = StringExtensions.isNullOrEmpty(it);
|
||||
return Boolean.valueOf((!_isNullOrEmpty));
|
||||
};
|
||||
_xifexpression = IterableExtensions.join(IterableExtensions.<String>filter(ListExtensions.<AbstractElement, String>map(((Group)ele).getElements(), _function_2), _function_3), " ");
|
||||
}
|
||||
_switchResult = _xifexpression;
|
||||
}
|
||||
}
|
||||
if (!_matched) {
|
||||
|
@ -1426,7 +1444,7 @@ public class SerializerFragment2 extends AbstractStubGeneratingFragment {
|
|||
if (!_matched) {
|
||||
if (ele instanceof RuleCall) {
|
||||
_matched=true;
|
||||
_switchResult = this.defaultValue(((RuleCall)ele).getRule().getAlternatives(), visited);
|
||||
_switchResult = this.defaultValue(((RuleCall)ele).getRule().getAlternatives(), ((RuleCall)ele).getRule(), visited);
|
||||
}
|
||||
}
|
||||
if (!_matched) {
|
||||
|
@ -1593,7 +1611,7 @@ public class SerializerFragment2 extends AbstractStubGeneratingFragment {
|
|||
_builder.newLine();
|
||||
_builder.append("\t");
|
||||
_builder.append("return \"");
|
||||
String _convertToJavaString = Strings.convertToJavaString(SerializerFragment2.this.defaultValue(rule.getAlternatives(), CollectionLiterals.<AbstractElement>newHashSet()));
|
||||
String _convertToJavaString = Strings.convertToJavaString(SerializerFragment2.this.defaultValue(rule.getAlternatives(), rule, CollectionLiterals.<AbstractElement>newHashSet()));
|
||||
_builder.append(_convertToJavaString, "\t");
|
||||
_builder.append("\";");
|
||||
_builder.newLineIfNotEmpty();
|
||||
|
|
Loading…
Reference in a new issue