package at.bestsolution.persistence.emap.parser.antlr.internal;
import org.eclipse.xtext.*;
import org.eclipse.xtext.parser.*;
import org.eclipse.xtext.parser.impl.*;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.common.util.Enumerator;
import org.eclipse.xtext.parser.antlr.AbstractInternalAntlrParser;
import org.eclipse.xtext.parser.antlr.XtextTokenStream;
import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
import org.eclipse.xtext.parser.antlr.AntlrDatatypeRuleToken;
import at.bestsolution.persistence.emap.services.EMapGrammarAccess;
import org.antlr.runtime.*;
import java.util.Stack;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.util.HashMap;
@SuppressWarnings("all")
public class InternalEMapParser extends AbstractInternalAntlrParser {
public static final String[] tokenNames = new String[] {
"<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ID", "RULE_STRING", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'bundle'", "'extends'", "'{'", "'predefined'", "','", "'}'", "'generator'", "'databases'", "'colsort'", "'sequence'", "'table'", "':'", "'pk-constraint'", "'index'", "'('", "')'", "'fk-constraint'", "'unique-constraint'", "'sql-type-def'", "'default'", "'size'", "'webservice'", "'rest'", "'as'", "'greedy'", "'custom'", "'path-param'", "'named'", "'query-param'", "'import'", "'package'", "';'", "'.'", "'abstract'", "'entity'", "'derived'", "'attributes'", "'queries'", "'descriminatedby'", "'primarykey'", "'forced-fk'", "'=>'", "'generatedby'", "'resolve'", "'on'", "'autokey'", "'query'", "'seqnext'", "'int'", "'long'", "'double'", "'float'", "'boolean'", "'map'", "'['", "']'", "'typedef'", "'cached'", "'FROM'", "'WHERE'", "'GROUP BY'", "'ORDER BY'", "'etype'", "'#'", "'*'", "'EMAP'", "'ECORE'", "'ECORE_REVERSED'", "'ALPHABETIC'", "'list'", "'single'"
};
public static final int T__50=50;
public static final int T__19=19;
public static final int T__15=15;
public static final int T__59=59;
public static final int T__16=16;
public static final int T__17=17;
public static final int T__18=18;
public static final int T__11=11;
public static final int T__55=55;
public static final int T__12=12;
public static final int T__56=56;
public static final int T__13=13;
public static final int T__57=57;
public static final int T__14=14;
public static final int T__58=58;
public static final int T__51=51;
public static final int T__52=52;
public static final int T__53=53;
public static final int T__54=54;
public static final int T__60=60;
public static final int T__61=61;
public static final int RULE_ID=4;
public static final int T__26=26;
public static final int T__27=27;
public static final int T__28=28;
public static final int RULE_INT=6;
public static final int T__29=29;
public static final int T__22=22;
public static final int T__66=66;
public static final int RULE_ML_COMMENT=7;
public static final int T__23=23;
public static final int T__67=67;
public static final int T__24=24;
public static final int T__68=68;
public static final int T__25=25;
public static final int T__69=69;
public static final int T__62=62;
public static final int T__63=63;
public static final int T__20=20;
public static final int T__64=64;
public static final int T__21=21;
public static final int T__65=65;
public static final int T__70=70;
public static final int T__71=71;
public static final int T__72=72;
public static final int RULE_STRING=5;
public static final int RULE_SL_COMMENT=8;
public static final int T__37=37;
public static final int T__38=38;
public static final int T__39=39;
public static final int T__33=33;
public static final int T__77=77;
public static final int T__34=34;
public static final int T__78=78;
public static final int T__35=35;
public static final int T__79=79;
public static final int T__36=36;
public static final int T__73=73;
public static final int EOF=-1;
public static final int T__30=30;
public static final int T__74=74;
public static final int T__31=31;
public static final int T__75=75;
public static final int T__32=32;
public static final int T__76=76;
public static final int T__80=80;
public static final int T__81=81;
public static final int RULE_WS=9;
public static final int RULE_ANY_OTHER=10;
public static final int T__48=48;
public static final int T__49=49;
public static final int T__44=44;
public static final int T__45=45;
public static final int T__46=46;
public static final int T__47=47;
public static final int T__40=40;
public static final int T__41=41;
public static final int T__42=42;
public static final int T__43=43;
// delegates
// delegators
public InternalEMapParser(TokenStream input) {
this(input, new RecognizerSharedState());
}
public InternalEMapParser(TokenStream input, RecognizerSharedState state) {
super(input, state);
}
public String[] getTokenNames() { return InternalEMapParser.tokenNames; }
public String getGrammarFileName() { return "InternalEMap.g"; }
private EMapGrammarAccess grammarAccess;
public InternalEMapParser(TokenStream input, EMapGrammarAccess grammarAccess) {
this(input);
this.grammarAccess = grammarAccess;
registerRules(grammarAccess.getGrammar());
}
@Override
protected String getFirstRuleName() {
return "EMapping";
}
@Override
protected EMapGrammarAccess getGrammarAccess() {
return grammarAccess;
}
// $ANTLR start "entryRuleEMapping"
// InternalEMap.g:68:1: entryRuleEMapping returns [EObject current=null] : iv_ruleEMapping= ruleEMapping EOF ;
public final EObject entryRuleEMapping() throws RecognitionException {
EObject current = null;
EObject iv_ruleEMapping = null;
try {
// InternalEMap.g:69:2: (iv_ruleEMapping= ruleEMapping EOF )
// InternalEMap.g:70:2: iv_ruleEMapping= ruleEMapping EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingRule());
}
pushFollow(FOLLOW_1);
iv_ruleEMapping=ruleEMapping();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEMapping;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEMapping"
// $ANTLR start "ruleEMapping"
// InternalEMap.g:77:1: ruleEMapping returns [EObject current=null] : ( ( (lv_root_0_1= ruleEMappingBundle | lv_root_0_2= ruleEMappingEntityDef ) ) ) ;
public final EObject ruleEMapping() throws RecognitionException {
EObject current = null;
EObject lv_root_0_1 = null;
EObject lv_root_0_2 = null;
enterRule();
try {
// InternalEMap.g:80:28: ( ( ( (lv_root_0_1= ruleEMappingBundle | lv_root_0_2= ruleEMappingEntityDef ) ) ) )
// InternalEMap.g:81:1: ( ( (lv_root_0_1= ruleEMappingBundle | lv_root_0_2= ruleEMappingEntityDef ) ) )
{
// InternalEMap.g:81:1: ( ( (lv_root_0_1= ruleEMappingBundle | lv_root_0_2= ruleEMappingEntityDef ) ) )
// InternalEMap.g:82:1: ( (lv_root_0_1= ruleEMappingBundle | lv_root_0_2= ruleEMappingEntityDef ) )
{
// InternalEMap.g:82:1: ( (lv_root_0_1= ruleEMappingBundle | lv_root_0_2= ruleEMappingEntityDef ) )
// InternalEMap.g:83:1: (lv_root_0_1= ruleEMappingBundle | lv_root_0_2= ruleEMappingEntityDef )
{
// InternalEMap.g:83:1: (lv_root_0_1= ruleEMappingBundle | lv_root_0_2= ruleEMappingEntityDef )
int alt1=2;
int LA1_0 = input.LA(1);
if ( (LA1_0==11||LA1_0==40) ) {
alt1=1;
}
else if ( (LA1_0==41) ) {
alt1=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 1, 0, input);
throw nvae;
}
switch (alt1) {
case 1 :
// InternalEMap.g:84:3: lv_root_0_1= ruleEMappingBundle
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingAccess().getRootEMappingBundleParserRuleCall_0_0());
}
pushFollow(FOLLOW_2);
lv_root_0_1=ruleEMappingBundle();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingRule());
}
set(
current,
"root",
lv_root_0_1,
"at.bestsolution.persistence.emap.EMap.EMappingBundle");
afterParserOrEnumRuleCall();
}
}
break;
case 2 :
// InternalEMap.g:99:8: lv_root_0_2= ruleEMappingEntityDef
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingAccess().getRootEMappingEntityDefParserRuleCall_0_1());
}
pushFollow(FOLLOW_2);
lv_root_0_2=ruleEMappingEntityDef();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingRule());
}
set(
current,
"root",
lv_root_0_2,
"at.bestsolution.persistence.emap.EMap.EMappingEntityDef");
afterParserOrEnumRuleCall();
}
}
break;
}
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEMapping"
// $ANTLR start "entryRuleEMappingBundle"
// InternalEMap.g:125:1: entryRuleEMappingBundle returns [EObject current=null] : iv_ruleEMappingBundle= ruleEMappingBundle EOF ;
public final EObject entryRuleEMappingBundle() throws RecognitionException {
EObject current = null;
EObject iv_ruleEMappingBundle = null;
try {
// InternalEMap.g:126:2: (iv_ruleEMappingBundle= ruleEMappingBundle EOF )
// InternalEMap.g:127:2: iv_ruleEMappingBundle= ruleEMappingBundle EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingBundleRule());
}
pushFollow(FOLLOW_1);
iv_ruleEMappingBundle=ruleEMappingBundle();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEMappingBundle;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEMappingBundle"
// $ANTLR start "ruleEMappingBundle"
// InternalEMap.g:134:1: ruleEMappingBundle returns [EObject current=null] : ( ( (lv_imports_0_0= ruleImport ) )* otherlv_1= 'bundle' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'extends' ( ( ruleQualifiedName ) ) )? otherlv_5= '{' (otherlv_6= 'predefined' otherlv_7= '{' ( (lv_predef_8_0= ruleEPredef ) ) (otherlv_9= ',' ( (lv_predef_10_0= ruleEPredef ) ) )* otherlv_11= '}' )? ( (lv_entities_12_0= ruleEBundleEntity ) ) (otherlv_13= ',' ( (lv_entities_14_0= ruleEBundleEntity ) ) )* ( (lv_typeDefs_15_0= ruleESQLTypeDef ) )* (otherlv_16= 'generator' otherlv_17= '{' ( (lv_generators_18_0= ruleEGeneratorDef ) )+ otherlv_19= '}' )? otherlv_20= '}' (otherlv_21= 'databases' ( (lv_databases_22_0= RULE_STRING ) ) (otherlv_23= ',' ( (lv_databases_24_0= RULE_STRING ) ) )* )? (otherlv_25= 'colsort' ( (lv_colSort_26_0= ruleColSort ) ) )? ) ;
public final EObject ruleEMappingBundle() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
Token lv_name_2_0=null;
Token otherlv_3=null;
Token otherlv_5=null;
Token otherlv_6=null;
Token otherlv_7=null;
Token otherlv_9=null;
Token otherlv_11=null;
Token otherlv_13=null;
Token otherlv_16=null;
Token otherlv_17=null;
Token otherlv_19=null;
Token otherlv_20=null;
Token otherlv_21=null;
Token lv_databases_22_0=null;
Token otherlv_23=null;
Token lv_databases_24_0=null;
Token otherlv_25=null;
EObject lv_imports_0_0 = null;
EObject lv_predef_8_0 = null;
EObject lv_predef_10_0 = null;
EObject lv_entities_12_0 = null;
EObject lv_entities_14_0 = null;
EObject lv_typeDefs_15_0 = null;
EObject lv_generators_18_0 = null;
Enumerator lv_colSort_26_0 = null;
enterRule();
try {
// InternalEMap.g:137:28: ( ( ( (lv_imports_0_0= ruleImport ) )* otherlv_1= 'bundle' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'extends' ( ( ruleQualifiedName ) ) )? otherlv_5= '{' (otherlv_6= 'predefined' otherlv_7= '{' ( (lv_predef_8_0= ruleEPredef ) ) (otherlv_9= ',' ( (lv_predef_10_0= ruleEPredef ) ) )* otherlv_11= '}' )? ( (lv_entities_12_0= ruleEBundleEntity ) ) (otherlv_13= ',' ( (lv_entities_14_0= ruleEBundleEntity ) ) )* ( (lv_typeDefs_15_0= ruleESQLTypeDef ) )* (otherlv_16= 'generator' otherlv_17= '{' ( (lv_generators_18_0= ruleEGeneratorDef ) )+ otherlv_19= '}' )? otherlv_20= '}' (otherlv_21= 'databases' ( (lv_databases_22_0= RULE_STRING ) ) (otherlv_23= ',' ( (lv_databases_24_0= RULE_STRING ) ) )* )? (otherlv_25= 'colsort' ( (lv_colSort_26_0= ruleColSort ) ) )? ) )
// InternalEMap.g:138:1: ( ( (lv_imports_0_0= ruleImport ) )* otherlv_1= 'bundle' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'extends' ( ( ruleQualifiedName ) ) )? otherlv_5= '{' (otherlv_6= 'predefined' otherlv_7= '{' ( (lv_predef_8_0= ruleEPredef ) ) (otherlv_9= ',' ( (lv_predef_10_0= ruleEPredef ) ) )* otherlv_11= '}' )? ( (lv_entities_12_0= ruleEBundleEntity ) ) (otherlv_13= ',' ( (lv_entities_14_0= ruleEBundleEntity ) ) )* ( (lv_typeDefs_15_0= ruleESQLTypeDef ) )* (otherlv_16= 'generator' otherlv_17= '{' ( (lv_generators_18_0= ruleEGeneratorDef ) )+ otherlv_19= '}' )? otherlv_20= '}' (otherlv_21= 'databases' ( (lv_databases_22_0= RULE_STRING ) ) (otherlv_23= ',' ( (lv_databases_24_0= RULE_STRING ) ) )* )? (otherlv_25= 'colsort' ( (lv_colSort_26_0= ruleColSort ) ) )? )
{
// InternalEMap.g:138:1: ( ( (lv_imports_0_0= ruleImport ) )* otherlv_1= 'bundle' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'extends' ( ( ruleQualifiedName ) ) )? otherlv_5= '{' (otherlv_6= 'predefined' otherlv_7= '{' ( (lv_predef_8_0= ruleEPredef ) ) (otherlv_9= ',' ( (lv_predef_10_0= ruleEPredef ) ) )* otherlv_11= '}' )? ( (lv_entities_12_0= ruleEBundleEntity ) ) (otherlv_13= ',' ( (lv_entities_14_0= ruleEBundleEntity ) ) )* ( (lv_typeDefs_15_0= ruleESQLTypeDef ) )* (otherlv_16= 'generator' otherlv_17= '{' ( (lv_generators_18_0= ruleEGeneratorDef ) )+ otherlv_19= '}' )? otherlv_20= '}' (otherlv_21= 'databases' ( (lv_databases_22_0= RULE_STRING ) ) (otherlv_23= ',' ( (lv_databases_24_0= RULE_STRING ) ) )* )? (otherlv_25= 'colsort' ( (lv_colSort_26_0= ruleColSort ) ) )? )
// InternalEMap.g:138:2: ( (lv_imports_0_0= ruleImport ) )* otherlv_1= 'bundle' ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= 'extends' ( ( ruleQualifiedName ) ) )? otherlv_5= '{' (otherlv_6= 'predefined' otherlv_7= '{' ( (lv_predef_8_0= ruleEPredef ) ) (otherlv_9= ',' ( (lv_predef_10_0= ruleEPredef ) ) )* otherlv_11= '}' )? ( (lv_entities_12_0= ruleEBundleEntity ) ) (otherlv_13= ',' ( (lv_entities_14_0= ruleEBundleEntity ) ) )* ( (lv_typeDefs_15_0= ruleESQLTypeDef ) )* (otherlv_16= 'generator' otherlv_17= '{' ( (lv_generators_18_0= ruleEGeneratorDef ) )+ otherlv_19= '}' )? otherlv_20= '}' (otherlv_21= 'databases' ( (lv_databases_22_0= RULE_STRING ) ) (otherlv_23= ',' ( (lv_databases_24_0= RULE_STRING ) ) )* )? (otherlv_25= 'colsort' ( (lv_colSort_26_0= ruleColSort ) ) )?
{
// InternalEMap.g:138:2: ( (lv_imports_0_0= ruleImport ) )*
loop2:
do {
int alt2=2;
int LA2_0 = input.LA(1);
if ( (LA2_0==40) ) {
alt2=1;
}
switch (alt2) {
case 1 :
// InternalEMap.g:139:1: (lv_imports_0_0= ruleImport )
{
// InternalEMap.g:139:1: (lv_imports_0_0= ruleImport )
// InternalEMap.g:140:3: lv_imports_0_0= ruleImport
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingBundleAccess().getImportsImportParserRuleCall_0_0());
}
pushFollow(FOLLOW_3);
lv_imports_0_0=ruleImport();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingBundleRule());
}
add(
current,
"imports",
lv_imports_0_0,
"at.bestsolution.persistence.emap.EMap.Import");
afterParserOrEnumRuleCall();
}
}
}
break;
default :
break loop2;
}
} while (true);
otherlv_1=(Token)match(input,11,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getEMappingBundleAccess().getBundleKeyword_1());
}
// InternalEMap.g:160:1: ( (lv_name_2_0= RULE_ID ) )
// InternalEMap.g:161:1: (lv_name_2_0= RULE_ID )
{
// InternalEMap.g:161:1: (lv_name_2_0= RULE_ID )
// InternalEMap.g:162:3: lv_name_2_0= RULE_ID
{
lv_name_2_0=(Token)match(input,RULE_ID,FOLLOW_5); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_2_0, grammarAccess.getEMappingBundleAccess().getNameIDTerminalRuleCall_2_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEMappingBundleRule());
}
setWithLastConsumed(
current,
"name",
lv_name_2_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
// InternalEMap.g:178:2: (otherlv_3= 'extends' ( ( ruleQualifiedName ) ) )?
int alt3=2;
int LA3_0 = input.LA(1);
if ( (LA3_0==12) ) {
alt3=1;
}
switch (alt3) {
case 1 :
// InternalEMap.g:178:4: otherlv_3= 'extends' ( ( ruleQualifiedName ) )
{
otherlv_3=(Token)match(input,12,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getEMappingBundleAccess().getExtendsKeyword_3_0());
}
// InternalEMap.g:182:1: ( ( ruleQualifiedName ) )
// InternalEMap.g:183:1: ( ruleQualifiedName )
{
// InternalEMap.g:183:1: ( ruleQualifiedName )
// InternalEMap.g:184:3: ruleQualifiedName
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEMappingBundleRule());
}
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingBundleAccess().getParentBundleEMappingBundleCrossReference_3_1_0());
}
pushFollow(FOLLOW_6);
ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
otherlv_5=(Token)match(input,13,FOLLOW_7); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_5, grammarAccess.getEMappingBundleAccess().getLeftCurlyBracketKeyword_4());
}
// InternalEMap.g:201:1: (otherlv_6= 'predefined' otherlv_7= '{' ( (lv_predef_8_0= ruleEPredef ) ) (otherlv_9= ',' ( (lv_predef_10_0= ruleEPredef ) ) )* otherlv_11= '}' )?
int alt5=2;
int LA5_0 = input.LA(1);
if ( (LA5_0==14) ) {
alt5=1;
}
switch (alt5) {
case 1 :
// InternalEMap.g:201:3: otherlv_6= 'predefined' otherlv_7= '{' ( (lv_predef_8_0= ruleEPredef ) ) (otherlv_9= ',' ( (lv_predef_10_0= ruleEPredef ) ) )* otherlv_11= '}'
{
otherlv_6=(Token)match(input,14,FOLLOW_6); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_6, grammarAccess.getEMappingBundleAccess().getPredefinedKeyword_5_0());
}
otherlv_7=(Token)match(input,13,FOLLOW_8); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_7, grammarAccess.getEMappingBundleAccess().getLeftCurlyBracketKeyword_5_1());
}
// InternalEMap.g:209:1: ( (lv_predef_8_0= ruleEPredef ) )
// InternalEMap.g:210:1: (lv_predef_8_0= ruleEPredef )
{
// InternalEMap.g:210:1: (lv_predef_8_0= ruleEPredef )
// InternalEMap.g:211:3: lv_predef_8_0= ruleEPredef
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingBundleAccess().getPredefEPredefParserRuleCall_5_2_0());
}
pushFollow(FOLLOW_9);
lv_predef_8_0=ruleEPredef();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingBundleRule());
}
add(
current,
"predef",
lv_predef_8_0,
"at.bestsolution.persistence.emap.EMap.EPredef");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:227:2: (otherlv_9= ',' ( (lv_predef_10_0= ruleEPredef ) ) )*
loop4:
do {
int alt4=2;
int LA4_0 = input.LA(1);
if ( (LA4_0==15) ) {
alt4=1;
}
switch (alt4) {
case 1 :
// InternalEMap.g:227:4: otherlv_9= ',' ( (lv_predef_10_0= ruleEPredef ) )
{
otherlv_9=(Token)match(input,15,FOLLOW_8); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_9, grammarAccess.getEMappingBundleAccess().getCommaKeyword_5_3_0());
}
// InternalEMap.g:231:1: ( (lv_predef_10_0= ruleEPredef ) )
// InternalEMap.g:232:1: (lv_predef_10_0= ruleEPredef )
{
// InternalEMap.g:232:1: (lv_predef_10_0= ruleEPredef )
// InternalEMap.g:233:3: lv_predef_10_0= ruleEPredef
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingBundleAccess().getPredefEPredefParserRuleCall_5_3_1_0());
}
pushFollow(FOLLOW_9);
lv_predef_10_0=ruleEPredef();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingBundleRule());
}
add(
current,
"predef",
lv_predef_10_0,
"at.bestsolution.persistence.emap.EMap.EPredef");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop4;
}
} while (true);
otherlv_11=(Token)match(input,16,FOLLOW_7); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_11, grammarAccess.getEMappingBundleAccess().getRightCurlyBracketKeyword_5_4());
}
}
break;
}
// InternalEMap.g:253:3: ( (lv_entities_12_0= ruleEBundleEntity ) )
// InternalEMap.g:254:1: (lv_entities_12_0= ruleEBundleEntity )
{
// InternalEMap.g:254:1: (lv_entities_12_0= ruleEBundleEntity )
// InternalEMap.g:255:3: lv_entities_12_0= ruleEBundleEntity
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingBundleAccess().getEntitiesEBundleEntityParserRuleCall_6_0());
}
pushFollow(FOLLOW_10);
lv_entities_12_0=ruleEBundleEntity();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingBundleRule());
}
add(
current,
"entities",
lv_entities_12_0,
"at.bestsolution.persistence.emap.EMap.EBundleEntity");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:271:2: (otherlv_13= ',' ( (lv_entities_14_0= ruleEBundleEntity ) ) )*
loop6:
do {
int alt6=2;
int LA6_0 = input.LA(1);
if ( (LA6_0==15) ) {
alt6=1;
}
switch (alt6) {
case 1 :
// InternalEMap.g:271:4: otherlv_13= ',' ( (lv_entities_14_0= ruleEBundleEntity ) )
{
otherlv_13=(Token)match(input,15,FOLLOW_7); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_13, grammarAccess.getEMappingBundleAccess().getCommaKeyword_7_0());
}
// InternalEMap.g:275:1: ( (lv_entities_14_0= ruleEBundleEntity ) )
// InternalEMap.g:276:1: (lv_entities_14_0= ruleEBundleEntity )
{
// InternalEMap.g:276:1: (lv_entities_14_0= ruleEBundleEntity )
// InternalEMap.g:277:3: lv_entities_14_0= ruleEBundleEntity
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingBundleAccess().getEntitiesEBundleEntityParserRuleCall_7_1_0());
}
pushFollow(FOLLOW_10);
lv_entities_14_0=ruleEBundleEntity();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingBundleRule());
}
add(
current,
"entities",
lv_entities_14_0,
"at.bestsolution.persistence.emap.EMap.EBundleEntity");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop6;
}
} while (true);
// InternalEMap.g:293:4: ( (lv_typeDefs_15_0= ruleESQLTypeDef ) )*
loop7:
do {
int alt7=2;
int LA7_0 = input.LA(1);
if ( (LA7_0==29) ) {
alt7=1;
}
switch (alt7) {
case 1 :
// InternalEMap.g:294:1: (lv_typeDefs_15_0= ruleESQLTypeDef )
{
// InternalEMap.g:294:1: (lv_typeDefs_15_0= ruleESQLTypeDef )
// InternalEMap.g:295:3: lv_typeDefs_15_0= ruleESQLTypeDef
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingBundleAccess().getTypeDefsESQLTypeDefParserRuleCall_8_0());
}
pushFollow(FOLLOW_11);
lv_typeDefs_15_0=ruleESQLTypeDef();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingBundleRule());
}
add(
current,
"typeDefs",
lv_typeDefs_15_0,
"at.bestsolution.persistence.emap.EMap.ESQLTypeDef");
afterParserOrEnumRuleCall();
}
}
}
break;
default :
break loop7;
}
} while (true);
// InternalEMap.g:311:3: (otherlv_16= 'generator' otherlv_17= '{' ( (lv_generators_18_0= ruleEGeneratorDef ) )+ otherlv_19= '}' )?
int alt9=2;
int LA9_0 = input.LA(1);
if ( (LA9_0==17) ) {
alt9=1;
}
switch (alt9) {
case 1 :
// InternalEMap.g:311:5: otherlv_16= 'generator' otherlv_17= '{' ( (lv_generators_18_0= ruleEGeneratorDef ) )+ otherlv_19= '}'
{
otherlv_16=(Token)match(input,17,FOLLOW_6); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_16, grammarAccess.getEMappingBundleAccess().getGeneratorKeyword_9_0());
}
otherlv_17=(Token)match(input,13,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_17, grammarAccess.getEMappingBundleAccess().getLeftCurlyBracketKeyword_9_1());
}
// InternalEMap.g:319:1: ( (lv_generators_18_0= ruleEGeneratorDef ) )+
int cnt8=0;
loop8:
do {
int alt8=2;
int LA8_0 = input.LA(1);
if ( (LA8_0==RULE_ID) ) {
alt8=1;
}
switch (alt8) {
case 1 :
// InternalEMap.g:320:1: (lv_generators_18_0= ruleEGeneratorDef )
{
// InternalEMap.g:320:1: (lv_generators_18_0= ruleEGeneratorDef )
// InternalEMap.g:321:3: lv_generators_18_0= ruleEGeneratorDef
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingBundleAccess().getGeneratorsEGeneratorDefParserRuleCall_9_2_0());
}
pushFollow(FOLLOW_12);
lv_generators_18_0=ruleEGeneratorDef();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingBundleRule());
}
add(
current,
"generators",
lv_generators_18_0,
"at.bestsolution.persistence.emap.EMap.EGeneratorDef");
afterParserOrEnumRuleCall();
}
}
}
break;
default :
if ( cnt8 >= 1 ) break loop8;
if (state.backtracking>0) {state.failed=true; return current;}
EarlyExitException eee =
new EarlyExitException(8, input);
throw eee;
}
cnt8++;
} while (true);
otherlv_19=(Token)match(input,16,FOLLOW_13); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_19, grammarAccess.getEMappingBundleAccess().getRightCurlyBracketKeyword_9_3());
}
}
break;
}
otherlv_20=(Token)match(input,16,FOLLOW_14); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_20, grammarAccess.getEMappingBundleAccess().getRightCurlyBracketKeyword_10());
}
// InternalEMap.g:345:1: (otherlv_21= 'databases' ( (lv_databases_22_0= RULE_STRING ) ) (otherlv_23= ',' ( (lv_databases_24_0= RULE_STRING ) ) )* )?
int alt11=2;
int LA11_0 = input.LA(1);
if ( (LA11_0==18) ) {
alt11=1;
}
switch (alt11) {
case 1 :
// InternalEMap.g:345:3: otherlv_21= 'databases' ( (lv_databases_22_0= RULE_STRING ) ) (otherlv_23= ',' ( (lv_databases_24_0= RULE_STRING ) ) )*
{
otherlv_21=(Token)match(input,18,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_21, grammarAccess.getEMappingBundleAccess().getDatabasesKeyword_11_0());
}
// InternalEMap.g:349:1: ( (lv_databases_22_0= RULE_STRING ) )
// InternalEMap.g:350:1: (lv_databases_22_0= RULE_STRING )
{
// InternalEMap.g:350:1: (lv_databases_22_0= RULE_STRING )
// InternalEMap.g:351:3: lv_databases_22_0= RULE_STRING
{
lv_databases_22_0=(Token)match(input,RULE_STRING,FOLLOW_16); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_databases_22_0, grammarAccess.getEMappingBundleAccess().getDatabasesSTRINGTerminalRuleCall_11_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEMappingBundleRule());
}
addWithLastConsumed(
current,
"databases",
lv_databases_22_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
// InternalEMap.g:367:2: (otherlv_23= ',' ( (lv_databases_24_0= RULE_STRING ) ) )*
loop10:
do {
int alt10=2;
int LA10_0 = input.LA(1);
if ( (LA10_0==15) ) {
alt10=1;
}
switch (alt10) {
case 1 :
// InternalEMap.g:367:4: otherlv_23= ',' ( (lv_databases_24_0= RULE_STRING ) )
{
otherlv_23=(Token)match(input,15,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_23, grammarAccess.getEMappingBundleAccess().getCommaKeyword_11_2_0());
}
// InternalEMap.g:371:1: ( (lv_databases_24_0= RULE_STRING ) )
// InternalEMap.g:372:1: (lv_databases_24_0= RULE_STRING )
{
// InternalEMap.g:372:1: (lv_databases_24_0= RULE_STRING )
// InternalEMap.g:373:3: lv_databases_24_0= RULE_STRING
{
lv_databases_24_0=(Token)match(input,RULE_STRING,FOLLOW_16); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_databases_24_0, grammarAccess.getEMappingBundleAccess().getDatabasesSTRINGTerminalRuleCall_11_2_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEMappingBundleRule());
}
addWithLastConsumed(
current,
"databases",
lv_databases_24_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
break;
default :
break loop10;
}
} while (true);
}
break;
}
// InternalEMap.g:389:6: (otherlv_25= 'colsort' ( (lv_colSort_26_0= ruleColSort ) ) )?
int alt12=2;
int LA12_0 = input.LA(1);
if ( (LA12_0==19) ) {
alt12=1;
}
switch (alt12) {
case 1 :
// InternalEMap.g:389:8: otherlv_25= 'colsort' ( (lv_colSort_26_0= ruleColSort ) )
{
otherlv_25=(Token)match(input,19,FOLLOW_17); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_25, grammarAccess.getEMappingBundleAccess().getColsortKeyword_12_0());
}
// InternalEMap.g:393:1: ( (lv_colSort_26_0= ruleColSort ) )
// InternalEMap.g:394:1: (lv_colSort_26_0= ruleColSort )
{
// InternalEMap.g:394:1: (lv_colSort_26_0= ruleColSort )
// InternalEMap.g:395:3: lv_colSort_26_0= ruleColSort
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingBundleAccess().getColSortColSortEnumRuleCall_12_1_0());
}
pushFollow(FOLLOW_2);
lv_colSort_26_0=ruleColSort();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingBundleRule());
}
set(
current,
"colSort",
lv_colSort_26_0,
"at.bestsolution.persistence.emap.EMap.ColSort");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEMappingBundle"
// $ANTLR start "entryRuleEPredef"
// InternalEMap.g:419:1: entryRuleEPredef returns [EObject current=null] : iv_ruleEPredef= ruleEPredef EOF ;
public final EObject entryRuleEPredef() throws RecognitionException {
EObject current = null;
EObject iv_ruleEPredef = null;
try {
// InternalEMap.g:420:2: (iv_ruleEPredef= ruleEPredef EOF )
// InternalEMap.g:421:2: iv_ruleEPredef= ruleEPredef EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEPredefRule());
}
pushFollow(FOLLOW_1);
iv_ruleEPredef=ruleEPredef();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEPredef;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEPredef"
// $ANTLR start "ruleEPredef"
// InternalEMap.g:428:1: ruleEPredef returns [EObject current=null] : ( ( () otherlv_1= 'sequence' ( (lv_name_2_0= RULE_STRING ) ) ) | ( () otherlv_4= 'table' ( (lv_name_5_0= RULE_STRING ) ) ) ) ;
public final EObject ruleEPredef() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
Token lv_name_2_0=null;
Token otherlv_4=null;
Token lv_name_5_0=null;
enterRule();
try {
// InternalEMap.g:431:28: ( ( ( () otherlv_1= 'sequence' ( (lv_name_2_0= RULE_STRING ) ) ) | ( () otherlv_4= 'table' ( (lv_name_5_0= RULE_STRING ) ) ) ) )
// InternalEMap.g:432:1: ( ( () otherlv_1= 'sequence' ( (lv_name_2_0= RULE_STRING ) ) ) | ( () otherlv_4= 'table' ( (lv_name_5_0= RULE_STRING ) ) ) )
{
// InternalEMap.g:432:1: ( ( () otherlv_1= 'sequence' ( (lv_name_2_0= RULE_STRING ) ) ) | ( () otherlv_4= 'table' ( (lv_name_5_0= RULE_STRING ) ) ) )
int alt13=2;
int LA13_0 = input.LA(1);
if ( (LA13_0==20) ) {
alt13=1;
}
else if ( (LA13_0==21) ) {
alt13=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 13, 0, input);
throw nvae;
}
switch (alt13) {
case 1 :
// InternalEMap.g:432:2: ( () otherlv_1= 'sequence' ( (lv_name_2_0= RULE_STRING ) ) )
{
// InternalEMap.g:432:2: ( () otherlv_1= 'sequence' ( (lv_name_2_0= RULE_STRING ) ) )
// InternalEMap.g:432:3: () otherlv_1= 'sequence' ( (lv_name_2_0= RULE_STRING ) )
{
// InternalEMap.g:432:3: ()
// InternalEMap.g:433:5:
{
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getEPredefAccess().getEPredefSequenceAction_0_0(),
current);
}
}
otherlv_1=(Token)match(input,20,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getEPredefAccess().getSequenceKeyword_0_1());
}
// InternalEMap.g:442:1: ( (lv_name_2_0= RULE_STRING ) )
// InternalEMap.g:443:1: (lv_name_2_0= RULE_STRING )
{
// InternalEMap.g:443:1: (lv_name_2_0= RULE_STRING )
// InternalEMap.g:444:3: lv_name_2_0= RULE_STRING
{
lv_name_2_0=(Token)match(input,RULE_STRING,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_2_0, grammarAccess.getEPredefAccess().getNameSTRINGTerminalRuleCall_0_2_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEPredefRule());
}
setWithLastConsumed(
current,
"name",
lv_name_2_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
}
break;
case 2 :
// InternalEMap.g:461:6: ( () otherlv_4= 'table' ( (lv_name_5_0= RULE_STRING ) ) )
{
// InternalEMap.g:461:6: ( () otherlv_4= 'table' ( (lv_name_5_0= RULE_STRING ) ) )
// InternalEMap.g:461:7: () otherlv_4= 'table' ( (lv_name_5_0= RULE_STRING ) )
{
// InternalEMap.g:461:7: ()
// InternalEMap.g:462:5:
{
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getEPredefAccess().getEPredefTableAction_1_0(),
current);
}
}
otherlv_4=(Token)match(input,21,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getEPredefAccess().getTableKeyword_1_1());
}
// InternalEMap.g:471:1: ( (lv_name_5_0= RULE_STRING ) )
// InternalEMap.g:472:1: (lv_name_5_0= RULE_STRING )
{
// InternalEMap.g:472:1: (lv_name_5_0= RULE_STRING )
// InternalEMap.g:473:3: lv_name_5_0= RULE_STRING
{
lv_name_5_0=(Token)match(input,RULE_STRING,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_5_0, grammarAccess.getEPredefAccess().getNameSTRINGTerminalRuleCall_1_2_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEPredefRule());
}
setWithLastConsumed(
current,
"name",
lv_name_5_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEPredef"
// $ANTLR start "entryRuleEGeneratorDef"
// InternalEMap.g:497:1: entryRuleEGeneratorDef returns [EObject current=null] : iv_ruleEGeneratorDef= ruleEGeneratorDef EOF ;
public final EObject entryRuleEGeneratorDef() throws RecognitionException {
EObject current = null;
EObject iv_ruleEGeneratorDef = null;
try {
// InternalEMap.g:498:2: (iv_ruleEGeneratorDef= ruleEGeneratorDef EOF )
// InternalEMap.g:499:2: iv_ruleEGeneratorDef= ruleEGeneratorDef EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEGeneratorDefRule());
}
pushFollow(FOLLOW_1);
iv_ruleEGeneratorDef=ruleEGeneratorDef();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEGeneratorDef;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEGeneratorDef"
// $ANTLR start "ruleEGeneratorDef"
// InternalEMap.g:506:1: ruleEGeneratorDef returns [EObject current=null] : ( ( (lv_name_0_0= RULE_ID ) ) (otherlv_1= '{' ( (lv_parameters_2_0= ruleEGeneratorConfigValue ) )+ otherlv_3= '}' )? ) ;
public final EObject ruleEGeneratorDef() throws RecognitionException {
EObject current = null;
Token lv_name_0_0=null;
Token otherlv_1=null;
Token otherlv_3=null;
EObject lv_parameters_2_0 = null;
enterRule();
try {
// InternalEMap.g:509:28: ( ( ( (lv_name_0_0= RULE_ID ) ) (otherlv_1= '{' ( (lv_parameters_2_0= ruleEGeneratorConfigValue ) )+ otherlv_3= '}' )? ) )
// InternalEMap.g:510:1: ( ( (lv_name_0_0= RULE_ID ) ) (otherlv_1= '{' ( (lv_parameters_2_0= ruleEGeneratorConfigValue ) )+ otherlv_3= '}' )? )
{
// InternalEMap.g:510:1: ( ( (lv_name_0_0= RULE_ID ) ) (otherlv_1= '{' ( (lv_parameters_2_0= ruleEGeneratorConfigValue ) )+ otherlv_3= '}' )? )
// InternalEMap.g:510:2: ( (lv_name_0_0= RULE_ID ) ) (otherlv_1= '{' ( (lv_parameters_2_0= ruleEGeneratorConfigValue ) )+ otherlv_3= '}' )?
{
// InternalEMap.g:510:2: ( (lv_name_0_0= RULE_ID ) )
// InternalEMap.g:511:1: (lv_name_0_0= RULE_ID )
{
// InternalEMap.g:511:1: (lv_name_0_0= RULE_ID )
// InternalEMap.g:512:3: lv_name_0_0= RULE_ID
{
lv_name_0_0=(Token)match(input,RULE_ID,FOLLOW_18); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_0_0, grammarAccess.getEGeneratorDefAccess().getNameIDTerminalRuleCall_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEGeneratorDefRule());
}
setWithLastConsumed(
current,
"name",
lv_name_0_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
// InternalEMap.g:528:2: (otherlv_1= '{' ( (lv_parameters_2_0= ruleEGeneratorConfigValue ) )+ otherlv_3= '}' )?
int alt15=2;
int LA15_0 = input.LA(1);
if ( (LA15_0==13) ) {
alt15=1;
}
switch (alt15) {
case 1 :
// InternalEMap.g:528:4: otherlv_1= '{' ( (lv_parameters_2_0= ruleEGeneratorConfigValue ) )+ otherlv_3= '}'
{
otherlv_1=(Token)match(input,13,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getEGeneratorDefAccess().getLeftCurlyBracketKeyword_1_0());
}
// InternalEMap.g:532:1: ( (lv_parameters_2_0= ruleEGeneratorConfigValue ) )+
int cnt14=0;
loop14:
do {
int alt14=2;
int LA14_0 = input.LA(1);
if ( (LA14_0==RULE_ID) ) {
alt14=1;
}
switch (alt14) {
case 1 :
// InternalEMap.g:533:1: (lv_parameters_2_0= ruleEGeneratorConfigValue )
{
// InternalEMap.g:533:1: (lv_parameters_2_0= ruleEGeneratorConfigValue )
// InternalEMap.g:534:3: lv_parameters_2_0= ruleEGeneratorConfigValue
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEGeneratorDefAccess().getParametersEGeneratorConfigValueParserRuleCall_1_1_0());
}
pushFollow(FOLLOW_12);
lv_parameters_2_0=ruleEGeneratorConfigValue();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEGeneratorDefRule());
}
add(
current,
"parameters",
lv_parameters_2_0,
"at.bestsolution.persistence.emap.EMap.EGeneratorConfigValue");
afterParserOrEnumRuleCall();
}
}
}
break;
default :
if ( cnt14 >= 1 ) break loop14;
if (state.backtracking>0) {state.failed=true; return current;}
EarlyExitException eee =
new EarlyExitException(14, input);
throw eee;
}
cnt14++;
} while (true);
otherlv_3=(Token)match(input,16,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getEGeneratorDefAccess().getRightCurlyBracketKeyword_1_2());
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEGeneratorDef"
// $ANTLR start "entryRuleEGeneratorConfigValue"
// InternalEMap.g:562:1: entryRuleEGeneratorConfigValue returns [EObject current=null] : iv_ruleEGeneratorConfigValue= ruleEGeneratorConfigValue EOF ;
public final EObject entryRuleEGeneratorConfigValue() throws RecognitionException {
EObject current = null;
EObject iv_ruleEGeneratorConfigValue = null;
try {
// InternalEMap.g:563:2: (iv_ruleEGeneratorConfigValue= ruleEGeneratorConfigValue EOF )
// InternalEMap.g:564:2: iv_ruleEGeneratorConfigValue= ruleEGeneratorConfigValue EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEGeneratorConfigValueRule());
}
pushFollow(FOLLOW_1);
iv_ruleEGeneratorConfigValue=ruleEGeneratorConfigValue();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEGeneratorConfigValue;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEGeneratorConfigValue"
// $ANTLR start "ruleEGeneratorConfigValue"
// InternalEMap.g:571:1: ruleEGeneratorConfigValue returns [EObject current=null] : ( ( (lv_key_0_0= RULE_ID ) ) otherlv_1= ':' ( ( (lv_simpleValue_2_0= RULE_STRING ) ) | (otherlv_3= '{' ( (lv_children_4_0= ruleEGeneratorConfigValue ) )+ otherlv_5= '}' ) ) ) ;
public final EObject ruleEGeneratorConfigValue() throws RecognitionException {
EObject current = null;
Token lv_key_0_0=null;
Token otherlv_1=null;
Token lv_simpleValue_2_0=null;
Token otherlv_3=null;
Token otherlv_5=null;
EObject lv_children_4_0 = null;
enterRule();
try {
// InternalEMap.g:574:28: ( ( ( (lv_key_0_0= RULE_ID ) ) otherlv_1= ':' ( ( (lv_simpleValue_2_0= RULE_STRING ) ) | (otherlv_3= '{' ( (lv_children_4_0= ruleEGeneratorConfigValue ) )+ otherlv_5= '}' ) ) ) )
// InternalEMap.g:575:1: ( ( (lv_key_0_0= RULE_ID ) ) otherlv_1= ':' ( ( (lv_simpleValue_2_0= RULE_STRING ) ) | (otherlv_3= '{' ( (lv_children_4_0= ruleEGeneratorConfigValue ) )+ otherlv_5= '}' ) ) )
{
// InternalEMap.g:575:1: ( ( (lv_key_0_0= RULE_ID ) ) otherlv_1= ':' ( ( (lv_simpleValue_2_0= RULE_STRING ) ) | (otherlv_3= '{' ( (lv_children_4_0= ruleEGeneratorConfigValue ) )+ otherlv_5= '}' ) ) )
// InternalEMap.g:575:2: ( (lv_key_0_0= RULE_ID ) ) otherlv_1= ':' ( ( (lv_simpleValue_2_0= RULE_STRING ) ) | (otherlv_3= '{' ( (lv_children_4_0= ruleEGeneratorConfigValue ) )+ otherlv_5= '}' ) )
{
// InternalEMap.g:575:2: ( (lv_key_0_0= RULE_ID ) )
// InternalEMap.g:576:1: (lv_key_0_0= RULE_ID )
{
// InternalEMap.g:576:1: (lv_key_0_0= RULE_ID )
// InternalEMap.g:577:3: lv_key_0_0= RULE_ID
{
lv_key_0_0=(Token)match(input,RULE_ID,FOLLOW_19); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_key_0_0, grammarAccess.getEGeneratorConfigValueAccess().getKeyIDTerminalRuleCall_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEGeneratorConfigValueRule());
}
setWithLastConsumed(
current,
"key",
lv_key_0_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
otherlv_1=(Token)match(input,22,FOLLOW_20); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getEGeneratorConfigValueAccess().getColonKeyword_1());
}
// InternalEMap.g:597:1: ( ( (lv_simpleValue_2_0= RULE_STRING ) ) | (otherlv_3= '{' ( (lv_children_4_0= ruleEGeneratorConfigValue ) )+ otherlv_5= '}' ) )
int alt17=2;
int LA17_0 = input.LA(1);
if ( (LA17_0==RULE_STRING) ) {
alt17=1;
}
else if ( (LA17_0==13) ) {
alt17=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 17, 0, input);
throw nvae;
}
switch (alt17) {
case 1 :
// InternalEMap.g:597:2: ( (lv_simpleValue_2_0= RULE_STRING ) )
{
// InternalEMap.g:597:2: ( (lv_simpleValue_2_0= RULE_STRING ) )
// InternalEMap.g:598:1: (lv_simpleValue_2_0= RULE_STRING )
{
// InternalEMap.g:598:1: (lv_simpleValue_2_0= RULE_STRING )
// InternalEMap.g:599:3: lv_simpleValue_2_0= RULE_STRING
{
lv_simpleValue_2_0=(Token)match(input,RULE_STRING,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_simpleValue_2_0, grammarAccess.getEGeneratorConfigValueAccess().getSimpleValueSTRINGTerminalRuleCall_2_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEGeneratorConfigValueRule());
}
setWithLastConsumed(
current,
"simpleValue",
lv_simpleValue_2_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
break;
case 2 :
// InternalEMap.g:616:6: (otherlv_3= '{' ( (lv_children_4_0= ruleEGeneratorConfigValue ) )+ otherlv_5= '}' )
{
// InternalEMap.g:616:6: (otherlv_3= '{' ( (lv_children_4_0= ruleEGeneratorConfigValue ) )+ otherlv_5= '}' )
// InternalEMap.g:616:8: otherlv_3= '{' ( (lv_children_4_0= ruleEGeneratorConfigValue ) )+ otherlv_5= '}'
{
otherlv_3=(Token)match(input,13,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getEGeneratorConfigValueAccess().getLeftCurlyBracketKeyword_2_1_0());
}
// InternalEMap.g:620:1: ( (lv_children_4_0= ruleEGeneratorConfigValue ) )+
int cnt16=0;
loop16:
do {
int alt16=2;
int LA16_0 = input.LA(1);
if ( (LA16_0==RULE_ID) ) {
alt16=1;
}
switch (alt16) {
case 1 :
// InternalEMap.g:621:1: (lv_children_4_0= ruleEGeneratorConfigValue )
{
// InternalEMap.g:621:1: (lv_children_4_0= ruleEGeneratorConfigValue )
// InternalEMap.g:622:3: lv_children_4_0= ruleEGeneratorConfigValue
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEGeneratorConfigValueAccess().getChildrenEGeneratorConfigValueParserRuleCall_2_1_1_0());
}
pushFollow(FOLLOW_12);
lv_children_4_0=ruleEGeneratorConfigValue();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEGeneratorConfigValueRule());
}
add(
current,
"children",
lv_children_4_0,
"at.bestsolution.persistence.emap.EMap.EGeneratorConfigValue");
afterParserOrEnumRuleCall();
}
}
}
break;
default :
if ( cnt16 >= 1 ) break loop16;
if (state.backtracking>0) {state.failed=true; return current;}
EarlyExitException eee =
new EarlyExitException(16, input);
throw eee;
}
cnt16++;
} while (true);
otherlv_5=(Token)match(input,16,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_5, grammarAccess.getEGeneratorConfigValueAccess().getRightCurlyBracketKeyword_2_1_2());
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEGeneratorConfigValue"
// $ANTLR start "entryRuleEBundleEntity"
// InternalEMap.g:650:1: entryRuleEBundleEntity returns [EObject current=null] : iv_ruleEBundleEntity= ruleEBundleEntity EOF ;
public final EObject entryRuleEBundleEntity() throws RecognitionException {
EObject current = null;
EObject iv_ruleEBundleEntity = null;
try {
// InternalEMap.g:651:2: (iv_ruleEBundleEntity= ruleEBundleEntity EOF )
// InternalEMap.g:652:2: iv_ruleEBundleEntity= ruleEBundleEntity EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEBundleEntityRule());
}
pushFollow(FOLLOW_1);
iv_ruleEBundleEntity=ruleEBundleEntity();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEBundleEntity;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEBundleEntity"
// $ANTLR start "ruleEBundleEntity"
// InternalEMap.g:659:1: ruleEBundleEntity returns [EObject current=null] : ( ( (otherlv_0= RULE_ID ) ) (otherlv_1= '{' (otherlv_2= 'pk-constraint' ( (lv_pkConstraintName_3_0= RULE_STRING ) ) )? ( ( (lv_fkConstraints_4_0= ruleEFkConstraint ) ) (otherlv_5= ',' ( (lv_fkConstraints_6_0= ruleEFkConstraint ) ) )* )? ( ( (lv_uniqueContraints_7_0= ruleEUniqueConstraint ) ) (otherlv_8= ',' ( (lv_uniqueContraints_9_0= ruleEUniqueConstraint ) ) )* )? ( ( (lv_indices_10_0= ruleEIndex ) ) (otherlv_11= ',' ( (lv_indices_12_0= ruleEIndex ) ) )* )? ( ( (lv_typeDefs_13_0= ruleESQLAttTypeDef ) ) (otherlv_14= ',' ( (lv_typeDefs_15_0= ruleESQLAttTypeDef ) ) )* )? ( (lv_rest_16_0= ruleERestServiceMapping ) )? otherlv_17= '}' )? ) ;
public final EObject ruleEBundleEntity() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token otherlv_1=null;
Token otherlv_2=null;
Token lv_pkConstraintName_3_0=null;
Token otherlv_5=null;
Token otherlv_8=null;
Token otherlv_11=null;
Token otherlv_14=null;
Token otherlv_17=null;
EObject lv_fkConstraints_4_0 = null;
EObject lv_fkConstraints_6_0 = null;
EObject lv_uniqueContraints_7_0 = null;
EObject lv_uniqueContraints_9_0 = null;
EObject lv_indices_10_0 = null;
EObject lv_indices_12_0 = null;
EObject lv_typeDefs_13_0 = null;
EObject lv_typeDefs_15_0 = null;
EObject lv_rest_16_0 = null;
enterRule();
try {
// InternalEMap.g:662:28: ( ( ( (otherlv_0= RULE_ID ) ) (otherlv_1= '{' (otherlv_2= 'pk-constraint' ( (lv_pkConstraintName_3_0= RULE_STRING ) ) )? ( ( (lv_fkConstraints_4_0= ruleEFkConstraint ) ) (otherlv_5= ',' ( (lv_fkConstraints_6_0= ruleEFkConstraint ) ) )* )? ( ( (lv_uniqueContraints_7_0= ruleEUniqueConstraint ) ) (otherlv_8= ',' ( (lv_uniqueContraints_9_0= ruleEUniqueConstraint ) ) )* )? ( ( (lv_indices_10_0= ruleEIndex ) ) (otherlv_11= ',' ( (lv_indices_12_0= ruleEIndex ) ) )* )? ( ( (lv_typeDefs_13_0= ruleESQLAttTypeDef ) ) (otherlv_14= ',' ( (lv_typeDefs_15_0= ruleESQLAttTypeDef ) ) )* )? ( (lv_rest_16_0= ruleERestServiceMapping ) )? otherlv_17= '}' )? ) )
// InternalEMap.g:663:1: ( ( (otherlv_0= RULE_ID ) ) (otherlv_1= '{' (otherlv_2= 'pk-constraint' ( (lv_pkConstraintName_3_0= RULE_STRING ) ) )? ( ( (lv_fkConstraints_4_0= ruleEFkConstraint ) ) (otherlv_5= ',' ( (lv_fkConstraints_6_0= ruleEFkConstraint ) ) )* )? ( ( (lv_uniqueContraints_7_0= ruleEUniqueConstraint ) ) (otherlv_8= ',' ( (lv_uniqueContraints_9_0= ruleEUniqueConstraint ) ) )* )? ( ( (lv_indices_10_0= ruleEIndex ) ) (otherlv_11= ',' ( (lv_indices_12_0= ruleEIndex ) ) )* )? ( ( (lv_typeDefs_13_0= ruleESQLAttTypeDef ) ) (otherlv_14= ',' ( (lv_typeDefs_15_0= ruleESQLAttTypeDef ) ) )* )? ( (lv_rest_16_0= ruleERestServiceMapping ) )? otherlv_17= '}' )? )
{
// InternalEMap.g:663:1: ( ( (otherlv_0= RULE_ID ) ) (otherlv_1= '{' (otherlv_2= 'pk-constraint' ( (lv_pkConstraintName_3_0= RULE_STRING ) ) )? ( ( (lv_fkConstraints_4_0= ruleEFkConstraint ) ) (otherlv_5= ',' ( (lv_fkConstraints_6_0= ruleEFkConstraint ) ) )* )? ( ( (lv_uniqueContraints_7_0= ruleEUniqueConstraint ) ) (otherlv_8= ',' ( (lv_uniqueContraints_9_0= ruleEUniqueConstraint ) ) )* )? ( ( (lv_indices_10_0= ruleEIndex ) ) (otherlv_11= ',' ( (lv_indices_12_0= ruleEIndex ) ) )* )? ( ( (lv_typeDefs_13_0= ruleESQLAttTypeDef ) ) (otherlv_14= ',' ( (lv_typeDefs_15_0= ruleESQLAttTypeDef ) ) )* )? ( (lv_rest_16_0= ruleERestServiceMapping ) )? otherlv_17= '}' )? )
// InternalEMap.g:663:2: ( (otherlv_0= RULE_ID ) ) (otherlv_1= '{' (otherlv_2= 'pk-constraint' ( (lv_pkConstraintName_3_0= RULE_STRING ) ) )? ( ( (lv_fkConstraints_4_0= ruleEFkConstraint ) ) (otherlv_5= ',' ( (lv_fkConstraints_6_0= ruleEFkConstraint ) ) )* )? ( ( (lv_uniqueContraints_7_0= ruleEUniqueConstraint ) ) (otherlv_8= ',' ( (lv_uniqueContraints_9_0= ruleEUniqueConstraint ) ) )* )? ( ( (lv_indices_10_0= ruleEIndex ) ) (otherlv_11= ',' ( (lv_indices_12_0= ruleEIndex ) ) )* )? ( ( (lv_typeDefs_13_0= ruleESQLAttTypeDef ) ) (otherlv_14= ',' ( (lv_typeDefs_15_0= ruleESQLAttTypeDef ) ) )* )? ( (lv_rest_16_0= ruleERestServiceMapping ) )? otherlv_17= '}' )?
{
// InternalEMap.g:663:2: ( (otherlv_0= RULE_ID ) )
// InternalEMap.g:664:1: (otherlv_0= RULE_ID )
{
// InternalEMap.g:664:1: (otherlv_0= RULE_ID )
// InternalEMap.g:665:3: otherlv_0= RULE_ID
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEBundleEntityRule());
}
}
otherlv_0=(Token)match(input,RULE_ID,FOLLOW_18); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getEBundleEntityAccess().getEntityEMappingEntityCrossReference_0_0());
}
}
}
// InternalEMap.g:676:2: (otherlv_1= '{' (otherlv_2= 'pk-constraint' ( (lv_pkConstraintName_3_0= RULE_STRING ) ) )? ( ( (lv_fkConstraints_4_0= ruleEFkConstraint ) ) (otherlv_5= ',' ( (lv_fkConstraints_6_0= ruleEFkConstraint ) ) )* )? ( ( (lv_uniqueContraints_7_0= ruleEUniqueConstraint ) ) (otherlv_8= ',' ( (lv_uniqueContraints_9_0= ruleEUniqueConstraint ) ) )* )? ( ( (lv_indices_10_0= ruleEIndex ) ) (otherlv_11= ',' ( (lv_indices_12_0= ruleEIndex ) ) )* )? ( ( (lv_typeDefs_13_0= ruleESQLAttTypeDef ) ) (otherlv_14= ',' ( (lv_typeDefs_15_0= ruleESQLAttTypeDef ) ) )* )? ( (lv_rest_16_0= ruleERestServiceMapping ) )? otherlv_17= '}' )?
int alt28=2;
int LA28_0 = input.LA(1);
if ( (LA28_0==13) ) {
alt28=1;
}
switch (alt28) {
case 1 :
// InternalEMap.g:676:4: otherlv_1= '{' (otherlv_2= 'pk-constraint' ( (lv_pkConstraintName_3_0= RULE_STRING ) ) )? ( ( (lv_fkConstraints_4_0= ruleEFkConstraint ) ) (otherlv_5= ',' ( (lv_fkConstraints_6_0= ruleEFkConstraint ) ) )* )? ( ( (lv_uniqueContraints_7_0= ruleEUniqueConstraint ) ) (otherlv_8= ',' ( (lv_uniqueContraints_9_0= ruleEUniqueConstraint ) ) )* )? ( ( (lv_indices_10_0= ruleEIndex ) ) (otherlv_11= ',' ( (lv_indices_12_0= ruleEIndex ) ) )* )? ( ( (lv_typeDefs_13_0= ruleESQLAttTypeDef ) ) (otherlv_14= ',' ( (lv_typeDefs_15_0= ruleESQLAttTypeDef ) ) )* )? ( (lv_rest_16_0= ruleERestServiceMapping ) )? otherlv_17= '}'
{
otherlv_1=(Token)match(input,13,FOLLOW_21); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getEBundleEntityAccess().getLeftCurlyBracketKeyword_1_0());
}
// InternalEMap.g:680:1: (otherlv_2= 'pk-constraint' ( (lv_pkConstraintName_3_0= RULE_STRING ) ) )?
int alt18=2;
int LA18_0 = input.LA(1);
if ( (LA18_0==23) ) {
alt18=1;
}
switch (alt18) {
case 1 :
// InternalEMap.g:680:3: otherlv_2= 'pk-constraint' ( (lv_pkConstraintName_3_0= RULE_STRING ) )
{
otherlv_2=(Token)match(input,23,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getEBundleEntityAccess().getPkConstraintKeyword_1_1_0());
}
// InternalEMap.g:684:1: ( (lv_pkConstraintName_3_0= RULE_STRING ) )
// InternalEMap.g:685:1: (lv_pkConstraintName_3_0= RULE_STRING )
{
// InternalEMap.g:685:1: (lv_pkConstraintName_3_0= RULE_STRING )
// InternalEMap.g:686:3: lv_pkConstraintName_3_0= RULE_STRING
{
lv_pkConstraintName_3_0=(Token)match(input,RULE_STRING,FOLLOW_22); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_pkConstraintName_3_0, grammarAccess.getEBundleEntityAccess().getPkConstraintNameSTRINGTerminalRuleCall_1_1_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEBundleEntityRule());
}
setWithLastConsumed(
current,
"pkConstraintName",
lv_pkConstraintName_3_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
break;
}
// InternalEMap.g:702:4: ( ( (lv_fkConstraints_4_0= ruleEFkConstraint ) ) (otherlv_5= ',' ( (lv_fkConstraints_6_0= ruleEFkConstraint ) ) )* )?
int alt20=2;
int LA20_0 = input.LA(1);
if ( (LA20_0==27) ) {
alt20=1;
}
switch (alt20) {
case 1 :
// InternalEMap.g:702:5: ( (lv_fkConstraints_4_0= ruleEFkConstraint ) ) (otherlv_5= ',' ( (lv_fkConstraints_6_0= ruleEFkConstraint ) ) )*
{
// InternalEMap.g:702:5: ( (lv_fkConstraints_4_0= ruleEFkConstraint ) )
// InternalEMap.g:703:1: (lv_fkConstraints_4_0= ruleEFkConstraint )
{
// InternalEMap.g:703:1: (lv_fkConstraints_4_0= ruleEFkConstraint )
// InternalEMap.g:704:3: lv_fkConstraints_4_0= ruleEFkConstraint
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEBundleEntityAccess().getFkConstraintsEFkConstraintParserRuleCall_1_2_0_0());
}
pushFollow(FOLLOW_23);
lv_fkConstraints_4_0=ruleEFkConstraint();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEBundleEntityRule());
}
add(
current,
"fkConstraints",
lv_fkConstraints_4_0,
"at.bestsolution.persistence.emap.EMap.EFkConstraint");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:720:2: (otherlv_5= ',' ( (lv_fkConstraints_6_0= ruleEFkConstraint ) ) )*
loop19:
do {
int alt19=2;
int LA19_0 = input.LA(1);
if ( (LA19_0==15) ) {
alt19=1;
}
switch (alt19) {
case 1 :
// InternalEMap.g:720:4: otherlv_5= ',' ( (lv_fkConstraints_6_0= ruleEFkConstraint ) )
{
otherlv_5=(Token)match(input,15,FOLLOW_24); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_5, grammarAccess.getEBundleEntityAccess().getCommaKeyword_1_2_1_0());
}
// InternalEMap.g:724:1: ( (lv_fkConstraints_6_0= ruleEFkConstraint ) )
// InternalEMap.g:725:1: (lv_fkConstraints_6_0= ruleEFkConstraint )
{
// InternalEMap.g:725:1: (lv_fkConstraints_6_0= ruleEFkConstraint )
// InternalEMap.g:726:3: lv_fkConstraints_6_0= ruleEFkConstraint
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEBundleEntityAccess().getFkConstraintsEFkConstraintParserRuleCall_1_2_1_1_0());
}
pushFollow(FOLLOW_23);
lv_fkConstraints_6_0=ruleEFkConstraint();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEBundleEntityRule());
}
add(
current,
"fkConstraints",
lv_fkConstraints_6_0,
"at.bestsolution.persistence.emap.EMap.EFkConstraint");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop19;
}
} while (true);
}
break;
}
// InternalEMap.g:742:6: ( ( (lv_uniqueContraints_7_0= ruleEUniqueConstraint ) ) (otherlv_8= ',' ( (lv_uniqueContraints_9_0= ruleEUniqueConstraint ) ) )* )?
int alt22=2;
int LA22_0 = input.LA(1);
if ( (LA22_0==28) ) {
alt22=1;
}
switch (alt22) {
case 1 :
// InternalEMap.g:742:7: ( (lv_uniqueContraints_7_0= ruleEUniqueConstraint ) ) (otherlv_8= ',' ( (lv_uniqueContraints_9_0= ruleEUniqueConstraint ) ) )*
{
// InternalEMap.g:742:7: ( (lv_uniqueContraints_7_0= ruleEUniqueConstraint ) )
// InternalEMap.g:743:1: (lv_uniqueContraints_7_0= ruleEUniqueConstraint )
{
// InternalEMap.g:743:1: (lv_uniqueContraints_7_0= ruleEUniqueConstraint )
// InternalEMap.g:744:3: lv_uniqueContraints_7_0= ruleEUniqueConstraint
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEBundleEntityAccess().getUniqueContraintsEUniqueConstraintParserRuleCall_1_3_0_0());
}
pushFollow(FOLLOW_25);
lv_uniqueContraints_7_0=ruleEUniqueConstraint();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEBundleEntityRule());
}
add(
current,
"uniqueContraints",
lv_uniqueContraints_7_0,
"at.bestsolution.persistence.emap.EMap.EUniqueConstraint");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:760:2: (otherlv_8= ',' ( (lv_uniqueContraints_9_0= ruleEUniqueConstraint ) ) )*
loop21:
do {
int alt21=2;
int LA21_0 = input.LA(1);
if ( (LA21_0==15) ) {
alt21=1;
}
switch (alt21) {
case 1 :
// InternalEMap.g:760:4: otherlv_8= ',' ( (lv_uniqueContraints_9_0= ruleEUniqueConstraint ) )
{
otherlv_8=(Token)match(input,15,FOLLOW_26); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_8, grammarAccess.getEBundleEntityAccess().getCommaKeyword_1_3_1_0());
}
// InternalEMap.g:764:1: ( (lv_uniqueContraints_9_0= ruleEUniqueConstraint ) )
// InternalEMap.g:765:1: (lv_uniqueContraints_9_0= ruleEUniqueConstraint )
{
// InternalEMap.g:765:1: (lv_uniqueContraints_9_0= ruleEUniqueConstraint )
// InternalEMap.g:766:3: lv_uniqueContraints_9_0= ruleEUniqueConstraint
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEBundleEntityAccess().getUniqueContraintsEUniqueConstraintParserRuleCall_1_3_1_1_0());
}
pushFollow(FOLLOW_25);
lv_uniqueContraints_9_0=ruleEUniqueConstraint();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEBundleEntityRule());
}
add(
current,
"uniqueContraints",
lv_uniqueContraints_9_0,
"at.bestsolution.persistence.emap.EMap.EUniqueConstraint");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop21;
}
} while (true);
}
break;
}
// InternalEMap.g:782:6: ( ( (lv_indices_10_0= ruleEIndex ) ) (otherlv_11= ',' ( (lv_indices_12_0= ruleEIndex ) ) )* )?
int alt24=2;
int LA24_0 = input.LA(1);
if ( (LA24_0==24) ) {
alt24=1;
}
switch (alt24) {
case 1 :
// InternalEMap.g:782:7: ( (lv_indices_10_0= ruleEIndex ) ) (otherlv_11= ',' ( (lv_indices_12_0= ruleEIndex ) ) )*
{
// InternalEMap.g:782:7: ( (lv_indices_10_0= ruleEIndex ) )
// InternalEMap.g:783:1: (lv_indices_10_0= ruleEIndex )
{
// InternalEMap.g:783:1: (lv_indices_10_0= ruleEIndex )
// InternalEMap.g:784:3: lv_indices_10_0= ruleEIndex
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEBundleEntityAccess().getIndicesEIndexParserRuleCall_1_4_0_0());
}
pushFollow(FOLLOW_27);
lv_indices_10_0=ruleEIndex();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEBundleEntityRule());
}
add(
current,
"indices",
lv_indices_10_0,
"at.bestsolution.persistence.emap.EMap.EIndex");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:800:2: (otherlv_11= ',' ( (lv_indices_12_0= ruleEIndex ) ) )*
loop23:
do {
int alt23=2;
int LA23_0 = input.LA(1);
if ( (LA23_0==15) ) {
alt23=1;
}
switch (alt23) {
case 1 :
// InternalEMap.g:800:4: otherlv_11= ',' ( (lv_indices_12_0= ruleEIndex ) )
{
otherlv_11=(Token)match(input,15,FOLLOW_28); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_11, grammarAccess.getEBundleEntityAccess().getCommaKeyword_1_4_1_0());
}
// InternalEMap.g:804:1: ( (lv_indices_12_0= ruleEIndex ) )
// InternalEMap.g:805:1: (lv_indices_12_0= ruleEIndex )
{
// InternalEMap.g:805:1: (lv_indices_12_0= ruleEIndex )
// InternalEMap.g:806:3: lv_indices_12_0= ruleEIndex
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEBundleEntityAccess().getIndicesEIndexParserRuleCall_1_4_1_1_0());
}
pushFollow(FOLLOW_27);
lv_indices_12_0=ruleEIndex();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEBundleEntityRule());
}
add(
current,
"indices",
lv_indices_12_0,
"at.bestsolution.persistence.emap.EMap.EIndex");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop23;
}
} while (true);
}
break;
}
// InternalEMap.g:822:6: ( ( (lv_typeDefs_13_0= ruleESQLAttTypeDef ) ) (otherlv_14= ',' ( (lv_typeDefs_15_0= ruleESQLAttTypeDef ) ) )* )?
int alt26=2;
int LA26_0 = input.LA(1);
if ( (LA26_0==29) ) {
alt26=1;
}
switch (alt26) {
case 1 :
// InternalEMap.g:822:7: ( (lv_typeDefs_13_0= ruleESQLAttTypeDef ) ) (otherlv_14= ',' ( (lv_typeDefs_15_0= ruleESQLAttTypeDef ) ) )*
{
// InternalEMap.g:822:7: ( (lv_typeDefs_13_0= ruleESQLAttTypeDef ) )
// InternalEMap.g:823:1: (lv_typeDefs_13_0= ruleESQLAttTypeDef )
{
// InternalEMap.g:823:1: (lv_typeDefs_13_0= ruleESQLAttTypeDef )
// InternalEMap.g:824:3: lv_typeDefs_13_0= ruleESQLAttTypeDef
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEBundleEntityAccess().getTypeDefsESQLAttTypeDefParserRuleCall_1_5_0_0());
}
pushFollow(FOLLOW_29);
lv_typeDefs_13_0=ruleESQLAttTypeDef();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEBundleEntityRule());
}
add(
current,
"typeDefs",
lv_typeDefs_13_0,
"at.bestsolution.persistence.emap.EMap.ESQLAttTypeDef");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:840:2: (otherlv_14= ',' ( (lv_typeDefs_15_0= ruleESQLAttTypeDef ) ) )*
loop25:
do {
int alt25=2;
int LA25_0 = input.LA(1);
if ( (LA25_0==15) ) {
alt25=1;
}
switch (alt25) {
case 1 :
// InternalEMap.g:840:4: otherlv_14= ',' ( (lv_typeDefs_15_0= ruleESQLAttTypeDef ) )
{
otherlv_14=(Token)match(input,15,FOLLOW_30); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_14, grammarAccess.getEBundleEntityAccess().getCommaKeyword_1_5_1_0());
}
// InternalEMap.g:844:1: ( (lv_typeDefs_15_0= ruleESQLAttTypeDef ) )
// InternalEMap.g:845:1: (lv_typeDefs_15_0= ruleESQLAttTypeDef )
{
// InternalEMap.g:845:1: (lv_typeDefs_15_0= ruleESQLAttTypeDef )
// InternalEMap.g:846:3: lv_typeDefs_15_0= ruleESQLAttTypeDef
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEBundleEntityAccess().getTypeDefsESQLAttTypeDefParserRuleCall_1_5_1_1_0());
}
pushFollow(FOLLOW_29);
lv_typeDefs_15_0=ruleESQLAttTypeDef();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEBundleEntityRule());
}
add(
current,
"typeDefs",
lv_typeDefs_15_0,
"at.bestsolution.persistence.emap.EMap.ESQLAttTypeDef");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop25;
}
} while (true);
}
break;
}
// InternalEMap.g:862:6: ( (lv_rest_16_0= ruleERestServiceMapping ) )?
int alt27=2;
int LA27_0 = input.LA(1);
if ( (LA27_0==32) ) {
alt27=1;
}
switch (alt27) {
case 1 :
// InternalEMap.g:863:1: (lv_rest_16_0= ruleERestServiceMapping )
{
// InternalEMap.g:863:1: (lv_rest_16_0= ruleERestServiceMapping )
// InternalEMap.g:864:3: lv_rest_16_0= ruleERestServiceMapping
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEBundleEntityAccess().getRestERestServiceMappingParserRuleCall_1_6_0());
}
pushFollow(FOLLOW_13);
lv_rest_16_0=ruleERestServiceMapping();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEBundleEntityRule());
}
set(
current,
"rest",
lv_rest_16_0,
"at.bestsolution.persistence.emap.EMap.ERestServiceMapping");
afterParserOrEnumRuleCall();
}
}
}
break;
}
otherlv_17=(Token)match(input,16,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_17, grammarAccess.getEBundleEntityAccess().getRightCurlyBracketKeyword_1_7());
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEBundleEntity"
// $ANTLR start "entryRuleEIndex"
// InternalEMap.g:892:1: entryRuleEIndex returns [EObject current=null] : iv_ruleEIndex= ruleEIndex EOF ;
public final EObject entryRuleEIndex() throws RecognitionException {
EObject current = null;
EObject iv_ruleEIndex = null;
try {
// InternalEMap.g:893:2: (iv_ruleEIndex= ruleEIndex EOF )
// InternalEMap.g:894:2: iv_ruleEIndex= ruleEIndex EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEIndexRule());
}
pushFollow(FOLLOW_1);
iv_ruleEIndex=ruleEIndex();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEIndex;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEIndex"
// $ANTLR start "ruleEIndex"
// InternalEMap.g:901:1: ruleEIndex returns [EObject current=null] : (otherlv_0= 'index' ( (lv_name_1_0= RULE_STRING ) ) otherlv_2= '(' ( ( ruleQualifiedName ) ) (otherlv_4= ',' ( ( ruleQualifiedName ) ) )* otherlv_6= ')' ) ;
public final EObject ruleEIndex() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token lv_name_1_0=null;
Token otherlv_2=null;
Token otherlv_4=null;
Token otherlv_6=null;
enterRule();
try {
// InternalEMap.g:904:28: ( (otherlv_0= 'index' ( (lv_name_1_0= RULE_STRING ) ) otherlv_2= '(' ( ( ruleQualifiedName ) ) (otherlv_4= ',' ( ( ruleQualifiedName ) ) )* otherlv_6= ')' ) )
// InternalEMap.g:905:1: (otherlv_0= 'index' ( (lv_name_1_0= RULE_STRING ) ) otherlv_2= '(' ( ( ruleQualifiedName ) ) (otherlv_4= ',' ( ( ruleQualifiedName ) ) )* otherlv_6= ')' )
{
// InternalEMap.g:905:1: (otherlv_0= 'index' ( (lv_name_1_0= RULE_STRING ) ) otherlv_2= '(' ( ( ruleQualifiedName ) ) (otherlv_4= ',' ( ( ruleQualifiedName ) ) )* otherlv_6= ')' )
// InternalEMap.g:905:3: otherlv_0= 'index' ( (lv_name_1_0= RULE_STRING ) ) otherlv_2= '(' ( ( ruleQualifiedName ) ) (otherlv_4= ',' ( ( ruleQualifiedName ) ) )* otherlv_6= ')'
{
otherlv_0=(Token)match(input,24,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getEIndexAccess().getIndexKeyword_0());
}
// InternalEMap.g:909:1: ( (lv_name_1_0= RULE_STRING ) )
// InternalEMap.g:910:1: (lv_name_1_0= RULE_STRING )
{
// InternalEMap.g:910:1: (lv_name_1_0= RULE_STRING )
// InternalEMap.g:911:3: lv_name_1_0= RULE_STRING
{
lv_name_1_0=(Token)match(input,RULE_STRING,FOLLOW_31); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_1_0, grammarAccess.getEIndexAccess().getNameSTRINGTerminalRuleCall_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEIndexRule());
}
setWithLastConsumed(
current,
"name",
lv_name_1_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
otherlv_2=(Token)match(input,25,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getEIndexAccess().getLeftParenthesisKeyword_2());
}
// InternalEMap.g:931:1: ( ( ruleQualifiedName ) )
// InternalEMap.g:932:1: ( ruleQualifiedName )
{
// InternalEMap.g:932:1: ( ruleQualifiedName )
// InternalEMap.g:933:3: ruleQualifiedName
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEIndexRule());
}
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEIndexAccess().getAttributesEAttributeCrossReference_3_0());
}
pushFollow(FOLLOW_32);
ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:946:2: (otherlv_4= ',' ( ( ruleQualifiedName ) ) )*
loop29:
do {
int alt29=2;
int LA29_0 = input.LA(1);
if ( (LA29_0==15) ) {
alt29=1;
}
switch (alt29) {
case 1 :
// InternalEMap.g:946:4: otherlv_4= ',' ( ( ruleQualifiedName ) )
{
otherlv_4=(Token)match(input,15,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getEIndexAccess().getCommaKeyword_4_0());
}
// InternalEMap.g:950:1: ( ( ruleQualifiedName ) )
// InternalEMap.g:951:1: ( ruleQualifiedName )
{
// InternalEMap.g:951:1: ( ruleQualifiedName )
// InternalEMap.g:952:3: ruleQualifiedName
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEIndexRule());
}
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEIndexAccess().getAttributesEAttributeCrossReference_4_1_0());
}
pushFollow(FOLLOW_32);
ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop29;
}
} while (true);
otherlv_6=(Token)match(input,26,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_6, grammarAccess.getEIndexAccess().getRightParenthesisKeyword_5());
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEIndex"
// $ANTLR start "entryRuleEFkConstraint"
// InternalEMap.g:977:1: entryRuleEFkConstraint returns [EObject current=null] : iv_ruleEFkConstraint= ruleEFkConstraint EOF ;
public final EObject entryRuleEFkConstraint() throws RecognitionException {
EObject current = null;
EObject iv_ruleEFkConstraint = null;
try {
// InternalEMap.g:978:2: (iv_ruleEFkConstraint= ruleEFkConstraint EOF )
// InternalEMap.g:979:2: iv_ruleEFkConstraint= ruleEFkConstraint EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEFkConstraintRule());
}
pushFollow(FOLLOW_1);
iv_ruleEFkConstraint=ruleEFkConstraint();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEFkConstraint;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEFkConstraint"
// $ANTLR start "ruleEFkConstraint"
// InternalEMap.g:986:1: ruleEFkConstraint returns [EObject current=null] : (otherlv_0= 'fk-constraint' ( ( ruleQualifiedName ) ) ( (lv_name_2_0= RULE_STRING ) ) ) ;
public final EObject ruleEFkConstraint() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token lv_name_2_0=null;
enterRule();
try {
// InternalEMap.g:989:28: ( (otherlv_0= 'fk-constraint' ( ( ruleQualifiedName ) ) ( (lv_name_2_0= RULE_STRING ) ) ) )
// InternalEMap.g:990:1: (otherlv_0= 'fk-constraint' ( ( ruleQualifiedName ) ) ( (lv_name_2_0= RULE_STRING ) ) )
{
// InternalEMap.g:990:1: (otherlv_0= 'fk-constraint' ( ( ruleQualifiedName ) ) ( (lv_name_2_0= RULE_STRING ) ) )
// InternalEMap.g:990:3: otherlv_0= 'fk-constraint' ( ( ruleQualifiedName ) ) ( (lv_name_2_0= RULE_STRING ) )
{
otherlv_0=(Token)match(input,27,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getEFkConstraintAccess().getFkConstraintKeyword_0());
}
// InternalEMap.g:994:1: ( ( ruleQualifiedName ) )
// InternalEMap.g:995:1: ( ruleQualifiedName )
{
// InternalEMap.g:995:1: ( ruleQualifiedName )
// InternalEMap.g:996:3: ruleQualifiedName
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEFkConstraintRule());
}
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEFkConstraintAccess().getAttributeEAttributeCrossReference_1_0());
}
pushFollow(FOLLOW_15);
ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:1009:2: ( (lv_name_2_0= RULE_STRING ) )
// InternalEMap.g:1010:1: (lv_name_2_0= RULE_STRING )
{
// InternalEMap.g:1010:1: (lv_name_2_0= RULE_STRING )
// InternalEMap.g:1011:3: lv_name_2_0= RULE_STRING
{
lv_name_2_0=(Token)match(input,RULE_STRING,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_2_0, grammarAccess.getEFkConstraintAccess().getNameSTRINGTerminalRuleCall_2_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEFkConstraintRule());
}
setWithLastConsumed(
current,
"name",
lv_name_2_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEFkConstraint"
// $ANTLR start "entryRuleEUniqueConstraint"
// InternalEMap.g:1035:1: entryRuleEUniqueConstraint returns [EObject current=null] : iv_ruleEUniqueConstraint= ruleEUniqueConstraint EOF ;
public final EObject entryRuleEUniqueConstraint() throws RecognitionException {
EObject current = null;
EObject iv_ruleEUniqueConstraint = null;
try {
// InternalEMap.g:1036:2: (iv_ruleEUniqueConstraint= ruleEUniqueConstraint EOF )
// InternalEMap.g:1037:2: iv_ruleEUniqueConstraint= ruleEUniqueConstraint EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEUniqueConstraintRule());
}
pushFollow(FOLLOW_1);
iv_ruleEUniqueConstraint=ruleEUniqueConstraint();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEUniqueConstraint;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEUniqueConstraint"
// $ANTLR start "ruleEUniqueConstraint"
// InternalEMap.g:1044:1: ruleEUniqueConstraint returns [EObject current=null] : (otherlv_0= 'unique-constraint' ( (lv_name_1_0= RULE_STRING ) ) otherlv_2= '(' ( ( ruleQualifiedName ) ) (otherlv_4= ',' ( ( ruleQualifiedName ) ) )* otherlv_6= ')' ) ;
public final EObject ruleEUniqueConstraint() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token lv_name_1_0=null;
Token otherlv_2=null;
Token otherlv_4=null;
Token otherlv_6=null;
enterRule();
try {
// InternalEMap.g:1047:28: ( (otherlv_0= 'unique-constraint' ( (lv_name_1_0= RULE_STRING ) ) otherlv_2= '(' ( ( ruleQualifiedName ) ) (otherlv_4= ',' ( ( ruleQualifiedName ) ) )* otherlv_6= ')' ) )
// InternalEMap.g:1048:1: (otherlv_0= 'unique-constraint' ( (lv_name_1_0= RULE_STRING ) ) otherlv_2= '(' ( ( ruleQualifiedName ) ) (otherlv_4= ',' ( ( ruleQualifiedName ) ) )* otherlv_6= ')' )
{
// InternalEMap.g:1048:1: (otherlv_0= 'unique-constraint' ( (lv_name_1_0= RULE_STRING ) ) otherlv_2= '(' ( ( ruleQualifiedName ) ) (otherlv_4= ',' ( ( ruleQualifiedName ) ) )* otherlv_6= ')' )
// InternalEMap.g:1048:3: otherlv_0= 'unique-constraint' ( (lv_name_1_0= RULE_STRING ) ) otherlv_2= '(' ( ( ruleQualifiedName ) ) (otherlv_4= ',' ( ( ruleQualifiedName ) ) )* otherlv_6= ')'
{
otherlv_0=(Token)match(input,28,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getEUniqueConstraintAccess().getUniqueConstraintKeyword_0());
}
// InternalEMap.g:1052:1: ( (lv_name_1_0= RULE_STRING ) )
// InternalEMap.g:1053:1: (lv_name_1_0= RULE_STRING )
{
// InternalEMap.g:1053:1: (lv_name_1_0= RULE_STRING )
// InternalEMap.g:1054:3: lv_name_1_0= RULE_STRING
{
lv_name_1_0=(Token)match(input,RULE_STRING,FOLLOW_31); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_1_0, grammarAccess.getEUniqueConstraintAccess().getNameSTRINGTerminalRuleCall_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEUniqueConstraintRule());
}
setWithLastConsumed(
current,
"name",
lv_name_1_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
otherlv_2=(Token)match(input,25,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getEUniqueConstraintAccess().getLeftParenthesisKeyword_2());
}
// InternalEMap.g:1074:1: ( ( ruleQualifiedName ) )
// InternalEMap.g:1075:1: ( ruleQualifiedName )
{
// InternalEMap.g:1075:1: ( ruleQualifiedName )
// InternalEMap.g:1076:3: ruleQualifiedName
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEUniqueConstraintRule());
}
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEUniqueConstraintAccess().getAttributesEAttributeCrossReference_3_0());
}
pushFollow(FOLLOW_32);
ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:1089:2: (otherlv_4= ',' ( ( ruleQualifiedName ) ) )*
loop30:
do {
int alt30=2;
int LA30_0 = input.LA(1);
if ( (LA30_0==15) ) {
alt30=1;
}
switch (alt30) {
case 1 :
// InternalEMap.g:1089:4: otherlv_4= ',' ( ( ruleQualifiedName ) )
{
otherlv_4=(Token)match(input,15,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getEUniqueConstraintAccess().getCommaKeyword_4_0());
}
// InternalEMap.g:1093:1: ( ( ruleQualifiedName ) )
// InternalEMap.g:1094:1: ( ruleQualifiedName )
{
// InternalEMap.g:1094:1: ( ruleQualifiedName )
// InternalEMap.g:1095:3: ruleQualifiedName
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEUniqueConstraintRule());
}
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEUniqueConstraintAccess().getAttributesEAttributeCrossReference_4_1_0());
}
pushFollow(FOLLOW_32);
ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop30;
}
} while (true);
otherlv_6=(Token)match(input,26,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_6, grammarAccess.getEUniqueConstraintAccess().getRightParenthesisKeyword_5());
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEUniqueConstraint"
// $ANTLR start "entryRuleESQLAttTypeDef"
// InternalEMap.g:1120:1: entryRuleESQLAttTypeDef returns [EObject current=null] : iv_ruleESQLAttTypeDef= ruleESQLAttTypeDef EOF ;
public final EObject entryRuleESQLAttTypeDef() throws RecognitionException {
EObject current = null;
EObject iv_ruleESQLAttTypeDef = null;
try {
// InternalEMap.g:1121:2: (iv_ruleESQLAttTypeDef= ruleESQLAttTypeDef EOF )
// InternalEMap.g:1122:2: iv_ruleESQLAttTypeDef= ruleESQLAttTypeDef EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getESQLAttTypeDefRule());
}
pushFollow(FOLLOW_1);
iv_ruleESQLAttTypeDef=ruleESQLAttTypeDef();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleESQLAttTypeDef;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleESQLAttTypeDef"
// $ANTLR start "ruleESQLAttTypeDef"
// InternalEMap.g:1129:1: ruleESQLAttTypeDef returns [EObject current=null] : (otherlv_0= 'sql-type-def' ( ( ruleQualifiedName ) ) otherlv_2= '{' ( (lv_dbTypes_3_0= ruleESQLDbType ) ) (otherlv_4= ',' ( (lv_dbTypes_5_0= ruleESQLDbType ) ) )* otherlv_6= '}' ) ;
public final EObject ruleESQLAttTypeDef() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token otherlv_2=null;
Token otherlv_4=null;
Token otherlv_6=null;
EObject lv_dbTypes_3_0 = null;
EObject lv_dbTypes_5_0 = null;
enterRule();
try {
// InternalEMap.g:1132:28: ( (otherlv_0= 'sql-type-def' ( ( ruleQualifiedName ) ) otherlv_2= '{' ( (lv_dbTypes_3_0= ruleESQLDbType ) ) (otherlv_4= ',' ( (lv_dbTypes_5_0= ruleESQLDbType ) ) )* otherlv_6= '}' ) )
// InternalEMap.g:1133:1: (otherlv_0= 'sql-type-def' ( ( ruleQualifiedName ) ) otherlv_2= '{' ( (lv_dbTypes_3_0= ruleESQLDbType ) ) (otherlv_4= ',' ( (lv_dbTypes_5_0= ruleESQLDbType ) ) )* otherlv_6= '}' )
{
// InternalEMap.g:1133:1: (otherlv_0= 'sql-type-def' ( ( ruleQualifiedName ) ) otherlv_2= '{' ( (lv_dbTypes_3_0= ruleESQLDbType ) ) (otherlv_4= ',' ( (lv_dbTypes_5_0= ruleESQLDbType ) ) )* otherlv_6= '}' )
// InternalEMap.g:1133:3: otherlv_0= 'sql-type-def' ( ( ruleQualifiedName ) ) otherlv_2= '{' ( (lv_dbTypes_3_0= ruleESQLDbType ) ) (otherlv_4= ',' ( (lv_dbTypes_5_0= ruleESQLDbType ) ) )* otherlv_6= '}'
{
otherlv_0=(Token)match(input,29,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getESQLAttTypeDefAccess().getSqlTypeDefKeyword_0());
}
// InternalEMap.g:1137:1: ( ( ruleQualifiedName ) )
// InternalEMap.g:1138:1: ( ruleQualifiedName )
{
// InternalEMap.g:1138:1: ( ruleQualifiedName )
// InternalEMap.g:1139:3: ruleQualifiedName
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getESQLAttTypeDefRule());
}
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getESQLAttTypeDefAccess().getAttributeEAttributeCrossReference_1_0());
}
pushFollow(FOLLOW_6);
ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
}
otherlv_2=(Token)match(input,13,FOLLOW_33); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getESQLAttTypeDefAccess().getLeftCurlyBracketKeyword_2());
}
// InternalEMap.g:1156:1: ( (lv_dbTypes_3_0= ruleESQLDbType ) )
// InternalEMap.g:1157:1: (lv_dbTypes_3_0= ruleESQLDbType )
{
// InternalEMap.g:1157:1: (lv_dbTypes_3_0= ruleESQLDbType )
// InternalEMap.g:1158:3: lv_dbTypes_3_0= ruleESQLDbType
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getESQLAttTypeDefAccess().getDbTypesESQLDbTypeParserRuleCall_3_0());
}
pushFollow(FOLLOW_9);
lv_dbTypes_3_0=ruleESQLDbType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getESQLAttTypeDefRule());
}
add(
current,
"dbTypes",
lv_dbTypes_3_0,
"at.bestsolution.persistence.emap.EMap.ESQLDbType");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:1174:2: (otherlv_4= ',' ( (lv_dbTypes_5_0= ruleESQLDbType ) ) )*
loop31:
do {
int alt31=2;
int LA31_0 = input.LA(1);
if ( (LA31_0==15) ) {
alt31=1;
}
switch (alt31) {
case 1 :
// InternalEMap.g:1174:4: otherlv_4= ',' ( (lv_dbTypes_5_0= ruleESQLDbType ) )
{
otherlv_4=(Token)match(input,15,FOLLOW_33); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getESQLAttTypeDefAccess().getCommaKeyword_4_0());
}
// InternalEMap.g:1178:1: ( (lv_dbTypes_5_0= ruleESQLDbType ) )
// InternalEMap.g:1179:1: (lv_dbTypes_5_0= ruleESQLDbType )
{
// InternalEMap.g:1179:1: (lv_dbTypes_5_0= ruleESQLDbType )
// InternalEMap.g:1180:3: lv_dbTypes_5_0= ruleESQLDbType
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getESQLAttTypeDefAccess().getDbTypesESQLDbTypeParserRuleCall_4_1_0());
}
pushFollow(FOLLOW_9);
lv_dbTypes_5_0=ruleESQLDbType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getESQLAttTypeDefRule());
}
add(
current,
"dbTypes",
lv_dbTypes_5_0,
"at.bestsolution.persistence.emap.EMap.ESQLDbType");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop31;
}
} while (true);
otherlv_6=(Token)match(input,16,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_6, grammarAccess.getESQLAttTypeDefAccess().getRightCurlyBracketKeyword_5());
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleESQLAttTypeDef"
// $ANTLR start "entryRuleESQLTypeDef"
// InternalEMap.g:1208:1: entryRuleESQLTypeDef returns [EObject current=null] : iv_ruleESQLTypeDef= ruleESQLTypeDef EOF ;
public final EObject entryRuleESQLTypeDef() throws RecognitionException {
EObject current = null;
EObject iv_ruleESQLTypeDef = null;
try {
// InternalEMap.g:1209:2: (iv_ruleESQLTypeDef= ruleESQLTypeDef EOF )
// InternalEMap.g:1210:2: iv_ruleESQLTypeDef= ruleESQLTypeDef EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getESQLTypeDefRule());
}
pushFollow(FOLLOW_1);
iv_ruleESQLTypeDef=ruleESQLTypeDef();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleESQLTypeDef;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleESQLTypeDef"
// $ANTLR start "ruleESQLTypeDef"
// InternalEMap.g:1217:1: ruleESQLTypeDef returns [EObject current=null] : (otherlv_0= 'sql-type-def' ( (lv_etype_1_0= ruleEType ) ) otherlv_2= '{' ( (lv_dbTypes_3_0= ruleESQLDbType ) ) (otherlv_4= ',' ( (lv_dbTypes_5_0= ruleESQLDbType ) ) )* otherlv_6= '}' ) ;
public final EObject ruleESQLTypeDef() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token otherlv_2=null;
Token otherlv_4=null;
Token otherlv_6=null;
EObject lv_etype_1_0 = null;
EObject lv_dbTypes_3_0 = null;
EObject lv_dbTypes_5_0 = null;
enterRule();
try {
// InternalEMap.g:1220:28: ( (otherlv_0= 'sql-type-def' ( (lv_etype_1_0= ruleEType ) ) otherlv_2= '{' ( (lv_dbTypes_3_0= ruleESQLDbType ) ) (otherlv_4= ',' ( (lv_dbTypes_5_0= ruleESQLDbType ) ) )* otherlv_6= '}' ) )
// InternalEMap.g:1221:1: (otherlv_0= 'sql-type-def' ( (lv_etype_1_0= ruleEType ) ) otherlv_2= '{' ( (lv_dbTypes_3_0= ruleESQLDbType ) ) (otherlv_4= ',' ( (lv_dbTypes_5_0= ruleESQLDbType ) ) )* otherlv_6= '}' )
{
// InternalEMap.g:1221:1: (otherlv_0= 'sql-type-def' ( (lv_etype_1_0= ruleEType ) ) otherlv_2= '{' ( (lv_dbTypes_3_0= ruleESQLDbType ) ) (otherlv_4= ',' ( (lv_dbTypes_5_0= ruleESQLDbType ) ) )* otherlv_6= '}' )
// InternalEMap.g:1221:3: otherlv_0= 'sql-type-def' ( (lv_etype_1_0= ruleEType ) ) otherlv_2= '{' ( (lv_dbTypes_3_0= ruleESQLDbType ) ) (otherlv_4= ',' ( (lv_dbTypes_5_0= ruleESQLDbType ) ) )* otherlv_6= '}'
{
otherlv_0=(Token)match(input,29,FOLLOW_34); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getESQLTypeDefAccess().getSqlTypeDefKeyword_0());
}
// InternalEMap.g:1225:1: ( (lv_etype_1_0= ruleEType ) )
// InternalEMap.g:1226:1: (lv_etype_1_0= ruleEType )
{
// InternalEMap.g:1226:1: (lv_etype_1_0= ruleEType )
// InternalEMap.g:1227:3: lv_etype_1_0= ruleEType
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getESQLTypeDefAccess().getEtypeETypeParserRuleCall_1_0());
}
pushFollow(FOLLOW_6);
lv_etype_1_0=ruleEType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getESQLTypeDefRule());
}
set(
current,
"etype",
lv_etype_1_0,
"at.bestsolution.persistence.emap.EMap.EType");
afterParserOrEnumRuleCall();
}
}
}
otherlv_2=(Token)match(input,13,FOLLOW_33); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getESQLTypeDefAccess().getLeftCurlyBracketKeyword_2());
}
// InternalEMap.g:1247:1: ( (lv_dbTypes_3_0= ruleESQLDbType ) )
// InternalEMap.g:1248:1: (lv_dbTypes_3_0= ruleESQLDbType )
{
// InternalEMap.g:1248:1: (lv_dbTypes_3_0= ruleESQLDbType )
// InternalEMap.g:1249:3: lv_dbTypes_3_0= ruleESQLDbType
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getESQLTypeDefAccess().getDbTypesESQLDbTypeParserRuleCall_3_0());
}
pushFollow(FOLLOW_9);
lv_dbTypes_3_0=ruleESQLDbType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getESQLTypeDefRule());
}
add(
current,
"dbTypes",
lv_dbTypes_3_0,
"at.bestsolution.persistence.emap.EMap.ESQLDbType");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:1265:2: (otherlv_4= ',' ( (lv_dbTypes_5_0= ruleESQLDbType ) ) )*
loop32:
do {
int alt32=2;
int LA32_0 = input.LA(1);
if ( (LA32_0==15) ) {
alt32=1;
}
switch (alt32) {
case 1 :
// InternalEMap.g:1265:4: otherlv_4= ',' ( (lv_dbTypes_5_0= ruleESQLDbType ) )
{
otherlv_4=(Token)match(input,15,FOLLOW_33); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getESQLTypeDefAccess().getCommaKeyword_4_0());
}
// InternalEMap.g:1269:1: ( (lv_dbTypes_5_0= ruleESQLDbType ) )
// InternalEMap.g:1270:1: (lv_dbTypes_5_0= ruleESQLDbType )
{
// InternalEMap.g:1270:1: (lv_dbTypes_5_0= ruleESQLDbType )
// InternalEMap.g:1271:3: lv_dbTypes_5_0= ruleESQLDbType
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getESQLTypeDefAccess().getDbTypesESQLDbTypeParserRuleCall_4_1_0());
}
pushFollow(FOLLOW_9);
lv_dbTypes_5_0=ruleESQLDbType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getESQLTypeDefRule());
}
add(
current,
"dbTypes",
lv_dbTypes_5_0,
"at.bestsolution.persistence.emap.EMap.ESQLDbType");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop32;
}
} while (true);
otherlv_6=(Token)match(input,16,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_6, grammarAccess.getESQLTypeDefAccess().getRightCurlyBracketKeyword_5());
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleESQLTypeDef"
// $ANTLR start "entryRuleESQLDbType"
// InternalEMap.g:1299:1: entryRuleESQLDbType returns [EObject current=null] : iv_ruleESQLDbType= ruleESQLDbType EOF ;
public final EObject entryRuleESQLDbType() throws RecognitionException {
EObject current = null;
EObject iv_ruleESQLDbType = null;
try {
// InternalEMap.g:1300:2: (iv_ruleESQLDbType= ruleESQLDbType EOF )
// InternalEMap.g:1301:2: iv_ruleESQLDbType= ruleESQLDbType EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getESQLDbTypeRule());
}
pushFollow(FOLLOW_1);
iv_ruleESQLDbType=ruleESQLDbType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleESQLDbType;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleESQLDbType"
// $ANTLR start "ruleESQLDbType"
// InternalEMap.g:1308:1: ruleESQLDbType returns [EObject current=null] : ( ( ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) ) ) ( (lv_sqlTypeDef_1_0= RULE_STRING ) ) (otherlv_2= 'size' ( (lv_size_3_0= RULE_STRING ) ) )? ) ;
public final EObject ruleESQLDbType() throws RecognitionException {
EObject current = null;
Token lv_dbType_0_1=null;
Token lv_dbType_0_2=null;
Token lv_sqlTypeDef_1_0=null;
Token otherlv_2=null;
Token lv_size_3_0=null;
enterRule();
try {
// InternalEMap.g:1311:28: ( ( ( ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) ) ) ( (lv_sqlTypeDef_1_0= RULE_STRING ) ) (otherlv_2= 'size' ( (lv_size_3_0= RULE_STRING ) ) )? ) )
// InternalEMap.g:1312:1: ( ( ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) ) ) ( (lv_sqlTypeDef_1_0= RULE_STRING ) ) (otherlv_2= 'size' ( (lv_size_3_0= RULE_STRING ) ) )? )
{
// InternalEMap.g:1312:1: ( ( ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) ) ) ( (lv_sqlTypeDef_1_0= RULE_STRING ) ) (otherlv_2= 'size' ( (lv_size_3_0= RULE_STRING ) ) )? )
// InternalEMap.g:1312:2: ( ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) ) ) ( (lv_sqlTypeDef_1_0= RULE_STRING ) ) (otherlv_2= 'size' ( (lv_size_3_0= RULE_STRING ) ) )?
{
// InternalEMap.g:1312:2: ( ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) ) )
// InternalEMap.g:1313:1: ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) )
{
// InternalEMap.g:1313:1: ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) )
// InternalEMap.g:1314:1: (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING )
{
// InternalEMap.g:1314:1: (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING )
int alt33=2;
int LA33_0 = input.LA(1);
if ( (LA33_0==30) ) {
alt33=1;
}
else if ( (LA33_0==RULE_STRING) ) {
alt33=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 33, 0, input);
throw nvae;
}
switch (alt33) {
case 1 :
// InternalEMap.g:1315:3: lv_dbType_0_1= 'default'
{
lv_dbType_0_1=(Token)match(input,30,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_dbType_0_1, grammarAccess.getESQLDbTypeAccess().getDbTypeDefaultKeyword_0_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getESQLDbTypeRule());
}
setWithLastConsumed(current, "dbType", lv_dbType_0_1, null);
}
}
break;
case 2 :
// InternalEMap.g:1327:8: lv_dbType_0_2= RULE_STRING
{
lv_dbType_0_2=(Token)match(input,RULE_STRING,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_dbType_0_2, grammarAccess.getESQLDbTypeAccess().getDbTypeSTRINGTerminalRuleCall_0_0_1());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getESQLDbTypeRule());
}
setWithLastConsumed(
current,
"dbType",
lv_dbType_0_2,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
break;
}
}
}
// InternalEMap.g:1345:2: ( (lv_sqlTypeDef_1_0= RULE_STRING ) )
// InternalEMap.g:1346:1: (lv_sqlTypeDef_1_0= RULE_STRING )
{
// InternalEMap.g:1346:1: (lv_sqlTypeDef_1_0= RULE_STRING )
// InternalEMap.g:1347:3: lv_sqlTypeDef_1_0= RULE_STRING
{
lv_sqlTypeDef_1_0=(Token)match(input,RULE_STRING,FOLLOW_35); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_sqlTypeDef_1_0, grammarAccess.getESQLDbTypeAccess().getSqlTypeDefSTRINGTerminalRuleCall_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getESQLDbTypeRule());
}
setWithLastConsumed(
current,
"sqlTypeDef",
lv_sqlTypeDef_1_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
// InternalEMap.g:1363:2: (otherlv_2= 'size' ( (lv_size_3_0= RULE_STRING ) ) )?
int alt34=2;
int LA34_0 = input.LA(1);
if ( (LA34_0==31) ) {
alt34=1;
}
switch (alt34) {
case 1 :
// InternalEMap.g:1363:4: otherlv_2= 'size' ( (lv_size_3_0= RULE_STRING ) )
{
otherlv_2=(Token)match(input,31,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getESQLDbTypeAccess().getSizeKeyword_2_0());
}
// InternalEMap.g:1367:1: ( (lv_size_3_0= RULE_STRING ) )
// InternalEMap.g:1368:1: (lv_size_3_0= RULE_STRING )
{
// InternalEMap.g:1368:1: (lv_size_3_0= RULE_STRING )
// InternalEMap.g:1369:3: lv_size_3_0= RULE_STRING
{
lv_size_3_0=(Token)match(input,RULE_STRING,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_size_3_0, grammarAccess.getESQLDbTypeAccess().getSizeSTRINGTerminalRuleCall_2_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getESQLDbTypeRule());
}
setWithLastConsumed(
current,
"size",
lv_size_3_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleESQLDbType"
// $ANTLR start "entryRuleERestServiceMapping"
// InternalEMap.g:1393:1: entryRuleERestServiceMapping returns [EObject current=null] : iv_ruleERestServiceMapping= ruleERestServiceMapping EOF ;
public final EObject entryRuleERestServiceMapping() throws RecognitionException {
EObject current = null;
EObject iv_ruleERestServiceMapping = null;
try {
// InternalEMap.g:1394:2: (iv_ruleERestServiceMapping= ruleERestServiceMapping EOF )
// InternalEMap.g:1395:2: iv_ruleERestServiceMapping= ruleERestServiceMapping EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getERestServiceMappingRule());
}
pushFollow(FOLLOW_1);
iv_ruleERestServiceMapping=ruleERestServiceMapping();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleERestServiceMapping;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleERestServiceMapping"
// $ANTLR start "ruleERestServiceMapping"
// InternalEMap.g:1402:1: ruleERestServiceMapping returns [EObject current=null] : (otherlv_0= 'webservice' () (otherlv_2= '{' ( (lv_serviceMethods_3_0= ruleENamedServiceQuery ) )* ( (lv_customServiceMethods_4_0= ruleECustomServiceMethods ) )* otherlv_5= '}' )? ( (lv_rest_6_0= 'rest' ) ) ) ;
public final EObject ruleERestServiceMapping() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token otherlv_2=null;
Token otherlv_5=null;
Token lv_rest_6_0=null;
EObject lv_serviceMethods_3_0 = null;
EObject lv_customServiceMethods_4_0 = null;
enterRule();
try {
// InternalEMap.g:1405:28: ( (otherlv_0= 'webservice' () (otherlv_2= '{' ( (lv_serviceMethods_3_0= ruleENamedServiceQuery ) )* ( (lv_customServiceMethods_4_0= ruleECustomServiceMethods ) )* otherlv_5= '}' )? ( (lv_rest_6_0= 'rest' ) ) ) )
// InternalEMap.g:1406:1: (otherlv_0= 'webservice' () (otherlv_2= '{' ( (lv_serviceMethods_3_0= ruleENamedServiceQuery ) )* ( (lv_customServiceMethods_4_0= ruleECustomServiceMethods ) )* otherlv_5= '}' )? ( (lv_rest_6_0= 'rest' ) ) )
{
// InternalEMap.g:1406:1: (otherlv_0= 'webservice' () (otherlv_2= '{' ( (lv_serviceMethods_3_0= ruleENamedServiceQuery ) )* ( (lv_customServiceMethods_4_0= ruleECustomServiceMethods ) )* otherlv_5= '}' )? ( (lv_rest_6_0= 'rest' ) ) )
// InternalEMap.g:1406:3: otherlv_0= 'webservice' () (otherlv_2= '{' ( (lv_serviceMethods_3_0= ruleENamedServiceQuery ) )* ( (lv_customServiceMethods_4_0= ruleECustomServiceMethods ) )* otherlv_5= '}' )? ( (lv_rest_6_0= 'rest' ) )
{
otherlv_0=(Token)match(input,32,FOLLOW_36); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getERestServiceMappingAccess().getWebserviceKeyword_0());
}
// InternalEMap.g:1410:1: ()
// InternalEMap.g:1411:5:
{
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getERestServiceMappingAccess().getERestServiceMappingAction_1(),
current);
}
}
// InternalEMap.g:1416:2: (otherlv_2= '{' ( (lv_serviceMethods_3_0= ruleENamedServiceQuery ) )* ( (lv_customServiceMethods_4_0= ruleECustomServiceMethods ) )* otherlv_5= '}' )?
int alt37=2;
int LA37_0 = input.LA(1);
if ( (LA37_0==13) ) {
alt37=1;
}
switch (alt37) {
case 1 :
// InternalEMap.g:1416:4: otherlv_2= '{' ( (lv_serviceMethods_3_0= ruleENamedServiceQuery ) )* ( (lv_customServiceMethods_4_0= ruleECustomServiceMethods ) )* otherlv_5= '}'
{
otherlv_2=(Token)match(input,13,FOLLOW_37); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getERestServiceMappingAccess().getLeftCurlyBracketKeyword_2_0());
}
// InternalEMap.g:1420:1: ( (lv_serviceMethods_3_0= ruleENamedServiceQuery ) )*
loop35:
do {
int alt35=2;
int LA35_0 = input.LA(1);
if ( (LA35_0==RULE_ID) ) {
alt35=1;
}
switch (alt35) {
case 1 :
// InternalEMap.g:1421:1: (lv_serviceMethods_3_0= ruleENamedServiceQuery )
{
// InternalEMap.g:1421:1: (lv_serviceMethods_3_0= ruleENamedServiceQuery )
// InternalEMap.g:1422:3: lv_serviceMethods_3_0= ruleENamedServiceQuery
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getERestServiceMappingAccess().getServiceMethodsENamedServiceQueryParserRuleCall_2_1_0());
}
pushFollow(FOLLOW_37);
lv_serviceMethods_3_0=ruleENamedServiceQuery();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getERestServiceMappingRule());
}
add(
current,
"serviceMethods",
lv_serviceMethods_3_0,
"at.bestsolution.persistence.emap.EMap.ENamedServiceQuery");
afterParserOrEnumRuleCall();
}
}
}
break;
default :
break loop35;
}
} while (true);
// InternalEMap.g:1438:3: ( (lv_customServiceMethods_4_0= ruleECustomServiceMethods ) )*
loop36:
do {
int alt36=2;
int LA36_0 = input.LA(1);
if ( (LA36_0==36) ) {
alt36=1;
}
switch (alt36) {
case 1 :
// InternalEMap.g:1439:1: (lv_customServiceMethods_4_0= ruleECustomServiceMethods )
{
// InternalEMap.g:1439:1: (lv_customServiceMethods_4_0= ruleECustomServiceMethods )
// InternalEMap.g:1440:3: lv_customServiceMethods_4_0= ruleECustomServiceMethods
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getERestServiceMappingAccess().getCustomServiceMethodsECustomServiceMethodsParserRuleCall_2_2_0());
}
pushFollow(FOLLOW_38);
lv_customServiceMethods_4_0=ruleECustomServiceMethods();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getERestServiceMappingRule());
}
add(
current,
"customServiceMethods",
lv_customServiceMethods_4_0,
"at.bestsolution.persistence.emap.EMap.ECustomServiceMethods");
afterParserOrEnumRuleCall();
}
}
}
break;
default :
break loop36;
}
} while (true);
otherlv_5=(Token)match(input,16,FOLLOW_39); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_5, grammarAccess.getERestServiceMappingAccess().getRightCurlyBracketKeyword_2_3());
}
}
break;
}
// InternalEMap.g:1460:3: ( (lv_rest_6_0= 'rest' ) )
// InternalEMap.g:1461:1: (lv_rest_6_0= 'rest' )
{
// InternalEMap.g:1461:1: (lv_rest_6_0= 'rest' )
// InternalEMap.g:1462:3: lv_rest_6_0= 'rest'
{
lv_rest_6_0=(Token)match(input,33,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_rest_6_0, grammarAccess.getERestServiceMappingAccess().getRestRestKeyword_3_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getERestServiceMappingRule());
}
setWithLastConsumed(current, "rest", true, "rest");
}
}
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleERestServiceMapping"
// $ANTLR start "entryRuleENamedServiceQuery"
// InternalEMap.g:1483:1: entryRuleENamedServiceQuery returns [EObject current=null] : iv_ruleENamedServiceQuery= ruleENamedServiceQuery EOF ;
public final EObject entryRuleENamedServiceQuery() throws RecognitionException {
EObject current = null;
EObject iv_ruleENamedServiceQuery = null;
try {
// InternalEMap.g:1484:2: (iv_ruleENamedServiceQuery= ruleENamedServiceQuery EOF )
// InternalEMap.g:1485:2: iv_ruleENamedServiceQuery= ruleENamedServiceQuery EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getENamedServiceQueryRule());
}
pushFollow(FOLLOW_1);
iv_ruleENamedServiceQuery=ruleENamedServiceQuery();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleENamedServiceQuery;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleENamedServiceQuery"
// $ANTLR start "ruleENamedServiceQuery"
// InternalEMap.g:1492:1: ruleENamedServiceQuery returns [EObject current=null] : ( ( ( ruleQualifiedName ) ) otherlv_1= 'as' ( (lv_name_2_0= RULE_ID ) ) ( (lv_path_3_0= RULE_STRING ) ) (otherlv_4= '{' ( (lv_parameters_5_0= ruleEServiceParam ) )* (otherlv_6= 'greedy' otherlv_7= '{' ( (lv_greedyAttributePathList_8_0= ruleEGreedyAttributePath ) )+ otherlv_9= '}' )? otherlv_10= '}' )? ) ;
public final EObject ruleENamedServiceQuery() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
Token lv_name_2_0=null;
Token lv_path_3_0=null;
Token otherlv_4=null;
Token otherlv_6=null;
Token otherlv_7=null;
Token otherlv_9=null;
Token otherlv_10=null;
EObject lv_parameters_5_0 = null;
EObject lv_greedyAttributePathList_8_0 = null;
enterRule();
try {
// InternalEMap.g:1495:28: ( ( ( ( ruleQualifiedName ) ) otherlv_1= 'as' ( (lv_name_2_0= RULE_ID ) ) ( (lv_path_3_0= RULE_STRING ) ) (otherlv_4= '{' ( (lv_parameters_5_0= ruleEServiceParam ) )* (otherlv_6= 'greedy' otherlv_7= '{' ( (lv_greedyAttributePathList_8_0= ruleEGreedyAttributePath ) )+ otherlv_9= '}' )? otherlv_10= '}' )? ) )
// InternalEMap.g:1496:1: ( ( ( ruleQualifiedName ) ) otherlv_1= 'as' ( (lv_name_2_0= RULE_ID ) ) ( (lv_path_3_0= RULE_STRING ) ) (otherlv_4= '{' ( (lv_parameters_5_0= ruleEServiceParam ) )* (otherlv_6= 'greedy' otherlv_7= '{' ( (lv_greedyAttributePathList_8_0= ruleEGreedyAttributePath ) )+ otherlv_9= '}' )? otherlv_10= '}' )? )
{
// InternalEMap.g:1496:1: ( ( ( ruleQualifiedName ) ) otherlv_1= 'as' ( (lv_name_2_0= RULE_ID ) ) ( (lv_path_3_0= RULE_STRING ) ) (otherlv_4= '{' ( (lv_parameters_5_0= ruleEServiceParam ) )* (otherlv_6= 'greedy' otherlv_7= '{' ( (lv_greedyAttributePathList_8_0= ruleEGreedyAttributePath ) )+ otherlv_9= '}' )? otherlv_10= '}' )? )
// InternalEMap.g:1496:2: ( ( ruleQualifiedName ) ) otherlv_1= 'as' ( (lv_name_2_0= RULE_ID ) ) ( (lv_path_3_0= RULE_STRING ) ) (otherlv_4= '{' ( (lv_parameters_5_0= ruleEServiceParam ) )* (otherlv_6= 'greedy' otherlv_7= '{' ( (lv_greedyAttributePathList_8_0= ruleEGreedyAttributePath ) )+ otherlv_9= '}' )? otherlv_10= '}' )?
{
// InternalEMap.g:1496:2: ( ( ruleQualifiedName ) )
// InternalEMap.g:1497:1: ( ruleQualifiedName )
{
// InternalEMap.g:1497:1: ( ruleQualifiedName )
// InternalEMap.g:1498:3: ruleQualifiedName
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getENamedServiceQueryRule());
}
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getENamedServiceQueryAccess().getQueryENamedQueryCrossReference_0_0());
}
pushFollow(FOLLOW_40);
ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
}
otherlv_1=(Token)match(input,34,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getENamedServiceQueryAccess().getAsKeyword_1());
}
// InternalEMap.g:1515:1: ( (lv_name_2_0= RULE_ID ) )
// InternalEMap.g:1516:1: (lv_name_2_0= RULE_ID )
{
// InternalEMap.g:1516:1: (lv_name_2_0= RULE_ID )
// InternalEMap.g:1517:3: lv_name_2_0= RULE_ID
{
lv_name_2_0=(Token)match(input,RULE_ID,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_2_0, grammarAccess.getENamedServiceQueryAccess().getNameIDTerminalRuleCall_2_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getENamedServiceQueryRule());
}
setWithLastConsumed(
current,
"name",
lv_name_2_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
// InternalEMap.g:1533:2: ( (lv_path_3_0= RULE_STRING ) )
// InternalEMap.g:1534:1: (lv_path_3_0= RULE_STRING )
{
// InternalEMap.g:1534:1: (lv_path_3_0= RULE_STRING )
// InternalEMap.g:1535:3: lv_path_3_0= RULE_STRING
{
lv_path_3_0=(Token)match(input,RULE_STRING,FOLLOW_18); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_path_3_0, grammarAccess.getENamedServiceQueryAccess().getPathSTRINGTerminalRuleCall_3_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getENamedServiceQueryRule());
}
setWithLastConsumed(
current,
"path",
lv_path_3_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
// InternalEMap.g:1551:2: (otherlv_4= '{' ( (lv_parameters_5_0= ruleEServiceParam ) )* (otherlv_6= 'greedy' otherlv_7= '{' ( (lv_greedyAttributePathList_8_0= ruleEGreedyAttributePath ) )+ otherlv_9= '}' )? otherlv_10= '}' )?
int alt41=2;
int LA41_0 = input.LA(1);
if ( (LA41_0==13) ) {
alt41=1;
}
switch (alt41) {
case 1 :
// InternalEMap.g:1551:4: otherlv_4= '{' ( (lv_parameters_5_0= ruleEServiceParam ) )* (otherlv_6= 'greedy' otherlv_7= '{' ( (lv_greedyAttributePathList_8_0= ruleEGreedyAttributePath ) )+ otherlv_9= '}' )? otherlv_10= '}'
{
otherlv_4=(Token)match(input,13,FOLLOW_41); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getENamedServiceQueryAccess().getLeftCurlyBracketKeyword_4_0());
}
// InternalEMap.g:1555:1: ( (lv_parameters_5_0= ruleEServiceParam ) )*
loop38:
do {
int alt38=2;
int LA38_0 = input.LA(1);
if ( (LA38_0==37||LA38_0==39) ) {
alt38=1;
}
switch (alt38) {
case 1 :
// InternalEMap.g:1556:1: (lv_parameters_5_0= ruleEServiceParam )
{
// InternalEMap.g:1556:1: (lv_parameters_5_0= ruleEServiceParam )
// InternalEMap.g:1557:3: lv_parameters_5_0= ruleEServiceParam
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getENamedServiceQueryAccess().getParametersEServiceParamParserRuleCall_4_1_0());
}
pushFollow(FOLLOW_41);
lv_parameters_5_0=ruleEServiceParam();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getENamedServiceQueryRule());
}
add(
current,
"parameters",
lv_parameters_5_0,
"at.bestsolution.persistence.emap.EMap.EServiceParam");
afterParserOrEnumRuleCall();
}
}
}
break;
default :
break loop38;
}
} while (true);
// InternalEMap.g:1573:3: (otherlv_6= 'greedy' otherlv_7= '{' ( (lv_greedyAttributePathList_8_0= ruleEGreedyAttributePath ) )+ otherlv_9= '}' )?
int alt40=2;
int LA40_0 = input.LA(1);
if ( (LA40_0==35) ) {
alt40=1;
}
switch (alt40) {
case 1 :
// InternalEMap.g:1573:5: otherlv_6= 'greedy' otherlv_7= '{' ( (lv_greedyAttributePathList_8_0= ruleEGreedyAttributePath ) )+ otherlv_9= '}'
{
otherlv_6=(Token)match(input,35,FOLLOW_6); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_6, grammarAccess.getENamedServiceQueryAccess().getGreedyKeyword_4_2_0());
}
otherlv_7=(Token)match(input,13,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_7, grammarAccess.getENamedServiceQueryAccess().getLeftCurlyBracketKeyword_4_2_1());
}
// InternalEMap.g:1581:1: ( (lv_greedyAttributePathList_8_0= ruleEGreedyAttributePath ) )+
int cnt39=0;
loop39:
do {
int alt39=2;
int LA39_0 = input.LA(1);
if ( (LA39_0==RULE_ID) ) {
alt39=1;
}
switch (alt39) {
case 1 :
// InternalEMap.g:1582:1: (lv_greedyAttributePathList_8_0= ruleEGreedyAttributePath )
{
// InternalEMap.g:1582:1: (lv_greedyAttributePathList_8_0= ruleEGreedyAttributePath )
// InternalEMap.g:1583:3: lv_greedyAttributePathList_8_0= ruleEGreedyAttributePath
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getENamedServiceQueryAccess().getGreedyAttributePathListEGreedyAttributePathParserRuleCall_4_2_2_0());
}
pushFollow(FOLLOW_12);
lv_greedyAttributePathList_8_0=ruleEGreedyAttributePath();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getENamedServiceQueryRule());
}
add(
current,
"greedyAttributePathList",
lv_greedyAttributePathList_8_0,
"at.bestsolution.persistence.emap.EMap.EGreedyAttributePath");
afterParserOrEnumRuleCall();
}
}
}
break;
default :
if ( cnt39 >= 1 ) break loop39;
if (state.backtracking>0) {state.failed=true; return current;}
EarlyExitException eee =
new EarlyExitException(39, input);
throw eee;
}
cnt39++;
} while (true);
otherlv_9=(Token)match(input,16,FOLLOW_13); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_9, grammarAccess.getENamedServiceQueryAccess().getRightCurlyBracketKeyword_4_2_3());
}
}
break;
}
otherlv_10=(Token)match(input,16,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_10, grammarAccess.getENamedServiceQueryAccess().getRightCurlyBracketKeyword_4_3());
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleENamedServiceQuery"
// $ANTLR start "entryRuleECustomServiceMethods"
// InternalEMap.g:1615:1: entryRuleECustomServiceMethods returns [EObject current=null] : iv_ruleECustomServiceMethods= ruleECustomServiceMethods EOF ;
public final EObject entryRuleECustomServiceMethods() throws RecognitionException {
EObject current = null;
EObject iv_ruleECustomServiceMethods = null;
try {
// InternalEMap.g:1616:2: (iv_ruleECustomServiceMethods= ruleECustomServiceMethods EOF )
// InternalEMap.g:1617:2: iv_ruleECustomServiceMethods= ruleECustomServiceMethods EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getECustomServiceMethodsRule());
}
pushFollow(FOLLOW_1);
iv_ruleECustomServiceMethods=ruleECustomServiceMethods();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleECustomServiceMethods;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleECustomServiceMethods"
// $ANTLR start "ruleECustomServiceMethods"
// InternalEMap.g:1624:1: ruleECustomServiceMethods returns [EObject current=null] : (otherlv_0= 'custom' otherlv_1= 'as' ( (lv_name_2_0= RULE_ID ) ) ( (lv_path_3_0= RULE_STRING ) ) (otherlv_4= '{' ( (lv_parameters_5_0= ruleEParameter ) )* otherlv_6= '}' )? ) ;
public final EObject ruleECustomServiceMethods() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token otherlv_1=null;
Token lv_name_2_0=null;
Token lv_path_3_0=null;
Token otherlv_4=null;
Token otherlv_6=null;
EObject lv_parameters_5_0 = null;
enterRule();
try {
// InternalEMap.g:1627:28: ( (otherlv_0= 'custom' otherlv_1= 'as' ( (lv_name_2_0= RULE_ID ) ) ( (lv_path_3_0= RULE_STRING ) ) (otherlv_4= '{' ( (lv_parameters_5_0= ruleEParameter ) )* otherlv_6= '}' )? ) )
// InternalEMap.g:1628:1: (otherlv_0= 'custom' otherlv_1= 'as' ( (lv_name_2_0= RULE_ID ) ) ( (lv_path_3_0= RULE_STRING ) ) (otherlv_4= '{' ( (lv_parameters_5_0= ruleEParameter ) )* otherlv_6= '}' )? )
{
// InternalEMap.g:1628:1: (otherlv_0= 'custom' otherlv_1= 'as' ( (lv_name_2_0= RULE_ID ) ) ( (lv_path_3_0= RULE_STRING ) ) (otherlv_4= '{' ( (lv_parameters_5_0= ruleEParameter ) )* otherlv_6= '}' )? )
// InternalEMap.g:1628:3: otherlv_0= 'custom' otherlv_1= 'as' ( (lv_name_2_0= RULE_ID ) ) ( (lv_path_3_0= RULE_STRING ) ) (otherlv_4= '{' ( (lv_parameters_5_0= ruleEParameter ) )* otherlv_6= '}' )?
{
otherlv_0=(Token)match(input,36,FOLLOW_40); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getECustomServiceMethodsAccess().getCustomKeyword_0());
}
otherlv_1=(Token)match(input,34,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getECustomServiceMethodsAccess().getAsKeyword_1());
}
// InternalEMap.g:1636:1: ( (lv_name_2_0= RULE_ID ) )
// InternalEMap.g:1637:1: (lv_name_2_0= RULE_ID )
{
// InternalEMap.g:1637:1: (lv_name_2_0= RULE_ID )
// InternalEMap.g:1638:3: lv_name_2_0= RULE_ID
{
lv_name_2_0=(Token)match(input,RULE_ID,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_2_0, grammarAccess.getECustomServiceMethodsAccess().getNameIDTerminalRuleCall_2_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getECustomServiceMethodsRule());
}
setWithLastConsumed(
current,
"name",
lv_name_2_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
// InternalEMap.g:1654:2: ( (lv_path_3_0= RULE_STRING ) )
// InternalEMap.g:1655:1: (lv_path_3_0= RULE_STRING )
{
// InternalEMap.g:1655:1: (lv_path_3_0= RULE_STRING )
// InternalEMap.g:1656:3: lv_path_3_0= RULE_STRING
{
lv_path_3_0=(Token)match(input,RULE_STRING,FOLLOW_18); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_path_3_0, grammarAccess.getECustomServiceMethodsAccess().getPathSTRINGTerminalRuleCall_3_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getECustomServiceMethodsRule());
}
setWithLastConsumed(
current,
"path",
lv_path_3_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
// InternalEMap.g:1672:2: (otherlv_4= '{' ( (lv_parameters_5_0= ruleEParameter ) )* otherlv_6= '}' )?
int alt43=2;
int LA43_0 = input.LA(1);
if ( (LA43_0==13) ) {
alt43=1;
}
switch (alt43) {
case 1 :
// InternalEMap.g:1672:4: otherlv_4= '{' ( (lv_parameters_5_0= ruleEParameter ) )* otherlv_6= '}'
{
otherlv_4=(Token)match(input,13,FOLLOW_42); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getECustomServiceMethodsAccess().getLeftCurlyBracketKeyword_4_0());
}
// InternalEMap.g:1676:1: ( (lv_parameters_5_0= ruleEParameter ) )*
loop42:
do {
int alt42=2;
int LA42_0 = input.LA(1);
if ( (LA42_0==RULE_ID||LA42_0==50||(LA42_0>=59 && LA42_0<=63)||LA42_0==65) ) {
alt42=1;
}
switch (alt42) {
case 1 :
// InternalEMap.g:1677:1: (lv_parameters_5_0= ruleEParameter )
{
// InternalEMap.g:1677:1: (lv_parameters_5_0= ruleEParameter )
// InternalEMap.g:1678:3: lv_parameters_5_0= ruleEParameter
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getECustomServiceMethodsAccess().getParametersEParameterParserRuleCall_4_1_0());
}
pushFollow(FOLLOW_42);
lv_parameters_5_0=ruleEParameter();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getECustomServiceMethodsRule());
}
add(
current,
"parameters",
lv_parameters_5_0,
"at.bestsolution.persistence.emap.EMap.EParameter");
afterParserOrEnumRuleCall();
}
}
}
break;
default :
break loop42;
}
} while (true);
otherlv_6=(Token)match(input,16,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_6, grammarAccess.getECustomServiceMethodsAccess().getRightCurlyBracketKeyword_4_2());
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleECustomServiceMethods"
// $ANTLR start "entryRuleEGreedyAttributePath"
// InternalEMap.g:1706:1: entryRuleEGreedyAttributePath returns [EObject current=null] : iv_ruleEGreedyAttributePath= ruleEGreedyAttributePath EOF ;
public final EObject entryRuleEGreedyAttributePath() throws RecognitionException {
EObject current = null;
EObject iv_ruleEGreedyAttributePath = null;
try {
// InternalEMap.g:1707:2: (iv_ruleEGreedyAttributePath= ruleEGreedyAttributePath EOF )
// InternalEMap.g:1708:2: iv_ruleEGreedyAttributePath= ruleEGreedyAttributePath EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEGreedyAttributePathRule());
}
pushFollow(FOLLOW_1);
iv_ruleEGreedyAttributePath=ruleEGreedyAttributePath();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEGreedyAttributePath;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEGreedyAttributePath"
// $ANTLR start "ruleEGreedyAttributePath"
// InternalEMap.g:1715:1: ruleEGreedyAttributePath returns [EObject current=null] : ( ( ( ruleQualifiedName ) ) (otherlv_1= '{' ( (lv_subPathList_2_0= ruleEGreedyAttributePath ) )+ otherlv_3= '}' )? ) ;
public final EObject ruleEGreedyAttributePath() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
Token otherlv_3=null;
EObject lv_subPathList_2_0 = null;
enterRule();
try {
// InternalEMap.g:1718:28: ( ( ( ( ruleQualifiedName ) ) (otherlv_1= '{' ( (lv_subPathList_2_0= ruleEGreedyAttributePath ) )+ otherlv_3= '}' )? ) )
// InternalEMap.g:1719:1: ( ( ( ruleQualifiedName ) ) (otherlv_1= '{' ( (lv_subPathList_2_0= ruleEGreedyAttributePath ) )+ otherlv_3= '}' )? )
{
// InternalEMap.g:1719:1: ( ( ( ruleQualifiedName ) ) (otherlv_1= '{' ( (lv_subPathList_2_0= ruleEGreedyAttributePath ) )+ otherlv_3= '}' )? )
// InternalEMap.g:1719:2: ( ( ruleQualifiedName ) ) (otherlv_1= '{' ( (lv_subPathList_2_0= ruleEGreedyAttributePath ) )+ otherlv_3= '}' )?
{
// InternalEMap.g:1719:2: ( ( ruleQualifiedName ) )
// InternalEMap.g:1720:1: ( ruleQualifiedName )
{
// InternalEMap.g:1720:1: ( ruleQualifiedName )
// InternalEMap.g:1721:3: ruleQualifiedName
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEGreedyAttributePathRule());
}
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEGreedyAttributePathAccess().getGreedyAttributeEAttributeCrossReference_0_0());
}
pushFollow(FOLLOW_18);
ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:1734:2: (otherlv_1= '{' ( (lv_subPathList_2_0= ruleEGreedyAttributePath ) )+ otherlv_3= '}' )?
int alt45=2;
int LA45_0 = input.LA(1);
if ( (LA45_0==13) ) {
alt45=1;
}
switch (alt45) {
case 1 :
// InternalEMap.g:1734:4: otherlv_1= '{' ( (lv_subPathList_2_0= ruleEGreedyAttributePath ) )+ otherlv_3= '}'
{
otherlv_1=(Token)match(input,13,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getEGreedyAttributePathAccess().getLeftCurlyBracketKeyword_1_0());
}
// InternalEMap.g:1738:1: ( (lv_subPathList_2_0= ruleEGreedyAttributePath ) )+
int cnt44=0;
loop44:
do {
int alt44=2;
int LA44_0 = input.LA(1);
if ( (LA44_0==RULE_ID) ) {
alt44=1;
}
switch (alt44) {
case 1 :
// InternalEMap.g:1739:1: (lv_subPathList_2_0= ruleEGreedyAttributePath )
{
// InternalEMap.g:1739:1: (lv_subPathList_2_0= ruleEGreedyAttributePath )
// InternalEMap.g:1740:3: lv_subPathList_2_0= ruleEGreedyAttributePath
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEGreedyAttributePathAccess().getSubPathListEGreedyAttributePathParserRuleCall_1_1_0());
}
pushFollow(FOLLOW_12);
lv_subPathList_2_0=ruleEGreedyAttributePath();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEGreedyAttributePathRule());
}
add(
current,
"subPathList",
lv_subPathList_2_0,
"at.bestsolution.persistence.emap.EMap.EGreedyAttributePath");
afterParserOrEnumRuleCall();
}
}
}
break;
default :
if ( cnt44 >= 1 ) break loop44;
if (state.backtracking>0) {state.failed=true; return current;}
EarlyExitException eee =
new EarlyExitException(44, input);
throw eee;
}
cnt44++;
} while (true);
otherlv_3=(Token)match(input,16,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getEGreedyAttributePathAccess().getRightCurlyBracketKeyword_1_2());
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEGreedyAttributePath"
// $ANTLR start "entryRuleEServiceParam"
// InternalEMap.g:1768:1: entryRuleEServiceParam returns [EObject current=null] : iv_ruleEServiceParam= ruleEServiceParam EOF ;
public final EObject entryRuleEServiceParam() throws RecognitionException {
EObject current = null;
EObject iv_ruleEServiceParam = null;
try {
// InternalEMap.g:1769:2: (iv_ruleEServiceParam= ruleEServiceParam EOF )
// InternalEMap.g:1770:2: iv_ruleEServiceParam= ruleEServiceParam EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEServiceParamRule());
}
pushFollow(FOLLOW_1);
iv_ruleEServiceParam=ruleEServiceParam();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEServiceParam;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEServiceParam"
// $ANTLR start "ruleEServiceParam"
// InternalEMap.g:1777:1: ruleEServiceParam returns [EObject current=null] : (this_EPathParam_0= ruleEPathParam | this_EQueryParam_1= ruleEQueryParam ) ;
public final EObject ruleEServiceParam() throws RecognitionException {
EObject current = null;
EObject this_EPathParam_0 = null;
EObject this_EQueryParam_1 = null;
enterRule();
try {
// InternalEMap.g:1780:28: ( (this_EPathParam_0= ruleEPathParam | this_EQueryParam_1= ruleEQueryParam ) )
// InternalEMap.g:1781:1: (this_EPathParam_0= ruleEPathParam | this_EQueryParam_1= ruleEQueryParam )
{
// InternalEMap.g:1781:1: (this_EPathParam_0= ruleEPathParam | this_EQueryParam_1= ruleEQueryParam )
int alt46=2;
int LA46_0 = input.LA(1);
if ( (LA46_0==37) ) {
alt46=1;
}
else if ( (LA46_0==39) ) {
alt46=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 46, 0, input);
throw nvae;
}
switch (alt46) {
case 1 :
// InternalEMap.g:1782:5: this_EPathParam_0= ruleEPathParam
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEServiceParamAccess().getEPathParamParserRuleCall_0());
}
pushFollow(FOLLOW_2);
this_EPathParam_0=ruleEPathParam();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_EPathParam_0;
afterParserOrEnumRuleCall();
}
}
break;
case 2 :
// InternalEMap.g:1792:5: this_EQueryParam_1= ruleEQueryParam
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEServiceParamAccess().getEQueryParamParserRuleCall_1());
}
pushFollow(FOLLOW_2);
this_EQueryParam_1=ruleEQueryParam();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_EQueryParam_1;
afterParserOrEnumRuleCall();
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEServiceParam"
// $ANTLR start "entryRuleEPathParam"
// InternalEMap.g:1808:1: entryRuleEPathParam returns [EObject current=null] : iv_ruleEPathParam= ruleEPathParam EOF ;
public final EObject entryRuleEPathParam() throws RecognitionException {
EObject current = null;
EObject iv_ruleEPathParam = null;
try {
// InternalEMap.g:1809:2: (iv_ruleEPathParam= ruleEPathParam EOF )
// InternalEMap.g:1810:2: iv_ruleEPathParam= ruleEPathParam EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEPathParamRule());
}
pushFollow(FOLLOW_1);
iv_ruleEPathParam=ruleEPathParam();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEPathParam;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEPathParam"
// $ANTLR start "ruleEPathParam"
// InternalEMap.g:1817:1: ruleEPathParam returns [EObject current=null] : (otherlv_0= 'path-param' ( ( ruleQualifiedName ) ) (otherlv_2= 'named' ( (lv_name_3_0= RULE_ID ) ) )? ) ;
public final EObject ruleEPathParam() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token otherlv_2=null;
Token lv_name_3_0=null;
enterRule();
try {
// InternalEMap.g:1820:28: ( (otherlv_0= 'path-param' ( ( ruleQualifiedName ) ) (otherlv_2= 'named' ( (lv_name_3_0= RULE_ID ) ) )? ) )
// InternalEMap.g:1821:1: (otherlv_0= 'path-param' ( ( ruleQualifiedName ) ) (otherlv_2= 'named' ( (lv_name_3_0= RULE_ID ) ) )? )
{
// InternalEMap.g:1821:1: (otherlv_0= 'path-param' ( ( ruleQualifiedName ) ) (otherlv_2= 'named' ( (lv_name_3_0= RULE_ID ) ) )? )
// InternalEMap.g:1821:3: otherlv_0= 'path-param' ( ( ruleQualifiedName ) ) (otherlv_2= 'named' ( (lv_name_3_0= RULE_ID ) ) )?
{
otherlv_0=(Token)match(input,37,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getEPathParamAccess().getPathParamKeyword_0());
}
// InternalEMap.g:1825:1: ( ( ruleQualifiedName ) )
// InternalEMap.g:1826:1: ( ruleQualifiedName )
{
// InternalEMap.g:1826:1: ( ruleQualifiedName )
// InternalEMap.g:1827:3: ruleQualifiedName
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEPathParamRule());
}
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEPathParamAccess().getParamEParameterCrossReference_1_0());
}
pushFollow(FOLLOW_43);
ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:1840:2: (otherlv_2= 'named' ( (lv_name_3_0= RULE_ID ) ) )?
int alt47=2;
int LA47_0 = input.LA(1);
if ( (LA47_0==38) ) {
alt47=1;
}
switch (alt47) {
case 1 :
// InternalEMap.g:1840:4: otherlv_2= 'named' ( (lv_name_3_0= RULE_ID ) )
{
otherlv_2=(Token)match(input,38,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getEPathParamAccess().getNamedKeyword_2_0());
}
// InternalEMap.g:1844:1: ( (lv_name_3_0= RULE_ID ) )
// InternalEMap.g:1845:1: (lv_name_3_0= RULE_ID )
{
// InternalEMap.g:1845:1: (lv_name_3_0= RULE_ID )
// InternalEMap.g:1846:3: lv_name_3_0= RULE_ID
{
lv_name_3_0=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_3_0, grammarAccess.getEPathParamAccess().getNameIDTerminalRuleCall_2_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEPathParamRule());
}
setWithLastConsumed(
current,
"name",
lv_name_3_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEPathParam"
// $ANTLR start "entryRuleEQueryParam"
// InternalEMap.g:1870:1: entryRuleEQueryParam returns [EObject current=null] : iv_ruleEQueryParam= ruleEQueryParam EOF ;
public final EObject entryRuleEQueryParam() throws RecognitionException {
EObject current = null;
EObject iv_ruleEQueryParam = null;
try {
// InternalEMap.g:1871:2: (iv_ruleEQueryParam= ruleEQueryParam EOF )
// InternalEMap.g:1872:2: iv_ruleEQueryParam= ruleEQueryParam EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEQueryParamRule());
}
pushFollow(FOLLOW_1);
iv_ruleEQueryParam=ruleEQueryParam();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEQueryParam;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEQueryParam"
// $ANTLR start "ruleEQueryParam"
// InternalEMap.g:1879:1: ruleEQueryParam returns [EObject current=null] : (otherlv_0= 'query-param' ( ( ruleQualifiedName ) ) (otherlv_2= 'named' ( (lv_name_3_0= RULE_ID ) ) )? ) ;
public final EObject ruleEQueryParam() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token otherlv_2=null;
Token lv_name_3_0=null;
enterRule();
try {
// InternalEMap.g:1882:28: ( (otherlv_0= 'query-param' ( ( ruleQualifiedName ) ) (otherlv_2= 'named' ( (lv_name_3_0= RULE_ID ) ) )? ) )
// InternalEMap.g:1883:1: (otherlv_0= 'query-param' ( ( ruleQualifiedName ) ) (otherlv_2= 'named' ( (lv_name_3_0= RULE_ID ) ) )? )
{
// InternalEMap.g:1883:1: (otherlv_0= 'query-param' ( ( ruleQualifiedName ) ) (otherlv_2= 'named' ( (lv_name_3_0= RULE_ID ) ) )? )
// InternalEMap.g:1883:3: otherlv_0= 'query-param' ( ( ruleQualifiedName ) ) (otherlv_2= 'named' ( (lv_name_3_0= RULE_ID ) ) )?
{
otherlv_0=(Token)match(input,39,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getEQueryParamAccess().getQueryParamKeyword_0());
}
// InternalEMap.g:1887:1: ( ( ruleQualifiedName ) )
// InternalEMap.g:1888:1: ( ruleQualifiedName )
{
// InternalEMap.g:1888:1: ( ruleQualifiedName )
// InternalEMap.g:1889:3: ruleQualifiedName
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEQueryParamRule());
}
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEQueryParamAccess().getParamEParameterCrossReference_1_0());
}
pushFollow(FOLLOW_43);
ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:1902:2: (otherlv_2= 'named' ( (lv_name_3_0= RULE_ID ) ) )?
int alt48=2;
int LA48_0 = input.LA(1);
if ( (LA48_0==38) ) {
alt48=1;
}
switch (alt48) {
case 1 :
// InternalEMap.g:1902:4: otherlv_2= 'named' ( (lv_name_3_0= RULE_ID ) )
{
otherlv_2=(Token)match(input,38,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getEQueryParamAccess().getNamedKeyword_2_0());
}
// InternalEMap.g:1906:1: ( (lv_name_3_0= RULE_ID ) )
// InternalEMap.g:1907:1: (lv_name_3_0= RULE_ID )
{
// InternalEMap.g:1907:1: (lv_name_3_0= RULE_ID )
// InternalEMap.g:1908:3: lv_name_3_0= RULE_ID
{
lv_name_3_0=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_3_0, grammarAccess.getEQueryParamAccess().getNameIDTerminalRuleCall_2_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEQueryParamRule());
}
setWithLastConsumed(
current,
"name",
lv_name_3_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEQueryParam"
// $ANTLR start "entryRuleEMappingEntityDef"
// InternalEMap.g:1932:1: entryRuleEMappingEntityDef returns [EObject current=null] : iv_ruleEMappingEntityDef= ruleEMappingEntityDef EOF ;
public final EObject entryRuleEMappingEntityDef() throws RecognitionException {
EObject current = null;
EObject iv_ruleEMappingEntityDef = null;
try {
// InternalEMap.g:1933:2: (iv_ruleEMappingEntityDef= ruleEMappingEntityDef EOF )
// InternalEMap.g:1934:2: iv_ruleEMappingEntityDef= ruleEMappingEntityDef EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingEntityDefRule());
}
pushFollow(FOLLOW_1);
iv_ruleEMappingEntityDef=ruleEMappingEntityDef();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEMappingEntityDef;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEMappingEntityDef"
// $ANTLR start "ruleEMappingEntityDef"
// InternalEMap.g:1941:1: ruleEMappingEntityDef returns [EObject current=null] : ( ( (lv_package_0_0= rulePackageDeclaration ) ) ( (lv_imports_1_0= ruleImport ) )* ( (lv_entity_2_0= ruleEMappingEntity ) ) ) ;
public final EObject ruleEMappingEntityDef() throws RecognitionException {
EObject current = null;
EObject lv_package_0_0 = null;
EObject lv_imports_1_0 = null;
EObject lv_entity_2_0 = null;
enterRule();
try {
// InternalEMap.g:1944:28: ( ( ( (lv_package_0_0= rulePackageDeclaration ) ) ( (lv_imports_1_0= ruleImport ) )* ( (lv_entity_2_0= ruleEMappingEntity ) ) ) )
// InternalEMap.g:1945:1: ( ( (lv_package_0_0= rulePackageDeclaration ) ) ( (lv_imports_1_0= ruleImport ) )* ( (lv_entity_2_0= ruleEMappingEntity ) ) )
{
// InternalEMap.g:1945:1: ( ( (lv_package_0_0= rulePackageDeclaration ) ) ( (lv_imports_1_0= ruleImport ) )* ( (lv_entity_2_0= ruleEMappingEntity ) ) )
// InternalEMap.g:1945:2: ( (lv_package_0_0= rulePackageDeclaration ) ) ( (lv_imports_1_0= ruleImport ) )* ( (lv_entity_2_0= ruleEMappingEntity ) )
{
// InternalEMap.g:1945:2: ( (lv_package_0_0= rulePackageDeclaration ) )
// InternalEMap.g:1946:1: (lv_package_0_0= rulePackageDeclaration )
{
// InternalEMap.g:1946:1: (lv_package_0_0= rulePackageDeclaration )
// InternalEMap.g:1947:3: lv_package_0_0= rulePackageDeclaration
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingEntityDefAccess().getPackagePackageDeclarationParserRuleCall_0_0());
}
pushFollow(FOLLOW_44);
lv_package_0_0=rulePackageDeclaration();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingEntityDefRule());
}
set(
current,
"package",
lv_package_0_0,
"at.bestsolution.persistence.emap.EMap.PackageDeclaration");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:1963:2: ( (lv_imports_1_0= ruleImport ) )*
loop49:
do {
int alt49=2;
int LA49_0 = input.LA(1);
if ( (LA49_0==40) ) {
alt49=1;
}
switch (alt49) {
case 1 :
// InternalEMap.g:1964:1: (lv_imports_1_0= ruleImport )
{
// InternalEMap.g:1964:1: (lv_imports_1_0= ruleImport )
// InternalEMap.g:1965:3: lv_imports_1_0= ruleImport
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingEntityDefAccess().getImportsImportParserRuleCall_1_0());
}
pushFollow(FOLLOW_44);
lv_imports_1_0=ruleImport();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingEntityDefRule());
}
add(
current,
"imports",
lv_imports_1_0,
"at.bestsolution.persistence.emap.EMap.Import");
afterParserOrEnumRuleCall();
}
}
}
break;
default :
break loop49;
}
} while (true);
// InternalEMap.g:1981:3: ( (lv_entity_2_0= ruleEMappingEntity ) )
// InternalEMap.g:1982:1: (lv_entity_2_0= ruleEMappingEntity )
{
// InternalEMap.g:1982:1: (lv_entity_2_0= ruleEMappingEntity )
// InternalEMap.g:1983:3: lv_entity_2_0= ruleEMappingEntity
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingEntityDefAccess().getEntityEMappingEntityParserRuleCall_2_0());
}
pushFollow(FOLLOW_2);
lv_entity_2_0=ruleEMappingEntity();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingEntityDefRule());
}
set(
current,
"entity",
lv_entity_2_0,
"at.bestsolution.persistence.emap.EMap.EMappingEntity");
afterParserOrEnumRuleCall();
}
}
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEMappingEntityDef"
// $ANTLR start "entryRuleImport"
// InternalEMap.g:2007:1: entryRuleImport returns [EObject current=null] : iv_ruleImport= ruleImport EOF ;
public final EObject entryRuleImport() throws RecognitionException {
EObject current = null;
EObject iv_ruleImport = null;
try {
// InternalEMap.g:2008:2: (iv_ruleImport= ruleImport EOF )
// InternalEMap.g:2009:2: iv_ruleImport= ruleImport EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getImportRule());
}
pushFollow(FOLLOW_1);
iv_ruleImport=ruleImport();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleImport;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleImport"
// $ANTLR start "ruleImport"
// InternalEMap.g:2016:1: ruleImport returns [EObject current=null] : (otherlv_0= 'import' ( ( (lv_importedNamespace_1_1= ruleQualifiedNameWithWildcard | lv_importedNamespace_1_2= ruleQualifiedName ) ) ) ) ;
public final EObject ruleImport() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
AntlrDatatypeRuleToken lv_importedNamespace_1_1 = null;
AntlrDatatypeRuleToken lv_importedNamespace_1_2 = null;
enterRule();
try {
// InternalEMap.g:2019:28: ( (otherlv_0= 'import' ( ( (lv_importedNamespace_1_1= ruleQualifiedNameWithWildcard | lv_importedNamespace_1_2= ruleQualifiedName ) ) ) ) )
// InternalEMap.g:2020:1: (otherlv_0= 'import' ( ( (lv_importedNamespace_1_1= ruleQualifiedNameWithWildcard | lv_importedNamespace_1_2= ruleQualifiedName ) ) ) )
{
// InternalEMap.g:2020:1: (otherlv_0= 'import' ( ( (lv_importedNamespace_1_1= ruleQualifiedNameWithWildcard | lv_importedNamespace_1_2= ruleQualifiedName ) ) ) )
// InternalEMap.g:2020:3: otherlv_0= 'import' ( ( (lv_importedNamespace_1_1= ruleQualifiedNameWithWildcard | lv_importedNamespace_1_2= ruleQualifiedName ) ) )
{
otherlv_0=(Token)match(input,40,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getImportAccess().getImportKeyword_0());
}
// InternalEMap.g:2024:1: ( ( (lv_importedNamespace_1_1= ruleQualifiedNameWithWildcard | lv_importedNamespace_1_2= ruleQualifiedName ) ) )
// InternalEMap.g:2025:1: ( (lv_importedNamespace_1_1= ruleQualifiedNameWithWildcard | lv_importedNamespace_1_2= ruleQualifiedName ) )
{
// InternalEMap.g:2025:1: ( (lv_importedNamespace_1_1= ruleQualifiedNameWithWildcard | lv_importedNamespace_1_2= ruleQualifiedName ) )
// InternalEMap.g:2026:1: (lv_importedNamespace_1_1= ruleQualifiedNameWithWildcard | lv_importedNamespace_1_2= ruleQualifiedName )
{
// InternalEMap.g:2026:1: (lv_importedNamespace_1_1= ruleQualifiedNameWithWildcard | lv_importedNamespace_1_2= ruleQualifiedName )
int alt50=2;
alt50 = dfa50.predict(input);
switch (alt50) {
case 1 :
// InternalEMap.g:2027:3: lv_importedNamespace_1_1= ruleQualifiedNameWithWildcard
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getImportAccess().getImportedNamespaceQualifiedNameWithWildcardParserRuleCall_1_0_0());
}
pushFollow(FOLLOW_2);
lv_importedNamespace_1_1=ruleQualifiedNameWithWildcard();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getImportRule());
}
set(
current,
"importedNamespace",
lv_importedNamespace_1_1,
"at.bestsolution.persistence.emap.EMap.QualifiedNameWithWildcard");
afterParserOrEnumRuleCall();
}
}
break;
case 2 :
// InternalEMap.g:2042:8: lv_importedNamespace_1_2= ruleQualifiedName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getImportAccess().getImportedNamespaceQualifiedNameParserRuleCall_1_0_1());
}
pushFollow(FOLLOW_2);
lv_importedNamespace_1_2=ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getImportRule());
}
set(
current,
"importedNamespace",
lv_importedNamespace_1_2,
"at.bestsolution.persistence.emap.EMap.QualifiedName");
afterParserOrEnumRuleCall();
}
}
break;
}
}
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleImport"
// $ANTLR start "entryRulePackageDeclaration"
// InternalEMap.g:2068:1: entryRulePackageDeclaration returns [EObject current=null] : iv_rulePackageDeclaration= rulePackageDeclaration EOF ;
public final EObject entryRulePackageDeclaration() throws RecognitionException {
EObject current = null;
EObject iv_rulePackageDeclaration = null;
try {
// InternalEMap.g:2069:2: (iv_rulePackageDeclaration= rulePackageDeclaration EOF )
// InternalEMap.g:2070:2: iv_rulePackageDeclaration= rulePackageDeclaration EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getPackageDeclarationRule());
}
pushFollow(FOLLOW_1);
iv_rulePackageDeclaration=rulePackageDeclaration();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_rulePackageDeclaration;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRulePackageDeclaration"
// $ANTLR start "rulePackageDeclaration"
// InternalEMap.g:2077:1: rulePackageDeclaration returns [EObject current=null] : (otherlv_0= 'package' ( (lv_name_1_0= ruleQualifiedName ) ) otherlv_2= ';' ) ;
public final EObject rulePackageDeclaration() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token otherlv_2=null;
AntlrDatatypeRuleToken lv_name_1_0 = null;
enterRule();
try {
// InternalEMap.g:2080:28: ( (otherlv_0= 'package' ( (lv_name_1_0= ruleQualifiedName ) ) otherlv_2= ';' ) )
// InternalEMap.g:2081:1: (otherlv_0= 'package' ( (lv_name_1_0= ruleQualifiedName ) ) otherlv_2= ';' )
{
// InternalEMap.g:2081:1: (otherlv_0= 'package' ( (lv_name_1_0= ruleQualifiedName ) ) otherlv_2= ';' )
// InternalEMap.g:2081:3: otherlv_0= 'package' ( (lv_name_1_0= ruleQualifiedName ) ) otherlv_2= ';'
{
otherlv_0=(Token)match(input,41,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getPackageDeclarationAccess().getPackageKeyword_0());
}
// InternalEMap.g:2085:1: ( (lv_name_1_0= ruleQualifiedName ) )
// InternalEMap.g:2086:1: (lv_name_1_0= ruleQualifiedName )
{
// InternalEMap.g:2086:1: (lv_name_1_0= ruleQualifiedName )
// InternalEMap.g:2087:3: lv_name_1_0= ruleQualifiedName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getPackageDeclarationAccess().getNameQualifiedNameParserRuleCall_1_0());
}
pushFollow(FOLLOW_45);
lv_name_1_0=ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getPackageDeclarationRule());
}
set(
current,
"name",
lv_name_1_0,
"at.bestsolution.persistence.emap.EMap.QualifiedName");
afterParserOrEnumRuleCall();
}
}
}
otherlv_2=(Token)match(input,42,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getPackageDeclarationAccess().getSemicolonKeyword_2());
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "rulePackageDeclaration"
// $ANTLR start "entryRuleFQN"
// InternalEMap.g:2115:1: entryRuleFQN returns [String current=null] : iv_ruleFQN= ruleFQN EOF ;
public final String entryRuleFQN() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleFQN = null;
try {
// InternalEMap.g:2116:2: (iv_ruleFQN= ruleFQN EOF )
// InternalEMap.g:2117:2: iv_ruleFQN= ruleFQN EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getFQNRule());
}
pushFollow(FOLLOW_1);
iv_ruleFQN=ruleFQN();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleFQN.getText();
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleFQN"
// $ANTLR start "ruleFQN"
// InternalEMap.g:2124:1: ruleFQN returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_ID_0= RULE_ID ( ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID )* ) ;
public final AntlrDatatypeRuleToken ruleFQN() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
Token this_ID_0=null;
Token kw=null;
Token this_ID_2=null;
enterRule();
try {
// InternalEMap.g:2127:28: ( (this_ID_0= RULE_ID ( ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID )* ) )
// InternalEMap.g:2128:1: (this_ID_0= RULE_ID ( ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID )* )
{
// InternalEMap.g:2128:1: (this_ID_0= RULE_ID ( ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID )* )
// InternalEMap.g:2128:6: this_ID_0= RULE_ID ( ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID )*
{
this_ID_0=(Token)match(input,RULE_ID,FOLLOW_46); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_ID_0);
}
if ( state.backtracking==0 ) {
newLeafNode(this_ID_0, grammarAccess.getFQNAccess().getIDTerminalRuleCall_0());
}
// InternalEMap.g:2135:1: ( ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID )*
loop51:
do {
int alt51=2;
int LA51_0 = input.LA(1);
if ( (LA51_0==43) && (synpred1_InternalEMap())) {
alt51=1;
}
switch (alt51) {
case 1 :
// InternalEMap.g:2135:2: ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID
{
// InternalEMap.g:2135:2: ( ( '.' )=>kw= '.' )
// InternalEMap.g:2135:3: ( '.' )=>kw= '.'
{
kw=(Token)match(input,43,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getFQNAccess().getFullStopKeyword_1_0());
}
}
this_ID_2=(Token)match(input,RULE_ID,FOLLOW_46); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_ID_2);
}
if ( state.backtracking==0 ) {
newLeafNode(this_ID_2, grammarAccess.getFQNAccess().getIDTerminalRuleCall_1_1());
}
}
break;
default :
break loop51;
}
} while (true);
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleFQN"
// $ANTLR start "entryRuleEMappingEntity"
// InternalEMap.g:2158:1: entryRuleEMappingEntity returns [EObject current=null] : iv_ruleEMappingEntity= ruleEMappingEntity EOF ;
public final EObject entryRuleEMappingEntity() throws RecognitionException {
EObject current = null;
EObject iv_ruleEMappingEntity = null;
try {
// InternalEMap.g:2159:2: (iv_ruleEMappingEntity= ruleEMappingEntity EOF )
// InternalEMap.g:2160:2: iv_ruleEMappingEntity= ruleEMappingEntity EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingEntityRule());
}
pushFollow(FOLLOW_1);
iv_ruleEMappingEntity=ruleEMappingEntity();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEMappingEntity;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEMappingEntity"
// $ANTLR start "ruleEMappingEntity"
// InternalEMap.g:2167:1: ruleEMappingEntity returns [EObject current=null] : ( ( (lv_abstract_0_0= 'abstract' ) )? otherlv_1= 'entity' ( (lv_name_2_0= RULE_ID ) ) ( ( ( (lv_extensionType_3_1= 'extends' | lv_extensionType_3_2= 'derived' ) ) ) ( ( ruleQualifiedName ) ) )? otherlv_5= '{' ( (lv_etype_6_0= ruleEType ) ) (otherlv_7= 'attributes' otherlv_8= '{' ( (lv_attributes_9_0= ruleEAttribute ) ) (otherlv_10= ',' ( (lv_attributes_11_0= ruleEAttribute ) ) )* otherlv_12= '}' )? (otherlv_13= 'queries' otherlv_14= '{' ( ( (lv_namedQueries_15_0= ruleENamedQuery ) ) | ( (lv_namedCustomQueries_16_0= ruleENamedCustomQuery ) ) ) (otherlv_17= ',' ( ( (lv_namedQueries_18_0= ruleENamedQuery ) ) | ( (lv_namedCustomQueries_19_0= ruleENamedCustomQuery ) ) ) )* otherlv_20= '}' )? otherlv_21= '}' (otherlv_22= 'as' ( (lv_tableName_23_0= RULE_ID ) ) )? (otherlv_24= 'descriminatedby' ( (lv_descriminationColumn_25_0= RULE_ID ) ) )? ) ;
public final EObject ruleEMappingEntity() throws RecognitionException {
EObject current = null;
Token lv_abstract_0_0=null;
Token otherlv_1=null;
Token lv_name_2_0=null;
Token lv_extensionType_3_1=null;
Token lv_extensionType_3_2=null;
Token otherlv_5=null;
Token otherlv_7=null;
Token otherlv_8=null;
Token otherlv_10=null;
Token otherlv_12=null;
Token otherlv_13=null;
Token otherlv_14=null;
Token otherlv_17=null;
Token otherlv_20=null;
Token otherlv_21=null;
Token otherlv_22=null;
Token lv_tableName_23_0=null;
Token otherlv_24=null;
Token lv_descriminationColumn_25_0=null;
EObject lv_etype_6_0 = null;
EObject lv_attributes_9_0 = null;
EObject lv_attributes_11_0 = null;
EObject lv_namedQueries_15_0 = null;
EObject lv_namedCustomQueries_16_0 = null;
EObject lv_namedQueries_18_0 = null;
EObject lv_namedCustomQueries_19_0 = null;
enterRule();
try {
// InternalEMap.g:2170:28: ( ( ( (lv_abstract_0_0= 'abstract' ) )? otherlv_1= 'entity' ( (lv_name_2_0= RULE_ID ) ) ( ( ( (lv_extensionType_3_1= 'extends' | lv_extensionType_3_2= 'derived' ) ) ) ( ( ruleQualifiedName ) ) )? otherlv_5= '{' ( (lv_etype_6_0= ruleEType ) ) (otherlv_7= 'attributes' otherlv_8= '{' ( (lv_attributes_9_0= ruleEAttribute ) ) (otherlv_10= ',' ( (lv_attributes_11_0= ruleEAttribute ) ) )* otherlv_12= '}' )? (otherlv_13= 'queries' otherlv_14= '{' ( ( (lv_namedQueries_15_0= ruleENamedQuery ) ) | ( (lv_namedCustomQueries_16_0= ruleENamedCustomQuery ) ) ) (otherlv_17= ',' ( ( (lv_namedQueries_18_0= ruleENamedQuery ) ) | ( (lv_namedCustomQueries_19_0= ruleENamedCustomQuery ) ) ) )* otherlv_20= '}' )? otherlv_21= '}' (otherlv_22= 'as' ( (lv_tableName_23_0= RULE_ID ) ) )? (otherlv_24= 'descriminatedby' ( (lv_descriminationColumn_25_0= RULE_ID ) ) )? ) )
// InternalEMap.g:2171:1: ( ( (lv_abstract_0_0= 'abstract' ) )? otherlv_1= 'entity' ( (lv_name_2_0= RULE_ID ) ) ( ( ( (lv_extensionType_3_1= 'extends' | lv_extensionType_3_2= 'derived' ) ) ) ( ( ruleQualifiedName ) ) )? otherlv_5= '{' ( (lv_etype_6_0= ruleEType ) ) (otherlv_7= 'attributes' otherlv_8= '{' ( (lv_attributes_9_0= ruleEAttribute ) ) (otherlv_10= ',' ( (lv_attributes_11_0= ruleEAttribute ) ) )* otherlv_12= '}' )? (otherlv_13= 'queries' otherlv_14= '{' ( ( (lv_namedQueries_15_0= ruleENamedQuery ) ) | ( (lv_namedCustomQueries_16_0= ruleENamedCustomQuery ) ) ) (otherlv_17= ',' ( ( (lv_namedQueries_18_0= ruleENamedQuery ) ) | ( (lv_namedCustomQueries_19_0= ruleENamedCustomQuery ) ) ) )* otherlv_20= '}' )? otherlv_21= '}' (otherlv_22= 'as' ( (lv_tableName_23_0= RULE_ID ) ) )? (otherlv_24= 'descriminatedby' ( (lv_descriminationColumn_25_0= RULE_ID ) ) )? )
{
// InternalEMap.g:2171:1: ( ( (lv_abstract_0_0= 'abstract' ) )? otherlv_1= 'entity' ( (lv_name_2_0= RULE_ID ) ) ( ( ( (lv_extensionType_3_1= 'extends' | lv_extensionType_3_2= 'derived' ) ) ) ( ( ruleQualifiedName ) ) )? otherlv_5= '{' ( (lv_etype_6_0= ruleEType ) ) (otherlv_7= 'attributes' otherlv_8= '{' ( (lv_attributes_9_0= ruleEAttribute ) ) (otherlv_10= ',' ( (lv_attributes_11_0= ruleEAttribute ) ) )* otherlv_12= '}' )? (otherlv_13= 'queries' otherlv_14= '{' ( ( (lv_namedQueries_15_0= ruleENamedQuery ) ) | ( (lv_namedCustomQueries_16_0= ruleENamedCustomQuery ) ) ) (otherlv_17= ',' ( ( (lv_namedQueries_18_0= ruleENamedQuery ) ) | ( (lv_namedCustomQueries_19_0= ruleENamedCustomQuery ) ) ) )* otherlv_20= '}' )? otherlv_21= '}' (otherlv_22= 'as' ( (lv_tableName_23_0= RULE_ID ) ) )? (otherlv_24= 'descriminatedby' ( (lv_descriminationColumn_25_0= RULE_ID ) ) )? )
// InternalEMap.g:2171:2: ( (lv_abstract_0_0= 'abstract' ) )? otherlv_1= 'entity' ( (lv_name_2_0= RULE_ID ) ) ( ( ( (lv_extensionType_3_1= 'extends' | lv_extensionType_3_2= 'derived' ) ) ) ( ( ruleQualifiedName ) ) )? otherlv_5= '{' ( (lv_etype_6_0= ruleEType ) ) (otherlv_7= 'attributes' otherlv_8= '{' ( (lv_attributes_9_0= ruleEAttribute ) ) (otherlv_10= ',' ( (lv_attributes_11_0= ruleEAttribute ) ) )* otherlv_12= '}' )? (otherlv_13= 'queries' otherlv_14= '{' ( ( (lv_namedQueries_15_0= ruleENamedQuery ) ) | ( (lv_namedCustomQueries_16_0= ruleENamedCustomQuery ) ) ) (otherlv_17= ',' ( ( (lv_namedQueries_18_0= ruleENamedQuery ) ) | ( (lv_namedCustomQueries_19_0= ruleENamedCustomQuery ) ) ) )* otherlv_20= '}' )? otherlv_21= '}' (otherlv_22= 'as' ( (lv_tableName_23_0= RULE_ID ) ) )? (otherlv_24= 'descriminatedby' ( (lv_descriminationColumn_25_0= RULE_ID ) ) )?
{
// InternalEMap.g:2171:2: ( (lv_abstract_0_0= 'abstract' ) )?
int alt52=2;
int LA52_0 = input.LA(1);
if ( (LA52_0==44) ) {
alt52=1;
}
switch (alt52) {
case 1 :
// InternalEMap.g:2172:1: (lv_abstract_0_0= 'abstract' )
{
// InternalEMap.g:2172:1: (lv_abstract_0_0= 'abstract' )
// InternalEMap.g:2173:3: lv_abstract_0_0= 'abstract'
{
lv_abstract_0_0=(Token)match(input,44,FOLLOW_47); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_abstract_0_0, grammarAccess.getEMappingEntityAccess().getAbstractAbstractKeyword_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEMappingEntityRule());
}
setWithLastConsumed(current, "abstract", true, "abstract");
}
}
}
break;
}
otherlv_1=(Token)match(input,45,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getEMappingEntityAccess().getEntityKeyword_1());
}
// InternalEMap.g:2190:1: ( (lv_name_2_0= RULE_ID ) )
// InternalEMap.g:2191:1: (lv_name_2_0= RULE_ID )
{
// InternalEMap.g:2191:1: (lv_name_2_0= RULE_ID )
// InternalEMap.g:2192:3: lv_name_2_0= RULE_ID
{
lv_name_2_0=(Token)match(input,RULE_ID,FOLLOW_48); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_2_0, grammarAccess.getEMappingEntityAccess().getNameIDTerminalRuleCall_2_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEMappingEntityRule());
}
setWithLastConsumed(
current,
"name",
lv_name_2_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
// InternalEMap.g:2208:2: ( ( ( (lv_extensionType_3_1= 'extends' | lv_extensionType_3_2= 'derived' ) ) ) ( ( ruleQualifiedName ) ) )?
int alt54=2;
int LA54_0 = input.LA(1);
if ( (LA54_0==12||LA54_0==46) ) {
alt54=1;
}
switch (alt54) {
case 1 :
// InternalEMap.g:2208:3: ( ( (lv_extensionType_3_1= 'extends' | lv_extensionType_3_2= 'derived' ) ) ) ( ( ruleQualifiedName ) )
{
// InternalEMap.g:2208:3: ( ( (lv_extensionType_3_1= 'extends' | lv_extensionType_3_2= 'derived' ) ) )
// InternalEMap.g:2209:1: ( (lv_extensionType_3_1= 'extends' | lv_extensionType_3_2= 'derived' ) )
{
// InternalEMap.g:2209:1: ( (lv_extensionType_3_1= 'extends' | lv_extensionType_3_2= 'derived' ) )
// InternalEMap.g:2210:1: (lv_extensionType_3_1= 'extends' | lv_extensionType_3_2= 'derived' )
{
// InternalEMap.g:2210:1: (lv_extensionType_3_1= 'extends' | lv_extensionType_3_2= 'derived' )
int alt53=2;
int LA53_0 = input.LA(1);
if ( (LA53_0==12) ) {
alt53=1;
}
else if ( (LA53_0==46) ) {
alt53=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 53, 0, input);
throw nvae;
}
switch (alt53) {
case 1 :
// InternalEMap.g:2211:3: lv_extensionType_3_1= 'extends'
{
lv_extensionType_3_1=(Token)match(input,12,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_extensionType_3_1, grammarAccess.getEMappingEntityAccess().getExtensionTypeExtendsKeyword_3_0_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEMappingEntityRule());
}
setWithLastConsumed(current, "extensionType", lv_extensionType_3_1, null);
}
}
break;
case 2 :
// InternalEMap.g:2223:8: lv_extensionType_3_2= 'derived'
{
lv_extensionType_3_2=(Token)match(input,46,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_extensionType_3_2, grammarAccess.getEMappingEntityAccess().getExtensionTypeDerivedKeyword_3_0_0_1());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEMappingEntityRule());
}
setWithLastConsumed(current, "extensionType", lv_extensionType_3_2, null);
}
}
break;
}
}
}
// InternalEMap.g:2238:2: ( ( ruleQualifiedName ) )
// InternalEMap.g:2239:1: ( ruleQualifiedName )
{
// InternalEMap.g:2239:1: ( ruleQualifiedName )
// InternalEMap.g:2240:3: ruleQualifiedName
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEMappingEntityRule());
}
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingEntityAccess().getParentEMappingEntityCrossReference_3_1_0());
}
pushFollow(FOLLOW_6);
ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
otherlv_5=(Token)match(input,13,FOLLOW_34); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_5, grammarAccess.getEMappingEntityAccess().getLeftCurlyBracketKeyword_4());
}
// InternalEMap.g:2257:1: ( (lv_etype_6_0= ruleEType ) )
// InternalEMap.g:2258:1: (lv_etype_6_0= ruleEType )
{
// InternalEMap.g:2258:1: (lv_etype_6_0= ruleEType )
// InternalEMap.g:2259:3: lv_etype_6_0= ruleEType
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingEntityAccess().getEtypeETypeParserRuleCall_5_0());
}
pushFollow(FOLLOW_49);
lv_etype_6_0=ruleEType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingEntityRule());
}
set(
current,
"etype",
lv_etype_6_0,
"at.bestsolution.persistence.emap.EMap.EType");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:2275:2: (otherlv_7= 'attributes' otherlv_8= '{' ( (lv_attributes_9_0= ruleEAttribute ) ) (otherlv_10= ',' ( (lv_attributes_11_0= ruleEAttribute ) ) )* otherlv_12= '}' )?
int alt56=2;
int LA56_0 = input.LA(1);
if ( (LA56_0==47) ) {
alt56=1;
}
switch (alt56) {
case 1 :
// InternalEMap.g:2275:4: otherlv_7= 'attributes' otherlv_8= '{' ( (lv_attributes_9_0= ruleEAttribute ) ) (otherlv_10= ',' ( (lv_attributes_11_0= ruleEAttribute ) ) )* otherlv_12= '}'
{
otherlv_7=(Token)match(input,47,FOLLOW_6); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_7, grammarAccess.getEMappingEntityAccess().getAttributesKeyword_6_0());
}
otherlv_8=(Token)match(input,13,FOLLOW_50); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_8, grammarAccess.getEMappingEntityAccess().getLeftCurlyBracketKeyword_6_1());
}
// InternalEMap.g:2283:1: ( (lv_attributes_9_0= ruleEAttribute ) )
// InternalEMap.g:2284:1: (lv_attributes_9_0= ruleEAttribute )
{
// InternalEMap.g:2284:1: (lv_attributes_9_0= ruleEAttribute )
// InternalEMap.g:2285:3: lv_attributes_9_0= ruleEAttribute
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingEntityAccess().getAttributesEAttributeParserRuleCall_6_2_0());
}
pushFollow(FOLLOW_9);
lv_attributes_9_0=ruleEAttribute();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingEntityRule());
}
add(
current,
"attributes",
lv_attributes_9_0,
"at.bestsolution.persistence.emap.EMap.EAttribute");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:2301:2: (otherlv_10= ',' ( (lv_attributes_11_0= ruleEAttribute ) ) )*
loop55:
do {
int alt55=2;
int LA55_0 = input.LA(1);
if ( (LA55_0==15) ) {
alt55=1;
}
switch (alt55) {
case 1 :
// InternalEMap.g:2301:4: otherlv_10= ',' ( (lv_attributes_11_0= ruleEAttribute ) )
{
otherlv_10=(Token)match(input,15,FOLLOW_50); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_10, grammarAccess.getEMappingEntityAccess().getCommaKeyword_6_3_0());
}
// InternalEMap.g:2305:1: ( (lv_attributes_11_0= ruleEAttribute ) )
// InternalEMap.g:2306:1: (lv_attributes_11_0= ruleEAttribute )
{
// InternalEMap.g:2306:1: (lv_attributes_11_0= ruleEAttribute )
// InternalEMap.g:2307:3: lv_attributes_11_0= ruleEAttribute
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingEntityAccess().getAttributesEAttributeParserRuleCall_6_3_1_0());
}
pushFollow(FOLLOW_9);
lv_attributes_11_0=ruleEAttribute();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingEntityRule());
}
add(
current,
"attributes",
lv_attributes_11_0,
"at.bestsolution.persistence.emap.EMap.EAttribute");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop55;
}
} while (true);
otherlv_12=(Token)match(input,16,FOLLOW_51); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_12, grammarAccess.getEMappingEntityAccess().getRightCurlyBracketKeyword_6_4());
}
}
break;
}
// InternalEMap.g:2327:3: (otherlv_13= 'queries' otherlv_14= '{' ( ( (lv_namedQueries_15_0= ruleENamedQuery ) ) | ( (lv_namedCustomQueries_16_0= ruleENamedCustomQuery ) ) ) (otherlv_17= ',' ( ( (lv_namedQueries_18_0= ruleENamedQuery ) ) | ( (lv_namedCustomQueries_19_0= ruleENamedCustomQuery ) ) ) )* otherlv_20= '}' )?
int alt60=2;
int LA60_0 = input.LA(1);
if ( (LA60_0==48) ) {
alt60=1;
}
switch (alt60) {
case 1 :
// InternalEMap.g:2327:5: otherlv_13= 'queries' otherlv_14= '{' ( ( (lv_namedQueries_15_0= ruleENamedQuery ) ) | ( (lv_namedCustomQueries_16_0= ruleENamedCustomQuery ) ) ) (otherlv_17= ',' ( ( (lv_namedQueries_18_0= ruleENamedQuery ) ) | ( (lv_namedCustomQueries_19_0= ruleENamedCustomQuery ) ) ) )* otherlv_20= '}'
{
otherlv_13=(Token)match(input,48,FOLLOW_6); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_13, grammarAccess.getEMappingEntityAccess().getQueriesKeyword_7_0());
}
otherlv_14=(Token)match(input,13,FOLLOW_52); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_14, grammarAccess.getEMappingEntityAccess().getLeftCurlyBracketKeyword_7_1());
}
// InternalEMap.g:2335:1: ( ( (lv_namedQueries_15_0= ruleENamedQuery ) ) | ( (lv_namedCustomQueries_16_0= ruleENamedCustomQuery ) ) )
int alt57=2;
switch ( input.LA(1) ) {
case 80:
case 81:
{
alt57=1;
}
break;
case RULE_ID:
{
int LA57_2 = input.LA(2);
if ( (LA57_2==RULE_ID||LA57_2==43) ) {
alt57=2;
}
else if ( (LA57_2==13||LA57_2==25) ) {
alt57=1;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 57, 2, input);
throw nvae;
}
}
break;
case 59:
case 60:
case 61:
case 62:
case 63:
case 64:
case 65:
case 67:
case 73:
{
alt57=2;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 57, 0, input);
throw nvae;
}
switch (alt57) {
case 1 :
// InternalEMap.g:2335:2: ( (lv_namedQueries_15_0= ruleENamedQuery ) )
{
// InternalEMap.g:2335:2: ( (lv_namedQueries_15_0= ruleENamedQuery ) )
// InternalEMap.g:2336:1: (lv_namedQueries_15_0= ruleENamedQuery )
{
// InternalEMap.g:2336:1: (lv_namedQueries_15_0= ruleENamedQuery )
// InternalEMap.g:2337:3: lv_namedQueries_15_0= ruleENamedQuery
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingEntityAccess().getNamedQueriesENamedQueryParserRuleCall_7_2_0_0());
}
pushFollow(FOLLOW_9);
lv_namedQueries_15_0=ruleENamedQuery();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingEntityRule());
}
add(
current,
"namedQueries",
lv_namedQueries_15_0,
"at.bestsolution.persistence.emap.EMap.ENamedQuery");
afterParserOrEnumRuleCall();
}
}
}
}
break;
case 2 :
// InternalEMap.g:2354:6: ( (lv_namedCustomQueries_16_0= ruleENamedCustomQuery ) )
{
// InternalEMap.g:2354:6: ( (lv_namedCustomQueries_16_0= ruleENamedCustomQuery ) )
// InternalEMap.g:2355:1: (lv_namedCustomQueries_16_0= ruleENamedCustomQuery )
{
// InternalEMap.g:2355:1: (lv_namedCustomQueries_16_0= ruleENamedCustomQuery )
// InternalEMap.g:2356:3: lv_namedCustomQueries_16_0= ruleENamedCustomQuery
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingEntityAccess().getNamedCustomQueriesENamedCustomQueryParserRuleCall_7_2_1_0());
}
pushFollow(FOLLOW_9);
lv_namedCustomQueries_16_0=ruleENamedCustomQuery();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingEntityRule());
}
add(
current,
"namedCustomQueries",
lv_namedCustomQueries_16_0,
"at.bestsolution.persistence.emap.EMap.ENamedCustomQuery");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
// InternalEMap.g:2372:3: (otherlv_17= ',' ( ( (lv_namedQueries_18_0= ruleENamedQuery ) ) | ( (lv_namedCustomQueries_19_0= ruleENamedCustomQuery ) ) ) )*
loop59:
do {
int alt59=2;
int LA59_0 = input.LA(1);
if ( (LA59_0==15) ) {
alt59=1;
}
switch (alt59) {
case 1 :
// InternalEMap.g:2372:5: otherlv_17= ',' ( ( (lv_namedQueries_18_0= ruleENamedQuery ) ) | ( (lv_namedCustomQueries_19_0= ruleENamedCustomQuery ) ) )
{
otherlv_17=(Token)match(input,15,FOLLOW_52); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_17, grammarAccess.getEMappingEntityAccess().getCommaKeyword_7_3_0());
}
// InternalEMap.g:2376:1: ( ( (lv_namedQueries_18_0= ruleENamedQuery ) ) | ( (lv_namedCustomQueries_19_0= ruleENamedCustomQuery ) ) )
int alt58=2;
switch ( input.LA(1) ) {
case 80:
case 81:
{
alt58=1;
}
break;
case RULE_ID:
{
int LA58_2 = input.LA(2);
if ( (LA58_2==RULE_ID||LA58_2==43) ) {
alt58=2;
}
else if ( (LA58_2==13||LA58_2==25) ) {
alt58=1;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 58, 2, input);
throw nvae;
}
}
break;
case 59:
case 60:
case 61:
case 62:
case 63:
case 64:
case 65:
case 67:
case 73:
{
alt58=2;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 58, 0, input);
throw nvae;
}
switch (alt58) {
case 1 :
// InternalEMap.g:2376:2: ( (lv_namedQueries_18_0= ruleENamedQuery ) )
{
// InternalEMap.g:2376:2: ( (lv_namedQueries_18_0= ruleENamedQuery ) )
// InternalEMap.g:2377:1: (lv_namedQueries_18_0= ruleENamedQuery )
{
// InternalEMap.g:2377:1: (lv_namedQueries_18_0= ruleENamedQuery )
// InternalEMap.g:2378:3: lv_namedQueries_18_0= ruleENamedQuery
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingEntityAccess().getNamedQueriesENamedQueryParserRuleCall_7_3_1_0_0());
}
pushFollow(FOLLOW_9);
lv_namedQueries_18_0=ruleENamedQuery();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingEntityRule());
}
add(
current,
"namedQueries",
lv_namedQueries_18_0,
"at.bestsolution.persistence.emap.EMap.ENamedQuery");
afterParserOrEnumRuleCall();
}
}
}
}
break;
case 2 :
// InternalEMap.g:2395:6: ( (lv_namedCustomQueries_19_0= ruleENamedCustomQuery ) )
{
// InternalEMap.g:2395:6: ( (lv_namedCustomQueries_19_0= ruleENamedCustomQuery ) )
// InternalEMap.g:2396:1: (lv_namedCustomQueries_19_0= ruleENamedCustomQuery )
{
// InternalEMap.g:2396:1: (lv_namedCustomQueries_19_0= ruleENamedCustomQuery )
// InternalEMap.g:2397:3: lv_namedCustomQueries_19_0= ruleENamedCustomQuery
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingEntityAccess().getNamedCustomQueriesENamedCustomQueryParserRuleCall_7_3_1_1_0());
}
pushFollow(FOLLOW_9);
lv_namedCustomQueries_19_0=ruleENamedCustomQuery();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingEntityRule());
}
add(
current,
"namedCustomQueries",
lv_namedCustomQueries_19_0,
"at.bestsolution.persistence.emap.EMap.ENamedCustomQuery");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
}
break;
default :
break loop59;
}
} while (true);
otherlv_20=(Token)match(input,16,FOLLOW_13); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_20, grammarAccess.getEMappingEntityAccess().getRightCurlyBracketKeyword_7_4());
}
}
break;
}
otherlv_21=(Token)match(input,16,FOLLOW_53); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_21, grammarAccess.getEMappingEntityAccess().getRightCurlyBracketKeyword_8());
}
// InternalEMap.g:2421:1: (otherlv_22= 'as' ( (lv_tableName_23_0= RULE_ID ) ) )?
int alt61=2;
int LA61_0 = input.LA(1);
if ( (LA61_0==34) ) {
alt61=1;
}
switch (alt61) {
case 1 :
// InternalEMap.g:2421:3: otherlv_22= 'as' ( (lv_tableName_23_0= RULE_ID ) )
{
otherlv_22=(Token)match(input,34,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_22, grammarAccess.getEMappingEntityAccess().getAsKeyword_9_0());
}
// InternalEMap.g:2425:1: ( (lv_tableName_23_0= RULE_ID ) )
// InternalEMap.g:2426:1: (lv_tableName_23_0= RULE_ID )
{
// InternalEMap.g:2426:1: (lv_tableName_23_0= RULE_ID )
// InternalEMap.g:2427:3: lv_tableName_23_0= RULE_ID
{
lv_tableName_23_0=(Token)match(input,RULE_ID,FOLLOW_54); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_tableName_23_0, grammarAccess.getEMappingEntityAccess().getTableNameIDTerminalRuleCall_9_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEMappingEntityRule());
}
setWithLastConsumed(
current,
"tableName",
lv_tableName_23_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
}
break;
}
// InternalEMap.g:2443:4: (otherlv_24= 'descriminatedby' ( (lv_descriminationColumn_25_0= RULE_ID ) ) )?
int alt62=2;
int LA62_0 = input.LA(1);
if ( (LA62_0==49) ) {
alt62=1;
}
switch (alt62) {
case 1 :
// InternalEMap.g:2443:6: otherlv_24= 'descriminatedby' ( (lv_descriminationColumn_25_0= RULE_ID ) )
{
otherlv_24=(Token)match(input,49,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_24, grammarAccess.getEMappingEntityAccess().getDescriminatedbyKeyword_10_0());
}
// InternalEMap.g:2447:1: ( (lv_descriminationColumn_25_0= RULE_ID ) )
// InternalEMap.g:2448:1: (lv_descriminationColumn_25_0= RULE_ID )
{
// InternalEMap.g:2448:1: (lv_descriminationColumn_25_0= RULE_ID )
// InternalEMap.g:2449:3: lv_descriminationColumn_25_0= RULE_ID
{
lv_descriminationColumn_25_0=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_descriminationColumn_25_0, grammarAccess.getEMappingEntityAccess().getDescriminationColumnIDTerminalRuleCall_10_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEMappingEntityRule());
}
setWithLastConsumed(
current,
"descriminationColumn",
lv_descriminationColumn_25_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEMappingEntity"
// $ANTLR start "entryRuleEAttribute"
// InternalEMap.g:2473:1: entryRuleEAttribute returns [EObject current=null] : iv_ruleEAttribute= ruleEAttribute EOF ;
public final EObject entryRuleEAttribute() throws RecognitionException {
EObject current = null;
EObject iv_ruleEAttribute = null;
try {
// InternalEMap.g:2474:2: (iv_ruleEAttribute= ruleEAttribute EOF )
// InternalEMap.g:2475:2: iv_ruleEAttribute= ruleEAttribute EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEAttributeRule());
}
pushFollow(FOLLOW_1);
iv_ruleEAttribute=ruleEAttribute();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEAttribute;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEAttribute"
// $ANTLR start "ruleEAttribute"
// InternalEMap.g:2482:1: ruleEAttribute returns [EObject current=null] : ( ( ( (lv_pk_0_0= 'primarykey' ) )? | ( (lv_forcedFk_1_0= 'forced-fk' ) ) ) ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '=>' ( ( ( (lv_columnName_4_0= RULE_ID ) ) (otherlv_5= 'generatedby' otherlv_6= '{' ( (lv_valueGenerators_7_0= ruleEValueGenerator ) ) (otherlv_8= ',' ( (lv_valueGenerators_9_0= ruleEValueGenerator ) ) )* otherlv_10= '}' )? ) | ( ( (lv_resolved_11_0= 'resolve' ) ) ( ( ruleQualifiedName ) ) otherlv_13= '(' ( (lv_parameters_14_0= RULE_ID ) ) otherlv_15= ')' ( ( ( ruleQualifiedName ) ) otherlv_17= 'on' ( (lv_relationTable_18_0= RULE_ID ) ) (otherlv_19= '.' ( (lv_relationColumn_20_0= RULE_ID ) ) )? )? ) ) (otherlv_21= 'size' ( (lv_size_22_0= RULE_STRING ) ) )? ) ;
public final EObject ruleEAttribute() throws RecognitionException {
EObject current = null;
Token lv_pk_0_0=null;
Token lv_forcedFk_1_0=null;
Token lv_name_2_0=null;
Token otherlv_3=null;
Token lv_columnName_4_0=null;
Token otherlv_5=null;
Token otherlv_6=null;
Token otherlv_8=null;
Token otherlv_10=null;
Token lv_resolved_11_0=null;
Token otherlv_13=null;
Token lv_parameters_14_0=null;
Token otherlv_15=null;
Token otherlv_17=null;
Token lv_relationTable_18_0=null;
Token otherlv_19=null;
Token lv_relationColumn_20_0=null;
Token otherlv_21=null;
Token lv_size_22_0=null;
EObject lv_valueGenerators_7_0 = null;
EObject lv_valueGenerators_9_0 = null;
enterRule();
try {
// InternalEMap.g:2485:28: ( ( ( ( (lv_pk_0_0= 'primarykey' ) )? | ( (lv_forcedFk_1_0= 'forced-fk' ) ) ) ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '=>' ( ( ( (lv_columnName_4_0= RULE_ID ) ) (otherlv_5= 'generatedby' otherlv_6= '{' ( (lv_valueGenerators_7_0= ruleEValueGenerator ) ) (otherlv_8= ',' ( (lv_valueGenerators_9_0= ruleEValueGenerator ) ) )* otherlv_10= '}' )? ) | ( ( (lv_resolved_11_0= 'resolve' ) ) ( ( ruleQualifiedName ) ) otherlv_13= '(' ( (lv_parameters_14_0= RULE_ID ) ) otherlv_15= ')' ( ( ( ruleQualifiedName ) ) otherlv_17= 'on' ( (lv_relationTable_18_0= RULE_ID ) ) (otherlv_19= '.' ( (lv_relationColumn_20_0= RULE_ID ) ) )? )? ) ) (otherlv_21= 'size' ( (lv_size_22_0= RULE_STRING ) ) )? ) )
// InternalEMap.g:2486:1: ( ( ( (lv_pk_0_0= 'primarykey' ) )? | ( (lv_forcedFk_1_0= 'forced-fk' ) ) ) ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '=>' ( ( ( (lv_columnName_4_0= RULE_ID ) ) (otherlv_5= 'generatedby' otherlv_6= '{' ( (lv_valueGenerators_7_0= ruleEValueGenerator ) ) (otherlv_8= ',' ( (lv_valueGenerators_9_0= ruleEValueGenerator ) ) )* otherlv_10= '}' )? ) | ( ( (lv_resolved_11_0= 'resolve' ) ) ( ( ruleQualifiedName ) ) otherlv_13= '(' ( (lv_parameters_14_0= RULE_ID ) ) otherlv_15= ')' ( ( ( ruleQualifiedName ) ) otherlv_17= 'on' ( (lv_relationTable_18_0= RULE_ID ) ) (otherlv_19= '.' ( (lv_relationColumn_20_0= RULE_ID ) ) )? )? ) ) (otherlv_21= 'size' ( (lv_size_22_0= RULE_STRING ) ) )? )
{
// InternalEMap.g:2486:1: ( ( ( (lv_pk_0_0= 'primarykey' ) )? | ( (lv_forcedFk_1_0= 'forced-fk' ) ) ) ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '=>' ( ( ( (lv_columnName_4_0= RULE_ID ) ) (otherlv_5= 'generatedby' otherlv_6= '{' ( (lv_valueGenerators_7_0= ruleEValueGenerator ) ) (otherlv_8= ',' ( (lv_valueGenerators_9_0= ruleEValueGenerator ) ) )* otherlv_10= '}' )? ) | ( ( (lv_resolved_11_0= 'resolve' ) ) ( ( ruleQualifiedName ) ) otherlv_13= '(' ( (lv_parameters_14_0= RULE_ID ) ) otherlv_15= ')' ( ( ( ruleQualifiedName ) ) otherlv_17= 'on' ( (lv_relationTable_18_0= RULE_ID ) ) (otherlv_19= '.' ( (lv_relationColumn_20_0= RULE_ID ) ) )? )? ) ) (otherlv_21= 'size' ( (lv_size_22_0= RULE_STRING ) ) )? )
// InternalEMap.g:2486:2: ( ( (lv_pk_0_0= 'primarykey' ) )? | ( (lv_forcedFk_1_0= 'forced-fk' ) ) ) ( (lv_name_2_0= RULE_ID ) ) otherlv_3= '=>' ( ( ( (lv_columnName_4_0= RULE_ID ) ) (otherlv_5= 'generatedby' otherlv_6= '{' ( (lv_valueGenerators_7_0= ruleEValueGenerator ) ) (otherlv_8= ',' ( (lv_valueGenerators_9_0= ruleEValueGenerator ) ) )* otherlv_10= '}' )? ) | ( ( (lv_resolved_11_0= 'resolve' ) ) ( ( ruleQualifiedName ) ) otherlv_13= '(' ( (lv_parameters_14_0= RULE_ID ) ) otherlv_15= ')' ( ( ( ruleQualifiedName ) ) otherlv_17= 'on' ( (lv_relationTable_18_0= RULE_ID ) ) (otherlv_19= '.' ( (lv_relationColumn_20_0= RULE_ID ) ) )? )? ) ) (otherlv_21= 'size' ( (lv_size_22_0= RULE_STRING ) ) )?
{
// InternalEMap.g:2486:2: ( ( (lv_pk_0_0= 'primarykey' ) )? | ( (lv_forcedFk_1_0= 'forced-fk' ) ) )
int alt64=2;
int LA64_0 = input.LA(1);
if ( (LA64_0==RULE_ID||LA64_0==50) ) {
alt64=1;
}
else if ( (LA64_0==51) ) {
alt64=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 64, 0, input);
throw nvae;
}
switch (alt64) {
case 1 :
// InternalEMap.g:2486:3: ( (lv_pk_0_0= 'primarykey' ) )?
{
// InternalEMap.g:2486:3: ( (lv_pk_0_0= 'primarykey' ) )?
int alt63=2;
int LA63_0 = input.LA(1);
if ( (LA63_0==50) ) {
alt63=1;
}
switch (alt63) {
case 1 :
// InternalEMap.g:2487:1: (lv_pk_0_0= 'primarykey' )
{
// InternalEMap.g:2487:1: (lv_pk_0_0= 'primarykey' )
// InternalEMap.g:2488:3: lv_pk_0_0= 'primarykey'
{
lv_pk_0_0=(Token)match(input,50,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_pk_0_0, grammarAccess.getEAttributeAccess().getPkPrimarykeyKeyword_0_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEAttributeRule());
}
setWithLastConsumed(current, "pk", true, "primarykey");
}
}
}
break;
}
}
break;
case 2 :
// InternalEMap.g:2502:6: ( (lv_forcedFk_1_0= 'forced-fk' ) )
{
// InternalEMap.g:2502:6: ( (lv_forcedFk_1_0= 'forced-fk' ) )
// InternalEMap.g:2503:1: (lv_forcedFk_1_0= 'forced-fk' )
{
// InternalEMap.g:2503:1: (lv_forcedFk_1_0= 'forced-fk' )
// InternalEMap.g:2504:3: lv_forcedFk_1_0= 'forced-fk'
{
lv_forcedFk_1_0=(Token)match(input,51,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_forcedFk_1_0, grammarAccess.getEAttributeAccess().getForcedFkForcedFkKeyword_0_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEAttributeRule());
}
setWithLastConsumed(current, "forcedFk", true, "forced-fk");
}
}
}
}
break;
}
// InternalEMap.g:2517:3: ( (lv_name_2_0= RULE_ID ) )
// InternalEMap.g:2518:1: (lv_name_2_0= RULE_ID )
{
// InternalEMap.g:2518:1: (lv_name_2_0= RULE_ID )
// InternalEMap.g:2519:3: lv_name_2_0= RULE_ID
{
lv_name_2_0=(Token)match(input,RULE_ID,FOLLOW_55); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_2_0, grammarAccess.getEAttributeAccess().getNameIDTerminalRuleCall_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEAttributeRule());
}
setWithLastConsumed(
current,
"name",
lv_name_2_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
otherlv_3=(Token)match(input,52,FOLLOW_56); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getEAttributeAccess().getEqualsSignGreaterThanSignKeyword_2());
}
// InternalEMap.g:2539:1: ( ( ( (lv_columnName_4_0= RULE_ID ) ) (otherlv_5= 'generatedby' otherlv_6= '{' ( (lv_valueGenerators_7_0= ruleEValueGenerator ) ) (otherlv_8= ',' ( (lv_valueGenerators_9_0= ruleEValueGenerator ) ) )* otherlv_10= '}' )? ) | ( ( (lv_resolved_11_0= 'resolve' ) ) ( ( ruleQualifiedName ) ) otherlv_13= '(' ( (lv_parameters_14_0= RULE_ID ) ) otherlv_15= ')' ( ( ( ruleQualifiedName ) ) otherlv_17= 'on' ( (lv_relationTable_18_0= RULE_ID ) ) (otherlv_19= '.' ( (lv_relationColumn_20_0= RULE_ID ) ) )? )? ) )
int alt69=2;
int LA69_0 = input.LA(1);
if ( (LA69_0==RULE_ID) ) {
alt69=1;
}
else if ( (LA69_0==54) ) {
alt69=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 69, 0, input);
throw nvae;
}
switch (alt69) {
case 1 :
// InternalEMap.g:2539:2: ( ( (lv_columnName_4_0= RULE_ID ) ) (otherlv_5= 'generatedby' otherlv_6= '{' ( (lv_valueGenerators_7_0= ruleEValueGenerator ) ) (otherlv_8= ',' ( (lv_valueGenerators_9_0= ruleEValueGenerator ) ) )* otherlv_10= '}' )? )
{
// InternalEMap.g:2539:2: ( ( (lv_columnName_4_0= RULE_ID ) ) (otherlv_5= 'generatedby' otherlv_6= '{' ( (lv_valueGenerators_7_0= ruleEValueGenerator ) ) (otherlv_8= ',' ( (lv_valueGenerators_9_0= ruleEValueGenerator ) ) )* otherlv_10= '}' )? )
// InternalEMap.g:2539:3: ( (lv_columnName_4_0= RULE_ID ) ) (otherlv_5= 'generatedby' otherlv_6= '{' ( (lv_valueGenerators_7_0= ruleEValueGenerator ) ) (otherlv_8= ',' ( (lv_valueGenerators_9_0= ruleEValueGenerator ) ) )* otherlv_10= '}' )?
{
// InternalEMap.g:2539:3: ( (lv_columnName_4_0= RULE_ID ) )
// InternalEMap.g:2540:1: (lv_columnName_4_0= RULE_ID )
{
// InternalEMap.g:2540:1: (lv_columnName_4_0= RULE_ID )
// InternalEMap.g:2541:3: lv_columnName_4_0= RULE_ID
{
lv_columnName_4_0=(Token)match(input,RULE_ID,FOLLOW_57); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_columnName_4_0, grammarAccess.getEAttributeAccess().getColumnNameIDTerminalRuleCall_3_0_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEAttributeRule());
}
setWithLastConsumed(
current,
"columnName",
lv_columnName_4_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
// InternalEMap.g:2557:2: (otherlv_5= 'generatedby' otherlv_6= '{' ( (lv_valueGenerators_7_0= ruleEValueGenerator ) ) (otherlv_8= ',' ( (lv_valueGenerators_9_0= ruleEValueGenerator ) ) )* otherlv_10= '}' )?
int alt66=2;
int LA66_0 = input.LA(1);
if ( (LA66_0==53) ) {
alt66=1;
}
switch (alt66) {
case 1 :
// InternalEMap.g:2557:4: otherlv_5= 'generatedby' otherlv_6= '{' ( (lv_valueGenerators_7_0= ruleEValueGenerator ) ) (otherlv_8= ',' ( (lv_valueGenerators_9_0= ruleEValueGenerator ) ) )* otherlv_10= '}'
{
otherlv_5=(Token)match(input,53,FOLLOW_6); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_5, grammarAccess.getEAttributeAccess().getGeneratedbyKeyword_3_0_1_0());
}
otherlv_6=(Token)match(input,13,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_6, grammarAccess.getEAttributeAccess().getLeftCurlyBracketKeyword_3_0_1_1());
}
// InternalEMap.g:2565:1: ( (lv_valueGenerators_7_0= ruleEValueGenerator ) )
// InternalEMap.g:2566:1: (lv_valueGenerators_7_0= ruleEValueGenerator )
{
// InternalEMap.g:2566:1: (lv_valueGenerators_7_0= ruleEValueGenerator )
// InternalEMap.g:2567:3: lv_valueGenerators_7_0= ruleEValueGenerator
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEAttributeAccess().getValueGeneratorsEValueGeneratorParserRuleCall_3_0_1_2_0());
}
pushFollow(FOLLOW_9);
lv_valueGenerators_7_0=ruleEValueGenerator();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEAttributeRule());
}
add(
current,
"valueGenerators",
lv_valueGenerators_7_0,
"at.bestsolution.persistence.emap.EMap.EValueGenerator");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:2583:2: (otherlv_8= ',' ( (lv_valueGenerators_9_0= ruleEValueGenerator ) ) )*
loop65:
do {
int alt65=2;
int LA65_0 = input.LA(1);
if ( (LA65_0==15) ) {
alt65=1;
}
switch (alt65) {
case 1 :
// InternalEMap.g:2583:4: otherlv_8= ',' ( (lv_valueGenerators_9_0= ruleEValueGenerator ) )
{
otherlv_8=(Token)match(input,15,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_8, grammarAccess.getEAttributeAccess().getCommaKeyword_3_0_1_3_0());
}
// InternalEMap.g:2587:1: ( (lv_valueGenerators_9_0= ruleEValueGenerator ) )
// InternalEMap.g:2588:1: (lv_valueGenerators_9_0= ruleEValueGenerator )
{
// InternalEMap.g:2588:1: (lv_valueGenerators_9_0= ruleEValueGenerator )
// InternalEMap.g:2589:3: lv_valueGenerators_9_0= ruleEValueGenerator
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEAttributeAccess().getValueGeneratorsEValueGeneratorParserRuleCall_3_0_1_3_1_0());
}
pushFollow(FOLLOW_9);
lv_valueGenerators_9_0=ruleEValueGenerator();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEAttributeRule());
}
add(
current,
"valueGenerators",
lv_valueGenerators_9_0,
"at.bestsolution.persistence.emap.EMap.EValueGenerator");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop65;
}
} while (true);
otherlv_10=(Token)match(input,16,FOLLOW_35); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_10, grammarAccess.getEAttributeAccess().getRightCurlyBracketKeyword_3_0_1_4());
}
}
break;
}
}
}
break;
case 2 :
// InternalEMap.g:2610:6: ( ( (lv_resolved_11_0= 'resolve' ) ) ( ( ruleQualifiedName ) ) otherlv_13= '(' ( (lv_parameters_14_0= RULE_ID ) ) otherlv_15= ')' ( ( ( ruleQualifiedName ) ) otherlv_17= 'on' ( (lv_relationTable_18_0= RULE_ID ) ) (otherlv_19= '.' ( (lv_relationColumn_20_0= RULE_ID ) ) )? )? )
{
// InternalEMap.g:2610:6: ( ( (lv_resolved_11_0= 'resolve' ) ) ( ( ruleQualifiedName ) ) otherlv_13= '(' ( (lv_parameters_14_0= RULE_ID ) ) otherlv_15= ')' ( ( ( ruleQualifiedName ) ) otherlv_17= 'on' ( (lv_relationTable_18_0= RULE_ID ) ) (otherlv_19= '.' ( (lv_relationColumn_20_0= RULE_ID ) ) )? )? )
// InternalEMap.g:2610:7: ( (lv_resolved_11_0= 'resolve' ) ) ( ( ruleQualifiedName ) ) otherlv_13= '(' ( (lv_parameters_14_0= RULE_ID ) ) otherlv_15= ')' ( ( ( ruleQualifiedName ) ) otherlv_17= 'on' ( (lv_relationTable_18_0= RULE_ID ) ) (otherlv_19= '.' ( (lv_relationColumn_20_0= RULE_ID ) ) )? )?
{
// InternalEMap.g:2610:7: ( (lv_resolved_11_0= 'resolve' ) )
// InternalEMap.g:2611:1: (lv_resolved_11_0= 'resolve' )
{
// InternalEMap.g:2611:1: (lv_resolved_11_0= 'resolve' )
// InternalEMap.g:2612:3: lv_resolved_11_0= 'resolve'
{
lv_resolved_11_0=(Token)match(input,54,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_resolved_11_0, grammarAccess.getEAttributeAccess().getResolvedResolveKeyword_3_1_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEAttributeRule());
}
setWithLastConsumed(current, "resolved", true, "resolve");
}
}
}
// InternalEMap.g:2625:2: ( ( ruleQualifiedName ) )
// InternalEMap.g:2626:1: ( ruleQualifiedName )
{
// InternalEMap.g:2626:1: ( ruleQualifiedName )
// InternalEMap.g:2627:3: ruleQualifiedName
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEAttributeRule());
}
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEAttributeAccess().getQueryENamedQueryCrossReference_3_1_1_0());
}
pushFollow(FOLLOW_31);
ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
}
otherlv_13=(Token)match(input,25,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_13, grammarAccess.getEAttributeAccess().getLeftParenthesisKeyword_3_1_2());
}
// InternalEMap.g:2644:1: ( (lv_parameters_14_0= RULE_ID ) )
// InternalEMap.g:2645:1: (lv_parameters_14_0= RULE_ID )
{
// InternalEMap.g:2645:1: (lv_parameters_14_0= RULE_ID )
// InternalEMap.g:2646:3: lv_parameters_14_0= RULE_ID
{
lv_parameters_14_0=(Token)match(input,RULE_ID,FOLLOW_58); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_parameters_14_0, grammarAccess.getEAttributeAccess().getParametersIDTerminalRuleCall_3_1_3_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEAttributeRule());
}
addWithLastConsumed(
current,
"parameters",
lv_parameters_14_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
otherlv_15=(Token)match(input,26,FOLLOW_59); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_15, grammarAccess.getEAttributeAccess().getRightParenthesisKeyword_3_1_4());
}
// InternalEMap.g:2666:1: ( ( ( ruleQualifiedName ) ) otherlv_17= 'on' ( (lv_relationTable_18_0= RULE_ID ) ) (otherlv_19= '.' ( (lv_relationColumn_20_0= RULE_ID ) ) )? )?
int alt68=2;
int LA68_0 = input.LA(1);
if ( (LA68_0==RULE_ID) ) {
alt68=1;
}
switch (alt68) {
case 1 :
// InternalEMap.g:2666:2: ( ( ruleQualifiedName ) ) otherlv_17= 'on' ( (lv_relationTable_18_0= RULE_ID ) ) (otherlv_19= '.' ( (lv_relationColumn_20_0= RULE_ID ) ) )?
{
// InternalEMap.g:2666:2: ( ( ruleQualifiedName ) )
// InternalEMap.g:2667:1: ( ruleQualifiedName )
{
// InternalEMap.g:2667:1: ( ruleQualifiedName )
// InternalEMap.g:2668:3: ruleQualifiedName
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEAttributeRule());
}
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEAttributeAccess().getOppositeEAttributeCrossReference_3_1_5_0_0());
}
pushFollow(FOLLOW_60);
ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
}
otherlv_17=(Token)match(input,55,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_17, grammarAccess.getEAttributeAccess().getOnKeyword_3_1_5_1());
}
// InternalEMap.g:2685:1: ( (lv_relationTable_18_0= RULE_ID ) )
// InternalEMap.g:2686:1: (lv_relationTable_18_0= RULE_ID )
{
// InternalEMap.g:2686:1: (lv_relationTable_18_0= RULE_ID )
// InternalEMap.g:2687:3: lv_relationTable_18_0= RULE_ID
{
lv_relationTable_18_0=(Token)match(input,RULE_ID,FOLLOW_61); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_relationTable_18_0, grammarAccess.getEAttributeAccess().getRelationTableIDTerminalRuleCall_3_1_5_2_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEAttributeRule());
}
setWithLastConsumed(
current,
"relationTable",
lv_relationTable_18_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
// InternalEMap.g:2703:2: (otherlv_19= '.' ( (lv_relationColumn_20_0= RULE_ID ) ) )?
int alt67=2;
int LA67_0 = input.LA(1);
if ( (LA67_0==43) ) {
alt67=1;
}
switch (alt67) {
case 1 :
// InternalEMap.g:2703:4: otherlv_19= '.' ( (lv_relationColumn_20_0= RULE_ID ) )
{
otherlv_19=(Token)match(input,43,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_19, grammarAccess.getEAttributeAccess().getFullStopKeyword_3_1_5_3_0());
}
// InternalEMap.g:2707:1: ( (lv_relationColumn_20_0= RULE_ID ) )
// InternalEMap.g:2708:1: (lv_relationColumn_20_0= RULE_ID )
{
// InternalEMap.g:2708:1: (lv_relationColumn_20_0= RULE_ID )
// InternalEMap.g:2709:3: lv_relationColumn_20_0= RULE_ID
{
lv_relationColumn_20_0=(Token)match(input,RULE_ID,FOLLOW_35); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_relationColumn_20_0, grammarAccess.getEAttributeAccess().getRelationColumnIDTerminalRuleCall_3_1_5_3_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEAttributeRule());
}
setWithLastConsumed(
current,
"relationColumn",
lv_relationColumn_20_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
}
break;
}
}
break;
}
}
}
break;
}
// InternalEMap.g:2725:8: (otherlv_21= 'size' ( (lv_size_22_0= RULE_STRING ) ) )?
int alt70=2;
int LA70_0 = input.LA(1);
if ( (LA70_0==31) ) {
alt70=1;
}
switch (alt70) {
case 1 :
// InternalEMap.g:2725:10: otherlv_21= 'size' ( (lv_size_22_0= RULE_STRING ) )
{
otherlv_21=(Token)match(input,31,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_21, grammarAccess.getEAttributeAccess().getSizeKeyword_4_0());
}
// InternalEMap.g:2729:1: ( (lv_size_22_0= RULE_STRING ) )
// InternalEMap.g:2730:1: (lv_size_22_0= RULE_STRING )
{
// InternalEMap.g:2730:1: (lv_size_22_0= RULE_STRING )
// InternalEMap.g:2731:3: lv_size_22_0= RULE_STRING
{
lv_size_22_0=(Token)match(input,RULE_STRING,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_size_22_0, grammarAccess.getEAttributeAccess().getSizeSTRINGTerminalRuleCall_4_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEAttributeRule());
}
setWithLastConsumed(
current,
"size",
lv_size_22_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEAttribute"
// $ANTLR start "entryRuleEValueGenerator"
// InternalEMap.g:2755:1: entryRuleEValueGenerator returns [EObject current=null] : iv_ruleEValueGenerator= ruleEValueGenerator EOF ;
public final EObject entryRuleEValueGenerator() throws RecognitionException {
EObject current = null;
EObject iv_ruleEValueGenerator = null;
try {
// InternalEMap.g:2756:2: (iv_ruleEValueGenerator= ruleEValueGenerator EOF )
// InternalEMap.g:2757:2: iv_ruleEValueGenerator= ruleEValueGenerator EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEValueGeneratorRule());
}
pushFollow(FOLLOW_1);
iv_ruleEValueGenerator=ruleEValueGenerator();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEValueGenerator;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEValueGenerator"
// $ANTLR start "ruleEValueGenerator"
// InternalEMap.g:2764:1: ruleEValueGenerator returns [EObject current=null] : ( ( (lv_dbType_0_0= RULE_STRING ) ) ( ( (lv_autokey_1_0= 'autokey' ) ) | (otherlv_2= 'query' ( (lv_query_3_0= RULE_STRING ) ) ) | (otherlv_4= 'seqnext' ( (lv_sequence_5_0= RULE_STRING ) ) ) ) ) ;
public final EObject ruleEValueGenerator() throws RecognitionException {
EObject current = null;
Token lv_dbType_0_0=null;
Token lv_autokey_1_0=null;
Token otherlv_2=null;
Token lv_query_3_0=null;
Token otherlv_4=null;
Token lv_sequence_5_0=null;
enterRule();
try {
// InternalEMap.g:2767:28: ( ( ( (lv_dbType_0_0= RULE_STRING ) ) ( ( (lv_autokey_1_0= 'autokey' ) ) | (otherlv_2= 'query' ( (lv_query_3_0= RULE_STRING ) ) ) | (otherlv_4= 'seqnext' ( (lv_sequence_5_0= RULE_STRING ) ) ) ) ) )
// InternalEMap.g:2768:1: ( ( (lv_dbType_0_0= RULE_STRING ) ) ( ( (lv_autokey_1_0= 'autokey' ) ) | (otherlv_2= 'query' ( (lv_query_3_0= RULE_STRING ) ) ) | (otherlv_4= 'seqnext' ( (lv_sequence_5_0= RULE_STRING ) ) ) ) )
{
// InternalEMap.g:2768:1: ( ( (lv_dbType_0_0= RULE_STRING ) ) ( ( (lv_autokey_1_0= 'autokey' ) ) | (otherlv_2= 'query' ( (lv_query_3_0= RULE_STRING ) ) ) | (otherlv_4= 'seqnext' ( (lv_sequence_5_0= RULE_STRING ) ) ) ) )
// InternalEMap.g:2768:2: ( (lv_dbType_0_0= RULE_STRING ) ) ( ( (lv_autokey_1_0= 'autokey' ) ) | (otherlv_2= 'query' ( (lv_query_3_0= RULE_STRING ) ) ) | (otherlv_4= 'seqnext' ( (lv_sequence_5_0= RULE_STRING ) ) ) )
{
// InternalEMap.g:2768:2: ( (lv_dbType_0_0= RULE_STRING ) )
// InternalEMap.g:2769:1: (lv_dbType_0_0= RULE_STRING )
{
// InternalEMap.g:2769:1: (lv_dbType_0_0= RULE_STRING )
// InternalEMap.g:2770:3: lv_dbType_0_0= RULE_STRING
{
lv_dbType_0_0=(Token)match(input,RULE_STRING,FOLLOW_62); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_dbType_0_0, grammarAccess.getEValueGeneratorAccess().getDbTypeSTRINGTerminalRuleCall_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEValueGeneratorRule());
}
setWithLastConsumed(
current,
"dbType",
lv_dbType_0_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
// InternalEMap.g:2786:2: ( ( (lv_autokey_1_0= 'autokey' ) ) | (otherlv_2= 'query' ( (lv_query_3_0= RULE_STRING ) ) ) | (otherlv_4= 'seqnext' ( (lv_sequence_5_0= RULE_STRING ) ) ) )
int alt71=3;
switch ( input.LA(1) ) {
case 56:
{
alt71=1;
}
break;
case 57:
{
alt71=2;
}
break;
case 58:
{
alt71=3;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 71, 0, input);
throw nvae;
}
switch (alt71) {
case 1 :
// InternalEMap.g:2786:3: ( (lv_autokey_1_0= 'autokey' ) )
{
// InternalEMap.g:2786:3: ( (lv_autokey_1_0= 'autokey' ) )
// InternalEMap.g:2787:1: (lv_autokey_1_0= 'autokey' )
{
// InternalEMap.g:2787:1: (lv_autokey_1_0= 'autokey' )
// InternalEMap.g:2788:3: lv_autokey_1_0= 'autokey'
{
lv_autokey_1_0=(Token)match(input,56,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_autokey_1_0, grammarAccess.getEValueGeneratorAccess().getAutokeyAutokeyKeyword_1_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEValueGeneratorRule());
}
setWithLastConsumed(current, "autokey", true, "autokey");
}
}
}
}
break;
case 2 :
// InternalEMap.g:2802:6: (otherlv_2= 'query' ( (lv_query_3_0= RULE_STRING ) ) )
{
// InternalEMap.g:2802:6: (otherlv_2= 'query' ( (lv_query_3_0= RULE_STRING ) ) )
// InternalEMap.g:2802:8: otherlv_2= 'query' ( (lv_query_3_0= RULE_STRING ) )
{
otherlv_2=(Token)match(input,57,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getEValueGeneratorAccess().getQueryKeyword_1_1_0());
}
// InternalEMap.g:2806:1: ( (lv_query_3_0= RULE_STRING ) )
// InternalEMap.g:2807:1: (lv_query_3_0= RULE_STRING )
{
// InternalEMap.g:2807:1: (lv_query_3_0= RULE_STRING )
// InternalEMap.g:2808:3: lv_query_3_0= RULE_STRING
{
lv_query_3_0=(Token)match(input,RULE_STRING,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_query_3_0, grammarAccess.getEValueGeneratorAccess().getQuerySTRINGTerminalRuleCall_1_1_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEValueGeneratorRule());
}
setWithLastConsumed(
current,
"query",
lv_query_3_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
}
break;
case 3 :
// InternalEMap.g:2825:6: (otherlv_4= 'seqnext' ( (lv_sequence_5_0= RULE_STRING ) ) )
{
// InternalEMap.g:2825:6: (otherlv_4= 'seqnext' ( (lv_sequence_5_0= RULE_STRING ) ) )
// InternalEMap.g:2825:8: otherlv_4= 'seqnext' ( (lv_sequence_5_0= RULE_STRING ) )
{
otherlv_4=(Token)match(input,58,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getEValueGeneratorAccess().getSeqnextKeyword_1_2_0());
}
// InternalEMap.g:2829:1: ( (lv_sequence_5_0= RULE_STRING ) )
// InternalEMap.g:2830:1: (lv_sequence_5_0= RULE_STRING )
{
// InternalEMap.g:2830:1: (lv_sequence_5_0= RULE_STRING )
// InternalEMap.g:2831:3: lv_sequence_5_0= RULE_STRING
{
lv_sequence_5_0=(Token)match(input,RULE_STRING,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_sequence_5_0, grammarAccess.getEValueGeneratorAccess().getSequenceSTRINGTerminalRuleCall_1_2_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEValueGeneratorRule());
}
setWithLastConsumed(
current,
"sequence",
lv_sequence_5_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEValueGenerator"
// $ANTLR start "entryRuleENamedQuery"
// InternalEMap.g:2855:1: entryRuleENamedQuery returns [EObject current=null] : iv_ruleENamedQuery= ruleENamedQuery EOF ;
public final EObject entryRuleENamedQuery() throws RecognitionException {
EObject current = null;
EObject iv_ruleENamedQuery = null;
try {
// InternalEMap.g:2856:2: (iv_ruleENamedQuery= ruleENamedQuery EOF )
// InternalEMap.g:2857:2: iv_ruleENamedQuery= ruleENamedQuery EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getENamedQueryRule());
}
pushFollow(FOLLOW_1);
iv_ruleENamedQuery=ruleENamedQuery();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleENamedQuery;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleENamedQuery"
// $ANTLR start "ruleENamedQuery"
// InternalEMap.g:2864:1: ruleENamedQuery returns [EObject current=null] : ( ( (lv_returnType_0_0= ruleReturnType ) )? ( (lv_name_1_0= RULE_ID ) ) (otherlv_2= '(' ( ( (lv_parameters_3_0= ruleEParameter ) ) (otherlv_4= ',' ( (lv_parameters_5_0= ruleEParameter ) ) )* )? otherlv_6= ')' )? otherlv_7= '{' ( (lv_queries_8_0= ruleEQuery ) ) (otherlv_9= ',' ( (lv_queries_10_0= ruleEQuery ) ) )* otherlv_11= '}' ) ;
public final EObject ruleENamedQuery() throws RecognitionException {
EObject current = null;
Token lv_name_1_0=null;
Token otherlv_2=null;
Token otherlv_4=null;
Token otherlv_6=null;
Token otherlv_7=null;
Token otherlv_9=null;
Token otherlv_11=null;
Enumerator lv_returnType_0_0 = null;
EObject lv_parameters_3_0 = null;
EObject lv_parameters_5_0 = null;
EObject lv_queries_8_0 = null;
EObject lv_queries_10_0 = null;
enterRule();
try {
// InternalEMap.g:2867:28: ( ( ( (lv_returnType_0_0= ruleReturnType ) )? ( (lv_name_1_0= RULE_ID ) ) (otherlv_2= '(' ( ( (lv_parameters_3_0= ruleEParameter ) ) (otherlv_4= ',' ( (lv_parameters_5_0= ruleEParameter ) ) )* )? otherlv_6= ')' )? otherlv_7= '{' ( (lv_queries_8_0= ruleEQuery ) ) (otherlv_9= ',' ( (lv_queries_10_0= ruleEQuery ) ) )* otherlv_11= '}' ) )
// InternalEMap.g:2868:1: ( ( (lv_returnType_0_0= ruleReturnType ) )? ( (lv_name_1_0= RULE_ID ) ) (otherlv_2= '(' ( ( (lv_parameters_3_0= ruleEParameter ) ) (otherlv_4= ',' ( (lv_parameters_5_0= ruleEParameter ) ) )* )? otherlv_6= ')' )? otherlv_7= '{' ( (lv_queries_8_0= ruleEQuery ) ) (otherlv_9= ',' ( (lv_queries_10_0= ruleEQuery ) ) )* otherlv_11= '}' )
{
// InternalEMap.g:2868:1: ( ( (lv_returnType_0_0= ruleReturnType ) )? ( (lv_name_1_0= RULE_ID ) ) (otherlv_2= '(' ( ( (lv_parameters_3_0= ruleEParameter ) ) (otherlv_4= ',' ( (lv_parameters_5_0= ruleEParameter ) ) )* )? otherlv_6= ')' )? otherlv_7= '{' ( (lv_queries_8_0= ruleEQuery ) ) (otherlv_9= ',' ( (lv_queries_10_0= ruleEQuery ) ) )* otherlv_11= '}' )
// InternalEMap.g:2868:2: ( (lv_returnType_0_0= ruleReturnType ) )? ( (lv_name_1_0= RULE_ID ) ) (otherlv_2= '(' ( ( (lv_parameters_3_0= ruleEParameter ) ) (otherlv_4= ',' ( (lv_parameters_5_0= ruleEParameter ) ) )* )? otherlv_6= ')' )? otherlv_7= '{' ( (lv_queries_8_0= ruleEQuery ) ) (otherlv_9= ',' ( (lv_queries_10_0= ruleEQuery ) ) )* otherlv_11= '}'
{
// InternalEMap.g:2868:2: ( (lv_returnType_0_0= ruleReturnType ) )?
int alt72=2;
int LA72_0 = input.LA(1);
if ( ((LA72_0>=80 && LA72_0<=81)) ) {
alt72=1;
}
switch (alt72) {
case 1 :
// InternalEMap.g:2869:1: (lv_returnType_0_0= ruleReturnType )
{
// InternalEMap.g:2869:1: (lv_returnType_0_0= ruleReturnType )
// InternalEMap.g:2870:3: lv_returnType_0_0= ruleReturnType
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getENamedQueryAccess().getReturnTypeReturnTypeEnumRuleCall_0_0());
}
pushFollow(FOLLOW_4);
lv_returnType_0_0=ruleReturnType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getENamedQueryRule());
}
set(
current,
"returnType",
lv_returnType_0_0,
"at.bestsolution.persistence.emap.EMap.ReturnType");
afterParserOrEnumRuleCall();
}
}
}
break;
}
// InternalEMap.g:2886:3: ( (lv_name_1_0= RULE_ID ) )
// InternalEMap.g:2887:1: (lv_name_1_0= RULE_ID )
{
// InternalEMap.g:2887:1: (lv_name_1_0= RULE_ID )
// InternalEMap.g:2888:3: lv_name_1_0= RULE_ID
{
lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_63); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_1_0, grammarAccess.getENamedQueryAccess().getNameIDTerminalRuleCall_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getENamedQueryRule());
}
setWithLastConsumed(
current,
"name",
lv_name_1_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
// InternalEMap.g:2904:2: (otherlv_2= '(' ( ( (lv_parameters_3_0= ruleEParameter ) ) (otherlv_4= ',' ( (lv_parameters_5_0= ruleEParameter ) ) )* )? otherlv_6= ')' )?
int alt75=2;
int LA75_0 = input.LA(1);
if ( (LA75_0==25) ) {
alt75=1;
}
switch (alt75) {
case 1 :
// InternalEMap.g:2904:4: otherlv_2= '(' ( ( (lv_parameters_3_0= ruleEParameter ) ) (otherlv_4= ',' ( (lv_parameters_5_0= ruleEParameter ) ) )* )? otherlv_6= ')'
{
otherlv_2=(Token)match(input,25,FOLLOW_64); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getENamedQueryAccess().getLeftParenthesisKeyword_2_0());
}
// InternalEMap.g:2908:1: ( ( (lv_parameters_3_0= ruleEParameter ) ) (otherlv_4= ',' ( (lv_parameters_5_0= ruleEParameter ) ) )* )?
int alt74=2;
int LA74_0 = input.LA(1);
if ( (LA74_0==RULE_ID||LA74_0==50||(LA74_0>=59 && LA74_0<=63)||LA74_0==65) ) {
alt74=1;
}
switch (alt74) {
case 1 :
// InternalEMap.g:2908:2: ( (lv_parameters_3_0= ruleEParameter ) ) (otherlv_4= ',' ( (lv_parameters_5_0= ruleEParameter ) ) )*
{
// InternalEMap.g:2908:2: ( (lv_parameters_3_0= ruleEParameter ) )
// InternalEMap.g:2909:1: (lv_parameters_3_0= ruleEParameter )
{
// InternalEMap.g:2909:1: (lv_parameters_3_0= ruleEParameter )
// InternalEMap.g:2910:3: lv_parameters_3_0= ruleEParameter
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getENamedQueryAccess().getParametersEParameterParserRuleCall_2_1_0_0());
}
pushFollow(FOLLOW_32);
lv_parameters_3_0=ruleEParameter();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getENamedQueryRule());
}
add(
current,
"parameters",
lv_parameters_3_0,
"at.bestsolution.persistence.emap.EMap.EParameter");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:2926:2: (otherlv_4= ',' ( (lv_parameters_5_0= ruleEParameter ) ) )*
loop73:
do {
int alt73=2;
int LA73_0 = input.LA(1);
if ( (LA73_0==15) ) {
alt73=1;
}
switch (alt73) {
case 1 :
// InternalEMap.g:2926:4: otherlv_4= ',' ( (lv_parameters_5_0= ruleEParameter ) )
{
otherlv_4=(Token)match(input,15,FOLLOW_65); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getENamedQueryAccess().getCommaKeyword_2_1_1_0());
}
// InternalEMap.g:2930:1: ( (lv_parameters_5_0= ruleEParameter ) )
// InternalEMap.g:2931:1: (lv_parameters_5_0= ruleEParameter )
{
// InternalEMap.g:2931:1: (lv_parameters_5_0= ruleEParameter )
// InternalEMap.g:2932:3: lv_parameters_5_0= ruleEParameter
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getENamedQueryAccess().getParametersEParameterParserRuleCall_2_1_1_1_0());
}
pushFollow(FOLLOW_32);
lv_parameters_5_0=ruleEParameter();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getENamedQueryRule());
}
add(
current,
"parameters",
lv_parameters_5_0,
"at.bestsolution.persistence.emap.EMap.EParameter");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop73;
}
} while (true);
}
break;
}
otherlv_6=(Token)match(input,26,FOLLOW_6); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_6, grammarAccess.getENamedQueryAccess().getRightParenthesisKeyword_2_2());
}
}
break;
}
otherlv_7=(Token)match(input,13,FOLLOW_33); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_7, grammarAccess.getENamedQueryAccess().getLeftCurlyBracketKeyword_3());
}
// InternalEMap.g:2956:1: ( (lv_queries_8_0= ruleEQuery ) )
// InternalEMap.g:2957:1: (lv_queries_8_0= ruleEQuery )
{
// InternalEMap.g:2957:1: (lv_queries_8_0= ruleEQuery )
// InternalEMap.g:2958:3: lv_queries_8_0= ruleEQuery
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getENamedQueryAccess().getQueriesEQueryParserRuleCall_4_0());
}
pushFollow(FOLLOW_9);
lv_queries_8_0=ruleEQuery();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getENamedQueryRule());
}
add(
current,
"queries",
lv_queries_8_0,
"at.bestsolution.persistence.emap.EMap.EQuery");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:2974:2: (otherlv_9= ',' ( (lv_queries_10_0= ruleEQuery ) ) )*
loop76:
do {
int alt76=2;
int LA76_0 = input.LA(1);
if ( (LA76_0==15) ) {
alt76=1;
}
switch (alt76) {
case 1 :
// InternalEMap.g:2974:4: otherlv_9= ',' ( (lv_queries_10_0= ruleEQuery ) )
{
otherlv_9=(Token)match(input,15,FOLLOW_33); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_9, grammarAccess.getENamedQueryAccess().getCommaKeyword_5_0());
}
// InternalEMap.g:2978:1: ( (lv_queries_10_0= ruleEQuery ) )
// InternalEMap.g:2979:1: (lv_queries_10_0= ruleEQuery )
{
// InternalEMap.g:2979:1: (lv_queries_10_0= ruleEQuery )
// InternalEMap.g:2980:3: lv_queries_10_0= ruleEQuery
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getENamedQueryAccess().getQueriesEQueryParserRuleCall_5_1_0());
}
pushFollow(FOLLOW_9);
lv_queries_10_0=ruleEQuery();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getENamedQueryRule());
}
add(
current,
"queries",
lv_queries_10_0,
"at.bestsolution.persistence.emap.EMap.EQuery");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop76;
}
} while (true);
otherlv_11=(Token)match(input,16,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_11, grammarAccess.getENamedQueryAccess().getRightCurlyBracketKeyword_6());
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleENamedQuery"
// $ANTLR start "entryRuleEPrimtiveType"
// InternalEMap.g:3008:1: entryRuleEPrimtiveType returns [String current=null] : iv_ruleEPrimtiveType= ruleEPrimtiveType EOF ;
public final String entryRuleEPrimtiveType() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleEPrimtiveType = null;
try {
// InternalEMap.g:3009:2: (iv_ruleEPrimtiveType= ruleEPrimtiveType EOF )
// InternalEMap.g:3010:2: iv_ruleEPrimtiveType= ruleEPrimtiveType EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEPrimtiveTypeRule());
}
pushFollow(FOLLOW_1);
iv_ruleEPrimtiveType=ruleEPrimtiveType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEPrimtiveType.getText();
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEPrimtiveType"
// $ANTLR start "ruleEPrimtiveType"
// InternalEMap.g:3017:1: ruleEPrimtiveType returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (kw= 'int' | kw= 'long' | kw= 'double' | kw= 'float' | kw= 'boolean' | this_FQN_5= ruleFQN ) ;
public final AntlrDatatypeRuleToken ruleEPrimtiveType() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
Token kw=null;
AntlrDatatypeRuleToken this_FQN_5 = null;
enterRule();
try {
// InternalEMap.g:3020:28: ( (kw= 'int' | kw= 'long' | kw= 'double' | kw= 'float' | kw= 'boolean' | this_FQN_5= ruleFQN ) )
// InternalEMap.g:3021:1: (kw= 'int' | kw= 'long' | kw= 'double' | kw= 'float' | kw= 'boolean' | this_FQN_5= ruleFQN )
{
// InternalEMap.g:3021:1: (kw= 'int' | kw= 'long' | kw= 'double' | kw= 'float' | kw= 'boolean' | this_FQN_5= ruleFQN )
int alt77=6;
switch ( input.LA(1) ) {
case 59:
{
alt77=1;
}
break;
case 60:
{
alt77=2;
}
break;
case 61:
{
alt77=3;
}
break;
case 62:
{
alt77=4;
}
break;
case 63:
{
alt77=5;
}
break;
case RULE_ID:
{
alt77=6;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 77, 0, input);
throw nvae;
}
switch (alt77) {
case 1 :
// InternalEMap.g:3022:2: kw= 'int'
{
kw=(Token)match(input,59,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEPrimtiveTypeAccess().getIntKeyword_0());
}
}
break;
case 2 :
// InternalEMap.g:3029:2: kw= 'long'
{
kw=(Token)match(input,60,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEPrimtiveTypeAccess().getLongKeyword_1());
}
}
break;
case 3 :
// InternalEMap.g:3036:2: kw= 'double'
{
kw=(Token)match(input,61,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEPrimtiveTypeAccess().getDoubleKeyword_2());
}
}
break;
case 4 :
// InternalEMap.g:3043:2: kw= 'float'
{
kw=(Token)match(input,62,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEPrimtiveTypeAccess().getFloatKeyword_3());
}
}
break;
case 5 :
// InternalEMap.g:3050:2: kw= 'boolean'
{
kw=(Token)match(input,63,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEPrimtiveTypeAccess().getBooleanKeyword_4());
}
}
break;
case 6 :
// InternalEMap.g:3057:5: this_FQN_5= ruleFQN
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEPrimtiveTypeAccess().getFQNParserRuleCall_5());
}
pushFollow(FOLLOW_2);
this_FQN_5=ruleFQN();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_FQN_5);
}
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEPrimtiveType"
// $ANTLR start "entryRuleEMapType"
// InternalEMap.g:3075:1: entryRuleEMapType returns [String current=null] : iv_ruleEMapType= ruleEMapType EOF ;
public final String entryRuleEMapType() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleEMapType = null;
try {
// InternalEMap.g:3076:2: (iv_ruleEMapType= ruleEMapType EOF )
// InternalEMap.g:3077:2: iv_ruleEMapType= ruleEMapType EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMapTypeRule());
}
pushFollow(FOLLOW_1);
iv_ruleEMapType=ruleEMapType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEMapType.getText();
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEMapType"
// $ANTLR start "ruleEMapType"
// InternalEMap.g:3084:1: ruleEMapType returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : kw= 'map' ;
public final AntlrDatatypeRuleToken ruleEMapType() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
Token kw=null;
enterRule();
try {
// InternalEMap.g:3087:28: (kw= 'map' )
// InternalEMap.g:3089:2: kw= 'map'
{
kw=(Token)match(input,64,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getEMapTypeAccess().getMapKeyword());
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEMapType"
// $ANTLR start "entryRuleENamedCustomQuery"
// InternalEMap.g:3102:1: entryRuleENamedCustomQuery returns [EObject current=null] : iv_ruleENamedCustomQuery= ruleENamedCustomQuery EOF ;
public final EObject entryRuleENamedCustomQuery() throws RecognitionException {
EObject current = null;
EObject iv_ruleENamedCustomQuery = null;
try {
// InternalEMap.g:3103:2: (iv_ruleENamedCustomQuery= ruleENamedCustomQuery EOF )
// InternalEMap.g:3104:2: iv_ruleENamedCustomQuery= ruleENamedCustomQuery EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getENamedCustomQueryRule());
}
pushFollow(FOLLOW_1);
iv_ruleENamedCustomQuery=ruleENamedCustomQuery();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleENamedCustomQuery;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleENamedCustomQuery"
// $ANTLR start "ruleENamedCustomQuery"
// InternalEMap.g:3111:1: ruleENamedCustomQuery returns [EObject current=null] : ( ( ( (lv_returnType_0_0= ruleEReturnType ) ) | ( ( (lv_list_1_0= '[' ) ) ( (lv_returnType_2_0= ruleEReturnType ) ) otherlv_3= ']' ) ) ( (lv_name_4_0= RULE_ID ) ) (otherlv_5= '(' ( ( (lv_parameters_6_0= ruleEParameter ) ) (otherlv_7= ',' ( (lv_parameters_8_0= ruleEParameter ) ) )* )? otherlv_9= ')' )? otherlv_10= '{' ( (lv_queries_11_0= ruleECustomQuery ) ) (otherlv_12= ',' ( (lv_queries_13_0= ruleECustomQuery ) ) )* otherlv_14= '}' ) ;
public final EObject ruleENamedCustomQuery() throws RecognitionException {
EObject current = null;
Token lv_list_1_0=null;
Token otherlv_3=null;
Token lv_name_4_0=null;
Token otherlv_5=null;
Token otherlv_7=null;
Token otherlv_9=null;
Token otherlv_10=null;
Token otherlv_12=null;
Token otherlv_14=null;
EObject lv_returnType_0_0 = null;
EObject lv_returnType_2_0 = null;
EObject lv_parameters_6_0 = null;
EObject lv_parameters_8_0 = null;
EObject lv_queries_11_0 = null;
EObject lv_queries_13_0 = null;
enterRule();
try {
// InternalEMap.g:3114:28: ( ( ( ( (lv_returnType_0_0= ruleEReturnType ) ) | ( ( (lv_list_1_0= '[' ) ) ( (lv_returnType_2_0= ruleEReturnType ) ) otherlv_3= ']' ) ) ( (lv_name_4_0= RULE_ID ) ) (otherlv_5= '(' ( ( (lv_parameters_6_0= ruleEParameter ) ) (otherlv_7= ',' ( (lv_parameters_8_0= ruleEParameter ) ) )* )? otherlv_9= ')' )? otherlv_10= '{' ( (lv_queries_11_0= ruleECustomQuery ) ) (otherlv_12= ',' ( (lv_queries_13_0= ruleECustomQuery ) ) )* otherlv_14= '}' ) )
// InternalEMap.g:3115:1: ( ( ( (lv_returnType_0_0= ruleEReturnType ) ) | ( ( (lv_list_1_0= '[' ) ) ( (lv_returnType_2_0= ruleEReturnType ) ) otherlv_3= ']' ) ) ( (lv_name_4_0= RULE_ID ) ) (otherlv_5= '(' ( ( (lv_parameters_6_0= ruleEParameter ) ) (otherlv_7= ',' ( (lv_parameters_8_0= ruleEParameter ) ) )* )? otherlv_9= ')' )? otherlv_10= '{' ( (lv_queries_11_0= ruleECustomQuery ) ) (otherlv_12= ',' ( (lv_queries_13_0= ruleECustomQuery ) ) )* otherlv_14= '}' )
{
// InternalEMap.g:3115:1: ( ( ( (lv_returnType_0_0= ruleEReturnType ) ) | ( ( (lv_list_1_0= '[' ) ) ( (lv_returnType_2_0= ruleEReturnType ) ) otherlv_3= ']' ) ) ( (lv_name_4_0= RULE_ID ) ) (otherlv_5= '(' ( ( (lv_parameters_6_0= ruleEParameter ) ) (otherlv_7= ',' ( (lv_parameters_8_0= ruleEParameter ) ) )* )? otherlv_9= ')' )? otherlv_10= '{' ( (lv_queries_11_0= ruleECustomQuery ) ) (otherlv_12= ',' ( (lv_queries_13_0= ruleECustomQuery ) ) )* otherlv_14= '}' )
// InternalEMap.g:3115:2: ( ( (lv_returnType_0_0= ruleEReturnType ) ) | ( ( (lv_list_1_0= '[' ) ) ( (lv_returnType_2_0= ruleEReturnType ) ) otherlv_3= ']' ) ) ( (lv_name_4_0= RULE_ID ) ) (otherlv_5= '(' ( ( (lv_parameters_6_0= ruleEParameter ) ) (otherlv_7= ',' ( (lv_parameters_8_0= ruleEParameter ) ) )* )? otherlv_9= ')' )? otherlv_10= '{' ( (lv_queries_11_0= ruleECustomQuery ) ) (otherlv_12= ',' ( (lv_queries_13_0= ruleECustomQuery ) ) )* otherlv_14= '}'
{
// InternalEMap.g:3115:2: ( ( (lv_returnType_0_0= ruleEReturnType ) ) | ( ( (lv_list_1_0= '[' ) ) ( (lv_returnType_2_0= ruleEReturnType ) ) otherlv_3= ']' ) )
int alt78=2;
int LA78_0 = input.LA(1);
if ( (LA78_0==RULE_ID||(LA78_0>=59 && LA78_0<=64)||LA78_0==67||LA78_0==73) ) {
alt78=1;
}
else if ( (LA78_0==65) ) {
alt78=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 78, 0, input);
throw nvae;
}
switch (alt78) {
case 1 :
// InternalEMap.g:3115:3: ( (lv_returnType_0_0= ruleEReturnType ) )
{
// InternalEMap.g:3115:3: ( (lv_returnType_0_0= ruleEReturnType ) )
// InternalEMap.g:3116:1: (lv_returnType_0_0= ruleEReturnType )
{
// InternalEMap.g:3116:1: (lv_returnType_0_0= ruleEReturnType )
// InternalEMap.g:3117:3: lv_returnType_0_0= ruleEReturnType
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getENamedCustomQueryAccess().getReturnTypeEReturnTypeParserRuleCall_0_0_0());
}
pushFollow(FOLLOW_4);
lv_returnType_0_0=ruleEReturnType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getENamedCustomQueryRule());
}
set(
current,
"returnType",
lv_returnType_0_0,
"at.bestsolution.persistence.emap.EMap.EReturnType");
afterParserOrEnumRuleCall();
}
}
}
}
break;
case 2 :
// InternalEMap.g:3134:6: ( ( (lv_list_1_0= '[' ) ) ( (lv_returnType_2_0= ruleEReturnType ) ) otherlv_3= ']' )
{
// InternalEMap.g:3134:6: ( ( (lv_list_1_0= '[' ) ) ( (lv_returnType_2_0= ruleEReturnType ) ) otherlv_3= ']' )
// InternalEMap.g:3134:7: ( (lv_list_1_0= '[' ) ) ( (lv_returnType_2_0= ruleEReturnType ) ) otherlv_3= ']'
{
// InternalEMap.g:3134:7: ( (lv_list_1_0= '[' ) )
// InternalEMap.g:3135:1: (lv_list_1_0= '[' )
{
// InternalEMap.g:3135:1: (lv_list_1_0= '[' )
// InternalEMap.g:3136:3: lv_list_1_0= '['
{
lv_list_1_0=(Token)match(input,65,FOLLOW_66); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_list_1_0, grammarAccess.getENamedCustomQueryAccess().getListLeftSquareBracketKeyword_0_1_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getENamedCustomQueryRule());
}
setWithLastConsumed(current, "list", true, "[");
}
}
}
// InternalEMap.g:3149:2: ( (lv_returnType_2_0= ruleEReturnType ) )
// InternalEMap.g:3150:1: (lv_returnType_2_0= ruleEReturnType )
{
// InternalEMap.g:3150:1: (lv_returnType_2_0= ruleEReturnType )
// InternalEMap.g:3151:3: lv_returnType_2_0= ruleEReturnType
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getENamedCustomQueryAccess().getReturnTypeEReturnTypeParserRuleCall_0_1_1_0());
}
pushFollow(FOLLOW_67);
lv_returnType_2_0=ruleEReturnType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getENamedCustomQueryRule());
}
set(
current,
"returnType",
lv_returnType_2_0,
"at.bestsolution.persistence.emap.EMap.EReturnType");
afterParserOrEnumRuleCall();
}
}
}
otherlv_3=(Token)match(input,66,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getENamedCustomQueryAccess().getRightSquareBracketKeyword_0_1_2());
}
}
}
break;
}
// InternalEMap.g:3171:3: ( (lv_name_4_0= RULE_ID ) )
// InternalEMap.g:3172:1: (lv_name_4_0= RULE_ID )
{
// InternalEMap.g:3172:1: (lv_name_4_0= RULE_ID )
// InternalEMap.g:3173:3: lv_name_4_0= RULE_ID
{
lv_name_4_0=(Token)match(input,RULE_ID,FOLLOW_63); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_4_0, grammarAccess.getENamedCustomQueryAccess().getNameIDTerminalRuleCall_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getENamedCustomQueryRule());
}
setWithLastConsumed(
current,
"name",
lv_name_4_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
// InternalEMap.g:3189:2: (otherlv_5= '(' ( ( (lv_parameters_6_0= ruleEParameter ) ) (otherlv_7= ',' ( (lv_parameters_8_0= ruleEParameter ) ) )* )? otherlv_9= ')' )?
int alt81=2;
int LA81_0 = input.LA(1);
if ( (LA81_0==25) ) {
alt81=1;
}
switch (alt81) {
case 1 :
// InternalEMap.g:3189:4: otherlv_5= '(' ( ( (lv_parameters_6_0= ruleEParameter ) ) (otherlv_7= ',' ( (lv_parameters_8_0= ruleEParameter ) ) )* )? otherlv_9= ')'
{
otherlv_5=(Token)match(input,25,FOLLOW_64); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_5, grammarAccess.getENamedCustomQueryAccess().getLeftParenthesisKeyword_2_0());
}
// InternalEMap.g:3193:1: ( ( (lv_parameters_6_0= ruleEParameter ) ) (otherlv_7= ',' ( (lv_parameters_8_0= ruleEParameter ) ) )* )?
int alt80=2;
int LA80_0 = input.LA(1);
if ( (LA80_0==RULE_ID||LA80_0==50||(LA80_0>=59 && LA80_0<=63)||LA80_0==65) ) {
alt80=1;
}
switch (alt80) {
case 1 :
// InternalEMap.g:3193:2: ( (lv_parameters_6_0= ruleEParameter ) ) (otherlv_7= ',' ( (lv_parameters_8_0= ruleEParameter ) ) )*
{
// InternalEMap.g:3193:2: ( (lv_parameters_6_0= ruleEParameter ) )
// InternalEMap.g:3194:1: (lv_parameters_6_0= ruleEParameter )
{
// InternalEMap.g:3194:1: (lv_parameters_6_0= ruleEParameter )
// InternalEMap.g:3195:3: lv_parameters_6_0= ruleEParameter
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getENamedCustomQueryAccess().getParametersEParameterParserRuleCall_2_1_0_0());
}
pushFollow(FOLLOW_32);
lv_parameters_6_0=ruleEParameter();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getENamedCustomQueryRule());
}
add(
current,
"parameters",
lv_parameters_6_0,
"at.bestsolution.persistence.emap.EMap.EParameter");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:3211:2: (otherlv_7= ',' ( (lv_parameters_8_0= ruleEParameter ) ) )*
loop79:
do {
int alt79=2;
int LA79_0 = input.LA(1);
if ( (LA79_0==15) ) {
alt79=1;
}
switch (alt79) {
case 1 :
// InternalEMap.g:3211:4: otherlv_7= ',' ( (lv_parameters_8_0= ruleEParameter ) )
{
otherlv_7=(Token)match(input,15,FOLLOW_65); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_7, grammarAccess.getENamedCustomQueryAccess().getCommaKeyword_2_1_1_0());
}
// InternalEMap.g:3215:1: ( (lv_parameters_8_0= ruleEParameter ) )
// InternalEMap.g:3216:1: (lv_parameters_8_0= ruleEParameter )
{
// InternalEMap.g:3216:1: (lv_parameters_8_0= ruleEParameter )
// InternalEMap.g:3217:3: lv_parameters_8_0= ruleEParameter
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getENamedCustomQueryAccess().getParametersEParameterParserRuleCall_2_1_1_1_0());
}
pushFollow(FOLLOW_32);
lv_parameters_8_0=ruleEParameter();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getENamedCustomQueryRule());
}
add(
current,
"parameters",
lv_parameters_8_0,
"at.bestsolution.persistence.emap.EMap.EParameter");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop79;
}
} while (true);
}
break;
}
otherlv_9=(Token)match(input,26,FOLLOW_6); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_9, grammarAccess.getENamedCustomQueryAccess().getRightParenthesisKeyword_2_2());
}
}
break;
}
otherlv_10=(Token)match(input,13,FOLLOW_33); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_10, grammarAccess.getENamedCustomQueryAccess().getLeftCurlyBracketKeyword_3());
}
// InternalEMap.g:3241:1: ( (lv_queries_11_0= ruleECustomQuery ) )
// InternalEMap.g:3242:1: (lv_queries_11_0= ruleECustomQuery )
{
// InternalEMap.g:3242:1: (lv_queries_11_0= ruleECustomQuery )
// InternalEMap.g:3243:3: lv_queries_11_0= ruleECustomQuery
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getENamedCustomQueryAccess().getQueriesECustomQueryParserRuleCall_4_0());
}
pushFollow(FOLLOW_9);
lv_queries_11_0=ruleECustomQuery();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getENamedCustomQueryRule());
}
add(
current,
"queries",
lv_queries_11_0,
"at.bestsolution.persistence.emap.EMap.ECustomQuery");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:3259:2: (otherlv_12= ',' ( (lv_queries_13_0= ruleECustomQuery ) ) )*
loop82:
do {
int alt82=2;
int LA82_0 = input.LA(1);
if ( (LA82_0==15) ) {
alt82=1;
}
switch (alt82) {
case 1 :
// InternalEMap.g:3259:4: otherlv_12= ',' ( (lv_queries_13_0= ruleECustomQuery ) )
{
otherlv_12=(Token)match(input,15,FOLLOW_33); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_12, grammarAccess.getENamedCustomQueryAccess().getCommaKeyword_5_0());
}
// InternalEMap.g:3263:1: ( (lv_queries_13_0= ruleECustomQuery ) )
// InternalEMap.g:3264:1: (lv_queries_13_0= ruleECustomQuery )
{
// InternalEMap.g:3264:1: (lv_queries_13_0= ruleECustomQuery )
// InternalEMap.g:3265:3: lv_queries_13_0= ruleECustomQuery
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getENamedCustomQueryAccess().getQueriesECustomQueryParserRuleCall_5_1_0());
}
pushFollow(FOLLOW_9);
lv_queries_13_0=ruleECustomQuery();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getENamedCustomQueryRule());
}
add(
current,
"queries",
lv_queries_13_0,
"at.bestsolution.persistence.emap.EMap.ECustomQuery");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop82;
}
} while (true);
otherlv_14=(Token)match(input,16,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_14, grammarAccess.getENamedCustomQueryAccess().getRightCurlyBracketKeyword_6());
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleENamedCustomQuery"
// $ANTLR start "entryRuleEReturnType"
// InternalEMap.g:3293:1: entryRuleEReturnType returns [EObject current=null] : iv_ruleEReturnType= ruleEReturnType EOF ;
public final EObject entryRuleEReturnType() throws RecognitionException {
EObject current = null;
EObject iv_ruleEReturnType = null;
try {
// InternalEMap.g:3294:2: (iv_ruleEReturnType= ruleEReturnType EOF )
// InternalEMap.g:3295:2: iv_ruleEReturnType= ruleEReturnType EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEReturnTypeRule());
}
pushFollow(FOLLOW_1);
iv_ruleEReturnType=ruleEReturnType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEReturnType;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEReturnType"
// $ANTLR start "ruleEReturnType"
// InternalEMap.g:3302:1: ruleEReturnType returns [EObject current=null] : (this_EPredefinedType_0= ruleEPredefinedType | this_ETypeDef_1= ruleETypeDef | this_EModelTypeDef_2= ruleEModelTypeDef ) ;
public final EObject ruleEReturnType() throws RecognitionException {
EObject current = null;
EObject this_EPredefinedType_0 = null;
EObject this_ETypeDef_1 = null;
EObject this_EModelTypeDef_2 = null;
enterRule();
try {
// InternalEMap.g:3305:28: ( (this_EPredefinedType_0= ruleEPredefinedType | this_ETypeDef_1= ruleETypeDef | this_EModelTypeDef_2= ruleEModelTypeDef ) )
// InternalEMap.g:3306:1: (this_EPredefinedType_0= ruleEPredefinedType | this_ETypeDef_1= ruleETypeDef | this_EModelTypeDef_2= ruleEModelTypeDef )
{
// InternalEMap.g:3306:1: (this_EPredefinedType_0= ruleEPredefinedType | this_ETypeDef_1= ruleETypeDef | this_EModelTypeDef_2= ruleEModelTypeDef )
int alt83=3;
switch ( input.LA(1) ) {
case RULE_ID:
case 59:
case 60:
case 61:
case 62:
case 63:
case 64:
{
alt83=1;
}
break;
case 67:
{
alt83=2;
}
break;
case 73:
{
alt83=3;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 83, 0, input);
throw nvae;
}
switch (alt83) {
case 1 :
// InternalEMap.g:3307:5: this_EPredefinedType_0= ruleEPredefinedType
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEReturnTypeAccess().getEPredefinedTypeParserRuleCall_0());
}
pushFollow(FOLLOW_2);
this_EPredefinedType_0=ruleEPredefinedType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_EPredefinedType_0;
afterParserOrEnumRuleCall();
}
}
break;
case 2 :
// InternalEMap.g:3317:5: this_ETypeDef_1= ruleETypeDef
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEReturnTypeAccess().getETypeDefParserRuleCall_1());
}
pushFollow(FOLLOW_2);
this_ETypeDef_1=ruleETypeDef();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_ETypeDef_1;
afterParserOrEnumRuleCall();
}
}
break;
case 3 :
// InternalEMap.g:3327:5: this_EModelTypeDef_2= ruleEModelTypeDef
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEReturnTypeAccess().getEModelTypeDefParserRuleCall_2());
}
pushFollow(FOLLOW_2);
this_EModelTypeDef_2=ruleEModelTypeDef();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_EModelTypeDef_2;
afterParserOrEnumRuleCall();
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEReturnType"
// $ANTLR start "entryRuleEPredefinedType"
// InternalEMap.g:3343:1: entryRuleEPredefinedType returns [EObject current=null] : iv_ruleEPredefinedType= ruleEPredefinedType EOF ;
public final EObject entryRuleEPredefinedType() throws RecognitionException {
EObject current = null;
EObject iv_ruleEPredefinedType = null;
try {
// InternalEMap.g:3344:2: (iv_ruleEPredefinedType= ruleEPredefinedType EOF )
// InternalEMap.g:3345:2: iv_ruleEPredefinedType= ruleEPredefinedType EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEPredefinedTypeRule());
}
pushFollow(FOLLOW_1);
iv_ruleEPredefinedType=ruleEPredefinedType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEPredefinedType;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEPredefinedType"
// $ANTLR start "ruleEPredefinedType"
// InternalEMap.g:3352:1: ruleEPredefinedType returns [EObject current=null] : ( ( (lv_ref_0_1= ruleEMapType | lv_ref_0_2= ruleEPrimtiveType ) ) ) ;
public final EObject ruleEPredefinedType() throws RecognitionException {
EObject current = null;
AntlrDatatypeRuleToken lv_ref_0_1 = null;
AntlrDatatypeRuleToken lv_ref_0_2 = null;
enterRule();
try {
// InternalEMap.g:3355:28: ( ( ( (lv_ref_0_1= ruleEMapType | lv_ref_0_2= ruleEPrimtiveType ) ) ) )
// InternalEMap.g:3356:1: ( ( (lv_ref_0_1= ruleEMapType | lv_ref_0_2= ruleEPrimtiveType ) ) )
{
// InternalEMap.g:3356:1: ( ( (lv_ref_0_1= ruleEMapType | lv_ref_0_2= ruleEPrimtiveType ) ) )
// InternalEMap.g:3357:1: ( (lv_ref_0_1= ruleEMapType | lv_ref_0_2= ruleEPrimtiveType ) )
{
// InternalEMap.g:3357:1: ( (lv_ref_0_1= ruleEMapType | lv_ref_0_2= ruleEPrimtiveType ) )
// InternalEMap.g:3358:1: (lv_ref_0_1= ruleEMapType | lv_ref_0_2= ruleEPrimtiveType )
{
// InternalEMap.g:3358:1: (lv_ref_0_1= ruleEMapType | lv_ref_0_2= ruleEPrimtiveType )
int alt84=2;
int LA84_0 = input.LA(1);
if ( (LA84_0==64) ) {
alt84=1;
}
else if ( (LA84_0==RULE_ID||(LA84_0>=59 && LA84_0<=63)) ) {
alt84=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 84, 0, input);
throw nvae;
}
switch (alt84) {
case 1 :
// InternalEMap.g:3359:3: lv_ref_0_1= ruleEMapType
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEPredefinedTypeAccess().getRefEMapTypeParserRuleCall_0_0());
}
pushFollow(FOLLOW_2);
lv_ref_0_1=ruleEMapType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEPredefinedTypeRule());
}
set(
current,
"ref",
lv_ref_0_1,
"at.bestsolution.persistence.emap.EMap.EMapType");
afterParserOrEnumRuleCall();
}
}
break;
case 2 :
// InternalEMap.g:3374:8: lv_ref_0_2= ruleEPrimtiveType
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEPredefinedTypeAccess().getRefEPrimtiveTypeParserRuleCall_0_1());
}
pushFollow(FOLLOW_2);
lv_ref_0_2=ruleEPrimtiveType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEPredefinedTypeRule());
}
set(
current,
"ref",
lv_ref_0_2,
"at.bestsolution.persistence.emap.EMap.EPrimtiveType");
afterParserOrEnumRuleCall();
}
}
break;
}
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEPredefinedType"
// $ANTLR start "entryRuleETypeDef"
// InternalEMap.g:3400:1: entryRuleETypeDef returns [EObject current=null] : iv_ruleETypeDef= ruleETypeDef EOF ;
public final EObject entryRuleETypeDef() throws RecognitionException {
EObject current = null;
EObject iv_ruleETypeDef = null;
try {
// InternalEMap.g:3401:2: (iv_ruleETypeDef= ruleETypeDef EOF )
// InternalEMap.g:3402:2: iv_ruleETypeDef= ruleETypeDef EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getETypeDefRule());
}
pushFollow(FOLLOW_1);
iv_ruleETypeDef=ruleETypeDef();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleETypeDef;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleETypeDef"
// $ANTLR start "ruleETypeDef"
// InternalEMap.g:3409:1: ruleETypeDef returns [EObject current=null] : (otherlv_0= 'typedef' ( (lv_name_1_0= ruleFQN ) ) otherlv_2= '(' ( (lv_types_3_0= ruleEValueTypeAttribute ) ) (otherlv_4= ',' ( (lv_types_5_0= ruleEValueTypeAttribute ) ) )* otherlv_6= ')' ) ;
public final EObject ruleETypeDef() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token otherlv_2=null;
Token otherlv_4=null;
Token otherlv_6=null;
AntlrDatatypeRuleToken lv_name_1_0 = null;
EObject lv_types_3_0 = null;
EObject lv_types_5_0 = null;
enterRule();
try {
// InternalEMap.g:3412:28: ( (otherlv_0= 'typedef' ( (lv_name_1_0= ruleFQN ) ) otherlv_2= '(' ( (lv_types_3_0= ruleEValueTypeAttribute ) ) (otherlv_4= ',' ( (lv_types_5_0= ruleEValueTypeAttribute ) ) )* otherlv_6= ')' ) )
// InternalEMap.g:3413:1: (otherlv_0= 'typedef' ( (lv_name_1_0= ruleFQN ) ) otherlv_2= '(' ( (lv_types_3_0= ruleEValueTypeAttribute ) ) (otherlv_4= ',' ( (lv_types_5_0= ruleEValueTypeAttribute ) ) )* otherlv_6= ')' )
{
// InternalEMap.g:3413:1: (otherlv_0= 'typedef' ( (lv_name_1_0= ruleFQN ) ) otherlv_2= '(' ( (lv_types_3_0= ruleEValueTypeAttribute ) ) (otherlv_4= ',' ( (lv_types_5_0= ruleEValueTypeAttribute ) ) )* otherlv_6= ')' )
// InternalEMap.g:3413:3: otherlv_0= 'typedef' ( (lv_name_1_0= ruleFQN ) ) otherlv_2= '(' ( (lv_types_3_0= ruleEValueTypeAttribute ) ) (otherlv_4= ',' ( (lv_types_5_0= ruleEValueTypeAttribute ) ) )* otherlv_6= ')'
{
otherlv_0=(Token)match(input,67,FOLLOW_68); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getETypeDefAccess().getTypedefKeyword_0());
}
// InternalEMap.g:3417:1: ( (lv_name_1_0= ruleFQN ) )
// InternalEMap.g:3418:1: (lv_name_1_0= ruleFQN )
{
// InternalEMap.g:3418:1: (lv_name_1_0= ruleFQN )
// InternalEMap.g:3419:3: lv_name_1_0= ruleFQN
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getETypeDefAccess().getNameFQNParserRuleCall_1_0());
}
pushFollow(FOLLOW_31);
lv_name_1_0=ruleFQN();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getETypeDefRule());
}
set(
current,
"name",
lv_name_1_0,
"at.bestsolution.persistence.emap.EMap.FQN");
afterParserOrEnumRuleCall();
}
}
}
otherlv_2=(Token)match(input,25,FOLLOW_68); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getETypeDefAccess().getLeftParenthesisKeyword_2());
}
// InternalEMap.g:3439:1: ( (lv_types_3_0= ruleEValueTypeAttribute ) )
// InternalEMap.g:3440:1: (lv_types_3_0= ruleEValueTypeAttribute )
{
// InternalEMap.g:3440:1: (lv_types_3_0= ruleEValueTypeAttribute )
// InternalEMap.g:3441:3: lv_types_3_0= ruleEValueTypeAttribute
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getETypeDefAccess().getTypesEValueTypeAttributeParserRuleCall_3_0());
}
pushFollow(FOLLOW_32);
lv_types_3_0=ruleEValueTypeAttribute();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getETypeDefRule());
}
add(
current,
"types",
lv_types_3_0,
"at.bestsolution.persistence.emap.EMap.EValueTypeAttribute");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:3457:2: (otherlv_4= ',' ( (lv_types_5_0= ruleEValueTypeAttribute ) ) )*
loop85:
do {
int alt85=2;
int LA85_0 = input.LA(1);
if ( (LA85_0==15) ) {
alt85=1;
}
switch (alt85) {
case 1 :
// InternalEMap.g:3457:4: otherlv_4= ',' ( (lv_types_5_0= ruleEValueTypeAttribute ) )
{
otherlv_4=(Token)match(input,15,FOLLOW_68); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getETypeDefAccess().getCommaKeyword_4_0());
}
// InternalEMap.g:3461:1: ( (lv_types_5_0= ruleEValueTypeAttribute ) )
// InternalEMap.g:3462:1: (lv_types_5_0= ruleEValueTypeAttribute )
{
// InternalEMap.g:3462:1: (lv_types_5_0= ruleEValueTypeAttribute )
// InternalEMap.g:3463:3: lv_types_5_0= ruleEValueTypeAttribute
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getETypeDefAccess().getTypesEValueTypeAttributeParserRuleCall_4_1_0());
}
pushFollow(FOLLOW_32);
lv_types_5_0=ruleEValueTypeAttribute();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getETypeDefRule());
}
add(
current,
"types",
lv_types_5_0,
"at.bestsolution.persistence.emap.EMap.EValueTypeAttribute");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop85;
}
} while (true);
otherlv_6=(Token)match(input,26,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_6, grammarAccess.getETypeDefAccess().getRightParenthesisKeyword_5());
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleETypeDef"
// $ANTLR start "entryRuleEModelTypeDef"
// InternalEMap.g:3491:1: entryRuleEModelTypeDef returns [EObject current=null] : iv_ruleEModelTypeDef= ruleEModelTypeDef EOF ;
public final EObject entryRuleEModelTypeDef() throws RecognitionException {
EObject current = null;
EObject iv_ruleEModelTypeDef = null;
try {
// InternalEMap.g:3492:2: (iv_ruleEModelTypeDef= ruleEModelTypeDef EOF )
// InternalEMap.g:3493:2: iv_ruleEModelTypeDef= ruleEModelTypeDef EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEModelTypeDefRule());
}
pushFollow(FOLLOW_1);
iv_ruleEModelTypeDef=ruleEModelTypeDef();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEModelTypeDef;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEModelTypeDef"
// $ANTLR start "ruleEModelTypeDef"
// InternalEMap.g:3500:1: ruleEModelTypeDef returns [EObject current=null] : ( ( (lv_eclassDef_0_0= ruleEType ) ) otherlv_1= '(' ( (lv_attributes_2_0= ruleEModelTypeAttribute ) ) (otherlv_3= ',' ( (lv_attributes_4_0= ruleEModelTypeAttribute ) ) )* otherlv_5= ')' ) ;
public final EObject ruleEModelTypeDef() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
Token otherlv_3=null;
Token otherlv_5=null;
EObject lv_eclassDef_0_0 = null;
EObject lv_attributes_2_0 = null;
EObject lv_attributes_4_0 = null;
enterRule();
try {
// InternalEMap.g:3503:28: ( ( ( (lv_eclassDef_0_0= ruleEType ) ) otherlv_1= '(' ( (lv_attributes_2_0= ruleEModelTypeAttribute ) ) (otherlv_3= ',' ( (lv_attributes_4_0= ruleEModelTypeAttribute ) ) )* otherlv_5= ')' ) )
// InternalEMap.g:3504:1: ( ( (lv_eclassDef_0_0= ruleEType ) ) otherlv_1= '(' ( (lv_attributes_2_0= ruleEModelTypeAttribute ) ) (otherlv_3= ',' ( (lv_attributes_4_0= ruleEModelTypeAttribute ) ) )* otherlv_5= ')' )
{
// InternalEMap.g:3504:1: ( ( (lv_eclassDef_0_0= ruleEType ) ) otherlv_1= '(' ( (lv_attributes_2_0= ruleEModelTypeAttribute ) ) (otherlv_3= ',' ( (lv_attributes_4_0= ruleEModelTypeAttribute ) ) )* otherlv_5= ')' )
// InternalEMap.g:3504:2: ( (lv_eclassDef_0_0= ruleEType ) ) otherlv_1= '(' ( (lv_attributes_2_0= ruleEModelTypeAttribute ) ) (otherlv_3= ',' ( (lv_attributes_4_0= ruleEModelTypeAttribute ) ) )* otherlv_5= ')'
{
// InternalEMap.g:3504:2: ( (lv_eclassDef_0_0= ruleEType ) )
// InternalEMap.g:3505:1: (lv_eclassDef_0_0= ruleEType )
{
// InternalEMap.g:3505:1: (lv_eclassDef_0_0= ruleEType )
// InternalEMap.g:3506:3: lv_eclassDef_0_0= ruleEType
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEModelTypeDefAccess().getEclassDefETypeParserRuleCall_0_0());
}
pushFollow(FOLLOW_31);
lv_eclassDef_0_0=ruleEType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEModelTypeDefRule());
}
set(
current,
"eclassDef",
lv_eclassDef_0_0,
"at.bestsolution.persistence.emap.EMap.EType");
afterParserOrEnumRuleCall();
}
}
}
otherlv_1=(Token)match(input,25,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getEModelTypeDefAccess().getLeftParenthesisKeyword_1());
}
// InternalEMap.g:3526:1: ( (lv_attributes_2_0= ruleEModelTypeAttribute ) )
// InternalEMap.g:3527:1: (lv_attributes_2_0= ruleEModelTypeAttribute )
{
// InternalEMap.g:3527:1: (lv_attributes_2_0= ruleEModelTypeAttribute )
// InternalEMap.g:3528:3: lv_attributes_2_0= ruleEModelTypeAttribute
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEModelTypeDefAccess().getAttributesEModelTypeAttributeParserRuleCall_2_0());
}
pushFollow(FOLLOW_32);
lv_attributes_2_0=ruleEModelTypeAttribute();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEModelTypeDefRule());
}
add(
current,
"attributes",
lv_attributes_2_0,
"at.bestsolution.persistence.emap.EMap.EModelTypeAttribute");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:3544:2: (otherlv_3= ',' ( (lv_attributes_4_0= ruleEModelTypeAttribute ) ) )*
loop86:
do {
int alt86=2;
int LA86_0 = input.LA(1);
if ( (LA86_0==15) ) {
alt86=1;
}
switch (alt86) {
case 1 :
// InternalEMap.g:3544:4: otherlv_3= ',' ( (lv_attributes_4_0= ruleEModelTypeAttribute ) )
{
otherlv_3=(Token)match(input,15,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getEModelTypeDefAccess().getCommaKeyword_3_0());
}
// InternalEMap.g:3548:1: ( (lv_attributes_4_0= ruleEModelTypeAttribute ) )
// InternalEMap.g:3549:1: (lv_attributes_4_0= ruleEModelTypeAttribute )
{
// InternalEMap.g:3549:1: (lv_attributes_4_0= ruleEModelTypeAttribute )
// InternalEMap.g:3550:3: lv_attributes_4_0= ruleEModelTypeAttribute
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEModelTypeDefAccess().getAttributesEModelTypeAttributeParserRuleCall_3_1_0());
}
pushFollow(FOLLOW_32);
lv_attributes_4_0=ruleEModelTypeAttribute();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEModelTypeDefRule());
}
add(
current,
"attributes",
lv_attributes_4_0,
"at.bestsolution.persistence.emap.EMap.EModelTypeAttribute");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop86;
}
} while (true);
otherlv_5=(Token)match(input,26,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_5, grammarAccess.getEModelTypeDefAccess().getRightParenthesisKeyword_4());
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEModelTypeDef"
// $ANTLR start "entryRuleEModelTypeAttribute"
// InternalEMap.g:3578:1: entryRuleEModelTypeAttribute returns [EObject current=null] : iv_ruleEModelTypeAttribute= ruleEModelTypeAttribute EOF ;
public final EObject entryRuleEModelTypeAttribute() throws RecognitionException {
EObject current = null;
EObject iv_ruleEModelTypeAttribute = null;
try {
// InternalEMap.g:3579:2: (iv_ruleEModelTypeAttribute= ruleEModelTypeAttribute EOF )
// InternalEMap.g:3580:2: iv_ruleEModelTypeAttribute= ruleEModelTypeAttribute EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEModelTypeAttributeRule());
}
pushFollow(FOLLOW_1);
iv_ruleEModelTypeAttribute=ruleEModelTypeAttribute();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEModelTypeAttribute;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEModelTypeAttribute"
// $ANTLR start "ruleEModelTypeAttribute"
// InternalEMap.g:3587:1: ruleEModelTypeAttribute returns [EObject current=null] : ( ( (lv_name_0_0= RULE_ID ) ) (otherlv_1= 'resolve' ( ( ruleQualifiedName ) ) (otherlv_3= '(' ( ( (lv_parameters_4_0= RULE_ID ) ) (otherlv_5= ',' ( (lv_parameters_6_0= RULE_ID ) ) )* )? otherlv_7= ')' )? ( ( (lv_cached_8_0= 'cached' ) ) ( (lv_cacheName_9_0= RULE_ID ) )? )? )? ) ;
public final EObject ruleEModelTypeAttribute() throws RecognitionException {
EObject current = null;
Token lv_name_0_0=null;
Token otherlv_1=null;
Token otherlv_3=null;
Token lv_parameters_4_0=null;
Token otherlv_5=null;
Token lv_parameters_6_0=null;
Token otherlv_7=null;
Token lv_cached_8_0=null;
Token lv_cacheName_9_0=null;
enterRule();
try {
// InternalEMap.g:3590:28: ( ( ( (lv_name_0_0= RULE_ID ) ) (otherlv_1= 'resolve' ( ( ruleQualifiedName ) ) (otherlv_3= '(' ( ( (lv_parameters_4_0= RULE_ID ) ) (otherlv_5= ',' ( (lv_parameters_6_0= RULE_ID ) ) )* )? otherlv_7= ')' )? ( ( (lv_cached_8_0= 'cached' ) ) ( (lv_cacheName_9_0= RULE_ID ) )? )? )? ) )
// InternalEMap.g:3591:1: ( ( (lv_name_0_0= RULE_ID ) ) (otherlv_1= 'resolve' ( ( ruleQualifiedName ) ) (otherlv_3= '(' ( ( (lv_parameters_4_0= RULE_ID ) ) (otherlv_5= ',' ( (lv_parameters_6_0= RULE_ID ) ) )* )? otherlv_7= ')' )? ( ( (lv_cached_8_0= 'cached' ) ) ( (lv_cacheName_9_0= RULE_ID ) )? )? )? )
{
// InternalEMap.g:3591:1: ( ( (lv_name_0_0= RULE_ID ) ) (otherlv_1= 'resolve' ( ( ruleQualifiedName ) ) (otherlv_3= '(' ( ( (lv_parameters_4_0= RULE_ID ) ) (otherlv_5= ',' ( (lv_parameters_6_0= RULE_ID ) ) )* )? otherlv_7= ')' )? ( ( (lv_cached_8_0= 'cached' ) ) ( (lv_cacheName_9_0= RULE_ID ) )? )? )? )
// InternalEMap.g:3591:2: ( (lv_name_0_0= RULE_ID ) ) (otherlv_1= 'resolve' ( ( ruleQualifiedName ) ) (otherlv_3= '(' ( ( (lv_parameters_4_0= RULE_ID ) ) (otherlv_5= ',' ( (lv_parameters_6_0= RULE_ID ) ) )* )? otherlv_7= ')' )? ( ( (lv_cached_8_0= 'cached' ) ) ( (lv_cacheName_9_0= RULE_ID ) )? )? )?
{
// InternalEMap.g:3591:2: ( (lv_name_0_0= RULE_ID ) )
// InternalEMap.g:3592:1: (lv_name_0_0= RULE_ID )
{
// InternalEMap.g:3592:1: (lv_name_0_0= RULE_ID )
// InternalEMap.g:3593:3: lv_name_0_0= RULE_ID
{
lv_name_0_0=(Token)match(input,RULE_ID,FOLLOW_69); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_0_0, grammarAccess.getEModelTypeAttributeAccess().getNameIDTerminalRuleCall_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEModelTypeAttributeRule());
}
setWithLastConsumed(
current,
"name",
lv_name_0_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
// InternalEMap.g:3609:2: (otherlv_1= 'resolve' ( ( ruleQualifiedName ) ) (otherlv_3= '(' ( ( (lv_parameters_4_0= RULE_ID ) ) (otherlv_5= ',' ( (lv_parameters_6_0= RULE_ID ) ) )* )? otherlv_7= ')' )? ( ( (lv_cached_8_0= 'cached' ) ) ( (lv_cacheName_9_0= RULE_ID ) )? )? )?
int alt92=2;
int LA92_0 = input.LA(1);
if ( (LA92_0==54) ) {
alt92=1;
}
switch (alt92) {
case 1 :
// InternalEMap.g:3609:4: otherlv_1= 'resolve' ( ( ruleQualifiedName ) ) (otherlv_3= '(' ( ( (lv_parameters_4_0= RULE_ID ) ) (otherlv_5= ',' ( (lv_parameters_6_0= RULE_ID ) ) )* )? otherlv_7= ')' )? ( ( (lv_cached_8_0= 'cached' ) ) ( (lv_cacheName_9_0= RULE_ID ) )? )?
{
otherlv_1=(Token)match(input,54,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getEModelTypeAttributeAccess().getResolveKeyword_1_0());
}
// InternalEMap.g:3613:1: ( ( ruleQualifiedName ) )
// InternalEMap.g:3614:1: ( ruleQualifiedName )
{
// InternalEMap.g:3614:1: ( ruleQualifiedName )
// InternalEMap.g:3615:3: ruleQualifiedName
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEModelTypeAttributeRule());
}
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEModelTypeAttributeAccess().getQueryENamedCustomQueryCrossReference_1_1_0());
}
pushFollow(FOLLOW_70);
ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:3628:2: (otherlv_3= '(' ( ( (lv_parameters_4_0= RULE_ID ) ) (otherlv_5= ',' ( (lv_parameters_6_0= RULE_ID ) ) )* )? otherlv_7= ')' )?
int alt89=2;
int LA89_0 = input.LA(1);
if ( (LA89_0==25) ) {
alt89=1;
}
switch (alt89) {
case 1 :
// InternalEMap.g:3628:4: otherlv_3= '(' ( ( (lv_parameters_4_0= RULE_ID ) ) (otherlv_5= ',' ( (lv_parameters_6_0= RULE_ID ) ) )* )? otherlv_7= ')'
{
otherlv_3=(Token)match(input,25,FOLLOW_71); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getEModelTypeAttributeAccess().getLeftParenthesisKeyword_1_2_0());
}
// InternalEMap.g:3632:1: ( ( (lv_parameters_4_0= RULE_ID ) ) (otherlv_5= ',' ( (lv_parameters_6_0= RULE_ID ) ) )* )?
int alt88=2;
int LA88_0 = input.LA(1);
if ( (LA88_0==RULE_ID) ) {
alt88=1;
}
switch (alt88) {
case 1 :
// InternalEMap.g:3632:2: ( (lv_parameters_4_0= RULE_ID ) ) (otherlv_5= ',' ( (lv_parameters_6_0= RULE_ID ) ) )*
{
// InternalEMap.g:3632:2: ( (lv_parameters_4_0= RULE_ID ) )
// InternalEMap.g:3633:1: (lv_parameters_4_0= RULE_ID )
{
// InternalEMap.g:3633:1: (lv_parameters_4_0= RULE_ID )
// InternalEMap.g:3634:3: lv_parameters_4_0= RULE_ID
{
lv_parameters_4_0=(Token)match(input,RULE_ID,FOLLOW_32); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_parameters_4_0, grammarAccess.getEModelTypeAttributeAccess().getParametersIDTerminalRuleCall_1_2_1_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEModelTypeAttributeRule());
}
addWithLastConsumed(
current,
"parameters",
lv_parameters_4_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
// InternalEMap.g:3650:2: (otherlv_5= ',' ( (lv_parameters_6_0= RULE_ID ) ) )*
loop87:
do {
int alt87=2;
int LA87_0 = input.LA(1);
if ( (LA87_0==15) ) {
alt87=1;
}
switch (alt87) {
case 1 :
// InternalEMap.g:3650:4: otherlv_5= ',' ( (lv_parameters_6_0= RULE_ID ) )
{
otherlv_5=(Token)match(input,15,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_5, grammarAccess.getEModelTypeAttributeAccess().getCommaKeyword_1_2_1_1_0());
}
// InternalEMap.g:3654:1: ( (lv_parameters_6_0= RULE_ID ) )
// InternalEMap.g:3655:1: (lv_parameters_6_0= RULE_ID )
{
// InternalEMap.g:3655:1: (lv_parameters_6_0= RULE_ID )
// InternalEMap.g:3656:3: lv_parameters_6_0= RULE_ID
{
lv_parameters_6_0=(Token)match(input,RULE_ID,FOLLOW_32); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_parameters_6_0, grammarAccess.getEModelTypeAttributeAccess().getParametersIDTerminalRuleCall_1_2_1_1_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEModelTypeAttributeRule());
}
addWithLastConsumed(
current,
"parameters",
lv_parameters_6_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
}
break;
default :
break loop87;
}
} while (true);
}
break;
}
otherlv_7=(Token)match(input,26,FOLLOW_72); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_7, grammarAccess.getEModelTypeAttributeAccess().getRightParenthesisKeyword_1_2_2());
}
}
break;
}
// InternalEMap.g:3676:3: ( ( (lv_cached_8_0= 'cached' ) ) ( (lv_cacheName_9_0= RULE_ID ) )? )?
int alt91=2;
int LA91_0 = input.LA(1);
if ( (LA91_0==68) ) {
alt91=1;
}
switch (alt91) {
case 1 :
// InternalEMap.g:3676:4: ( (lv_cached_8_0= 'cached' ) ) ( (lv_cacheName_9_0= RULE_ID ) )?
{
// InternalEMap.g:3676:4: ( (lv_cached_8_0= 'cached' ) )
// InternalEMap.g:3677:1: (lv_cached_8_0= 'cached' )
{
// InternalEMap.g:3677:1: (lv_cached_8_0= 'cached' )
// InternalEMap.g:3678:3: lv_cached_8_0= 'cached'
{
lv_cached_8_0=(Token)match(input,68,FOLLOW_73); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_cached_8_0, grammarAccess.getEModelTypeAttributeAccess().getCachedCachedKeyword_1_3_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEModelTypeAttributeRule());
}
setWithLastConsumed(current, "cached", true, "cached");
}
}
}
// InternalEMap.g:3691:2: ( (lv_cacheName_9_0= RULE_ID ) )?
int alt90=2;
int LA90_0 = input.LA(1);
if ( (LA90_0==RULE_ID) ) {
alt90=1;
}
switch (alt90) {
case 1 :
// InternalEMap.g:3692:1: (lv_cacheName_9_0= RULE_ID )
{
// InternalEMap.g:3692:1: (lv_cacheName_9_0= RULE_ID )
// InternalEMap.g:3693:3: lv_cacheName_9_0= RULE_ID
{
lv_cacheName_9_0=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_cacheName_9_0, grammarAccess.getEModelTypeAttributeAccess().getCacheNameIDTerminalRuleCall_1_3_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEModelTypeAttributeRule());
}
setWithLastConsumed(
current,
"cacheName",
lv_cacheName_9_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
break;
}
}
break;
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEModelTypeAttribute"
// $ANTLR start "entryRuleEValueTypeAttribute"
// InternalEMap.g:3717:1: entryRuleEValueTypeAttribute returns [EObject current=null] : iv_ruleEValueTypeAttribute= ruleEValueTypeAttribute EOF ;
public final EObject entryRuleEValueTypeAttribute() throws RecognitionException {
EObject current = null;
EObject iv_ruleEValueTypeAttribute = null;
try {
// InternalEMap.g:3718:2: (iv_ruleEValueTypeAttribute= ruleEValueTypeAttribute EOF )
// InternalEMap.g:3719:2: iv_ruleEValueTypeAttribute= ruleEValueTypeAttribute EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEValueTypeAttributeRule());
}
pushFollow(FOLLOW_1);
iv_ruleEValueTypeAttribute=ruleEValueTypeAttribute();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEValueTypeAttribute;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEValueTypeAttribute"
// $ANTLR start "ruleEValueTypeAttribute"
// InternalEMap.g:3726:1: ruleEValueTypeAttribute returns [EObject current=null] : ( ( (lv_type_0_0= ruleEPrimtiveType ) ) ( (lv_name_1_0= RULE_ID ) ) ) ;
public final EObject ruleEValueTypeAttribute() throws RecognitionException {
EObject current = null;
Token lv_name_1_0=null;
AntlrDatatypeRuleToken lv_type_0_0 = null;
enterRule();
try {
// InternalEMap.g:3729:28: ( ( ( (lv_type_0_0= ruleEPrimtiveType ) ) ( (lv_name_1_0= RULE_ID ) ) ) )
// InternalEMap.g:3730:1: ( ( (lv_type_0_0= ruleEPrimtiveType ) ) ( (lv_name_1_0= RULE_ID ) ) )
{
// InternalEMap.g:3730:1: ( ( (lv_type_0_0= ruleEPrimtiveType ) ) ( (lv_name_1_0= RULE_ID ) ) )
// InternalEMap.g:3730:2: ( (lv_type_0_0= ruleEPrimtiveType ) ) ( (lv_name_1_0= RULE_ID ) )
{
// InternalEMap.g:3730:2: ( (lv_type_0_0= ruleEPrimtiveType ) )
// InternalEMap.g:3731:1: (lv_type_0_0= ruleEPrimtiveType )
{
// InternalEMap.g:3731:1: (lv_type_0_0= ruleEPrimtiveType )
// InternalEMap.g:3732:3: lv_type_0_0= ruleEPrimtiveType
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEValueTypeAttributeAccess().getTypeEPrimtiveTypeParserRuleCall_0_0());
}
pushFollow(FOLLOW_4);
lv_type_0_0=ruleEPrimtiveType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEValueTypeAttributeRule());
}
set(
current,
"type",
lv_type_0_0,
"at.bestsolution.persistence.emap.EMap.EPrimtiveType");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:3748:2: ( (lv_name_1_0= RULE_ID ) )
// InternalEMap.g:3749:1: (lv_name_1_0= RULE_ID )
{
// InternalEMap.g:3749:1: (lv_name_1_0= RULE_ID )
// InternalEMap.g:3750:3: lv_name_1_0= RULE_ID
{
lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_1_0, grammarAccess.getEValueTypeAttributeAccess().getNameIDTerminalRuleCall_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEValueTypeAttributeRule());
}
setWithLastConsumed(
current,
"name",
lv_name_1_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEValueTypeAttribute"
// $ANTLR start "entryRuleEParameter"
// InternalEMap.g:3774:1: entryRuleEParameter returns [EObject current=null] : iv_ruleEParameter= ruleEParameter EOF ;
public final EObject entryRuleEParameter() throws RecognitionException {
EObject current = null;
EObject iv_ruleEParameter = null;
try {
// InternalEMap.g:3775:2: (iv_ruleEParameter= ruleEParameter EOF )
// InternalEMap.g:3776:2: iv_ruleEParameter= ruleEParameter EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEParameterRule());
}
pushFollow(FOLLOW_1);
iv_ruleEParameter=ruleEParameter();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEParameter;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEParameter"
// $ANTLR start "ruleEParameter"
// InternalEMap.g:3783:1: ruleEParameter returns [EObject current=null] : ( ( (lv_id_0_0= 'primarykey' ) )? ( ( (lv_type_1_0= ruleEPrimtiveType ) ) | ( ( (lv_list_2_0= '[' ) ) ( (lv_type_3_0= ruleEPrimtiveType ) ) otherlv_4= ']' ) ) ( (lv_name_5_0= RULE_ID ) ) ) ;
public final EObject ruleEParameter() throws RecognitionException {
EObject current = null;
Token lv_id_0_0=null;
Token lv_list_2_0=null;
Token otherlv_4=null;
Token lv_name_5_0=null;
AntlrDatatypeRuleToken lv_type_1_0 = null;
AntlrDatatypeRuleToken lv_type_3_0 = null;
enterRule();
try {
// InternalEMap.g:3786:28: ( ( ( (lv_id_0_0= 'primarykey' ) )? ( ( (lv_type_1_0= ruleEPrimtiveType ) ) | ( ( (lv_list_2_0= '[' ) ) ( (lv_type_3_0= ruleEPrimtiveType ) ) otherlv_4= ']' ) ) ( (lv_name_5_0= RULE_ID ) ) ) )
// InternalEMap.g:3787:1: ( ( (lv_id_0_0= 'primarykey' ) )? ( ( (lv_type_1_0= ruleEPrimtiveType ) ) | ( ( (lv_list_2_0= '[' ) ) ( (lv_type_3_0= ruleEPrimtiveType ) ) otherlv_4= ']' ) ) ( (lv_name_5_0= RULE_ID ) ) )
{
// InternalEMap.g:3787:1: ( ( (lv_id_0_0= 'primarykey' ) )? ( ( (lv_type_1_0= ruleEPrimtiveType ) ) | ( ( (lv_list_2_0= '[' ) ) ( (lv_type_3_0= ruleEPrimtiveType ) ) otherlv_4= ']' ) ) ( (lv_name_5_0= RULE_ID ) ) )
// InternalEMap.g:3787:2: ( (lv_id_0_0= 'primarykey' ) )? ( ( (lv_type_1_0= ruleEPrimtiveType ) ) | ( ( (lv_list_2_0= '[' ) ) ( (lv_type_3_0= ruleEPrimtiveType ) ) otherlv_4= ']' ) ) ( (lv_name_5_0= RULE_ID ) )
{
// InternalEMap.g:3787:2: ( (lv_id_0_0= 'primarykey' ) )?
int alt93=2;
int LA93_0 = input.LA(1);
if ( (LA93_0==50) ) {
alt93=1;
}
switch (alt93) {
case 1 :
// InternalEMap.g:3788:1: (lv_id_0_0= 'primarykey' )
{
// InternalEMap.g:3788:1: (lv_id_0_0= 'primarykey' )
// InternalEMap.g:3789:3: lv_id_0_0= 'primarykey'
{
lv_id_0_0=(Token)match(input,50,FOLLOW_74); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_id_0_0, grammarAccess.getEParameterAccess().getIdPrimarykeyKeyword_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEParameterRule());
}
setWithLastConsumed(current, "id", true, "primarykey");
}
}
}
break;
}
// InternalEMap.g:3802:3: ( ( (lv_type_1_0= ruleEPrimtiveType ) ) | ( ( (lv_list_2_0= '[' ) ) ( (lv_type_3_0= ruleEPrimtiveType ) ) otherlv_4= ']' ) )
int alt94=2;
int LA94_0 = input.LA(1);
if ( (LA94_0==RULE_ID||(LA94_0>=59 && LA94_0<=63)) ) {
alt94=1;
}
else if ( (LA94_0==65) ) {
alt94=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 94, 0, input);
throw nvae;
}
switch (alt94) {
case 1 :
// InternalEMap.g:3802:4: ( (lv_type_1_0= ruleEPrimtiveType ) )
{
// InternalEMap.g:3802:4: ( (lv_type_1_0= ruleEPrimtiveType ) )
// InternalEMap.g:3803:1: (lv_type_1_0= ruleEPrimtiveType )
{
// InternalEMap.g:3803:1: (lv_type_1_0= ruleEPrimtiveType )
// InternalEMap.g:3804:3: lv_type_1_0= ruleEPrimtiveType
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEParameterAccess().getTypeEPrimtiveTypeParserRuleCall_1_0_0());
}
pushFollow(FOLLOW_4);
lv_type_1_0=ruleEPrimtiveType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEParameterRule());
}
set(
current,
"type",
lv_type_1_0,
"at.bestsolution.persistence.emap.EMap.EPrimtiveType");
afterParserOrEnumRuleCall();
}
}
}
}
break;
case 2 :
// InternalEMap.g:3821:6: ( ( (lv_list_2_0= '[' ) ) ( (lv_type_3_0= ruleEPrimtiveType ) ) otherlv_4= ']' )
{
// InternalEMap.g:3821:6: ( ( (lv_list_2_0= '[' ) ) ( (lv_type_3_0= ruleEPrimtiveType ) ) otherlv_4= ']' )
// InternalEMap.g:3821:7: ( (lv_list_2_0= '[' ) ) ( (lv_type_3_0= ruleEPrimtiveType ) ) otherlv_4= ']'
{
// InternalEMap.g:3821:7: ( (lv_list_2_0= '[' ) )
// InternalEMap.g:3822:1: (lv_list_2_0= '[' )
{
// InternalEMap.g:3822:1: (lv_list_2_0= '[' )
// InternalEMap.g:3823:3: lv_list_2_0= '['
{
lv_list_2_0=(Token)match(input,65,FOLLOW_68); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_list_2_0, grammarAccess.getEParameterAccess().getListLeftSquareBracketKeyword_1_1_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEParameterRule());
}
setWithLastConsumed(current, "list", true, "[");
}
}
}
// InternalEMap.g:3836:2: ( (lv_type_3_0= ruleEPrimtiveType ) )
// InternalEMap.g:3837:1: (lv_type_3_0= ruleEPrimtiveType )
{
// InternalEMap.g:3837:1: (lv_type_3_0= ruleEPrimtiveType )
// InternalEMap.g:3838:3: lv_type_3_0= ruleEPrimtiveType
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEParameterAccess().getTypeEPrimtiveTypeParserRuleCall_1_1_1_0());
}
pushFollow(FOLLOW_67);
lv_type_3_0=ruleEPrimtiveType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEParameterRule());
}
set(
current,
"type",
lv_type_3_0,
"at.bestsolution.persistence.emap.EMap.EPrimtiveType");
afterParserOrEnumRuleCall();
}
}
}
otherlv_4=(Token)match(input,66,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getEParameterAccess().getRightSquareBracketKeyword_1_1_2());
}
}
}
break;
}
// InternalEMap.g:3858:3: ( (lv_name_5_0= RULE_ID ) )
// InternalEMap.g:3859:1: (lv_name_5_0= RULE_ID )
{
// InternalEMap.g:3859:1: (lv_name_5_0= RULE_ID )
// InternalEMap.g:3860:3: lv_name_5_0= RULE_ID
{
lv_name_5_0=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_5_0, grammarAccess.getEParameterAccess().getNameIDTerminalRuleCall_2_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEParameterRule());
}
setWithLastConsumed(
current,
"name",
lv_name_5_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEParameter"
// $ANTLR start "entryRuleEQuery"
// InternalEMap.g:3884:1: entryRuleEQuery returns [EObject current=null] : iv_ruleEQuery= ruleEQuery EOF ;
public final EObject entryRuleEQuery() throws RecognitionException {
EObject current = null;
EObject iv_ruleEQuery = null;
try {
// InternalEMap.g:3885:2: (iv_ruleEQuery= ruleEQuery EOF )
// InternalEMap.g:3886:2: iv_ruleEQuery= ruleEQuery EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEQueryRule());
}
pushFollow(FOLLOW_1);
iv_ruleEQuery=ruleEQuery();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEQuery;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEQuery"
// $ANTLR start "ruleEQuery"
// InternalEMap.g:3893:1: ruleEQuery returns [EObject current=null] : ( ( ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) ) ) ( (lv_mapping_1_0= ruleEObjectSection ) ) ( (otherlv_2= 'FROM' ( (lv_from_3_0= RULE_STRING ) ) (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )? (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )? (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )? ) | ( (lv_all_10_0= RULE_STRING ) ) ) ) ;
public final EObject ruleEQuery() throws RecognitionException {
EObject current = null;
Token lv_dbType_0_1=null;
Token lv_dbType_0_2=null;
Token otherlv_2=null;
Token lv_from_3_0=null;
Token otherlv_4=null;
Token lv_where_5_0=null;
Token otherlv_6=null;
Token lv_groupBy_7_0=null;
Token otherlv_8=null;
Token lv_orderby_9_0=null;
Token lv_all_10_0=null;
EObject lv_mapping_1_0 = null;
enterRule();
try {
// InternalEMap.g:3896:28: ( ( ( ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) ) ) ( (lv_mapping_1_0= ruleEObjectSection ) ) ( (otherlv_2= 'FROM' ( (lv_from_3_0= RULE_STRING ) ) (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )? (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )? (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )? ) | ( (lv_all_10_0= RULE_STRING ) ) ) ) )
// InternalEMap.g:3897:1: ( ( ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) ) ) ( (lv_mapping_1_0= ruleEObjectSection ) ) ( (otherlv_2= 'FROM' ( (lv_from_3_0= RULE_STRING ) ) (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )? (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )? (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )? ) | ( (lv_all_10_0= RULE_STRING ) ) ) )
{
// InternalEMap.g:3897:1: ( ( ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) ) ) ( (lv_mapping_1_0= ruleEObjectSection ) ) ( (otherlv_2= 'FROM' ( (lv_from_3_0= RULE_STRING ) ) (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )? (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )? (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )? ) | ( (lv_all_10_0= RULE_STRING ) ) ) )
// InternalEMap.g:3897:2: ( ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) ) ) ( (lv_mapping_1_0= ruleEObjectSection ) ) ( (otherlv_2= 'FROM' ( (lv_from_3_0= RULE_STRING ) ) (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )? (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )? (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )? ) | ( (lv_all_10_0= RULE_STRING ) ) )
{
// InternalEMap.g:3897:2: ( ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) ) )
// InternalEMap.g:3898:1: ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) )
{
// InternalEMap.g:3898:1: ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) )
// InternalEMap.g:3899:1: (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING )
{
// InternalEMap.g:3899:1: (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING )
int alt95=2;
int LA95_0 = input.LA(1);
if ( (LA95_0==30) ) {
alt95=1;
}
else if ( (LA95_0==RULE_STRING) ) {
alt95=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 95, 0, input);
throw nvae;
}
switch (alt95) {
case 1 :
// InternalEMap.g:3900:3: lv_dbType_0_1= 'default'
{
lv_dbType_0_1=(Token)match(input,30,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_dbType_0_1, grammarAccess.getEQueryAccess().getDbTypeDefaultKeyword_0_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEQueryRule());
}
setWithLastConsumed(current, "dbType", lv_dbType_0_1, null);
}
}
break;
case 2 :
// InternalEMap.g:3912:8: lv_dbType_0_2= RULE_STRING
{
lv_dbType_0_2=(Token)match(input,RULE_STRING,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_dbType_0_2, grammarAccess.getEQueryAccess().getDbTypeSTRINGTerminalRuleCall_0_0_1());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEQueryRule());
}
setWithLastConsumed(
current,
"dbType",
lv_dbType_0_2,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
break;
}
}
}
// InternalEMap.g:3930:2: ( (lv_mapping_1_0= ruleEObjectSection ) )
// InternalEMap.g:3931:1: (lv_mapping_1_0= ruleEObjectSection )
{
// InternalEMap.g:3931:1: (lv_mapping_1_0= ruleEObjectSection )
// InternalEMap.g:3932:3: lv_mapping_1_0= ruleEObjectSection
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEQueryAccess().getMappingEObjectSectionParserRuleCall_1_0());
}
pushFollow(FOLLOW_75);
lv_mapping_1_0=ruleEObjectSection();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEQueryRule());
}
set(
current,
"mapping",
lv_mapping_1_0,
"at.bestsolution.persistence.emap.EMap.EObjectSection");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:3948:2: ( (otherlv_2= 'FROM' ( (lv_from_3_0= RULE_STRING ) ) (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )? (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )? (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )? ) | ( (lv_all_10_0= RULE_STRING ) ) )
int alt99=2;
int LA99_0 = input.LA(1);
if ( (LA99_0==69) ) {
alt99=1;
}
else if ( (LA99_0==RULE_STRING) ) {
alt99=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 99, 0, input);
throw nvae;
}
switch (alt99) {
case 1 :
// InternalEMap.g:3948:3: (otherlv_2= 'FROM' ( (lv_from_3_0= RULE_STRING ) ) (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )? (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )? (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )? )
{
// InternalEMap.g:3948:3: (otherlv_2= 'FROM' ( (lv_from_3_0= RULE_STRING ) ) (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )? (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )? (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )? )
// InternalEMap.g:3948:5: otherlv_2= 'FROM' ( (lv_from_3_0= RULE_STRING ) ) (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )? (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )? (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )?
{
otherlv_2=(Token)match(input,69,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getEQueryAccess().getFROMKeyword_2_0_0());
}
// InternalEMap.g:3952:1: ( (lv_from_3_0= RULE_STRING ) )
// InternalEMap.g:3953:1: (lv_from_3_0= RULE_STRING )
{
// InternalEMap.g:3953:1: (lv_from_3_0= RULE_STRING )
// InternalEMap.g:3954:3: lv_from_3_0= RULE_STRING
{
lv_from_3_0=(Token)match(input,RULE_STRING,FOLLOW_76); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_from_3_0, grammarAccess.getEQueryAccess().getFromSTRINGTerminalRuleCall_2_0_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEQueryRule());
}
setWithLastConsumed(
current,
"from",
lv_from_3_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
// InternalEMap.g:3970:2: (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )?
int alt96=2;
int LA96_0 = input.LA(1);
if ( (LA96_0==70) ) {
alt96=1;
}
switch (alt96) {
case 1 :
// InternalEMap.g:3970:4: otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) )
{
otherlv_4=(Token)match(input,70,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getEQueryAccess().getWHEREKeyword_2_0_2_0());
}
// InternalEMap.g:3974:1: ( (lv_where_5_0= RULE_STRING ) )
// InternalEMap.g:3975:1: (lv_where_5_0= RULE_STRING )
{
// InternalEMap.g:3975:1: (lv_where_5_0= RULE_STRING )
// InternalEMap.g:3976:3: lv_where_5_0= RULE_STRING
{
lv_where_5_0=(Token)match(input,RULE_STRING,FOLLOW_77); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_where_5_0, grammarAccess.getEQueryAccess().getWhereSTRINGTerminalRuleCall_2_0_2_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEQueryRule());
}
setWithLastConsumed(
current,
"where",
lv_where_5_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
break;
}
// InternalEMap.g:3992:4: (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )?
int alt97=2;
int LA97_0 = input.LA(1);
if ( (LA97_0==71) ) {
alt97=1;
}
switch (alt97) {
case 1 :
// InternalEMap.g:3992:6: otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) )
{
otherlv_6=(Token)match(input,71,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_6, grammarAccess.getEQueryAccess().getGROUPBYKeyword_2_0_3_0());
}
// InternalEMap.g:3996:1: ( (lv_groupBy_7_0= RULE_STRING ) )
// InternalEMap.g:3997:1: (lv_groupBy_7_0= RULE_STRING )
{
// InternalEMap.g:3997:1: (lv_groupBy_7_0= RULE_STRING )
// InternalEMap.g:3998:3: lv_groupBy_7_0= RULE_STRING
{
lv_groupBy_7_0=(Token)match(input,RULE_STRING,FOLLOW_78); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_groupBy_7_0, grammarAccess.getEQueryAccess().getGroupBySTRINGTerminalRuleCall_2_0_3_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEQueryRule());
}
setWithLastConsumed(
current,
"groupBy",
lv_groupBy_7_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
break;
}
// InternalEMap.g:4014:4: (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )?
int alt98=2;
int LA98_0 = input.LA(1);
if ( (LA98_0==72) ) {
alt98=1;
}
switch (alt98) {
case 1 :
// InternalEMap.g:4014:6: otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) )
{
otherlv_8=(Token)match(input,72,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_8, grammarAccess.getEQueryAccess().getORDERBYKeyword_2_0_4_0());
}
// InternalEMap.g:4018:1: ( (lv_orderby_9_0= RULE_STRING ) )
// InternalEMap.g:4019:1: (lv_orderby_9_0= RULE_STRING )
{
// InternalEMap.g:4019:1: (lv_orderby_9_0= RULE_STRING )
// InternalEMap.g:4020:3: lv_orderby_9_0= RULE_STRING
{
lv_orderby_9_0=(Token)match(input,RULE_STRING,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_orderby_9_0, grammarAccess.getEQueryAccess().getOrderbySTRINGTerminalRuleCall_2_0_4_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEQueryRule());
}
setWithLastConsumed(
current,
"orderby",
lv_orderby_9_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
break;
}
}
}
break;
case 2 :
// InternalEMap.g:4037:6: ( (lv_all_10_0= RULE_STRING ) )
{
// InternalEMap.g:4037:6: ( (lv_all_10_0= RULE_STRING ) )
// InternalEMap.g:4038:1: (lv_all_10_0= RULE_STRING )
{
// InternalEMap.g:4038:1: (lv_all_10_0= RULE_STRING )
// InternalEMap.g:4039:3: lv_all_10_0= RULE_STRING
{
lv_all_10_0=(Token)match(input,RULE_STRING,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_all_10_0, grammarAccess.getEQueryAccess().getAllSTRINGTerminalRuleCall_2_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEQueryRule());
}
setWithLastConsumed(
current,
"all",
lv_all_10_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEQuery"
// $ANTLR start "entryRuleECustomQuery"
// InternalEMap.g:4063:1: entryRuleECustomQuery returns [EObject current=null] : iv_ruleECustomQuery= ruleECustomQuery EOF ;
public final EObject entryRuleECustomQuery() throws RecognitionException {
EObject current = null;
EObject iv_ruleECustomQuery = null;
try {
// InternalEMap.g:4064:2: (iv_ruleECustomQuery= ruleECustomQuery EOF )
// InternalEMap.g:4065:2: iv_ruleECustomQuery= ruleECustomQuery EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getECustomQueryRule());
}
pushFollow(FOLLOW_1);
iv_ruleECustomQuery=ruleECustomQuery();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleECustomQuery;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleECustomQuery"
// $ANTLR start "ruleECustomQuery"
// InternalEMap.g:4072:1: ruleECustomQuery returns [EObject current=null] : ( ( ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) ) ) ( (lv_columns_1_0= RULE_STRING ) ) ( (otherlv_2= 'FROM' ( (lv_from_3_0= RULE_STRING ) ) (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )? (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )? (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )? ) | ( (lv_all_10_0= RULE_STRING ) ) ) ) ;
public final EObject ruleECustomQuery() throws RecognitionException {
EObject current = null;
Token lv_dbType_0_1=null;
Token lv_dbType_0_2=null;
Token lv_columns_1_0=null;
Token otherlv_2=null;
Token lv_from_3_0=null;
Token otherlv_4=null;
Token lv_where_5_0=null;
Token otherlv_6=null;
Token lv_groupBy_7_0=null;
Token otherlv_8=null;
Token lv_orderby_9_0=null;
Token lv_all_10_0=null;
enterRule();
try {
// InternalEMap.g:4075:28: ( ( ( ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) ) ) ( (lv_columns_1_0= RULE_STRING ) ) ( (otherlv_2= 'FROM' ( (lv_from_3_0= RULE_STRING ) ) (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )? (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )? (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )? ) | ( (lv_all_10_0= RULE_STRING ) ) ) ) )
// InternalEMap.g:4076:1: ( ( ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) ) ) ( (lv_columns_1_0= RULE_STRING ) ) ( (otherlv_2= 'FROM' ( (lv_from_3_0= RULE_STRING ) ) (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )? (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )? (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )? ) | ( (lv_all_10_0= RULE_STRING ) ) ) )
{
// InternalEMap.g:4076:1: ( ( ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) ) ) ( (lv_columns_1_0= RULE_STRING ) ) ( (otherlv_2= 'FROM' ( (lv_from_3_0= RULE_STRING ) ) (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )? (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )? (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )? ) | ( (lv_all_10_0= RULE_STRING ) ) ) )
// InternalEMap.g:4076:2: ( ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) ) ) ( (lv_columns_1_0= RULE_STRING ) ) ( (otherlv_2= 'FROM' ( (lv_from_3_0= RULE_STRING ) ) (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )? (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )? (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )? ) | ( (lv_all_10_0= RULE_STRING ) ) )
{
// InternalEMap.g:4076:2: ( ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) ) )
// InternalEMap.g:4077:1: ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) )
{
// InternalEMap.g:4077:1: ( (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING ) )
// InternalEMap.g:4078:1: (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING )
{
// InternalEMap.g:4078:1: (lv_dbType_0_1= 'default' | lv_dbType_0_2= RULE_STRING )
int alt100=2;
int LA100_0 = input.LA(1);
if ( (LA100_0==30) ) {
alt100=1;
}
else if ( (LA100_0==RULE_STRING) ) {
alt100=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 100, 0, input);
throw nvae;
}
switch (alt100) {
case 1 :
// InternalEMap.g:4079:3: lv_dbType_0_1= 'default'
{
lv_dbType_0_1=(Token)match(input,30,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_dbType_0_1, grammarAccess.getECustomQueryAccess().getDbTypeDefaultKeyword_0_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getECustomQueryRule());
}
setWithLastConsumed(current, "dbType", lv_dbType_0_1, null);
}
}
break;
case 2 :
// InternalEMap.g:4091:8: lv_dbType_0_2= RULE_STRING
{
lv_dbType_0_2=(Token)match(input,RULE_STRING,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_dbType_0_2, grammarAccess.getECustomQueryAccess().getDbTypeSTRINGTerminalRuleCall_0_0_1());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getECustomQueryRule());
}
setWithLastConsumed(
current,
"dbType",
lv_dbType_0_2,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
break;
}
}
}
// InternalEMap.g:4109:2: ( (lv_columns_1_0= RULE_STRING ) )
// InternalEMap.g:4110:1: (lv_columns_1_0= RULE_STRING )
{
// InternalEMap.g:4110:1: (lv_columns_1_0= RULE_STRING )
// InternalEMap.g:4111:3: lv_columns_1_0= RULE_STRING
{
lv_columns_1_0=(Token)match(input,RULE_STRING,FOLLOW_75); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_columns_1_0, grammarAccess.getECustomQueryAccess().getColumnsSTRINGTerminalRuleCall_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getECustomQueryRule());
}
setWithLastConsumed(
current,
"columns",
lv_columns_1_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
// InternalEMap.g:4127:2: ( (otherlv_2= 'FROM' ( (lv_from_3_0= RULE_STRING ) ) (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )? (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )? (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )? ) | ( (lv_all_10_0= RULE_STRING ) ) )
int alt104=2;
int LA104_0 = input.LA(1);
if ( (LA104_0==69) ) {
alt104=1;
}
else if ( (LA104_0==RULE_STRING) ) {
alt104=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 104, 0, input);
throw nvae;
}
switch (alt104) {
case 1 :
// InternalEMap.g:4127:3: (otherlv_2= 'FROM' ( (lv_from_3_0= RULE_STRING ) ) (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )? (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )? (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )? )
{
// InternalEMap.g:4127:3: (otherlv_2= 'FROM' ( (lv_from_3_0= RULE_STRING ) ) (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )? (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )? (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )? )
// InternalEMap.g:4127:5: otherlv_2= 'FROM' ( (lv_from_3_0= RULE_STRING ) ) (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )? (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )? (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )?
{
otherlv_2=(Token)match(input,69,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getECustomQueryAccess().getFROMKeyword_2_0_0());
}
// InternalEMap.g:4131:1: ( (lv_from_3_0= RULE_STRING ) )
// InternalEMap.g:4132:1: (lv_from_3_0= RULE_STRING )
{
// InternalEMap.g:4132:1: (lv_from_3_0= RULE_STRING )
// InternalEMap.g:4133:3: lv_from_3_0= RULE_STRING
{
lv_from_3_0=(Token)match(input,RULE_STRING,FOLLOW_76); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_from_3_0, grammarAccess.getECustomQueryAccess().getFromSTRINGTerminalRuleCall_2_0_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getECustomQueryRule());
}
setWithLastConsumed(
current,
"from",
lv_from_3_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
// InternalEMap.g:4149:2: (otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) ) )?
int alt101=2;
int LA101_0 = input.LA(1);
if ( (LA101_0==70) ) {
alt101=1;
}
switch (alt101) {
case 1 :
// InternalEMap.g:4149:4: otherlv_4= 'WHERE' ( (lv_where_5_0= RULE_STRING ) )
{
otherlv_4=(Token)match(input,70,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getECustomQueryAccess().getWHEREKeyword_2_0_2_0());
}
// InternalEMap.g:4153:1: ( (lv_where_5_0= RULE_STRING ) )
// InternalEMap.g:4154:1: (lv_where_5_0= RULE_STRING )
{
// InternalEMap.g:4154:1: (lv_where_5_0= RULE_STRING )
// InternalEMap.g:4155:3: lv_where_5_0= RULE_STRING
{
lv_where_5_0=(Token)match(input,RULE_STRING,FOLLOW_77); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_where_5_0, grammarAccess.getECustomQueryAccess().getWhereSTRINGTerminalRuleCall_2_0_2_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getECustomQueryRule());
}
setWithLastConsumed(
current,
"where",
lv_where_5_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
break;
}
// InternalEMap.g:4171:4: (otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) ) )?
int alt102=2;
int LA102_0 = input.LA(1);
if ( (LA102_0==71) ) {
alt102=1;
}
switch (alt102) {
case 1 :
// InternalEMap.g:4171:6: otherlv_6= 'GROUP BY' ( (lv_groupBy_7_0= RULE_STRING ) )
{
otherlv_6=(Token)match(input,71,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_6, grammarAccess.getECustomQueryAccess().getGROUPBYKeyword_2_0_3_0());
}
// InternalEMap.g:4175:1: ( (lv_groupBy_7_0= RULE_STRING ) )
// InternalEMap.g:4176:1: (lv_groupBy_7_0= RULE_STRING )
{
// InternalEMap.g:4176:1: (lv_groupBy_7_0= RULE_STRING )
// InternalEMap.g:4177:3: lv_groupBy_7_0= RULE_STRING
{
lv_groupBy_7_0=(Token)match(input,RULE_STRING,FOLLOW_78); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_groupBy_7_0, grammarAccess.getECustomQueryAccess().getGroupBySTRINGTerminalRuleCall_2_0_3_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getECustomQueryRule());
}
setWithLastConsumed(
current,
"groupBy",
lv_groupBy_7_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
break;
}
// InternalEMap.g:4193:4: (otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) ) )?
int alt103=2;
int LA103_0 = input.LA(1);
if ( (LA103_0==72) ) {
alt103=1;
}
switch (alt103) {
case 1 :
// InternalEMap.g:4193:6: otherlv_8= 'ORDER BY' ( (lv_orderby_9_0= RULE_STRING ) )
{
otherlv_8=(Token)match(input,72,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_8, grammarAccess.getECustomQueryAccess().getORDERBYKeyword_2_0_4_0());
}
// InternalEMap.g:4197:1: ( (lv_orderby_9_0= RULE_STRING ) )
// InternalEMap.g:4198:1: (lv_orderby_9_0= RULE_STRING )
{
// InternalEMap.g:4198:1: (lv_orderby_9_0= RULE_STRING )
// InternalEMap.g:4199:3: lv_orderby_9_0= RULE_STRING
{
lv_orderby_9_0=(Token)match(input,RULE_STRING,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_orderby_9_0, grammarAccess.getECustomQueryAccess().getOrderbySTRINGTerminalRuleCall_2_0_4_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getECustomQueryRule());
}
setWithLastConsumed(
current,
"orderby",
lv_orderby_9_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
break;
}
}
}
break;
case 2 :
// InternalEMap.g:4216:6: ( (lv_all_10_0= RULE_STRING ) )
{
// InternalEMap.g:4216:6: ( (lv_all_10_0= RULE_STRING ) )
// InternalEMap.g:4217:1: (lv_all_10_0= RULE_STRING )
{
// InternalEMap.g:4217:1: (lv_all_10_0= RULE_STRING )
// InternalEMap.g:4218:3: lv_all_10_0= RULE_STRING
{
lv_all_10_0=(Token)match(input,RULE_STRING,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_all_10_0, grammarAccess.getECustomQueryAccess().getAllSTRINGTerminalRuleCall_2_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getECustomQueryRule());
}
setWithLastConsumed(
current,
"all",
lv_all_10_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleECustomQuery"
// $ANTLR start "entryRuleEObjectSection"
// InternalEMap.g:4242:1: entryRuleEObjectSection returns [EObject current=null] : iv_ruleEObjectSection= ruleEObjectSection EOF ;
public final EObject entryRuleEObjectSection() throws RecognitionException {
EObject current = null;
EObject iv_ruleEObjectSection = null;
try {
// InternalEMap.g:4243:2: (iv_ruleEObjectSection= ruleEObjectSection EOF )
// InternalEMap.g:4244:2: iv_ruleEObjectSection= ruleEObjectSection EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEObjectSectionRule());
}
pushFollow(FOLLOW_1);
iv_ruleEObjectSection=ruleEObjectSection();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEObjectSection;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEObjectSection"
// $ANTLR start "ruleEObjectSection"
// InternalEMap.g:4251:1: ruleEObjectSection returns [EObject current=null] : ( ( (otherlv_0= RULE_ID ) ) (otherlv_1= '(' ( (otherlv_2= RULE_ID ) ) (otherlv_3= ',' ( (otherlv_4= RULE_ID ) ) )+ otherlv_5= ')' )? ( ( (lv_prefix_6_0= RULE_ID ) ) (otherlv_7= '{' ( (lv_attributes_8_0= ruleEMappingAttribute ) ) (otherlv_9= ',' ( (lv_attributes_10_0= ruleEMappingAttribute ) ) )* otherlv_11= '}' )? )? ) ;
public final EObject ruleEObjectSection() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token otherlv_1=null;
Token otherlv_2=null;
Token otherlv_3=null;
Token otherlv_4=null;
Token otherlv_5=null;
Token lv_prefix_6_0=null;
Token otherlv_7=null;
Token otherlv_9=null;
Token otherlv_11=null;
EObject lv_attributes_8_0 = null;
EObject lv_attributes_10_0 = null;
enterRule();
try {
// InternalEMap.g:4254:28: ( ( ( (otherlv_0= RULE_ID ) ) (otherlv_1= '(' ( (otherlv_2= RULE_ID ) ) (otherlv_3= ',' ( (otherlv_4= RULE_ID ) ) )+ otherlv_5= ')' )? ( ( (lv_prefix_6_0= RULE_ID ) ) (otherlv_7= '{' ( (lv_attributes_8_0= ruleEMappingAttribute ) ) (otherlv_9= ',' ( (lv_attributes_10_0= ruleEMappingAttribute ) ) )* otherlv_11= '}' )? )? ) )
// InternalEMap.g:4255:1: ( ( (otherlv_0= RULE_ID ) ) (otherlv_1= '(' ( (otherlv_2= RULE_ID ) ) (otherlv_3= ',' ( (otherlv_4= RULE_ID ) ) )+ otherlv_5= ')' )? ( ( (lv_prefix_6_0= RULE_ID ) ) (otherlv_7= '{' ( (lv_attributes_8_0= ruleEMappingAttribute ) ) (otherlv_9= ',' ( (lv_attributes_10_0= ruleEMappingAttribute ) ) )* otherlv_11= '}' )? )? )
{
// InternalEMap.g:4255:1: ( ( (otherlv_0= RULE_ID ) ) (otherlv_1= '(' ( (otherlv_2= RULE_ID ) ) (otherlv_3= ',' ( (otherlv_4= RULE_ID ) ) )+ otherlv_5= ')' )? ( ( (lv_prefix_6_0= RULE_ID ) ) (otherlv_7= '{' ( (lv_attributes_8_0= ruleEMappingAttribute ) ) (otherlv_9= ',' ( (lv_attributes_10_0= ruleEMappingAttribute ) ) )* otherlv_11= '}' )? )? )
// InternalEMap.g:4255:2: ( (otherlv_0= RULE_ID ) ) (otherlv_1= '(' ( (otherlv_2= RULE_ID ) ) (otherlv_3= ',' ( (otherlv_4= RULE_ID ) ) )+ otherlv_5= ')' )? ( ( (lv_prefix_6_0= RULE_ID ) ) (otherlv_7= '{' ( (lv_attributes_8_0= ruleEMappingAttribute ) ) (otherlv_9= ',' ( (lv_attributes_10_0= ruleEMappingAttribute ) ) )* otherlv_11= '}' )? )?
{
// InternalEMap.g:4255:2: ( (otherlv_0= RULE_ID ) )
// InternalEMap.g:4256:1: (otherlv_0= RULE_ID )
{
// InternalEMap.g:4256:1: (otherlv_0= RULE_ID )
// InternalEMap.g:4257:3: otherlv_0= RULE_ID
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEObjectSectionRule());
}
}
otherlv_0=(Token)match(input,RULE_ID,FOLLOW_79); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getEObjectSectionAccess().getEntityEMappingEntityCrossReference_0_0());
}
}
}
// InternalEMap.g:4268:2: (otherlv_1= '(' ( (otherlv_2= RULE_ID ) ) (otherlv_3= ',' ( (otherlv_4= RULE_ID ) ) )+ otherlv_5= ')' )?
int alt106=2;
int LA106_0 = input.LA(1);
if ( (LA106_0==25) ) {
alt106=1;
}
switch (alt106) {
case 1 :
// InternalEMap.g:4268:4: otherlv_1= '(' ( (otherlv_2= RULE_ID ) ) (otherlv_3= ',' ( (otherlv_4= RULE_ID ) ) )+ otherlv_5= ')'
{
otherlv_1=(Token)match(input,25,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getEObjectSectionAccess().getLeftParenthesisKeyword_1_0());
}
// InternalEMap.g:4272:1: ( (otherlv_2= RULE_ID ) )
// InternalEMap.g:4273:1: (otherlv_2= RULE_ID )
{
// InternalEMap.g:4273:1: (otherlv_2= RULE_ID )
// InternalEMap.g:4274:3: otherlv_2= RULE_ID
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEObjectSectionRule());
}
}
otherlv_2=(Token)match(input,RULE_ID,FOLLOW_80); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getEObjectSectionAccess().getDescriminatedTypesEMappingEntityCrossReference_1_1_0());
}
}
}
// InternalEMap.g:4285:2: (otherlv_3= ',' ( (otherlv_4= RULE_ID ) ) )+
int cnt105=0;
loop105:
do {
int alt105=2;
int LA105_0 = input.LA(1);
if ( (LA105_0==15) ) {
alt105=1;
}
switch (alt105) {
case 1 :
// InternalEMap.g:4285:4: otherlv_3= ',' ( (otherlv_4= RULE_ID ) )
{
otherlv_3=(Token)match(input,15,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_3, grammarAccess.getEObjectSectionAccess().getCommaKeyword_1_2_0());
}
// InternalEMap.g:4289:1: ( (otherlv_4= RULE_ID ) )
// InternalEMap.g:4290:1: (otherlv_4= RULE_ID )
{
// InternalEMap.g:4290:1: (otherlv_4= RULE_ID )
// InternalEMap.g:4291:3: otherlv_4= RULE_ID
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEObjectSectionRule());
}
}
otherlv_4=(Token)match(input,RULE_ID,FOLLOW_32); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getEObjectSectionAccess().getDescriminatedTypesEMappingEntityCrossReference_1_2_1_0());
}
}
}
}
break;
default :
if ( cnt105 >= 1 ) break loop105;
if (state.backtracking>0) {state.failed=true; return current;}
EarlyExitException eee =
new EarlyExitException(105, input);
throw eee;
}
cnt105++;
} while (true);
otherlv_5=(Token)match(input,26,FOLLOW_73); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_5, grammarAccess.getEObjectSectionAccess().getRightParenthesisKeyword_1_3());
}
}
break;
}
// InternalEMap.g:4306:3: ( ( (lv_prefix_6_0= RULE_ID ) ) (otherlv_7= '{' ( (lv_attributes_8_0= ruleEMappingAttribute ) ) (otherlv_9= ',' ( (lv_attributes_10_0= ruleEMappingAttribute ) ) )* otherlv_11= '}' )? )?
int alt109=2;
int LA109_0 = input.LA(1);
if ( (LA109_0==RULE_ID) ) {
alt109=1;
}
switch (alt109) {
case 1 :
// InternalEMap.g:4306:4: ( (lv_prefix_6_0= RULE_ID ) ) (otherlv_7= '{' ( (lv_attributes_8_0= ruleEMappingAttribute ) ) (otherlv_9= ',' ( (lv_attributes_10_0= ruleEMappingAttribute ) ) )* otherlv_11= '}' )?
{
// InternalEMap.g:4306:4: ( (lv_prefix_6_0= RULE_ID ) )
// InternalEMap.g:4307:1: (lv_prefix_6_0= RULE_ID )
{
// InternalEMap.g:4307:1: (lv_prefix_6_0= RULE_ID )
// InternalEMap.g:4308:3: lv_prefix_6_0= RULE_ID
{
lv_prefix_6_0=(Token)match(input,RULE_ID,FOLLOW_18); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_prefix_6_0, grammarAccess.getEObjectSectionAccess().getPrefixIDTerminalRuleCall_2_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEObjectSectionRule());
}
setWithLastConsumed(
current,
"prefix",
lv_prefix_6_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
// InternalEMap.g:4324:2: (otherlv_7= '{' ( (lv_attributes_8_0= ruleEMappingAttribute ) ) (otherlv_9= ',' ( (lv_attributes_10_0= ruleEMappingAttribute ) ) )* otherlv_11= '}' )?
int alt108=2;
int LA108_0 = input.LA(1);
if ( (LA108_0==13) ) {
alt108=1;
}
switch (alt108) {
case 1 :
// InternalEMap.g:4324:4: otherlv_7= '{' ( (lv_attributes_8_0= ruleEMappingAttribute ) ) (otherlv_9= ',' ( (lv_attributes_10_0= ruleEMappingAttribute ) ) )* otherlv_11= '}'
{
otherlv_7=(Token)match(input,13,FOLLOW_81); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_7, grammarAccess.getEObjectSectionAccess().getLeftCurlyBracketKeyword_2_1_0());
}
// InternalEMap.g:4328:1: ( (lv_attributes_8_0= ruleEMappingAttribute ) )
// InternalEMap.g:4329:1: (lv_attributes_8_0= ruleEMappingAttribute )
{
// InternalEMap.g:4329:1: (lv_attributes_8_0= ruleEMappingAttribute )
// InternalEMap.g:4330:3: lv_attributes_8_0= ruleEMappingAttribute
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEObjectSectionAccess().getAttributesEMappingAttributeParserRuleCall_2_1_1_0());
}
pushFollow(FOLLOW_9);
lv_attributes_8_0=ruleEMappingAttribute();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEObjectSectionRule());
}
add(
current,
"attributes",
lv_attributes_8_0,
"at.bestsolution.persistence.emap.EMap.EMappingAttribute");
afterParserOrEnumRuleCall();
}
}
}
// InternalEMap.g:4346:2: (otherlv_9= ',' ( (lv_attributes_10_0= ruleEMappingAttribute ) ) )*
loop107:
do {
int alt107=2;
int LA107_0 = input.LA(1);
if ( (LA107_0==15) ) {
alt107=1;
}
switch (alt107) {
case 1 :
// InternalEMap.g:4346:4: otherlv_9= ',' ( (lv_attributes_10_0= ruleEMappingAttribute ) )
{
otherlv_9=(Token)match(input,15,FOLLOW_81); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_9, grammarAccess.getEObjectSectionAccess().getCommaKeyword_2_1_2_0());
}
// InternalEMap.g:4350:1: ( (lv_attributes_10_0= ruleEMappingAttribute ) )
// InternalEMap.g:4351:1: (lv_attributes_10_0= ruleEMappingAttribute )
{
// InternalEMap.g:4351:1: (lv_attributes_10_0= ruleEMappingAttribute )
// InternalEMap.g:4352:3: lv_attributes_10_0= ruleEMappingAttribute
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEObjectSectionAccess().getAttributesEMappingAttributeParserRuleCall_2_1_2_1_0());
}
pushFollow(FOLLOW_9);
lv_attributes_10_0=ruleEMappingAttribute();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEObjectSectionRule());
}
add(
current,
"attributes",
lv_attributes_10_0,
"at.bestsolution.persistence.emap.EMap.EMappingAttribute");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop107;
}
} while (true);
otherlv_11=(Token)match(input,16,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_11, grammarAccess.getEObjectSectionAccess().getRightCurlyBracketKeyword_2_1_3());
}
}
break;
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEObjectSection"
// $ANTLR start "entryRuleEMappingAttribute"
// InternalEMap.g:4380:1: entryRuleEMappingAttribute returns [EObject current=null] : iv_ruleEMappingAttribute= ruleEMappingAttribute EOF ;
public final EObject entryRuleEMappingAttribute() throws RecognitionException {
EObject current = null;
EObject iv_ruleEMappingAttribute = null;
try {
// InternalEMap.g:4381:2: (iv_ruleEMappingAttribute= ruleEMappingAttribute EOF )
// InternalEMap.g:4382:2: iv_ruleEMappingAttribute= ruleEMappingAttribute EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingAttributeRule());
}
pushFollow(FOLLOW_1);
iv_ruleEMappingAttribute=ruleEMappingAttribute();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEMappingAttribute;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEMappingAttribute"
// $ANTLR start "ruleEMappingAttribute"
// InternalEMap.g:4389:1: ruleEMappingAttribute returns [EObject current=null] : ( ( (lv_pk_0_0= 'primarykey' ) )? ( (lv_property_1_0= ruleQualifiedName ) ) otherlv_2= '=>' ( ( (lv_columnName_3_0= RULE_ID ) ) | ( ( (lv_resolved_4_0= 'resolve' ) ) ( ( ruleQualifiedName ) ) otherlv_6= '(' ( (lv_parameters_7_0= RULE_ID ) ) otherlv_8= ')' ) | ( ( (lv_mapped_9_0= 'map' ) ) ( (lv_map_10_0= ruleEObjectSection ) ) ) ) ) ;
public final EObject ruleEMappingAttribute() throws RecognitionException {
EObject current = null;
Token lv_pk_0_0=null;
Token otherlv_2=null;
Token lv_columnName_3_0=null;
Token lv_resolved_4_0=null;
Token otherlv_6=null;
Token lv_parameters_7_0=null;
Token otherlv_8=null;
Token lv_mapped_9_0=null;
AntlrDatatypeRuleToken lv_property_1_0 = null;
EObject lv_map_10_0 = null;
enterRule();
try {
// InternalEMap.g:4392:28: ( ( ( (lv_pk_0_0= 'primarykey' ) )? ( (lv_property_1_0= ruleQualifiedName ) ) otherlv_2= '=>' ( ( (lv_columnName_3_0= RULE_ID ) ) | ( ( (lv_resolved_4_0= 'resolve' ) ) ( ( ruleQualifiedName ) ) otherlv_6= '(' ( (lv_parameters_7_0= RULE_ID ) ) otherlv_8= ')' ) | ( ( (lv_mapped_9_0= 'map' ) ) ( (lv_map_10_0= ruleEObjectSection ) ) ) ) ) )
// InternalEMap.g:4393:1: ( ( (lv_pk_0_0= 'primarykey' ) )? ( (lv_property_1_0= ruleQualifiedName ) ) otherlv_2= '=>' ( ( (lv_columnName_3_0= RULE_ID ) ) | ( ( (lv_resolved_4_0= 'resolve' ) ) ( ( ruleQualifiedName ) ) otherlv_6= '(' ( (lv_parameters_7_0= RULE_ID ) ) otherlv_8= ')' ) | ( ( (lv_mapped_9_0= 'map' ) ) ( (lv_map_10_0= ruleEObjectSection ) ) ) ) )
{
// InternalEMap.g:4393:1: ( ( (lv_pk_0_0= 'primarykey' ) )? ( (lv_property_1_0= ruleQualifiedName ) ) otherlv_2= '=>' ( ( (lv_columnName_3_0= RULE_ID ) ) | ( ( (lv_resolved_4_0= 'resolve' ) ) ( ( ruleQualifiedName ) ) otherlv_6= '(' ( (lv_parameters_7_0= RULE_ID ) ) otherlv_8= ')' ) | ( ( (lv_mapped_9_0= 'map' ) ) ( (lv_map_10_0= ruleEObjectSection ) ) ) ) )
// InternalEMap.g:4393:2: ( (lv_pk_0_0= 'primarykey' ) )? ( (lv_property_1_0= ruleQualifiedName ) ) otherlv_2= '=>' ( ( (lv_columnName_3_0= RULE_ID ) ) | ( ( (lv_resolved_4_0= 'resolve' ) ) ( ( ruleQualifiedName ) ) otherlv_6= '(' ( (lv_parameters_7_0= RULE_ID ) ) otherlv_8= ')' ) | ( ( (lv_mapped_9_0= 'map' ) ) ( (lv_map_10_0= ruleEObjectSection ) ) ) )
{
// InternalEMap.g:4393:2: ( (lv_pk_0_0= 'primarykey' ) )?
int alt110=2;
int LA110_0 = input.LA(1);
if ( (LA110_0==50) ) {
alt110=1;
}
switch (alt110) {
case 1 :
// InternalEMap.g:4394:1: (lv_pk_0_0= 'primarykey' )
{
// InternalEMap.g:4394:1: (lv_pk_0_0= 'primarykey' )
// InternalEMap.g:4395:3: lv_pk_0_0= 'primarykey'
{
lv_pk_0_0=(Token)match(input,50,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_pk_0_0, grammarAccess.getEMappingAttributeAccess().getPkPrimarykeyKeyword_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEMappingAttributeRule());
}
setWithLastConsumed(current, "pk", true, "primarykey");
}
}
}
break;
}
// InternalEMap.g:4408:3: ( (lv_property_1_0= ruleQualifiedName ) )
// InternalEMap.g:4409:1: (lv_property_1_0= ruleQualifiedName )
{
// InternalEMap.g:4409:1: (lv_property_1_0= ruleQualifiedName )
// InternalEMap.g:4410:3: lv_property_1_0= ruleQualifiedName
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingAttributeAccess().getPropertyQualifiedNameParserRuleCall_1_0());
}
pushFollow(FOLLOW_55);
lv_property_1_0=ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingAttributeRule());
}
set(
current,
"property",
lv_property_1_0,
"at.bestsolution.persistence.emap.EMap.QualifiedName");
afterParserOrEnumRuleCall();
}
}
}
otherlv_2=(Token)match(input,52,FOLLOW_82); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getEMappingAttributeAccess().getEqualsSignGreaterThanSignKeyword_2());
}
// InternalEMap.g:4430:1: ( ( (lv_columnName_3_0= RULE_ID ) ) | ( ( (lv_resolved_4_0= 'resolve' ) ) ( ( ruleQualifiedName ) ) otherlv_6= '(' ( (lv_parameters_7_0= RULE_ID ) ) otherlv_8= ')' ) | ( ( (lv_mapped_9_0= 'map' ) ) ( (lv_map_10_0= ruleEObjectSection ) ) ) )
int alt111=3;
switch ( input.LA(1) ) {
case RULE_ID:
{
alt111=1;
}
break;
case 54:
{
alt111=2;
}
break;
case 64:
{
alt111=3;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 111, 0, input);
throw nvae;
}
switch (alt111) {
case 1 :
// InternalEMap.g:4430:2: ( (lv_columnName_3_0= RULE_ID ) )
{
// InternalEMap.g:4430:2: ( (lv_columnName_3_0= RULE_ID ) )
// InternalEMap.g:4431:1: (lv_columnName_3_0= RULE_ID )
{
// InternalEMap.g:4431:1: (lv_columnName_3_0= RULE_ID )
// InternalEMap.g:4432:3: lv_columnName_3_0= RULE_ID
{
lv_columnName_3_0=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_columnName_3_0, grammarAccess.getEMappingAttributeAccess().getColumnNameIDTerminalRuleCall_3_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEMappingAttributeRule());
}
setWithLastConsumed(
current,
"columnName",
lv_columnName_3_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
}
break;
case 2 :
// InternalEMap.g:4449:6: ( ( (lv_resolved_4_0= 'resolve' ) ) ( ( ruleQualifiedName ) ) otherlv_6= '(' ( (lv_parameters_7_0= RULE_ID ) ) otherlv_8= ')' )
{
// InternalEMap.g:4449:6: ( ( (lv_resolved_4_0= 'resolve' ) ) ( ( ruleQualifiedName ) ) otherlv_6= '(' ( (lv_parameters_7_0= RULE_ID ) ) otherlv_8= ')' )
// InternalEMap.g:4449:7: ( (lv_resolved_4_0= 'resolve' ) ) ( ( ruleQualifiedName ) ) otherlv_6= '(' ( (lv_parameters_7_0= RULE_ID ) ) otherlv_8= ')'
{
// InternalEMap.g:4449:7: ( (lv_resolved_4_0= 'resolve' ) )
// InternalEMap.g:4450:1: (lv_resolved_4_0= 'resolve' )
{
// InternalEMap.g:4450:1: (lv_resolved_4_0= 'resolve' )
// InternalEMap.g:4451:3: lv_resolved_4_0= 'resolve'
{
lv_resolved_4_0=(Token)match(input,54,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_resolved_4_0, grammarAccess.getEMappingAttributeAccess().getResolvedResolveKeyword_3_1_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEMappingAttributeRule());
}
setWithLastConsumed(current, "resolved", true, "resolve");
}
}
}
// InternalEMap.g:4464:2: ( ( ruleQualifiedName ) )
// InternalEMap.g:4465:1: ( ruleQualifiedName )
{
// InternalEMap.g:4465:1: ( ruleQualifiedName )
// InternalEMap.g:4466:3: ruleQualifiedName
{
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEMappingAttributeRule());
}
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingAttributeAccess().getQueryENamedQueryCrossReference_3_1_1_0());
}
pushFollow(FOLLOW_31);
ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
}
}
otherlv_6=(Token)match(input,25,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_6, grammarAccess.getEMappingAttributeAccess().getLeftParenthesisKeyword_3_1_2());
}
// InternalEMap.g:4483:1: ( (lv_parameters_7_0= RULE_ID ) )
// InternalEMap.g:4484:1: (lv_parameters_7_0= RULE_ID )
{
// InternalEMap.g:4484:1: (lv_parameters_7_0= RULE_ID )
// InternalEMap.g:4485:3: lv_parameters_7_0= RULE_ID
{
lv_parameters_7_0=(Token)match(input,RULE_ID,FOLLOW_58); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_parameters_7_0, grammarAccess.getEMappingAttributeAccess().getParametersIDTerminalRuleCall_3_1_3_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEMappingAttributeRule());
}
addWithLastConsumed(
current,
"parameters",
lv_parameters_7_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
otherlv_8=(Token)match(input,26,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_8, grammarAccess.getEMappingAttributeAccess().getRightParenthesisKeyword_3_1_4());
}
}
}
break;
case 3 :
// InternalEMap.g:4506:6: ( ( (lv_mapped_9_0= 'map' ) ) ( (lv_map_10_0= ruleEObjectSection ) ) )
{
// InternalEMap.g:4506:6: ( ( (lv_mapped_9_0= 'map' ) ) ( (lv_map_10_0= ruleEObjectSection ) ) )
// InternalEMap.g:4506:7: ( (lv_mapped_9_0= 'map' ) ) ( (lv_map_10_0= ruleEObjectSection ) )
{
// InternalEMap.g:4506:7: ( (lv_mapped_9_0= 'map' ) )
// InternalEMap.g:4507:1: (lv_mapped_9_0= 'map' )
{
// InternalEMap.g:4507:1: (lv_mapped_9_0= 'map' )
// InternalEMap.g:4508:3: lv_mapped_9_0= 'map'
{
lv_mapped_9_0=(Token)match(input,64,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_mapped_9_0, grammarAccess.getEMappingAttributeAccess().getMappedMapKeyword_3_2_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getEMappingAttributeRule());
}
setWithLastConsumed(current, "mapped", true, "map");
}
}
}
// InternalEMap.g:4521:2: ( (lv_map_10_0= ruleEObjectSection ) )
// InternalEMap.g:4522:1: (lv_map_10_0= ruleEObjectSection )
{
// InternalEMap.g:4522:1: (lv_map_10_0= ruleEObjectSection )
// InternalEMap.g:4523:3: lv_map_10_0= ruleEObjectSection
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getEMappingAttributeAccess().getMapEObjectSectionParserRuleCall_3_2_1_0());
}
pushFollow(FOLLOW_2);
lv_map_10_0=ruleEObjectSection();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getEMappingAttributeRule());
}
set(
current,
"map",
lv_map_10_0,
"at.bestsolution.persistence.emap.EMap.EObjectSection");
afterParserOrEnumRuleCall();
}
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEMappingAttribute"
// $ANTLR start "entryRuleEType"
// InternalEMap.g:4547:1: entryRuleEType returns [EObject current=null] : iv_ruleEType= ruleEType EOF ;
public final EObject entryRuleEType() throws RecognitionException {
EObject current = null;
EObject iv_ruleEType = null;
try {
// InternalEMap.g:4548:2: (iv_ruleEType= ruleEType EOF )
// InternalEMap.g:4549:2: iv_ruleEType= ruleEType EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getETypeRule());
}
pushFollow(FOLLOW_1);
iv_ruleEType=ruleEType();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleEType;
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleEType"
// $ANTLR start "ruleEType"
// InternalEMap.g:4556:1: ruleEType returns [EObject current=null] : (otherlv_0= 'etype' ( (lv_url_1_0= RULE_STRING ) ) otherlv_2= '#' ( (lv_name_3_0= RULE_ID ) ) ) ;
public final EObject ruleEType() throws RecognitionException {
EObject current = null;
Token otherlv_0=null;
Token lv_url_1_0=null;
Token otherlv_2=null;
Token lv_name_3_0=null;
enterRule();
try {
// InternalEMap.g:4559:28: ( (otherlv_0= 'etype' ( (lv_url_1_0= RULE_STRING ) ) otherlv_2= '#' ( (lv_name_3_0= RULE_ID ) ) ) )
// InternalEMap.g:4560:1: (otherlv_0= 'etype' ( (lv_url_1_0= RULE_STRING ) ) otherlv_2= '#' ( (lv_name_3_0= RULE_ID ) ) )
{
// InternalEMap.g:4560:1: (otherlv_0= 'etype' ( (lv_url_1_0= RULE_STRING ) ) otherlv_2= '#' ( (lv_name_3_0= RULE_ID ) ) )
// InternalEMap.g:4560:3: otherlv_0= 'etype' ( (lv_url_1_0= RULE_STRING ) ) otherlv_2= '#' ( (lv_name_3_0= RULE_ID ) )
{
otherlv_0=(Token)match(input,73,FOLLOW_15); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_0, grammarAccess.getETypeAccess().getEtypeKeyword_0());
}
// InternalEMap.g:4564:1: ( (lv_url_1_0= RULE_STRING ) )
// InternalEMap.g:4565:1: (lv_url_1_0= RULE_STRING )
{
// InternalEMap.g:4565:1: (lv_url_1_0= RULE_STRING )
// InternalEMap.g:4566:3: lv_url_1_0= RULE_STRING
{
lv_url_1_0=(Token)match(input,RULE_STRING,FOLLOW_83); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_url_1_0, grammarAccess.getETypeAccess().getUrlSTRINGTerminalRuleCall_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getETypeRule());
}
setWithLastConsumed(
current,
"url",
lv_url_1_0,
"org.eclipse.xtext.common.Terminals.STRING");
}
}
}
otherlv_2=(Token)match(input,74,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getETypeAccess().getNumberSignKeyword_2());
}
// InternalEMap.g:4586:1: ( (lv_name_3_0= RULE_ID ) )
// InternalEMap.g:4587:1: (lv_name_3_0= RULE_ID )
{
// InternalEMap.g:4587:1: (lv_name_3_0= RULE_ID )
// InternalEMap.g:4588:3: lv_name_3_0= RULE_ID
{
lv_name_3_0=(Token)match(input,RULE_ID,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_3_0, grammarAccess.getETypeAccess().getNameIDTerminalRuleCall_3_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getETypeRule());
}
setWithLastConsumed(
current,
"name",
lv_name_3_0,
"org.eclipse.xtext.common.Terminals.ID");
}
}
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleEType"
// $ANTLR start "entryRuleQualifiedName"
// InternalEMap.g:4612:1: entryRuleQualifiedName returns [String current=null] : iv_ruleQualifiedName= ruleQualifiedName EOF ;
public final String entryRuleQualifiedName() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleQualifiedName = null;
try {
// InternalEMap.g:4613:2: (iv_ruleQualifiedName= ruleQualifiedName EOF )
// InternalEMap.g:4614:2: iv_ruleQualifiedName= ruleQualifiedName EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getQualifiedNameRule());
}
pushFollow(FOLLOW_1);
iv_ruleQualifiedName=ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleQualifiedName.getText();
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleQualifiedName"
// $ANTLR start "ruleQualifiedName"
// InternalEMap.g:4621:1: ruleQualifiedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_ID_0= RULE_ID ( ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID )* ) ;
public final AntlrDatatypeRuleToken ruleQualifiedName() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
Token this_ID_0=null;
Token kw=null;
Token this_ID_2=null;
enterRule();
try {
// InternalEMap.g:4624:28: ( (this_ID_0= RULE_ID ( ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID )* ) )
// InternalEMap.g:4625:1: (this_ID_0= RULE_ID ( ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID )* )
{
// InternalEMap.g:4625:1: (this_ID_0= RULE_ID ( ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID )* )
// InternalEMap.g:4625:6: this_ID_0= RULE_ID ( ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID )*
{
this_ID_0=(Token)match(input,RULE_ID,FOLLOW_46); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_ID_0);
}
if ( state.backtracking==0 ) {
newLeafNode(this_ID_0, grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0());
}
// InternalEMap.g:4632:1: ( ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID )*
loop112:
do {
int alt112=2;
int LA112_0 = input.LA(1);
if ( (LA112_0==43) ) {
int LA112_2 = input.LA(2);
if ( (LA112_2==RULE_ID) && (synpred2_InternalEMap())) {
alt112=1;
}
}
switch (alt112) {
case 1 :
// InternalEMap.g:4632:2: ( ( '.' )=>kw= '.' ) this_ID_2= RULE_ID
{
// InternalEMap.g:4632:2: ( ( '.' )=>kw= '.' )
// InternalEMap.g:4632:3: ( '.' )=>kw= '.'
{
kw=(Token)match(input,43,FOLLOW_4); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getQualifiedNameAccess().getFullStopKeyword_1_0());
}
}
this_ID_2=(Token)match(input,RULE_ID,FOLLOW_46); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_ID_2);
}
if ( state.backtracking==0 ) {
newLeafNode(this_ID_2, grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_1_1());
}
}
break;
default :
break loop112;
}
} while (true);
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleQualifiedName"
// $ANTLR start "entryRuleQualifiedNameWithWildcard"
// InternalEMap.g:4655:1: entryRuleQualifiedNameWithWildcard returns [String current=null] : iv_ruleQualifiedNameWithWildcard= ruleQualifiedNameWithWildcard EOF ;
public final String entryRuleQualifiedNameWithWildcard() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleQualifiedNameWithWildcard = null;
try {
// InternalEMap.g:4656:2: (iv_ruleQualifiedNameWithWildcard= ruleQualifiedNameWithWildcard EOF )
// InternalEMap.g:4657:2: iv_ruleQualifiedNameWithWildcard= ruleQualifiedNameWithWildcard EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getQualifiedNameWithWildcardRule());
}
pushFollow(FOLLOW_1);
iv_ruleQualifiedNameWithWildcard=ruleQualifiedNameWithWildcard();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleQualifiedNameWithWildcard.getText();
}
match(input,EOF,FOLLOW_2); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleQualifiedNameWithWildcard"
// $ANTLR start "ruleQualifiedNameWithWildcard"
// InternalEMap.g:4664:1: ruleQualifiedNameWithWildcard returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_QualifiedName_0= ruleQualifiedName kw= '.' kw= '*' ) ;
public final AntlrDatatypeRuleToken ruleQualifiedNameWithWildcard() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
Token kw=null;
AntlrDatatypeRuleToken this_QualifiedName_0 = null;
enterRule();
try {
// InternalEMap.g:4667:28: ( (this_QualifiedName_0= ruleQualifiedName kw= '.' kw= '*' ) )
// InternalEMap.g:4668:1: (this_QualifiedName_0= ruleQualifiedName kw= '.' kw= '*' )
{
// InternalEMap.g:4668:1: (this_QualifiedName_0= ruleQualifiedName kw= '.' kw= '*' )
// InternalEMap.g:4669:5: this_QualifiedName_0= ruleQualifiedName kw= '.' kw= '*'
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getQualifiedNameWithWildcardAccess().getQualifiedNameParserRuleCall_0());
}
pushFollow(FOLLOW_84);
this_QualifiedName_0=ruleQualifiedName();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_QualifiedName_0);
}
if ( state.backtracking==0 ) {
afterParserOrEnumRuleCall();
}
kw=(Token)match(input,43,FOLLOW_85); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getQualifiedNameWithWildcardAccess().getFullStopKeyword_1());
}
kw=(Token)match(input,75,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getQualifiedNameWithWildcardAccess().getAsteriskKeyword_2());
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleQualifiedNameWithWildcard"
// $ANTLR start "ruleColSort"
// InternalEMap.g:4699:1: ruleColSort returns [Enumerator current=null] : ( (enumLiteral_0= 'EMAP' ) | (enumLiteral_1= 'ECORE' ) | (enumLiteral_2= 'ECORE_REVERSED' ) | (enumLiteral_3= 'ALPHABETIC' ) ) ;
public final Enumerator ruleColSort() throws RecognitionException {
Enumerator current = null;
Token enumLiteral_0=null;
Token enumLiteral_1=null;
Token enumLiteral_2=null;
Token enumLiteral_3=null;
enterRule();
try {
// InternalEMap.g:4701:28: ( ( (enumLiteral_0= 'EMAP' ) | (enumLiteral_1= 'ECORE' ) | (enumLiteral_2= 'ECORE_REVERSED' ) | (enumLiteral_3= 'ALPHABETIC' ) ) )
// InternalEMap.g:4702:1: ( (enumLiteral_0= 'EMAP' ) | (enumLiteral_1= 'ECORE' ) | (enumLiteral_2= 'ECORE_REVERSED' ) | (enumLiteral_3= 'ALPHABETIC' ) )
{
// InternalEMap.g:4702:1: ( (enumLiteral_0= 'EMAP' ) | (enumLiteral_1= 'ECORE' ) | (enumLiteral_2= 'ECORE_REVERSED' ) | (enumLiteral_3= 'ALPHABETIC' ) )
int alt113=4;
switch ( input.LA(1) ) {
case 76:
{
alt113=1;
}
break;
case 77:
{
alt113=2;
}
break;
case 78:
{
alt113=3;
}
break;
case 79:
{
alt113=4;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 113, 0, input);
throw nvae;
}
switch (alt113) {
case 1 :
// InternalEMap.g:4702:2: (enumLiteral_0= 'EMAP' )
{
// InternalEMap.g:4702:2: (enumLiteral_0= 'EMAP' )
// InternalEMap.g:4702:4: enumLiteral_0= 'EMAP'
{
enumLiteral_0=(Token)match(input,76,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current = grammarAccess.getColSortAccess().getEMAPEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_0, grammarAccess.getColSortAccess().getEMAPEnumLiteralDeclaration_0());
}
}
}
break;
case 2 :
// InternalEMap.g:4708:6: (enumLiteral_1= 'ECORE' )
{
// InternalEMap.g:4708:6: (enumLiteral_1= 'ECORE' )
// InternalEMap.g:4708:8: enumLiteral_1= 'ECORE'
{
enumLiteral_1=(Token)match(input,77,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current = grammarAccess.getColSortAccess().getECOREEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_1, grammarAccess.getColSortAccess().getECOREEnumLiteralDeclaration_1());
}
}
}
break;
case 3 :
// InternalEMap.g:4714:6: (enumLiteral_2= 'ECORE_REVERSED' )
{
// InternalEMap.g:4714:6: (enumLiteral_2= 'ECORE_REVERSED' )
// InternalEMap.g:4714:8: enumLiteral_2= 'ECORE_REVERSED'
{
enumLiteral_2=(Token)match(input,78,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current = grammarAccess.getColSortAccess().getECORE_REVERSEDEnumLiteralDeclaration_2().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_2, grammarAccess.getColSortAccess().getECORE_REVERSEDEnumLiteralDeclaration_2());
}
}
}
break;
case 4 :
// InternalEMap.g:4720:6: (enumLiteral_3= 'ALPHABETIC' )
{
// InternalEMap.g:4720:6: (enumLiteral_3= 'ALPHABETIC' )
// InternalEMap.g:4720:8: enumLiteral_3= 'ALPHABETIC'
{
enumLiteral_3=(Token)match(input,79,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current = grammarAccess.getColSortAccess().getALPHABETICEnumLiteralDeclaration_3().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_3, grammarAccess.getColSortAccess().getALPHABETICEnumLiteralDeclaration_3());
}
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleColSort"
// $ANTLR start "ruleReturnType"
// InternalEMap.g:4730:1: ruleReturnType returns [Enumerator current=null] : ( (enumLiteral_0= 'list' ) | (enumLiteral_1= 'single' ) ) ;
public final Enumerator ruleReturnType() throws RecognitionException {
Enumerator current = null;
Token enumLiteral_0=null;
Token enumLiteral_1=null;
enterRule();
try {
// InternalEMap.g:4732:28: ( ( (enumLiteral_0= 'list' ) | (enumLiteral_1= 'single' ) ) )
// InternalEMap.g:4733:1: ( (enumLiteral_0= 'list' ) | (enumLiteral_1= 'single' ) )
{
// InternalEMap.g:4733:1: ( (enumLiteral_0= 'list' ) | (enumLiteral_1= 'single' ) )
int alt114=2;
int LA114_0 = input.LA(1);
if ( (LA114_0==80) ) {
alt114=1;
}
else if ( (LA114_0==81) ) {
alt114=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 114, 0, input);
throw nvae;
}
switch (alt114) {
case 1 :
// InternalEMap.g:4733:2: (enumLiteral_0= 'list' )
{
// InternalEMap.g:4733:2: (enumLiteral_0= 'list' )
// InternalEMap.g:4733:4: enumLiteral_0= 'list'
{
enumLiteral_0=(Token)match(input,80,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current = grammarAccess.getReturnTypeAccess().getListEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_0, grammarAccess.getReturnTypeAccess().getListEnumLiteralDeclaration_0());
}
}
}
break;
case 2 :
// InternalEMap.g:4739:6: (enumLiteral_1= 'single' )
{
// InternalEMap.g:4739:6: (enumLiteral_1= 'single' )
// InternalEMap.g:4739:8: enumLiteral_1= 'single'
{
enumLiteral_1=(Token)match(input,81,FOLLOW_2); if (state.failed) return current;
if ( state.backtracking==0 ) {
current = grammarAccess.getReturnTypeAccess().getSingleEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
newLeafNode(enumLiteral_1, grammarAccess.getReturnTypeAccess().getSingleEnumLiteralDeclaration_1());
}
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleReturnType"
// $ANTLR start synpred1_InternalEMap
public final void synpred1_InternalEMap_fragment() throws RecognitionException {
// InternalEMap.g:2135:3: ( '.' )
// InternalEMap.g:2136:2: '.'
{
match(input,43,FOLLOW_2); if (state.failed) return ;
}
}
// $ANTLR end synpred1_InternalEMap
// $ANTLR start synpred2_InternalEMap
public final void synpred2_InternalEMap_fragment() throws RecognitionException {
// InternalEMap.g:4632:3: ( '.' )
// InternalEMap.g:4633:2: '.'
{
match(input,43,FOLLOW_2); if (state.failed) return ;
}
}
// $ANTLR end synpred2_InternalEMap
// Delegated rules
public final boolean synpred1_InternalEMap() {
state.backtracking++;
int start = input.mark();
try {
synpred1_InternalEMap_fragment(); // can never throw exception
} catch (RecognitionException re) {
System.err.println("impossible: "+re);
}
boolean success = !state.failed;
input.rewind(start);
state.backtracking--;
state.failed=false;
return success;
}
public final boolean synpred2_InternalEMap() {
state.backtracking++;
int start = input.mark();
try {
synpred2_InternalEMap_fragment(); // can never throw exception
} catch (RecognitionException re) {
System.err.println("impossible: "+re);
}
boolean success = !state.failed;
input.rewind(start);
state.backtracking--;
state.failed=false;
return success;
}
protected DFA50 dfa50 = new DFA50(this);
static final String dfa_1s = "\6\uffff";
static final String dfa_2s = "\1\uffff\1\3\2\uffff\1\3\1\uffff";
static final String dfa_3s = "\1\4\1\13\1\4\1\uffff\1\13\1\uffff";
static final String dfa_4s = "\1\4\1\55\1\113\1\uffff\1\55\1\uffff";
static final String dfa_5s = "\3\uffff\1\2\1\uffff\1\1";
static final String dfa_6s = "\6\uffff}>";
static final String[] dfa_7s = {
"\1\1",
"\1\3\34\uffff\1\3\2\uffff\1\2\2\3",
"\1\4\106\uffff\1\5",
"",
"\1\3\34\uffff\1\3\2\uffff\1\2\2\3",
""
};
static final short[] dfa_1 = DFA.unpackEncodedString(dfa_1s);
static final short[] dfa_2 = DFA.unpackEncodedString(dfa_2s);
static final char[] dfa_3 = DFA.unpackEncodedStringToUnsignedChars(dfa_3s);
static final char[] dfa_4 = DFA.unpackEncodedStringToUnsignedChars(dfa_4s);
static final short[] dfa_5 = DFA.unpackEncodedString(dfa_5s);
static final short[] dfa_6 = DFA.unpackEncodedString(dfa_6s);
static final short[][] dfa_7 = unpackEncodedStringArray(dfa_7s);
class DFA50 extends DFA {
public DFA50(BaseRecognizer recognizer) {
this.recognizer = recognizer;
this.decisionNumber = 50;
this.eot = dfa_1;
this.eof = dfa_2;
this.min = dfa_3;
this.max = dfa_4;
this.accept = dfa_5;
this.special = dfa_6;
this.transition = dfa_7;
}
public String getDescription() {
return "2026:1: (lv_importedNamespace_1_1= ruleQualifiedNameWithWildcard | lv_importedNamespace_1_2= ruleQualifiedName )";
}
}
public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x0000010000000800L});
public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000000010L});
public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0000000000003000L});
public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000000002000L});
public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000000000004010L});
public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000000300000L});
public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000018000L});
public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0000000020038000L});
public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000000020030000L});
public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000000000010010L});
public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000000010000L});
public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x00000000000C0002L});
public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000000000020L});
public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0000000000088002L});
public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000000000000L,0x000000000000F000L});
public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000000002002L});
public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000000400000L});
public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x0000000000002020L});
public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000139810000L});
public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x0000000139010000L});
public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0000000131018000L});
public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x0000000008000000L});
public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x0000000121018000L});
public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000000010000000L});
public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000000120018000L});
public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0000000001000000L});
public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0000000100018000L});
public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x0000000020000000L});
public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0000000002000000L});
public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0000000004008000L});
public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0000000040000020L});
public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000200L});
public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x0000000080000002L});
public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x0000000200002000L});
public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x0000001000010010L});
public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x0000001000010000L});
public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x0000000200000000L});
public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x0000000400000000L});
public static final BitSet FOLLOW_41 = new BitSet(new long[]{0x000000A800010000L});
public static final BitSet FOLLOW_42 = new BitSet(new long[]{0xF804000000010010L,0x0000000000000002L});
public static final BitSet FOLLOW_43 = new BitSet(new long[]{0x0000004000000002L});
public static final BitSet FOLLOW_44 = new BitSet(new long[]{0x0000310000000800L});
public static final BitSet FOLLOW_45 = new BitSet(new long[]{0x0000040000000000L});
public static final BitSet FOLLOW_46 = new BitSet(new long[]{0x0000080000000002L});
public static final BitSet FOLLOW_47 = new BitSet(new long[]{0x0000200000000000L});
public static final BitSet FOLLOW_48 = new BitSet(new long[]{0x0000400000003000L});
public static final BitSet FOLLOW_49 = new BitSet(new long[]{0x0001800000010000L});
public static final BitSet FOLLOW_50 = new BitSet(new long[]{0x000C000000000010L});
public static final BitSet FOLLOW_51 = new BitSet(new long[]{0x0001000000010000L});
public static final BitSet FOLLOW_52 = new BitSet(new long[]{0xF800000000000010L,0x000000000003020BL});
public static final BitSet FOLLOW_53 = new BitSet(new long[]{0x0002000400000002L});
public static final BitSet FOLLOW_54 = new BitSet(new long[]{0x0002000000000002L});
public static final BitSet FOLLOW_55 = new BitSet(new long[]{0x0010000000000000L});
public static final BitSet FOLLOW_56 = new BitSet(new long[]{0x0040000000000010L});
public static final BitSet FOLLOW_57 = new BitSet(new long[]{0x0020000080000002L});
public static final BitSet FOLLOW_58 = new BitSet(new long[]{0x0000000004000000L});
public static final BitSet FOLLOW_59 = new BitSet(new long[]{0x0000000080000012L});
public static final BitSet FOLLOW_60 = new BitSet(new long[]{0x0080000000000000L});
public static final BitSet FOLLOW_61 = new BitSet(new long[]{0x0000080080000002L});
public static final BitSet FOLLOW_62 = new BitSet(new long[]{0x0700000000000000L});
public static final BitSet FOLLOW_63 = new BitSet(new long[]{0x0000000002002000L});
public static final BitSet FOLLOW_64 = new BitSet(new long[]{0xF804000004000010L,0x0000000000000002L});
public static final BitSet FOLLOW_65 = new BitSet(new long[]{0xF804000000000010L,0x0000000000000002L});
public static final BitSet FOLLOW_66 = new BitSet(new long[]{0xF800000000000010L,0x0000000000000209L});
public static final BitSet FOLLOW_67 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000004L});
public static final BitSet FOLLOW_68 = new BitSet(new long[]{0xF800000000000010L});
public static final BitSet FOLLOW_69 = new BitSet(new long[]{0x0040000000000002L});
public static final BitSet FOLLOW_70 = new BitSet(new long[]{0x0000000002000002L,0x0000000000000010L});
public static final BitSet FOLLOW_71 = new BitSet(new long[]{0x0000000004000010L});
public static final BitSet FOLLOW_72 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000010L});
public static final BitSet FOLLOW_73 = new BitSet(new long[]{0x0000000000000012L});
public static final BitSet FOLLOW_74 = new BitSet(new long[]{0xF800000000000010L,0x0000000000000002L});
public static final BitSet FOLLOW_75 = new BitSet(new long[]{0x0000000000000020L,0x0000000000000020L});
public static final BitSet FOLLOW_76 = new BitSet(new long[]{0x0000000000000002L,0x00000000000001C0L});
public static final BitSet FOLLOW_77 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000180L});
public static final BitSet FOLLOW_78 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000100L});
public static final BitSet FOLLOW_79 = new BitSet(new long[]{0x0000000002000012L});
public static final BitSet FOLLOW_80 = new BitSet(new long[]{0x0000000000008000L});
public static final BitSet FOLLOW_81 = new BitSet(new long[]{0x0004000000000010L});
public static final BitSet FOLLOW_82 = new BitSet(new long[]{0x0040000000000010L,0x0000000000000001L});
public static final BitSet FOLLOW_83 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000400L});
public static final BitSet FOLLOW_84 = new BitSet(new long[]{0x0000080000000000L});
public static final BitSet FOLLOW_85 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000800L});
}