package org.archstudio.prolog.xtext.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.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 org.archstudio.prolog.xtext.services.PrologGrammarAccess;
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 InternalPrologParser extends AbstractInternalAntlrParser {
public static final String[] tokenNames = new String[] {
"<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_ATOM", "RULE_OP1200XFX", "RULE_OP1200FX", "RULE_OP1150FX", "RULE_OP1100XFY", "RULE_OP1050XFY", "RULE_OP1000XFY", "RULE_OP954XFY", "RULE_OP900FY", "RULE_OP900FX", "RULE_OP700XFX", "RULE_OP600XFY", "RULE_OP500YFX", "RULE_OP500FX", "RULE_OP400YFX", "RULE_OP200XFX", "RULE_OP200XFY", "RULE_INT", "RULE_EXT_INT", "RULE_VARIABLE", "RULE_STRING", "RULE_WHITESPACE", "RULE_SINGLE_LINE_COMMENT", "'.'", "'!'", "'-'", "'('", "')'", "'['", "'|'", "']'"
};
public static final int RULE_EXT_INT=22;
public static final int RULE_OP400YFX=18;
public static final int T__29=29;
public static final int T__28=28;
public static final int T__27=27;
public static final int RULE_OP700XFX=14;
public static final int RULE_OP1200FX=6;
public static final int RULE_SINGLE_LINE_COMMENT=26;
public static final int EOF=-1;
public static final int RULE_ATOM=4;
public static final int RULE_OP500YFX=16;
public static final int RULE_OP1050XFY=9;
public static final int RULE_OP954XFY=11;
public static final int RULE_OP1200XFX=5;
public static final int T__30=30;
public static final int T__31=31;
public static final int RULE_STRING=24;
public static final int T__32=32;
public static final int T__33=33;
public static final int RULE_OP600XFY=15;
public static final int T__34=34;
public static final int RULE_OP900FY=12;
public static final int RULE_VARIABLE=23;
public static final int RULE_OP900FX=13;
public static final int RULE_OP200XFY=20;
public static final int RULE_OP200XFX=19;
public static final int RULE_OP1100XFY=8;
public static final int RULE_INT=21;
public static final int RULE_WHITESPACE=25;
public static final int RULE_OP1150FX=7;
public static final int RULE_OP1000XFY=10;
public static final int RULE_OP500FX=17;
// delegates
// delegators
public InternalPrologParser(TokenStream input) {
this(input, new RecognizerSharedState());
}
public InternalPrologParser(TokenStream input, RecognizerSharedState state) {
super(input, state);
}
public String[] getTokenNames() { return InternalPrologParser.tokenNames; }
public String getGrammarFileName() { return "../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g"; }
/*
This grammar contains a lot of empty actions to work around a bug in ANTLR.
Otherwise the ANTLR tool will create synpreds that cannot be compiled in some rare cases.
*/
private PrologGrammarAccess grammarAccess;
public InternalPrologParser(TokenStream input, PrologGrammarAccess grammarAccess) {
this(input);
this.grammarAccess = grammarAccess;
registerRules(grammarAccess.getGrammar());
}
@Override
protected String getFirstRuleName() {
return "Model";
}
@Override
protected PrologGrammarAccess getGrammarAccess() {
return grammarAccess;
}
// $ANTLR start "entryRuleModel"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:73:1: entryRuleModel returns [EObject current=null] : iv_ruleModel= ruleModel EOF ;
public final EObject entryRuleModel() throws RecognitionException {
EObject current = null;
EObject iv_ruleModel = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:74:2: (iv_ruleModel= ruleModel EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:75:2: iv_ruleModel= ruleModel EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getModelRule());
}
pushFollow(FOLLOW_ruleModel_in_entryRuleModel81);
iv_ruleModel=ruleModel();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleModel;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleModel91); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleModel"
// $ANTLR start "ruleModel"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:82:1: ruleModel returns [EObject current=null] : ( ( (lv_exps_0_0= ruleExpressionInfinity ) ) otherlv_1= '.' )+ ;
public final EObject ruleModel() throws RecognitionException {
EObject current = null;
Token otherlv_1=null;
EObject lv_exps_0_0 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:85:28: ( ( ( (lv_exps_0_0= ruleExpressionInfinity ) ) otherlv_1= '.' )+ )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:86:1: ( ( (lv_exps_0_0= ruleExpressionInfinity ) ) otherlv_1= '.' )+
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:86:1: ( ( (lv_exps_0_0= ruleExpressionInfinity ) ) otherlv_1= '.' )+
int cnt1=0;
loop1:
do {
int alt1=2;
int LA1_0 = input.LA(1);
if ( ((LA1_0>=RULE_ATOM && LA1_0<=RULE_INT)||(LA1_0>=RULE_VARIABLE && LA1_0<=RULE_STRING)||(LA1_0>=27 && LA1_0<=30)||LA1_0==32) ) {
alt1=1;
}
switch (alt1) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:86:2: ( (lv_exps_0_0= ruleExpressionInfinity ) ) otherlv_1= '.'
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:86:2: ( (lv_exps_0_0= ruleExpressionInfinity ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:87:1: (lv_exps_0_0= ruleExpressionInfinity )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:87:1: (lv_exps_0_0= ruleExpressionInfinity )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:88:3: lv_exps_0_0= ruleExpressionInfinity
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getModelAccess().getExpsExpressionInfinityParserRuleCall_0_0());
}
pushFollow(FOLLOW_ruleExpressionInfinity_in_ruleModel137);
lv_exps_0_0=ruleExpressionInfinity();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getModelRule());
}
add(
current,
"exps",
lv_exps_0_0,
"ExpressionInfinity");
afterParserOrEnumRuleCall();
}
}
}
otherlv_1=(Token)match(input,27,FOLLOW_27_in_ruleModel149); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_1, grammarAccess.getModelAccess().getFullStopKeyword_1());
}
}
break;
default :
if ( cnt1 >= 1 ) break loop1;
if (state.backtracking>0) {state.failed=true; return current;}
EarlyExitException eee =
new EarlyExitException(1, input);
throw eee;
}
cnt1++;
} while (true);
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleModel"
// $ANTLR start "entryRuleATOMS"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:116:1: entryRuleATOMS returns [String current=null] : iv_ruleATOMS= ruleATOMS EOF ;
public final String entryRuleATOMS() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleATOMS = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:117:2: (iv_ruleATOMS= ruleATOMS EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:118:2: iv_ruleATOMS= ruleATOMS EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getATOMSRule());
}
pushFollow(FOLLOW_ruleATOMS_in_entryRuleATOMS187);
iv_ruleATOMS=ruleATOMS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleATOMS.getText();
}
match(input,EOF,FOLLOW_EOF_in_entryRuleATOMS198); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleATOMS"
// $ANTLR start "ruleATOMS"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:125:1: ruleATOMS returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (kw= '.' | kw= '!' | this_ATOM_2= RULE_ATOM | this_OP1200XFX_3= RULE_OP1200XFX | this_OP1200FX_4= RULE_OP1200FX | this_OP1150FX_5= RULE_OP1150FX | this_OP1100XFY_6= RULE_OP1100XFY | this_OP1050XFY_7= RULE_OP1050XFY | this_OP1000XFY_8= RULE_OP1000XFY | this_OP954XFY_9= RULE_OP954XFY | this_OP900FY_10= RULE_OP900FY | this_OP900FX_11= RULE_OP900FX | this_OP700XFX_12= RULE_OP700XFX | this_OP600XFY_13= RULE_OP600XFY | this_OP500YFX_14= RULE_OP500YFX | this_OP500FX_15= RULE_OP500FX | this_OP400YFX_16= RULE_OP400YFX | this_OP200XFX_17= RULE_OP200XFX | this_OP200XFY_18= RULE_OP200XFY ) ;
public final AntlrDatatypeRuleToken ruleATOMS() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
Token kw=null;
Token this_ATOM_2=null;
Token this_OP1200XFX_3=null;
Token this_OP1200FX_4=null;
Token this_OP1150FX_5=null;
Token this_OP1100XFY_6=null;
Token this_OP1050XFY_7=null;
Token this_OP1000XFY_8=null;
Token this_OP954XFY_9=null;
Token this_OP900FY_10=null;
Token this_OP900FX_11=null;
Token this_OP700XFX_12=null;
Token this_OP600XFY_13=null;
Token this_OP500YFX_14=null;
Token this_OP500FX_15=null;
Token this_OP400YFX_16=null;
Token this_OP200XFX_17=null;
Token this_OP200XFY_18=null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:128:28: ( (kw= '.' | kw= '!' | this_ATOM_2= RULE_ATOM | this_OP1200XFX_3= RULE_OP1200XFX | this_OP1200FX_4= RULE_OP1200FX | this_OP1150FX_5= RULE_OP1150FX | this_OP1100XFY_6= RULE_OP1100XFY | this_OP1050XFY_7= RULE_OP1050XFY | this_OP1000XFY_8= RULE_OP1000XFY | this_OP954XFY_9= RULE_OP954XFY | this_OP900FY_10= RULE_OP900FY | this_OP900FX_11= RULE_OP900FX | this_OP700XFX_12= RULE_OP700XFX | this_OP600XFY_13= RULE_OP600XFY | this_OP500YFX_14= RULE_OP500YFX | this_OP500FX_15= RULE_OP500FX | this_OP400YFX_16= RULE_OP400YFX | this_OP200XFX_17= RULE_OP200XFX | this_OP200XFY_18= RULE_OP200XFY ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:129:1: (kw= '.' | kw= '!' | this_ATOM_2= RULE_ATOM | this_OP1200XFX_3= RULE_OP1200XFX | this_OP1200FX_4= RULE_OP1200FX | this_OP1150FX_5= RULE_OP1150FX | this_OP1100XFY_6= RULE_OP1100XFY | this_OP1050XFY_7= RULE_OP1050XFY | this_OP1000XFY_8= RULE_OP1000XFY | this_OP954XFY_9= RULE_OP954XFY | this_OP900FY_10= RULE_OP900FY | this_OP900FX_11= RULE_OP900FX | this_OP700XFX_12= RULE_OP700XFX | this_OP600XFY_13= RULE_OP600XFY | this_OP500YFX_14= RULE_OP500YFX | this_OP500FX_15= RULE_OP500FX | this_OP400YFX_16= RULE_OP400YFX | this_OP200XFX_17= RULE_OP200XFX | this_OP200XFY_18= RULE_OP200XFY )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:129:1: (kw= '.' | kw= '!' | this_ATOM_2= RULE_ATOM | this_OP1200XFX_3= RULE_OP1200XFX | this_OP1200FX_4= RULE_OP1200FX | this_OP1150FX_5= RULE_OP1150FX | this_OP1100XFY_6= RULE_OP1100XFY | this_OP1050XFY_7= RULE_OP1050XFY | this_OP1000XFY_8= RULE_OP1000XFY | this_OP954XFY_9= RULE_OP954XFY | this_OP900FY_10= RULE_OP900FY | this_OP900FX_11= RULE_OP900FX | this_OP700XFX_12= RULE_OP700XFX | this_OP600XFY_13= RULE_OP600XFY | this_OP500YFX_14= RULE_OP500YFX | this_OP500FX_15= RULE_OP500FX | this_OP400YFX_16= RULE_OP400YFX | this_OP200XFX_17= RULE_OP200XFX | this_OP200XFY_18= RULE_OP200XFY )
int alt2=19;
switch ( input.LA(1) ) {
case 27:
{
alt2=1;
}
break;
case 28:
{
alt2=2;
}
break;
case RULE_ATOM:
{
alt2=3;
}
break;
case RULE_OP1200XFX:
{
alt2=4;
}
break;
case RULE_OP1200FX:
{
alt2=5;
}
break;
case RULE_OP1150FX:
{
alt2=6;
}
break;
case RULE_OP1100XFY:
{
alt2=7;
}
break;
case RULE_OP1050XFY:
{
alt2=8;
}
break;
case RULE_OP1000XFY:
{
alt2=9;
}
break;
case RULE_OP954XFY:
{
alt2=10;
}
break;
case RULE_OP900FY:
{
alt2=11;
}
break;
case RULE_OP900FX:
{
alt2=12;
}
break;
case RULE_OP700XFX:
{
alt2=13;
}
break;
case RULE_OP600XFY:
{
alt2=14;
}
break;
case RULE_OP500YFX:
{
alt2=15;
}
break;
case RULE_OP500FX:
{
alt2=16;
}
break;
case RULE_OP400YFX:
{
alt2=17;
}
break;
case RULE_OP200XFX:
{
alt2=18;
}
break;
case RULE_OP200XFY:
{
alt2=19;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 2, 0, input);
throw nvae;
}
switch (alt2) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:130:2: kw= '.'
{
kw=(Token)match(input,27,FOLLOW_27_in_ruleATOMS236); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getATOMSAccess().getFullStopKeyword_0());
}
}
break;
case 2 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:137:2: kw= '!'
{
kw=(Token)match(input,28,FOLLOW_28_in_ruleATOMS255); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getATOMSAccess().getExclamationMarkKeyword_1());
}
}
break;
case 3 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:143:10: this_ATOM_2= RULE_ATOM
{
this_ATOM_2=(Token)match(input,RULE_ATOM,FOLLOW_RULE_ATOM_in_ruleATOMS276); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_ATOM_2);
}
if ( state.backtracking==0 ) {
newLeafNode(this_ATOM_2, grammarAccess.getATOMSAccess().getATOMTerminalRuleCall_2());
}
}
break;
case 4 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:151:10: this_OP1200XFX_3= RULE_OP1200XFX
{
this_OP1200XFX_3=(Token)match(input,RULE_OP1200XFX,FOLLOW_RULE_OP1200XFX_in_ruleATOMS302); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_OP1200XFX_3);
}
if ( state.backtracking==0 ) {
newLeafNode(this_OP1200XFX_3, grammarAccess.getATOMSAccess().getOP1200XFXTerminalRuleCall_3());
}
}
break;
case 5 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:159:10: this_OP1200FX_4= RULE_OP1200FX
{
this_OP1200FX_4=(Token)match(input,RULE_OP1200FX,FOLLOW_RULE_OP1200FX_in_ruleATOMS328); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_OP1200FX_4);
}
if ( state.backtracking==0 ) {
newLeafNode(this_OP1200FX_4, grammarAccess.getATOMSAccess().getOP1200FXTerminalRuleCall_4());
}
}
break;
case 6 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:167:10: this_OP1150FX_5= RULE_OP1150FX
{
this_OP1150FX_5=(Token)match(input,RULE_OP1150FX,FOLLOW_RULE_OP1150FX_in_ruleATOMS354); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_OP1150FX_5);
}
if ( state.backtracking==0 ) {
newLeafNode(this_OP1150FX_5, grammarAccess.getATOMSAccess().getOP1150FXTerminalRuleCall_5());
}
}
break;
case 7 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:175:10: this_OP1100XFY_6= RULE_OP1100XFY
{
this_OP1100XFY_6=(Token)match(input,RULE_OP1100XFY,FOLLOW_RULE_OP1100XFY_in_ruleATOMS380); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_OP1100XFY_6);
}
if ( state.backtracking==0 ) {
newLeafNode(this_OP1100XFY_6, grammarAccess.getATOMSAccess().getOP1100XFYTerminalRuleCall_6());
}
}
break;
case 8 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:183:10: this_OP1050XFY_7= RULE_OP1050XFY
{
this_OP1050XFY_7=(Token)match(input,RULE_OP1050XFY,FOLLOW_RULE_OP1050XFY_in_ruleATOMS406); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_OP1050XFY_7);
}
if ( state.backtracking==0 ) {
newLeafNode(this_OP1050XFY_7, grammarAccess.getATOMSAccess().getOP1050XFYTerminalRuleCall_7());
}
}
break;
case 9 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:191:10: this_OP1000XFY_8= RULE_OP1000XFY
{
this_OP1000XFY_8=(Token)match(input,RULE_OP1000XFY,FOLLOW_RULE_OP1000XFY_in_ruleATOMS432); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_OP1000XFY_8);
}
if ( state.backtracking==0 ) {
newLeafNode(this_OP1000XFY_8, grammarAccess.getATOMSAccess().getOP1000XFYTerminalRuleCall_8());
}
}
break;
case 10 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:199:10: this_OP954XFY_9= RULE_OP954XFY
{
this_OP954XFY_9=(Token)match(input,RULE_OP954XFY,FOLLOW_RULE_OP954XFY_in_ruleATOMS458); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_OP954XFY_9);
}
if ( state.backtracking==0 ) {
newLeafNode(this_OP954XFY_9, grammarAccess.getATOMSAccess().getOP954XFYTerminalRuleCall_9());
}
}
break;
case 11 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:207:10: this_OP900FY_10= RULE_OP900FY
{
this_OP900FY_10=(Token)match(input,RULE_OP900FY,FOLLOW_RULE_OP900FY_in_ruleATOMS484); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_OP900FY_10);
}
if ( state.backtracking==0 ) {
newLeafNode(this_OP900FY_10, grammarAccess.getATOMSAccess().getOP900FYTerminalRuleCall_10());
}
}
break;
case 12 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:215:10: this_OP900FX_11= RULE_OP900FX
{
this_OP900FX_11=(Token)match(input,RULE_OP900FX,FOLLOW_RULE_OP900FX_in_ruleATOMS510); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_OP900FX_11);
}
if ( state.backtracking==0 ) {
newLeafNode(this_OP900FX_11, grammarAccess.getATOMSAccess().getOP900FXTerminalRuleCall_11());
}
}
break;
case 13 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:223:10: this_OP700XFX_12= RULE_OP700XFX
{
this_OP700XFX_12=(Token)match(input,RULE_OP700XFX,FOLLOW_RULE_OP700XFX_in_ruleATOMS536); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_OP700XFX_12);
}
if ( state.backtracking==0 ) {
newLeafNode(this_OP700XFX_12, grammarAccess.getATOMSAccess().getOP700XFXTerminalRuleCall_12());
}
}
break;
case 14 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:231:10: this_OP600XFY_13= RULE_OP600XFY
{
this_OP600XFY_13=(Token)match(input,RULE_OP600XFY,FOLLOW_RULE_OP600XFY_in_ruleATOMS562); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_OP600XFY_13);
}
if ( state.backtracking==0 ) {
newLeafNode(this_OP600XFY_13, grammarAccess.getATOMSAccess().getOP600XFYTerminalRuleCall_13());
}
}
break;
case 15 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:239:10: this_OP500YFX_14= RULE_OP500YFX
{
this_OP500YFX_14=(Token)match(input,RULE_OP500YFX,FOLLOW_RULE_OP500YFX_in_ruleATOMS588); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_OP500YFX_14);
}
if ( state.backtracking==0 ) {
newLeafNode(this_OP500YFX_14, grammarAccess.getATOMSAccess().getOP500YFXTerminalRuleCall_14());
}
}
break;
case 16 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:247:10: this_OP500FX_15= RULE_OP500FX
{
this_OP500FX_15=(Token)match(input,RULE_OP500FX,FOLLOW_RULE_OP500FX_in_ruleATOMS614); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_OP500FX_15);
}
if ( state.backtracking==0 ) {
newLeafNode(this_OP500FX_15, grammarAccess.getATOMSAccess().getOP500FXTerminalRuleCall_15());
}
}
break;
case 17 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:255:10: this_OP400YFX_16= RULE_OP400YFX
{
this_OP400YFX_16=(Token)match(input,RULE_OP400YFX,FOLLOW_RULE_OP400YFX_in_ruleATOMS640); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_OP400YFX_16);
}
if ( state.backtracking==0 ) {
newLeafNode(this_OP400YFX_16, grammarAccess.getATOMSAccess().getOP400YFXTerminalRuleCall_16());
}
}
break;
case 18 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:263:10: this_OP200XFX_17= RULE_OP200XFX
{
this_OP200XFX_17=(Token)match(input,RULE_OP200XFX,FOLLOW_RULE_OP200XFX_in_ruleATOMS666); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_OP200XFX_17);
}
if ( state.backtracking==0 ) {
newLeafNode(this_OP200XFX_17, grammarAccess.getATOMSAccess().getOP200XFXTerminalRuleCall_17());
}
}
break;
case 19 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:271:10: this_OP200XFY_18= RULE_OP200XFY
{
this_OP200XFY_18=(Token)match(input,RULE_OP200XFY,FOLLOW_RULE_OP200XFY_in_ruleATOMS692); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_OP200XFY_18);
}
if ( state.backtracking==0 ) {
newLeafNode(this_OP200XFY_18, grammarAccess.getATOMSAccess().getOP200XFYTerminalRuleCall_18());
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleATOMS"
// $ANTLR start "entryRuleNUMBER"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:286:1: entryRuleNUMBER returns [String current=null] : iv_ruleNUMBER= ruleNUMBER EOF ;
public final String entryRuleNUMBER() throws RecognitionException {
String current = null;
AntlrDatatypeRuleToken iv_ruleNUMBER = null;
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:290:2: (iv_ruleNUMBER= ruleNUMBER EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:291:2: iv_ruleNUMBER= ruleNUMBER EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getNUMBERRule());
}
pushFollow(FOLLOW_ruleNUMBER_in_entryRuleNUMBER744);
iv_ruleNUMBER=ruleNUMBER();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleNUMBER.getText();
}
match(input,EOF,FOLLOW_EOF_in_entryRuleNUMBER755); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
myHiddenTokenState.restore();
}
return current;
}
// $ANTLR end "entryRuleNUMBER"
// $ANTLR start "ruleNUMBER"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:301:1: ruleNUMBER returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (kw= '-' )? this_INT_1= RULE_INT (kw= '.' (this_EXT_INT_3= RULE_EXT_INT | this_INT_4= RULE_INT ) )? ) ;
public final AntlrDatatypeRuleToken ruleNUMBER() throws RecognitionException {
AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken();
Token kw=null;
Token this_INT_1=null;
Token this_EXT_INT_3=null;
Token this_INT_4=null;
enterRule();
HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:305:28: ( ( (kw= '-' )? this_INT_1= RULE_INT (kw= '.' (this_EXT_INT_3= RULE_EXT_INT | this_INT_4= RULE_INT ) )? ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:306:1: ( (kw= '-' )? this_INT_1= RULE_INT (kw= '.' (this_EXT_INT_3= RULE_EXT_INT | this_INT_4= RULE_INT ) )? )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:306:1: ( (kw= '-' )? this_INT_1= RULE_INT (kw= '.' (this_EXT_INT_3= RULE_EXT_INT | this_INT_4= RULE_INT ) )? )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:306:2: (kw= '-' )? this_INT_1= RULE_INT (kw= '.' (this_EXT_INT_3= RULE_EXT_INT | this_INT_4= RULE_INT ) )?
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:306:2: (kw= '-' )?
int alt3=2;
int LA3_0 = input.LA(1);
if ( (LA3_0==29) ) {
alt3=1;
}
switch (alt3) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:307:2: kw= '-'
{
kw=(Token)match(input,29,FOLLOW_29_in_ruleNUMBER798); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getNUMBERAccess().getHyphenMinusKeyword_0());
}
}
break;
}
this_INT_1=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleNUMBER815); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_INT_1);
}
if ( state.backtracking==0 ) {
newLeafNode(this_INT_1, grammarAccess.getNUMBERAccess().getINTTerminalRuleCall_1());
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:319:1: (kw= '.' (this_EXT_INT_3= RULE_EXT_INT | this_INT_4= RULE_INT ) )?
int alt5=2;
int LA5_0 = input.LA(1);
if ( (LA5_0==27) ) {
int LA5_1 = input.LA(2);
if ( (LA5_1==RULE_INT) ) {
int LA5_3 = input.LA(3);
if ( (synpred22_InternalProlog()) ) {
alt5=1;
}
}
else if ( (LA5_1==RULE_EXT_INT) ) {
alt5=1;
}
}
switch (alt5) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:320:2: kw= '.' (this_EXT_INT_3= RULE_EXT_INT | this_INT_4= RULE_INT )
{
kw=(Token)match(input,27,FOLLOW_27_in_ruleNUMBER834); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(kw);
newLeafNode(kw, grammarAccess.getNUMBERAccess().getFullStopKeyword_2_0());
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:325:1: (this_EXT_INT_3= RULE_EXT_INT | this_INT_4= RULE_INT )
int alt4=2;
int LA4_0 = input.LA(1);
if ( (LA4_0==RULE_EXT_INT) ) {
alt4=1;
}
else if ( (LA4_0==RULE_INT) ) {
alt4=2;
}
else {
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 4, 0, input);
throw nvae;
}
switch (alt4) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:325:6: this_EXT_INT_3= RULE_EXT_INT
{
this_EXT_INT_3=(Token)match(input,RULE_EXT_INT,FOLLOW_RULE_EXT_INT_in_ruleNUMBER850); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_EXT_INT_3);
}
if ( state.backtracking==0 ) {
newLeafNode(this_EXT_INT_3, grammarAccess.getNUMBERAccess().getEXT_INTTerminalRuleCall_2_1_0());
}
}
break;
case 2 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:333:10: this_INT_4= RULE_INT
{
this_INT_4=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_ruleNUMBER876); if (state.failed) return current;
if ( state.backtracking==0 ) {
current.merge(this_INT_4);
}
if ( state.backtracking==0 ) {
newLeafNode(this_INT_4, grammarAccess.getNUMBERAccess().getINTTerminalRuleCall_2_1_1());
}
}
break;
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
myHiddenTokenState.restore();
}
return current;
}
// $ANTLR end "ruleNUMBER"
// $ANTLR start "entryRuleExpressionInfinity"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:351:1: entryRuleExpressionInfinity returns [EObject current=null] : iv_ruleExpressionInfinity= ruleExpressionInfinity EOF ;
public final EObject entryRuleExpressionInfinity() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpressionInfinity = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:352:2: (iv_ruleExpressionInfinity= ruleExpressionInfinity EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:353:2: iv_ruleExpressionInfinity= ruleExpressionInfinity EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpressionInfinityRule());
}
pushFollow(FOLLOW_ruleExpressionInfinity_in_entryRuleExpressionInfinity928);
iv_ruleExpressionInfinity=ruleExpressionInfinity();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleExpressionInfinity;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleExpressionInfinity938); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleExpressionInfinity"
// $ANTLR start "ruleExpressionInfinity"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:360:1: ruleExpressionInfinity returns [EObject current=null] : this_Expression1200xfx_0= ruleExpression1200xfx ;
public final EObject ruleExpressionInfinity() throws RecognitionException {
EObject current = null;
EObject this_Expression1200xfx_0 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:363:28: (this_Expression1200xfx_0= ruleExpression1200xfx )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:365:2: this_Expression1200xfx_0= ruleExpression1200xfx
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpressionInfinityAccess().getExpression1200xfxParserRuleCall());
}
pushFollow(FOLLOW_ruleExpression1200xfx_in_ruleExpressionInfinity987);
this_Expression1200xfx_0=ruleExpression1200xfx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_Expression1200xfx_0;
afterParserOrEnumRuleCall();
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleExpressionInfinity"
// $ANTLR start "entryRuleExpression1200xfx"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:384:1: entryRuleExpression1200xfx returns [EObject current=null] : iv_ruleExpression1200xfx= ruleExpression1200xfx EOF ;
public final EObject entryRuleExpression1200xfx() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpression1200xfx = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:385:2: (iv_ruleExpression1200xfx= ruleExpression1200xfx EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:386:2: iv_ruleExpression1200xfx= ruleExpression1200xfx EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression1200xfxRule());
}
pushFollow(FOLLOW_ruleExpression1200xfx_in_entryRuleExpression1200xfx1021);
iv_ruleExpression1200xfx=ruleExpression1200xfx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleExpression1200xfx;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleExpression1200xfx1031); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleExpression1200xfx"
// $ANTLR start "ruleExpression1200xfx"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:393:1: ruleExpression1200xfx returns [EObject current=null] : (this_Expression1200fx_0= ruleExpression1200fx ( () ( (lv_op_2_0= RULE_OP1200XFX ) ) ( (lv_right_3_0= ruleExpression1200fx ) ) )? ) ;
public final EObject ruleExpression1200xfx() throws RecognitionException {
EObject current = null;
Token lv_op_2_0=null;
EObject this_Expression1200fx_0 = null;
EObject lv_right_3_0 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:396:28: ( (this_Expression1200fx_0= ruleExpression1200fx ( () ( (lv_op_2_0= RULE_OP1200XFX ) ) ( (lv_right_3_0= ruleExpression1200fx ) ) )? ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:397:1: (this_Expression1200fx_0= ruleExpression1200fx ( () ( (lv_op_2_0= RULE_OP1200XFX ) ) ( (lv_right_3_0= ruleExpression1200fx ) ) )? )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:397:1: (this_Expression1200fx_0= ruleExpression1200fx ( () ( (lv_op_2_0= RULE_OP1200XFX ) ) ( (lv_right_3_0= ruleExpression1200fx ) ) )? )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:398:2: this_Expression1200fx_0= ruleExpression1200fx ( () ( (lv_op_2_0= RULE_OP1200XFX ) ) ( (lv_right_3_0= ruleExpression1200fx ) ) )?
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression1200xfxAccess().getExpression1200fxParserRuleCall_0());
}
pushFollow(FOLLOW_ruleExpression1200fx_in_ruleExpression1200xfx1081);
this_Expression1200fx_0=ruleExpression1200fx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_Expression1200fx_0;
afterParserOrEnumRuleCall();
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:409:1: ( () ( (lv_op_2_0= RULE_OP1200XFX ) ) ( (lv_right_3_0= ruleExpression1200fx ) ) )?
int alt6=2;
int LA6_0 = input.LA(1);
if ( (LA6_0==RULE_OP1200XFX) ) {
alt6=1;
}
switch (alt6) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:409:2: () ( (lv_op_2_0= RULE_OP1200XFX ) ) ( (lv_right_3_0= ruleExpression1200fx ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:409:2: ()
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:410:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElementAndSet(
grammarAccess.getExpression1200xfxAccess().getExpressionLeftAction_1_0(),
current);
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:418:2: ( (lv_op_2_0= RULE_OP1200XFX ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:419:1: (lv_op_2_0= RULE_OP1200XFX )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:419:1: (lv_op_2_0= RULE_OP1200XFX )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:420:3: lv_op_2_0= RULE_OP1200XFX
{
lv_op_2_0=(Token)match(input,RULE_OP1200XFX,FOLLOW_RULE_OP1200XFX_in_ruleExpression1200xfx1110); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_op_2_0, grammarAccess.getExpression1200xfxAccess().getOpOP1200XFXTerminalRuleCall_1_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getExpression1200xfxRule());
}
setWithLastConsumed(
current,
"op",
lv_op_2_0,
"OP1200XFX");
}
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:436:2: ( (lv_right_3_0= ruleExpression1200fx ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:437:1: (lv_right_3_0= ruleExpression1200fx )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:437:1: (lv_right_3_0= ruleExpression1200fx )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:438:3: lv_right_3_0= ruleExpression1200fx
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression1200xfxAccess().getRightExpression1200fxParserRuleCall_1_2_0());
}
pushFollow(FOLLOW_ruleExpression1200fx_in_ruleExpression1200xfx1136);
lv_right_3_0=ruleExpression1200fx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression1200xfxRule());
}
set(
current,
"right",
lv_right_3_0,
"Expression1200fx");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleExpression1200xfx"
// $ANTLR start "entryRuleExpression1200fx"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:462:1: entryRuleExpression1200fx returns [EObject current=null] : iv_ruleExpression1200fx= ruleExpression1200fx EOF ;
public final EObject entryRuleExpression1200fx() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpression1200fx = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:463:2: (iv_ruleExpression1200fx= ruleExpression1200fx EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:464:2: iv_ruleExpression1200fx= ruleExpression1200fx EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression1200fxRule());
}
pushFollow(FOLLOW_ruleExpression1200fx_in_entryRuleExpression1200fx1174);
iv_ruleExpression1200fx=ruleExpression1200fx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleExpression1200fx;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleExpression1200fx1184); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleExpression1200fx"
// $ANTLR start "ruleExpression1200fx"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:471:1: ruleExpression1200fx returns [EObject current=null] : ( ( (lv_op_0_0= RULE_OP1200FX ) )? ( (lv_right_1_0= ruleExpression1150fx ) ) ) ;
public final EObject ruleExpression1200fx() throws RecognitionException {
EObject current = null;
Token lv_op_0_0=null;
EObject lv_right_1_0 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:474:28: ( ( ( (lv_op_0_0= RULE_OP1200FX ) )? ( (lv_right_1_0= ruleExpression1150fx ) ) ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:475:1: ( ( (lv_op_0_0= RULE_OP1200FX ) )? ( (lv_right_1_0= ruleExpression1150fx ) ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:475:1: ( ( (lv_op_0_0= RULE_OP1200FX ) )? ( (lv_right_1_0= ruleExpression1150fx ) ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:475:2: ( (lv_op_0_0= RULE_OP1200FX ) )? ( (lv_right_1_0= ruleExpression1150fx ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:475:2: ( (lv_op_0_0= RULE_OP1200FX ) )?
int alt7=2;
alt7 = dfa7.predict(input);
switch (alt7) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:476:1: (lv_op_0_0= RULE_OP1200FX )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:476:1: (lv_op_0_0= RULE_OP1200FX )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:477:3: lv_op_0_0= RULE_OP1200FX
{
lv_op_0_0=(Token)match(input,RULE_OP1200FX,FOLLOW_RULE_OP1200FX_in_ruleExpression1200fx1226); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_op_0_0, grammarAccess.getExpression1200fxAccess().getOpOP1200FXTerminalRuleCall_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getExpression1200fxRule());
}
setWithLastConsumed(
current,
"op",
lv_op_0_0,
"OP1200FX");
}
}
}
break;
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:493:3: ( (lv_right_1_0= ruleExpression1150fx ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:494:1: (lv_right_1_0= ruleExpression1150fx )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:494:1: (lv_right_1_0= ruleExpression1150fx )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:495:3: lv_right_1_0= ruleExpression1150fx
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression1200fxAccess().getRightExpression1150fxParserRuleCall_1_0());
}
pushFollow(FOLLOW_ruleExpression1150fx_in_ruleExpression1200fx1253);
lv_right_1_0=ruleExpression1150fx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression1200fxRule());
}
set(
current,
"right",
lv_right_1_0,
"Expression1150fx");
afterParserOrEnumRuleCall();
}
}
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleExpression1200fx"
// $ANTLR start "entryRuleExpression1150fx"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:519:1: entryRuleExpression1150fx returns [EObject current=null] : iv_ruleExpression1150fx= ruleExpression1150fx EOF ;
public final EObject entryRuleExpression1150fx() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpression1150fx = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:520:2: (iv_ruleExpression1150fx= ruleExpression1150fx EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:521:2: iv_ruleExpression1150fx= ruleExpression1150fx EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression1150fxRule());
}
pushFollow(FOLLOW_ruleExpression1150fx_in_entryRuleExpression1150fx1289);
iv_ruleExpression1150fx=ruleExpression1150fx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleExpression1150fx;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleExpression1150fx1299); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleExpression1150fx"
// $ANTLR start "ruleExpression1150fx"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:528:1: ruleExpression1150fx returns [EObject current=null] : ( ( (lv_op_0_0= RULE_OP1150FX ) )? ( (lv_right_1_0= ruleExpression1100xfy ) ) ) ;
public final EObject ruleExpression1150fx() throws RecognitionException {
EObject current = null;
Token lv_op_0_0=null;
EObject lv_right_1_0 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:531:28: ( ( ( (lv_op_0_0= RULE_OP1150FX ) )? ( (lv_right_1_0= ruleExpression1100xfy ) ) ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:532:1: ( ( (lv_op_0_0= RULE_OP1150FX ) )? ( (lv_right_1_0= ruleExpression1100xfy ) ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:532:1: ( ( (lv_op_0_0= RULE_OP1150FX ) )? ( (lv_right_1_0= ruleExpression1100xfy ) ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:532:2: ( (lv_op_0_0= RULE_OP1150FX ) )? ( (lv_right_1_0= ruleExpression1100xfy ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:532:2: ( (lv_op_0_0= RULE_OP1150FX ) )?
int alt8=2;
alt8 = dfa8.predict(input);
switch (alt8) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:533:1: (lv_op_0_0= RULE_OP1150FX )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:533:1: (lv_op_0_0= RULE_OP1150FX )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:534:3: lv_op_0_0= RULE_OP1150FX
{
lv_op_0_0=(Token)match(input,RULE_OP1150FX,FOLLOW_RULE_OP1150FX_in_ruleExpression1150fx1341); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_op_0_0, grammarAccess.getExpression1150fxAccess().getOpOP1150FXTerminalRuleCall_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getExpression1150fxRule());
}
setWithLastConsumed(
current,
"op",
lv_op_0_0,
"OP1150FX");
}
}
}
break;
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:550:3: ( (lv_right_1_0= ruleExpression1100xfy ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:551:1: (lv_right_1_0= ruleExpression1100xfy )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:551:1: (lv_right_1_0= ruleExpression1100xfy )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:552:3: lv_right_1_0= ruleExpression1100xfy
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression1150fxAccess().getRightExpression1100xfyParserRuleCall_1_0());
}
pushFollow(FOLLOW_ruleExpression1100xfy_in_ruleExpression1150fx1368);
lv_right_1_0=ruleExpression1100xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression1150fxRule());
}
set(
current,
"right",
lv_right_1_0,
"Expression1100xfy");
afterParserOrEnumRuleCall();
}
}
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleExpression1150fx"
// $ANTLR start "entryRuleExpression1100xfy"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:576:1: entryRuleExpression1100xfy returns [EObject current=null] : iv_ruleExpression1100xfy= ruleExpression1100xfy EOF ;
public final EObject entryRuleExpression1100xfy() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpression1100xfy = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:577:2: (iv_ruleExpression1100xfy= ruleExpression1100xfy EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:578:2: iv_ruleExpression1100xfy= ruleExpression1100xfy EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression1100xfyRule());
}
pushFollow(FOLLOW_ruleExpression1100xfy_in_entryRuleExpression1100xfy1404);
iv_ruleExpression1100xfy=ruleExpression1100xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleExpression1100xfy;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleExpression1100xfy1414); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleExpression1100xfy"
// $ANTLR start "ruleExpression1100xfy"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:585:1: ruleExpression1100xfy returns [EObject current=null] : (this_Expression1050xfy_0= ruleExpression1050xfy ( () ( (lv_op_2_0= RULE_OP1100XFY ) ) ( (lv_right_3_0= ruleExpression1100xfy ) ) )? ) ;
public final EObject ruleExpression1100xfy() throws RecognitionException {
EObject current = null;
Token lv_op_2_0=null;
EObject this_Expression1050xfy_0 = null;
EObject lv_right_3_0 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:588:28: ( (this_Expression1050xfy_0= ruleExpression1050xfy ( () ( (lv_op_2_0= RULE_OP1100XFY ) ) ( (lv_right_3_0= ruleExpression1100xfy ) ) )? ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:589:1: (this_Expression1050xfy_0= ruleExpression1050xfy ( () ( (lv_op_2_0= RULE_OP1100XFY ) ) ( (lv_right_3_0= ruleExpression1100xfy ) ) )? )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:589:1: (this_Expression1050xfy_0= ruleExpression1050xfy ( () ( (lv_op_2_0= RULE_OP1100XFY ) ) ( (lv_right_3_0= ruleExpression1100xfy ) ) )? )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:590:2: this_Expression1050xfy_0= ruleExpression1050xfy ( () ( (lv_op_2_0= RULE_OP1100XFY ) ) ( (lv_right_3_0= ruleExpression1100xfy ) ) )?
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression1100xfyAccess().getExpression1050xfyParserRuleCall_0());
}
pushFollow(FOLLOW_ruleExpression1050xfy_in_ruleExpression1100xfy1464);
this_Expression1050xfy_0=ruleExpression1050xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_Expression1050xfy_0;
afterParserOrEnumRuleCall();
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:601:1: ( () ( (lv_op_2_0= RULE_OP1100XFY ) ) ( (lv_right_3_0= ruleExpression1100xfy ) ) )?
int alt9=2;
int LA9_0 = input.LA(1);
if ( (LA9_0==RULE_OP1100XFY) ) {
alt9=1;
}
switch (alt9) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:601:2: () ( (lv_op_2_0= RULE_OP1100XFY ) ) ( (lv_right_3_0= ruleExpression1100xfy ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:601:2: ()
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:602:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElementAndSet(
grammarAccess.getExpression1100xfyAccess().getExpressionLeftAction_1_0(),
current);
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:610:2: ( (lv_op_2_0= RULE_OP1100XFY ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:611:1: (lv_op_2_0= RULE_OP1100XFY )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:611:1: (lv_op_2_0= RULE_OP1100XFY )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:612:3: lv_op_2_0= RULE_OP1100XFY
{
lv_op_2_0=(Token)match(input,RULE_OP1100XFY,FOLLOW_RULE_OP1100XFY_in_ruleExpression1100xfy1493); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_op_2_0, grammarAccess.getExpression1100xfyAccess().getOpOP1100XFYTerminalRuleCall_1_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getExpression1100xfyRule());
}
setWithLastConsumed(
current,
"op",
lv_op_2_0,
"OP1100XFY");
}
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:628:2: ( (lv_right_3_0= ruleExpression1100xfy ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:629:1: (lv_right_3_0= ruleExpression1100xfy )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:629:1: (lv_right_3_0= ruleExpression1100xfy )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:630:3: lv_right_3_0= ruleExpression1100xfy
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression1100xfyAccess().getRightExpression1100xfyParserRuleCall_1_2_0());
}
pushFollow(FOLLOW_ruleExpression1100xfy_in_ruleExpression1100xfy1519);
lv_right_3_0=ruleExpression1100xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression1100xfyRule());
}
set(
current,
"right",
lv_right_3_0,
"Expression1100xfy");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleExpression1100xfy"
// $ANTLR start "entryRuleExpression1050xfy"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:654:1: entryRuleExpression1050xfy returns [EObject current=null] : iv_ruleExpression1050xfy= ruleExpression1050xfy EOF ;
public final EObject entryRuleExpression1050xfy() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpression1050xfy = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:655:2: (iv_ruleExpression1050xfy= ruleExpression1050xfy EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:656:2: iv_ruleExpression1050xfy= ruleExpression1050xfy EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression1050xfyRule());
}
pushFollow(FOLLOW_ruleExpression1050xfy_in_entryRuleExpression1050xfy1557);
iv_ruleExpression1050xfy=ruleExpression1050xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleExpression1050xfy;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleExpression1050xfy1567); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleExpression1050xfy"
// $ANTLR start "ruleExpression1050xfy"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:663:1: ruleExpression1050xfy returns [EObject current=null] : (this_Expression1000xfy_0= ruleExpression1000xfy ( () ( (lv_op_2_0= RULE_OP1050XFY ) ) ( (lv_right_3_0= ruleExpression1050xfy ) ) )? ) ;
public final EObject ruleExpression1050xfy() throws RecognitionException {
EObject current = null;
Token lv_op_2_0=null;
EObject this_Expression1000xfy_0 = null;
EObject lv_right_3_0 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:666:28: ( (this_Expression1000xfy_0= ruleExpression1000xfy ( () ( (lv_op_2_0= RULE_OP1050XFY ) ) ( (lv_right_3_0= ruleExpression1050xfy ) ) )? ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:667:1: (this_Expression1000xfy_0= ruleExpression1000xfy ( () ( (lv_op_2_0= RULE_OP1050XFY ) ) ( (lv_right_3_0= ruleExpression1050xfy ) ) )? )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:667:1: (this_Expression1000xfy_0= ruleExpression1000xfy ( () ( (lv_op_2_0= RULE_OP1050XFY ) ) ( (lv_right_3_0= ruleExpression1050xfy ) ) )? )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:668:2: this_Expression1000xfy_0= ruleExpression1000xfy ( () ( (lv_op_2_0= RULE_OP1050XFY ) ) ( (lv_right_3_0= ruleExpression1050xfy ) ) )?
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression1050xfyAccess().getExpression1000xfyParserRuleCall_0());
}
pushFollow(FOLLOW_ruleExpression1000xfy_in_ruleExpression1050xfy1617);
this_Expression1000xfy_0=ruleExpression1000xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_Expression1000xfy_0;
afterParserOrEnumRuleCall();
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:679:1: ( () ( (lv_op_2_0= RULE_OP1050XFY ) ) ( (lv_right_3_0= ruleExpression1050xfy ) ) )?
int alt10=2;
int LA10_0 = input.LA(1);
if ( (LA10_0==RULE_OP1050XFY) ) {
alt10=1;
}
switch (alt10) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:679:2: () ( (lv_op_2_0= RULE_OP1050XFY ) ) ( (lv_right_3_0= ruleExpression1050xfy ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:679:2: ()
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:680:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElementAndSet(
grammarAccess.getExpression1050xfyAccess().getExpressionLeftAction_1_0(),
current);
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:688:2: ( (lv_op_2_0= RULE_OP1050XFY ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:689:1: (lv_op_2_0= RULE_OP1050XFY )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:689:1: (lv_op_2_0= RULE_OP1050XFY )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:690:3: lv_op_2_0= RULE_OP1050XFY
{
lv_op_2_0=(Token)match(input,RULE_OP1050XFY,FOLLOW_RULE_OP1050XFY_in_ruleExpression1050xfy1646); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_op_2_0, grammarAccess.getExpression1050xfyAccess().getOpOP1050XFYTerminalRuleCall_1_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getExpression1050xfyRule());
}
setWithLastConsumed(
current,
"op",
lv_op_2_0,
"OP1050XFY");
}
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:706:2: ( (lv_right_3_0= ruleExpression1050xfy ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:707:1: (lv_right_3_0= ruleExpression1050xfy )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:707:1: (lv_right_3_0= ruleExpression1050xfy )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:708:3: lv_right_3_0= ruleExpression1050xfy
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression1050xfyAccess().getRightExpression1050xfyParserRuleCall_1_2_0());
}
pushFollow(FOLLOW_ruleExpression1050xfy_in_ruleExpression1050xfy1672);
lv_right_3_0=ruleExpression1050xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression1050xfyRule());
}
set(
current,
"right",
lv_right_3_0,
"Expression1050xfy");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleExpression1050xfy"
// $ANTLR start "entryRuleExpression1000xfy"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:732:1: entryRuleExpression1000xfy returns [EObject current=null] : iv_ruleExpression1000xfy= ruleExpression1000xfy EOF ;
public final EObject entryRuleExpression1000xfy() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpression1000xfy = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:733:2: (iv_ruleExpression1000xfy= ruleExpression1000xfy EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:734:2: iv_ruleExpression1000xfy= ruleExpression1000xfy EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression1000xfyRule());
}
pushFollow(FOLLOW_ruleExpression1000xfy_in_entryRuleExpression1000xfy1710);
iv_ruleExpression1000xfy=ruleExpression1000xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleExpression1000xfy;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleExpression1000xfy1720); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleExpression1000xfy"
// $ANTLR start "ruleExpression1000xfy"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:741:1: ruleExpression1000xfy returns [EObject current=null] : (this_Expression954xfy_0= ruleExpression954xfy ( () ( (lv_op_2_0= RULE_OP1000XFY ) ) ( (lv_right_3_0= ruleExpression1000xfy ) ) )? ) ;
public final EObject ruleExpression1000xfy() throws RecognitionException {
EObject current = null;
Token lv_op_2_0=null;
EObject this_Expression954xfy_0 = null;
EObject lv_right_3_0 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:744:28: ( (this_Expression954xfy_0= ruleExpression954xfy ( () ( (lv_op_2_0= RULE_OP1000XFY ) ) ( (lv_right_3_0= ruleExpression1000xfy ) ) )? ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:745:1: (this_Expression954xfy_0= ruleExpression954xfy ( () ( (lv_op_2_0= RULE_OP1000XFY ) ) ( (lv_right_3_0= ruleExpression1000xfy ) ) )? )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:745:1: (this_Expression954xfy_0= ruleExpression954xfy ( () ( (lv_op_2_0= RULE_OP1000XFY ) ) ( (lv_right_3_0= ruleExpression1000xfy ) ) )? )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:746:2: this_Expression954xfy_0= ruleExpression954xfy ( () ( (lv_op_2_0= RULE_OP1000XFY ) ) ( (lv_right_3_0= ruleExpression1000xfy ) ) )?
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression1000xfyAccess().getExpression954xfyParserRuleCall_0());
}
pushFollow(FOLLOW_ruleExpression954xfy_in_ruleExpression1000xfy1770);
this_Expression954xfy_0=ruleExpression954xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_Expression954xfy_0;
afterParserOrEnumRuleCall();
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:757:1: ( () ( (lv_op_2_0= RULE_OP1000XFY ) ) ( (lv_right_3_0= ruleExpression1000xfy ) ) )?
int alt11=2;
int LA11_0 = input.LA(1);
if ( (LA11_0==RULE_OP1000XFY) ) {
alt11=1;
}
switch (alt11) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:757:2: () ( (lv_op_2_0= RULE_OP1000XFY ) ) ( (lv_right_3_0= ruleExpression1000xfy ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:757:2: ()
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:758:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElementAndSet(
grammarAccess.getExpression1000xfyAccess().getExpressionLeftAction_1_0(),
current);
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:766:2: ( (lv_op_2_0= RULE_OP1000XFY ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:767:1: (lv_op_2_0= RULE_OP1000XFY )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:767:1: (lv_op_2_0= RULE_OP1000XFY )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:768:3: lv_op_2_0= RULE_OP1000XFY
{
lv_op_2_0=(Token)match(input,RULE_OP1000XFY,FOLLOW_RULE_OP1000XFY_in_ruleExpression1000xfy1799); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_op_2_0, grammarAccess.getExpression1000xfyAccess().getOpOP1000XFYTerminalRuleCall_1_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getExpression1000xfyRule());
}
setWithLastConsumed(
current,
"op",
lv_op_2_0,
"OP1000XFY");
}
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:784:2: ( (lv_right_3_0= ruleExpression1000xfy ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:785:1: (lv_right_3_0= ruleExpression1000xfy )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:785:1: (lv_right_3_0= ruleExpression1000xfy )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:786:3: lv_right_3_0= ruleExpression1000xfy
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression1000xfyAccess().getRightExpression1000xfyParserRuleCall_1_2_0());
}
pushFollow(FOLLOW_ruleExpression1000xfy_in_ruleExpression1000xfy1825);
lv_right_3_0=ruleExpression1000xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression1000xfyRule());
}
set(
current,
"right",
lv_right_3_0,
"Expression1000xfy");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleExpression1000xfy"
// $ANTLR start "entryRuleExpression954xfy"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:810:1: entryRuleExpression954xfy returns [EObject current=null] : iv_ruleExpression954xfy= ruleExpression954xfy EOF ;
public final EObject entryRuleExpression954xfy() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpression954xfy = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:811:2: (iv_ruleExpression954xfy= ruleExpression954xfy EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:812:2: iv_ruleExpression954xfy= ruleExpression954xfy EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression954xfyRule());
}
pushFollow(FOLLOW_ruleExpression954xfy_in_entryRuleExpression954xfy1863);
iv_ruleExpression954xfy=ruleExpression954xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleExpression954xfy;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleExpression954xfy1873); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleExpression954xfy"
// $ANTLR start "ruleExpression954xfy"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:819:1: ruleExpression954xfy returns [EObject current=null] : (this_Expression900fy_0= ruleExpression900fy ( () ( (lv_op_2_0= RULE_OP954XFY ) ) ( (lv_right_3_0= ruleExpression954xfy ) ) )? ) ;
public final EObject ruleExpression954xfy() throws RecognitionException {
EObject current = null;
Token lv_op_2_0=null;
EObject this_Expression900fy_0 = null;
EObject lv_right_3_0 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:822:28: ( (this_Expression900fy_0= ruleExpression900fy ( () ( (lv_op_2_0= RULE_OP954XFY ) ) ( (lv_right_3_0= ruleExpression954xfy ) ) )? ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:823:1: (this_Expression900fy_0= ruleExpression900fy ( () ( (lv_op_2_0= RULE_OP954XFY ) ) ( (lv_right_3_0= ruleExpression954xfy ) ) )? )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:823:1: (this_Expression900fy_0= ruleExpression900fy ( () ( (lv_op_2_0= RULE_OP954XFY ) ) ( (lv_right_3_0= ruleExpression954xfy ) ) )? )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:824:2: this_Expression900fy_0= ruleExpression900fy ( () ( (lv_op_2_0= RULE_OP954XFY ) ) ( (lv_right_3_0= ruleExpression954xfy ) ) )?
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression954xfyAccess().getExpression900fyParserRuleCall_0());
}
pushFollow(FOLLOW_ruleExpression900fy_in_ruleExpression954xfy1923);
this_Expression900fy_0=ruleExpression900fy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_Expression900fy_0;
afterParserOrEnumRuleCall();
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:835:1: ( () ( (lv_op_2_0= RULE_OP954XFY ) ) ( (lv_right_3_0= ruleExpression954xfy ) ) )?
int alt12=2;
int LA12_0 = input.LA(1);
if ( (LA12_0==RULE_OP954XFY) ) {
alt12=1;
}
switch (alt12) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:835:2: () ( (lv_op_2_0= RULE_OP954XFY ) ) ( (lv_right_3_0= ruleExpression954xfy ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:835:2: ()
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:836:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElementAndSet(
grammarAccess.getExpression954xfyAccess().getExpressionLeftAction_1_0(),
current);
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:844:2: ( (lv_op_2_0= RULE_OP954XFY ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:845:1: (lv_op_2_0= RULE_OP954XFY )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:845:1: (lv_op_2_0= RULE_OP954XFY )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:846:3: lv_op_2_0= RULE_OP954XFY
{
lv_op_2_0=(Token)match(input,RULE_OP954XFY,FOLLOW_RULE_OP954XFY_in_ruleExpression954xfy1952); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_op_2_0, grammarAccess.getExpression954xfyAccess().getOpOP954XFYTerminalRuleCall_1_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getExpression954xfyRule());
}
setWithLastConsumed(
current,
"op",
lv_op_2_0,
"OP954XFY");
}
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:862:2: ( (lv_right_3_0= ruleExpression954xfy ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:863:1: (lv_right_3_0= ruleExpression954xfy )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:863:1: (lv_right_3_0= ruleExpression954xfy )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:864:3: lv_right_3_0= ruleExpression954xfy
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression954xfyAccess().getRightExpression954xfyParserRuleCall_1_2_0());
}
pushFollow(FOLLOW_ruleExpression954xfy_in_ruleExpression954xfy1978);
lv_right_3_0=ruleExpression954xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression954xfyRule());
}
set(
current,
"right",
lv_right_3_0,
"Expression954xfy");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleExpression954xfy"
// $ANTLR start "entryRuleExpression900fy"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:888:1: entryRuleExpression900fy returns [EObject current=null] : iv_ruleExpression900fy= ruleExpression900fy EOF ;
public final EObject entryRuleExpression900fy() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpression900fy = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:889:2: (iv_ruleExpression900fy= ruleExpression900fy EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:890:2: iv_ruleExpression900fy= ruleExpression900fy EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression900fyRule());
}
pushFollow(FOLLOW_ruleExpression900fy_in_entryRuleExpression900fy2016);
iv_ruleExpression900fy=ruleExpression900fy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleExpression900fy;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleExpression900fy2026); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleExpression900fy"
// $ANTLR start "ruleExpression900fy"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:897:1: ruleExpression900fy returns [EObject current=null] : ( ( ( (lv_op_0_0= RULE_OP900FY ) ) ( (lv_right_1_0= ruleExpression900fy ) ) ) | ( (lv_right_2_0= ruleExpression900fx ) ) ) ;
public final EObject ruleExpression900fy() throws RecognitionException {
EObject current = null;
Token lv_op_0_0=null;
EObject lv_right_1_0 = null;
EObject lv_right_2_0 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:900:28: ( ( ( ( (lv_op_0_0= RULE_OP900FY ) ) ( (lv_right_1_0= ruleExpression900fy ) ) ) | ( (lv_right_2_0= ruleExpression900fx ) ) ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:901:1: ( ( ( (lv_op_0_0= RULE_OP900FY ) ) ( (lv_right_1_0= ruleExpression900fy ) ) ) | ( (lv_right_2_0= ruleExpression900fx ) ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:901:1: ( ( ( (lv_op_0_0= RULE_OP900FY ) ) ( (lv_right_1_0= ruleExpression900fy ) ) ) | ( (lv_right_2_0= ruleExpression900fx ) ) )
int alt13=2;
alt13 = dfa13.predict(input);
switch (alt13) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:901:2: ( ( (lv_op_0_0= RULE_OP900FY ) ) ( (lv_right_1_0= ruleExpression900fy ) ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:901:2: ( ( (lv_op_0_0= RULE_OP900FY ) ) ( (lv_right_1_0= ruleExpression900fy ) ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:901:3: ( (lv_op_0_0= RULE_OP900FY ) ) ( (lv_right_1_0= ruleExpression900fy ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:901:3: ( (lv_op_0_0= RULE_OP900FY ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:902:1: (lv_op_0_0= RULE_OP900FY )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:902:1: (lv_op_0_0= RULE_OP900FY )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:903:3: lv_op_0_0= RULE_OP900FY
{
lv_op_0_0=(Token)match(input,RULE_OP900FY,FOLLOW_RULE_OP900FY_in_ruleExpression900fy2069); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_op_0_0, grammarAccess.getExpression900fyAccess().getOpOP900FYTerminalRuleCall_0_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getExpression900fyRule());
}
setWithLastConsumed(
current,
"op",
lv_op_0_0,
"OP900FY");
}
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:919:2: ( (lv_right_1_0= ruleExpression900fy ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:920:1: (lv_right_1_0= ruleExpression900fy )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:920:1: (lv_right_1_0= ruleExpression900fy )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:921:3: lv_right_1_0= ruleExpression900fy
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression900fyAccess().getRightExpression900fyParserRuleCall_0_1_0());
}
pushFollow(FOLLOW_ruleExpression900fy_in_ruleExpression900fy2095);
lv_right_1_0=ruleExpression900fy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression900fyRule());
}
set(
current,
"right",
lv_right_1_0,
"Expression900fy");
afterParserOrEnumRuleCall();
}
}
}
}
}
break;
case 2 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:938:6: ( (lv_right_2_0= ruleExpression900fx ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:938:6: ( (lv_right_2_0= ruleExpression900fx ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:939:1: (lv_right_2_0= ruleExpression900fx )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:939:1: (lv_right_2_0= ruleExpression900fx )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:940:3: lv_right_2_0= ruleExpression900fx
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression900fyAccess().getRightExpression900fxParserRuleCall_1_0());
}
pushFollow(FOLLOW_ruleExpression900fx_in_ruleExpression900fy2123);
lv_right_2_0=ruleExpression900fx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression900fyRule());
}
set(
current,
"right",
lv_right_2_0,
"Expression900fx");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleExpression900fy"
// $ANTLR start "entryRuleExpression900fx"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:964:1: entryRuleExpression900fx returns [EObject current=null] : iv_ruleExpression900fx= ruleExpression900fx EOF ;
public final EObject entryRuleExpression900fx() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpression900fx = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:965:2: (iv_ruleExpression900fx= ruleExpression900fx EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:966:2: iv_ruleExpression900fx= ruleExpression900fx EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression900fxRule());
}
pushFollow(FOLLOW_ruleExpression900fx_in_entryRuleExpression900fx2159);
iv_ruleExpression900fx=ruleExpression900fx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleExpression900fx;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleExpression900fx2169); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleExpression900fx"
// $ANTLR start "ruleExpression900fx"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:973:1: ruleExpression900fx returns [EObject current=null] : ( ( (lv_op_0_0= RULE_OP900FX ) )? ( (lv_right_1_0= ruleExpression700xfx ) ) ) ;
public final EObject ruleExpression900fx() throws RecognitionException {
EObject current = null;
Token lv_op_0_0=null;
EObject lv_right_1_0 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:976:28: ( ( ( (lv_op_0_0= RULE_OP900FX ) )? ( (lv_right_1_0= ruleExpression700xfx ) ) ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:977:1: ( ( (lv_op_0_0= RULE_OP900FX ) )? ( (lv_right_1_0= ruleExpression700xfx ) ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:977:1: ( ( (lv_op_0_0= RULE_OP900FX ) )? ( (lv_right_1_0= ruleExpression700xfx ) ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:977:2: ( (lv_op_0_0= RULE_OP900FX ) )? ( (lv_right_1_0= ruleExpression700xfx ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:977:2: ( (lv_op_0_0= RULE_OP900FX ) )?
int alt14=2;
alt14 = dfa14.predict(input);
switch (alt14) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:978:1: (lv_op_0_0= RULE_OP900FX )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:978:1: (lv_op_0_0= RULE_OP900FX )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:979:3: lv_op_0_0= RULE_OP900FX
{
lv_op_0_0=(Token)match(input,RULE_OP900FX,FOLLOW_RULE_OP900FX_in_ruleExpression900fx2211); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_op_0_0, grammarAccess.getExpression900fxAccess().getOpOP900FXTerminalRuleCall_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getExpression900fxRule());
}
setWithLastConsumed(
current,
"op",
lv_op_0_0,
"OP900FX");
}
}
}
break;
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:995:3: ( (lv_right_1_0= ruleExpression700xfx ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:996:1: (lv_right_1_0= ruleExpression700xfx )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:996:1: (lv_right_1_0= ruleExpression700xfx )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:997:3: lv_right_1_0= ruleExpression700xfx
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression900fxAccess().getRightExpression700xfxParserRuleCall_1_0());
}
pushFollow(FOLLOW_ruleExpression700xfx_in_ruleExpression900fx2238);
lv_right_1_0=ruleExpression700xfx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression900fxRule());
}
set(
current,
"right",
lv_right_1_0,
"Expression700xfx");
afterParserOrEnumRuleCall();
}
}
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleExpression900fx"
// $ANTLR start "entryRuleExpression700xfx"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1021:1: entryRuleExpression700xfx returns [EObject current=null] : iv_ruleExpression700xfx= ruleExpression700xfx EOF ;
public final EObject entryRuleExpression700xfx() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpression700xfx = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1022:2: (iv_ruleExpression700xfx= ruleExpression700xfx EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1023:2: iv_ruleExpression700xfx= ruleExpression700xfx EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression700xfxRule());
}
pushFollow(FOLLOW_ruleExpression700xfx_in_entryRuleExpression700xfx2274);
iv_ruleExpression700xfx=ruleExpression700xfx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleExpression700xfx;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleExpression700xfx2284); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleExpression700xfx"
// $ANTLR start "ruleExpression700xfx"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1030:1: ruleExpression700xfx returns [EObject current=null] : (this_Expression600xfy_0= ruleExpression600xfy ( () ( (lv_op_2_0= RULE_OP700XFX ) ) ( (lv_right_3_0= ruleExpression600xfy ) ) )? ) ;
public final EObject ruleExpression700xfx() throws RecognitionException {
EObject current = null;
Token lv_op_2_0=null;
EObject this_Expression600xfy_0 = null;
EObject lv_right_3_0 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1033:28: ( (this_Expression600xfy_0= ruleExpression600xfy ( () ( (lv_op_2_0= RULE_OP700XFX ) ) ( (lv_right_3_0= ruleExpression600xfy ) ) )? ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1034:1: (this_Expression600xfy_0= ruleExpression600xfy ( () ( (lv_op_2_0= RULE_OP700XFX ) ) ( (lv_right_3_0= ruleExpression600xfy ) ) )? )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1034:1: (this_Expression600xfy_0= ruleExpression600xfy ( () ( (lv_op_2_0= RULE_OP700XFX ) ) ( (lv_right_3_0= ruleExpression600xfy ) ) )? )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1035:2: this_Expression600xfy_0= ruleExpression600xfy ( () ( (lv_op_2_0= RULE_OP700XFX ) ) ( (lv_right_3_0= ruleExpression600xfy ) ) )?
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression700xfxAccess().getExpression600xfyParserRuleCall_0());
}
pushFollow(FOLLOW_ruleExpression600xfy_in_ruleExpression700xfx2334);
this_Expression600xfy_0=ruleExpression600xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_Expression600xfy_0;
afterParserOrEnumRuleCall();
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1046:1: ( () ( (lv_op_2_0= RULE_OP700XFX ) ) ( (lv_right_3_0= ruleExpression600xfy ) ) )?
int alt15=2;
int LA15_0 = input.LA(1);
if ( (LA15_0==RULE_OP700XFX) ) {
alt15=1;
}
switch (alt15) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1046:2: () ( (lv_op_2_0= RULE_OP700XFX ) ) ( (lv_right_3_0= ruleExpression600xfy ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1046:2: ()
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1047:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElementAndSet(
grammarAccess.getExpression700xfxAccess().getExpressionLeftAction_1_0(),
current);
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1055:2: ( (lv_op_2_0= RULE_OP700XFX ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1056:1: (lv_op_2_0= RULE_OP700XFX )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1056:1: (lv_op_2_0= RULE_OP700XFX )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1057:3: lv_op_2_0= RULE_OP700XFX
{
lv_op_2_0=(Token)match(input,RULE_OP700XFX,FOLLOW_RULE_OP700XFX_in_ruleExpression700xfx2363); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_op_2_0, grammarAccess.getExpression700xfxAccess().getOpOP700XFXTerminalRuleCall_1_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getExpression700xfxRule());
}
setWithLastConsumed(
current,
"op",
lv_op_2_0,
"OP700XFX");
}
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1073:2: ( (lv_right_3_0= ruleExpression600xfy ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1074:1: (lv_right_3_0= ruleExpression600xfy )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1074:1: (lv_right_3_0= ruleExpression600xfy )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1075:3: lv_right_3_0= ruleExpression600xfy
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression700xfxAccess().getRightExpression600xfyParserRuleCall_1_2_0());
}
pushFollow(FOLLOW_ruleExpression600xfy_in_ruleExpression700xfx2389);
lv_right_3_0=ruleExpression600xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression700xfxRule());
}
set(
current,
"right",
lv_right_3_0,
"Expression600xfy");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleExpression700xfx"
// $ANTLR start "entryRuleExpression600xfy"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1099:1: entryRuleExpression600xfy returns [EObject current=null] : iv_ruleExpression600xfy= ruleExpression600xfy EOF ;
public final EObject entryRuleExpression600xfy() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpression600xfy = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1100:2: (iv_ruleExpression600xfy= ruleExpression600xfy EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1101:2: iv_ruleExpression600xfy= ruleExpression600xfy EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression600xfyRule());
}
pushFollow(FOLLOW_ruleExpression600xfy_in_entryRuleExpression600xfy2427);
iv_ruleExpression600xfy=ruleExpression600xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleExpression600xfy;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleExpression600xfy2437); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleExpression600xfy"
// $ANTLR start "ruleExpression600xfy"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1108:1: ruleExpression600xfy returns [EObject current=null] : (this_Expression500yfx_0= ruleExpression500yfx ( () ( (lv_op_2_0= RULE_OP600XFY ) ) ( (lv_right_3_0= ruleExpression600xfy ) ) )? ) ;
public final EObject ruleExpression600xfy() throws RecognitionException {
EObject current = null;
Token lv_op_2_0=null;
EObject this_Expression500yfx_0 = null;
EObject lv_right_3_0 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1111:28: ( (this_Expression500yfx_0= ruleExpression500yfx ( () ( (lv_op_2_0= RULE_OP600XFY ) ) ( (lv_right_3_0= ruleExpression600xfy ) ) )? ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1112:1: (this_Expression500yfx_0= ruleExpression500yfx ( () ( (lv_op_2_0= RULE_OP600XFY ) ) ( (lv_right_3_0= ruleExpression600xfy ) ) )? )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1112:1: (this_Expression500yfx_0= ruleExpression500yfx ( () ( (lv_op_2_0= RULE_OP600XFY ) ) ( (lv_right_3_0= ruleExpression600xfy ) ) )? )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1113:2: this_Expression500yfx_0= ruleExpression500yfx ( () ( (lv_op_2_0= RULE_OP600XFY ) ) ( (lv_right_3_0= ruleExpression600xfy ) ) )?
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression600xfyAccess().getExpression500yfxParserRuleCall_0());
}
pushFollow(FOLLOW_ruleExpression500yfx_in_ruleExpression600xfy2487);
this_Expression500yfx_0=ruleExpression500yfx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_Expression500yfx_0;
afterParserOrEnumRuleCall();
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1124:1: ( () ( (lv_op_2_0= RULE_OP600XFY ) ) ( (lv_right_3_0= ruleExpression600xfy ) ) )?
int alt16=2;
int LA16_0 = input.LA(1);
if ( (LA16_0==RULE_OP600XFY) ) {
alt16=1;
}
switch (alt16) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1124:2: () ( (lv_op_2_0= RULE_OP600XFY ) ) ( (lv_right_3_0= ruleExpression600xfy ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1124:2: ()
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1125:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElementAndSet(
grammarAccess.getExpression600xfyAccess().getExpressionLeftAction_1_0(),
current);
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1133:2: ( (lv_op_2_0= RULE_OP600XFY ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1134:1: (lv_op_2_0= RULE_OP600XFY )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1134:1: (lv_op_2_0= RULE_OP600XFY )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1135:3: lv_op_2_0= RULE_OP600XFY
{
lv_op_2_0=(Token)match(input,RULE_OP600XFY,FOLLOW_RULE_OP600XFY_in_ruleExpression600xfy2516); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_op_2_0, grammarAccess.getExpression600xfyAccess().getOpOP600XFYTerminalRuleCall_1_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getExpression600xfyRule());
}
setWithLastConsumed(
current,
"op",
lv_op_2_0,
"OP600XFY");
}
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1151:2: ( (lv_right_3_0= ruleExpression600xfy ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1152:1: (lv_right_3_0= ruleExpression600xfy )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1152:1: (lv_right_3_0= ruleExpression600xfy )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1153:3: lv_right_3_0= ruleExpression600xfy
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression600xfyAccess().getRightExpression600xfyParserRuleCall_1_2_0());
}
pushFollow(FOLLOW_ruleExpression600xfy_in_ruleExpression600xfy2542);
lv_right_3_0=ruleExpression600xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression600xfyRule());
}
set(
current,
"right",
lv_right_3_0,
"Expression600xfy");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleExpression600xfy"
// $ANTLR start "entryRuleExpression500yfx"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1177:1: entryRuleExpression500yfx returns [EObject current=null] : iv_ruleExpression500yfx= ruleExpression500yfx EOF ;
public final EObject entryRuleExpression500yfx() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpression500yfx = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1178:2: (iv_ruleExpression500yfx= ruleExpression500yfx EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1179:2: iv_ruleExpression500yfx= ruleExpression500yfx EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression500yfxRule());
}
pushFollow(FOLLOW_ruleExpression500yfx_in_entryRuleExpression500yfx2580);
iv_ruleExpression500yfx=ruleExpression500yfx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleExpression500yfx;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleExpression500yfx2590); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleExpression500yfx"
// $ANTLR start "ruleExpression500yfx"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1186:1: ruleExpression500yfx returns [EObject current=null] : (this_Expression500fx_0= ruleExpression500fx ( () ( (lv_op_2_0= RULE_OP500YFX ) ) ( (lv_right_3_0= ruleExpression500fx ) ) )* ) ;
public final EObject ruleExpression500yfx() throws RecognitionException {
EObject current = null;
Token lv_op_2_0=null;
EObject this_Expression500fx_0 = null;
EObject lv_right_3_0 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1189:28: ( (this_Expression500fx_0= ruleExpression500fx ( () ( (lv_op_2_0= RULE_OP500YFX ) ) ( (lv_right_3_0= ruleExpression500fx ) ) )* ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1190:1: (this_Expression500fx_0= ruleExpression500fx ( () ( (lv_op_2_0= RULE_OP500YFX ) ) ( (lv_right_3_0= ruleExpression500fx ) ) )* )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1190:1: (this_Expression500fx_0= ruleExpression500fx ( () ( (lv_op_2_0= RULE_OP500YFX ) ) ( (lv_right_3_0= ruleExpression500fx ) ) )* )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1191:2: this_Expression500fx_0= ruleExpression500fx ( () ( (lv_op_2_0= RULE_OP500YFX ) ) ( (lv_right_3_0= ruleExpression500fx ) ) )*
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression500yfxAccess().getExpression500fxParserRuleCall_0());
}
pushFollow(FOLLOW_ruleExpression500fx_in_ruleExpression500yfx2640);
this_Expression500fx_0=ruleExpression500fx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_Expression500fx_0;
afterParserOrEnumRuleCall();
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1202:1: ( () ( (lv_op_2_0= RULE_OP500YFX ) ) ( (lv_right_3_0= ruleExpression500fx ) ) )*
loop17:
do {
int alt17=2;
int LA17_0 = input.LA(1);
if ( (LA17_0==RULE_OP500YFX) ) {
alt17=1;
}
switch (alt17) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1202:2: () ( (lv_op_2_0= RULE_OP500YFX ) ) ( (lv_right_3_0= ruleExpression500fx ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1202:2: ()
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1203:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElementAndSet(
grammarAccess.getExpression500yfxAccess().getExpressionLeftAction_1_0(),
current);
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1211:2: ( (lv_op_2_0= RULE_OP500YFX ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1212:1: (lv_op_2_0= RULE_OP500YFX )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1212:1: (lv_op_2_0= RULE_OP500YFX )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1213:3: lv_op_2_0= RULE_OP500YFX
{
lv_op_2_0=(Token)match(input,RULE_OP500YFX,FOLLOW_RULE_OP500YFX_in_ruleExpression500yfx2669); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_op_2_0, grammarAccess.getExpression500yfxAccess().getOpOP500YFXTerminalRuleCall_1_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getExpression500yfxRule());
}
setWithLastConsumed(
current,
"op",
lv_op_2_0,
"OP500YFX");
}
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1229:2: ( (lv_right_3_0= ruleExpression500fx ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1230:1: (lv_right_3_0= ruleExpression500fx )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1230:1: (lv_right_3_0= ruleExpression500fx )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1231:3: lv_right_3_0= ruleExpression500fx
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression500yfxAccess().getRightExpression500fxParserRuleCall_1_2_0());
}
pushFollow(FOLLOW_ruleExpression500fx_in_ruleExpression500yfx2695);
lv_right_3_0=ruleExpression500fx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression500yfxRule());
}
set(
current,
"right",
lv_right_3_0,
"Expression500fx");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop17;
}
} while (true);
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleExpression500yfx"
// $ANTLR start "entryRuleExpression500fx"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1255:1: entryRuleExpression500fx returns [EObject current=null] : iv_ruleExpression500fx= ruleExpression500fx EOF ;
public final EObject entryRuleExpression500fx() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpression500fx = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1256:2: (iv_ruleExpression500fx= ruleExpression500fx EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1257:2: iv_ruleExpression500fx= ruleExpression500fx EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression500fxRule());
}
pushFollow(FOLLOW_ruleExpression500fx_in_entryRuleExpression500fx2733);
iv_ruleExpression500fx=ruleExpression500fx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleExpression500fx;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleExpression500fx2743); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleExpression500fx"
// $ANTLR start "ruleExpression500fx"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1264:1: ruleExpression500fx returns [EObject current=null] : ( ( (lv_op_0_0= RULE_OP500FX ) )? ( (lv_right_1_0= ruleExpression400yfx ) ) ) ;
public final EObject ruleExpression500fx() throws RecognitionException {
EObject current = null;
Token lv_op_0_0=null;
EObject lv_right_1_0 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1267:28: ( ( ( (lv_op_0_0= RULE_OP500FX ) )? ( (lv_right_1_0= ruleExpression400yfx ) ) ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1268:1: ( ( (lv_op_0_0= RULE_OP500FX ) )? ( (lv_right_1_0= ruleExpression400yfx ) ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1268:1: ( ( (lv_op_0_0= RULE_OP500FX ) )? ( (lv_right_1_0= ruleExpression400yfx ) ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1268:2: ( (lv_op_0_0= RULE_OP500FX ) )? ( (lv_right_1_0= ruleExpression400yfx ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1268:2: ( (lv_op_0_0= RULE_OP500FX ) )?
int alt18=2;
alt18 = dfa18.predict(input);
switch (alt18) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1269:1: (lv_op_0_0= RULE_OP500FX )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1269:1: (lv_op_0_0= RULE_OP500FX )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1270:3: lv_op_0_0= RULE_OP500FX
{
lv_op_0_0=(Token)match(input,RULE_OP500FX,FOLLOW_RULE_OP500FX_in_ruleExpression500fx2785); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_op_0_0, grammarAccess.getExpression500fxAccess().getOpOP500FXTerminalRuleCall_0_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getExpression500fxRule());
}
setWithLastConsumed(
current,
"op",
lv_op_0_0,
"OP500FX");
}
}
}
break;
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1286:3: ( (lv_right_1_0= ruleExpression400yfx ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1287:1: (lv_right_1_0= ruleExpression400yfx )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1287:1: (lv_right_1_0= ruleExpression400yfx )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1288:3: lv_right_1_0= ruleExpression400yfx
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression500fxAccess().getRightExpression400yfxParserRuleCall_1_0());
}
pushFollow(FOLLOW_ruleExpression400yfx_in_ruleExpression500fx2812);
lv_right_1_0=ruleExpression400yfx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression500fxRule());
}
set(
current,
"right",
lv_right_1_0,
"Expression400yfx");
afterParserOrEnumRuleCall();
}
}
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleExpression500fx"
// $ANTLR start "entryRuleExpression400yfx"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1312:1: entryRuleExpression400yfx returns [EObject current=null] : iv_ruleExpression400yfx= ruleExpression400yfx EOF ;
public final EObject entryRuleExpression400yfx() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpression400yfx = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1313:2: (iv_ruleExpression400yfx= ruleExpression400yfx EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1314:2: iv_ruleExpression400yfx= ruleExpression400yfx EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression400yfxRule());
}
pushFollow(FOLLOW_ruleExpression400yfx_in_entryRuleExpression400yfx2848);
iv_ruleExpression400yfx=ruleExpression400yfx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleExpression400yfx;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleExpression400yfx2858); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleExpression400yfx"
// $ANTLR start "ruleExpression400yfx"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1321:1: ruleExpression400yfx returns [EObject current=null] : (this_Expression200xfx_0= ruleExpression200xfx ( () ( (lv_op_2_0= RULE_OP400YFX ) ) ( (lv_right_3_0= ruleExpression200xfx ) ) )* ) ;
public final EObject ruleExpression400yfx() throws RecognitionException {
EObject current = null;
Token lv_op_2_0=null;
EObject this_Expression200xfx_0 = null;
EObject lv_right_3_0 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1324:28: ( (this_Expression200xfx_0= ruleExpression200xfx ( () ( (lv_op_2_0= RULE_OP400YFX ) ) ( (lv_right_3_0= ruleExpression200xfx ) ) )* ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1325:1: (this_Expression200xfx_0= ruleExpression200xfx ( () ( (lv_op_2_0= RULE_OP400YFX ) ) ( (lv_right_3_0= ruleExpression200xfx ) ) )* )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1325:1: (this_Expression200xfx_0= ruleExpression200xfx ( () ( (lv_op_2_0= RULE_OP400YFX ) ) ( (lv_right_3_0= ruleExpression200xfx ) ) )* )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1326:2: this_Expression200xfx_0= ruleExpression200xfx ( () ( (lv_op_2_0= RULE_OP400YFX ) ) ( (lv_right_3_0= ruleExpression200xfx ) ) )*
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression400yfxAccess().getExpression200xfxParserRuleCall_0());
}
pushFollow(FOLLOW_ruleExpression200xfx_in_ruleExpression400yfx2908);
this_Expression200xfx_0=ruleExpression200xfx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_Expression200xfx_0;
afterParserOrEnumRuleCall();
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1337:1: ( () ( (lv_op_2_0= RULE_OP400YFX ) ) ( (lv_right_3_0= ruleExpression200xfx ) ) )*
loop19:
do {
int alt19=2;
int LA19_0 = input.LA(1);
if ( (LA19_0==RULE_OP400YFX) ) {
alt19=1;
}
switch (alt19) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1337:2: () ( (lv_op_2_0= RULE_OP400YFX ) ) ( (lv_right_3_0= ruleExpression200xfx ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1337:2: ()
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1338:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElementAndSet(
grammarAccess.getExpression400yfxAccess().getExpressionLeftAction_1_0(),
current);
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1346:2: ( (lv_op_2_0= RULE_OP400YFX ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1347:1: (lv_op_2_0= RULE_OP400YFX )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1347:1: (lv_op_2_0= RULE_OP400YFX )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1348:3: lv_op_2_0= RULE_OP400YFX
{
lv_op_2_0=(Token)match(input,RULE_OP400YFX,FOLLOW_RULE_OP400YFX_in_ruleExpression400yfx2937); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_op_2_0, grammarAccess.getExpression400yfxAccess().getOpOP400YFXTerminalRuleCall_1_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getExpression400yfxRule());
}
setWithLastConsumed(
current,
"op",
lv_op_2_0,
"OP400YFX");
}
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1364:2: ( (lv_right_3_0= ruleExpression200xfx ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1365:1: (lv_right_3_0= ruleExpression200xfx )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1365:1: (lv_right_3_0= ruleExpression200xfx )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1366:3: lv_right_3_0= ruleExpression200xfx
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression400yfxAccess().getRightExpression200xfxParserRuleCall_1_2_0());
}
pushFollow(FOLLOW_ruleExpression200xfx_in_ruleExpression400yfx2963);
lv_right_3_0=ruleExpression200xfx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression400yfxRule());
}
set(
current,
"right",
lv_right_3_0,
"Expression200xfx");
afterParserOrEnumRuleCall();
}
}
}
}
break;
default :
break loop19;
}
} while (true);
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleExpression400yfx"
// $ANTLR start "entryRuleExpression200xfx"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1390:1: entryRuleExpression200xfx returns [EObject current=null] : iv_ruleExpression200xfx= ruleExpression200xfx EOF ;
public final EObject entryRuleExpression200xfx() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpression200xfx = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1391:2: (iv_ruleExpression200xfx= ruleExpression200xfx EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1392:2: iv_ruleExpression200xfx= ruleExpression200xfx EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression200xfxRule());
}
pushFollow(FOLLOW_ruleExpression200xfx_in_entryRuleExpression200xfx3001);
iv_ruleExpression200xfx=ruleExpression200xfx();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleExpression200xfx;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleExpression200xfx3011); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleExpression200xfx"
// $ANTLR start "ruleExpression200xfx"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1399:1: ruleExpression200xfx returns [EObject current=null] : (this_Expression200xfy_0= ruleExpression200xfy ( () ( (lv_op_2_0= RULE_OP200XFX ) ) ( (lv_right_3_0= ruleExpression200xfy ) ) )? ) ;
public final EObject ruleExpression200xfx() throws RecognitionException {
EObject current = null;
Token lv_op_2_0=null;
EObject this_Expression200xfy_0 = null;
EObject lv_right_3_0 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1402:28: ( (this_Expression200xfy_0= ruleExpression200xfy ( () ( (lv_op_2_0= RULE_OP200XFX ) ) ( (lv_right_3_0= ruleExpression200xfy ) ) )? ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1403:1: (this_Expression200xfy_0= ruleExpression200xfy ( () ( (lv_op_2_0= RULE_OP200XFX ) ) ( (lv_right_3_0= ruleExpression200xfy ) ) )? )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1403:1: (this_Expression200xfy_0= ruleExpression200xfy ( () ( (lv_op_2_0= RULE_OP200XFX ) ) ( (lv_right_3_0= ruleExpression200xfy ) ) )? )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1404:2: this_Expression200xfy_0= ruleExpression200xfy ( () ( (lv_op_2_0= RULE_OP200XFX ) ) ( (lv_right_3_0= ruleExpression200xfy ) ) )?
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression200xfxAccess().getExpression200xfyParserRuleCall_0());
}
pushFollow(FOLLOW_ruleExpression200xfy_in_ruleExpression200xfx3061);
this_Expression200xfy_0=ruleExpression200xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_Expression200xfy_0;
afterParserOrEnumRuleCall();
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1415:1: ( () ( (lv_op_2_0= RULE_OP200XFX ) ) ( (lv_right_3_0= ruleExpression200xfy ) ) )?
int alt20=2;
int LA20_0 = input.LA(1);
if ( (LA20_0==RULE_OP200XFX) ) {
alt20=1;
}
switch (alt20) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1415:2: () ( (lv_op_2_0= RULE_OP200XFX ) ) ( (lv_right_3_0= ruleExpression200xfy ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1415:2: ()
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1416:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElementAndSet(
grammarAccess.getExpression200xfxAccess().getExpressionLeftAction_1_0(),
current);
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1424:2: ( (lv_op_2_0= RULE_OP200XFX ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1425:1: (lv_op_2_0= RULE_OP200XFX )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1425:1: (lv_op_2_0= RULE_OP200XFX )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1426:3: lv_op_2_0= RULE_OP200XFX
{
lv_op_2_0=(Token)match(input,RULE_OP200XFX,FOLLOW_RULE_OP200XFX_in_ruleExpression200xfx3090); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_op_2_0, grammarAccess.getExpression200xfxAccess().getOpOP200XFXTerminalRuleCall_1_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getExpression200xfxRule());
}
setWithLastConsumed(
current,
"op",
lv_op_2_0,
"OP200XFX");
}
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1442:2: ( (lv_right_3_0= ruleExpression200xfy ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1443:1: (lv_right_3_0= ruleExpression200xfy )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1443:1: (lv_right_3_0= ruleExpression200xfy )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1444:3: lv_right_3_0= ruleExpression200xfy
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression200xfxAccess().getRightExpression200xfyParserRuleCall_1_2_0());
}
pushFollow(FOLLOW_ruleExpression200xfy_in_ruleExpression200xfx3116);
lv_right_3_0=ruleExpression200xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression200xfxRule());
}
set(
current,
"right",
lv_right_3_0,
"Expression200xfy");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleExpression200xfx"
// $ANTLR start "entryRuleExpression200xfy"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1468:1: entryRuleExpression200xfy returns [EObject current=null] : iv_ruleExpression200xfy= ruleExpression200xfy EOF ;
public final EObject entryRuleExpression200xfy() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpression200xfy = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1469:2: (iv_ruleExpression200xfy= ruleExpression200xfy EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1470:2: iv_ruleExpression200xfy= ruleExpression200xfy EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression200xfyRule());
}
pushFollow(FOLLOW_ruleExpression200xfy_in_entryRuleExpression200xfy3154);
iv_ruleExpression200xfy=ruleExpression200xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleExpression200xfy;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleExpression200xfy3164); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleExpression200xfy"
// $ANTLR start "ruleExpression200xfy"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1477:1: ruleExpression200xfy returns [EObject current=null] : (this_Expression0_0= ruleExpression0 ( () ( (lv_op_2_0= RULE_OP200XFY ) ) ( (lv_right_3_0= ruleExpression200xfy ) ) )? ) ;
public final EObject ruleExpression200xfy() throws RecognitionException {
EObject current = null;
Token lv_op_2_0=null;
EObject this_Expression0_0 = null;
EObject lv_right_3_0 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1480:28: ( (this_Expression0_0= ruleExpression0 ( () ( (lv_op_2_0= RULE_OP200XFY ) ) ( (lv_right_3_0= ruleExpression200xfy ) ) )? ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1481:1: (this_Expression0_0= ruleExpression0 ( () ( (lv_op_2_0= RULE_OP200XFY ) ) ( (lv_right_3_0= ruleExpression200xfy ) ) )? )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1481:1: (this_Expression0_0= ruleExpression0 ( () ( (lv_op_2_0= RULE_OP200XFY ) ) ( (lv_right_3_0= ruleExpression200xfy ) ) )? )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1482:2: this_Expression0_0= ruleExpression0 ( () ( (lv_op_2_0= RULE_OP200XFY ) ) ( (lv_right_3_0= ruleExpression200xfy ) ) )?
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression200xfyAccess().getExpression0ParserRuleCall_0());
}
pushFollow(FOLLOW_ruleExpression0_in_ruleExpression200xfy3214);
this_Expression0_0=ruleExpression0();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_Expression0_0;
afterParserOrEnumRuleCall();
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1493:1: ( () ( (lv_op_2_0= RULE_OP200XFY ) ) ( (lv_right_3_0= ruleExpression200xfy ) ) )?
int alt21=2;
int LA21_0 = input.LA(1);
if ( (LA21_0==RULE_OP200XFY) ) {
alt21=1;
}
switch (alt21) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1493:2: () ( (lv_op_2_0= RULE_OP200XFY ) ) ( (lv_right_3_0= ruleExpression200xfy ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1493:2: ()
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1494:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElementAndSet(
grammarAccess.getExpression200xfyAccess().getExpressionLeftAction_1_0(),
current);
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1502:2: ( (lv_op_2_0= RULE_OP200XFY ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1503:1: (lv_op_2_0= RULE_OP200XFY )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1503:1: (lv_op_2_0= RULE_OP200XFY )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1504:3: lv_op_2_0= RULE_OP200XFY
{
lv_op_2_0=(Token)match(input,RULE_OP200XFY,FOLLOW_RULE_OP200XFY_in_ruleExpression200xfy3243); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_op_2_0, grammarAccess.getExpression200xfyAccess().getOpOP200XFYTerminalRuleCall_1_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getExpression200xfyRule());
}
setWithLastConsumed(
current,
"op",
lv_op_2_0,
"OP200XFY");
}
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1520:2: ( (lv_right_3_0= ruleExpression200xfy ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1521:1: (lv_right_3_0= ruleExpression200xfy )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1521:1: (lv_right_3_0= ruleExpression200xfy )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1522:3: lv_right_3_0= ruleExpression200xfy
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression200xfyAccess().getRightExpression200xfyParserRuleCall_1_2_0());
}
pushFollow(FOLLOW_ruleExpression200xfy_in_ruleExpression200xfy3269);
lv_right_3_0=ruleExpression200xfy();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression200xfyRule());
}
set(
current,
"right",
lv_right_3_0,
"Expression200xfy");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleExpression200xfy"
// $ANTLR start "entryRuleExpression0"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1546:1: entryRuleExpression0 returns [EObject current=null] : iv_ruleExpression0= ruleExpression0 EOF ;
public final EObject entryRuleExpression0() throws RecognitionException {
EObject current = null;
EObject iv_ruleExpression0 = null;
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1547:2: (iv_ruleExpression0= ruleExpression0 EOF )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1548:2: iv_ruleExpression0= ruleExpression0 EOF
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression0Rule());
}
pushFollow(FOLLOW_ruleExpression0_in_entryRuleExpression03307);
iv_ruleExpression0=ruleExpression0();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current =iv_ruleExpression0;
}
match(input,EOF,FOLLOW_EOF_in_entryRuleExpression03317); if (state.failed) return current;
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "entryRuleExpression0"
// $ANTLR start "ruleExpression0"
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1555:1: ruleExpression0 returns [EObject current=null] : ( ( () ( (lv_atom_1_0= ruleATOMS ) ) (otherlv_2= '(' ( (lv_terms_3_0= ruleExpressionInfinity ) ) otherlv_4= ')' )? ) | ( () ( (lv_name_6_0= RULE_VARIABLE ) ) ) | ( () ( (lv_value_8_0= RULE_STRING ) ) ) | ( () ( (lv_value_10_0= ruleNUMBER ) ) ) | ( () otherlv_12= '[' ( ( (lv_head_13_0= ruleExpressionInfinity ) ) (otherlv_14= '|' ( (lv_tail_15_0= ruleExpressionInfinity ) ) )? )? otherlv_16= ']' ) | (otherlv_17= '(' this_ExpressionInfinity_18= ruleExpressionInfinity otherlv_19= ')' ) ) ;
public final EObject ruleExpression0() throws RecognitionException {
EObject current = null;
Token otherlv_2=null;
Token otherlv_4=null;
Token lv_name_6_0=null;
Token lv_value_8_0=null;
Token otherlv_12=null;
Token otherlv_14=null;
Token otherlv_16=null;
Token otherlv_17=null;
Token otherlv_19=null;
AntlrDatatypeRuleToken lv_atom_1_0 = null;
EObject lv_terms_3_0 = null;
AntlrDatatypeRuleToken lv_value_10_0 = null;
EObject lv_head_13_0 = null;
EObject lv_tail_15_0 = null;
EObject this_ExpressionInfinity_18 = null;
enterRule();
try {
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1558:28: ( ( ( () ( (lv_atom_1_0= ruleATOMS ) ) (otherlv_2= '(' ( (lv_terms_3_0= ruleExpressionInfinity ) ) otherlv_4= ')' )? ) | ( () ( (lv_name_6_0= RULE_VARIABLE ) ) ) | ( () ( (lv_value_8_0= RULE_STRING ) ) ) | ( () ( (lv_value_10_0= ruleNUMBER ) ) ) | ( () otherlv_12= '[' ( ( (lv_head_13_0= ruleExpressionInfinity ) ) (otherlv_14= '|' ( (lv_tail_15_0= ruleExpressionInfinity ) ) )? )? otherlv_16= ']' ) | (otherlv_17= '(' this_ExpressionInfinity_18= ruleExpressionInfinity otherlv_19= ')' ) ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1559:1: ( ( () ( (lv_atom_1_0= ruleATOMS ) ) (otherlv_2= '(' ( (lv_terms_3_0= ruleExpressionInfinity ) ) otherlv_4= ')' )? ) | ( () ( (lv_name_6_0= RULE_VARIABLE ) ) ) | ( () ( (lv_value_8_0= RULE_STRING ) ) ) | ( () ( (lv_value_10_0= ruleNUMBER ) ) ) | ( () otherlv_12= '[' ( ( (lv_head_13_0= ruleExpressionInfinity ) ) (otherlv_14= '|' ( (lv_tail_15_0= ruleExpressionInfinity ) ) )? )? otherlv_16= ']' ) | (otherlv_17= '(' this_ExpressionInfinity_18= ruleExpressionInfinity otherlv_19= ')' ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1559:1: ( ( () ( (lv_atom_1_0= ruleATOMS ) ) (otherlv_2= '(' ( (lv_terms_3_0= ruleExpressionInfinity ) ) otherlv_4= ')' )? ) | ( () ( (lv_name_6_0= RULE_VARIABLE ) ) ) | ( () ( (lv_value_8_0= RULE_STRING ) ) ) | ( () ( (lv_value_10_0= ruleNUMBER ) ) ) | ( () otherlv_12= '[' ( ( (lv_head_13_0= ruleExpressionInfinity ) ) (otherlv_14= '|' ( (lv_tail_15_0= ruleExpressionInfinity ) ) )? )? otherlv_16= ']' ) | (otherlv_17= '(' this_ExpressionInfinity_18= ruleExpressionInfinity otherlv_19= ')' ) )
int alt25=6;
switch ( input.LA(1) ) {
case RULE_ATOM:
case RULE_OP1200XFX:
case RULE_OP1200FX:
case RULE_OP1150FX:
case RULE_OP1100XFY:
case RULE_OP1050XFY:
case RULE_OP1000XFY:
case RULE_OP954XFY:
case RULE_OP900FY:
case RULE_OP900FX:
case RULE_OP700XFX:
case RULE_OP600XFY:
case RULE_OP500YFX:
case RULE_OP500FX:
case RULE_OP400YFX:
case RULE_OP200XFX:
case RULE_OP200XFY:
case 27:
case 28:
{
alt25=1;
}
break;
case RULE_VARIABLE:
{
alt25=2;
}
break;
case RULE_STRING:
{
alt25=3;
}
break;
case RULE_INT:
case 29:
{
alt25=4;
}
break;
case 32:
{
alt25=5;
}
break;
case 30:
{
alt25=6;
}
break;
default:
if (state.backtracking>0) {state.failed=true; return current;}
NoViableAltException nvae =
new NoViableAltException("", 25, 0, input);
throw nvae;
}
switch (alt25) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1559:2: ( () ( (lv_atom_1_0= ruleATOMS ) ) (otherlv_2= '(' ( (lv_terms_3_0= ruleExpressionInfinity ) ) otherlv_4= ')' )? )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1559:2: ( () ( (lv_atom_1_0= ruleATOMS ) ) (otherlv_2= '(' ( (lv_terms_3_0= ruleExpressionInfinity ) ) otherlv_4= ')' )? )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1559:3: () ( (lv_atom_1_0= ruleATOMS ) ) (otherlv_2= '(' ( (lv_terms_3_0= ruleExpressionInfinity ) ) otherlv_4= ')' )?
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1559:3: ()
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1560:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getExpression0Access().getAtomExpressionAction_0_0(),
current);
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1568:2: ( (lv_atom_1_0= ruleATOMS ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1569:1: (lv_atom_1_0= ruleATOMS )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1569:1: (lv_atom_1_0= ruleATOMS )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1570:3: lv_atom_1_0= ruleATOMS
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression0Access().getAtomATOMSParserRuleCall_0_1_0());
}
pushFollow(FOLLOW_ruleATOMS_in_ruleExpression03376);
lv_atom_1_0=ruleATOMS();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression0Rule());
}
set(
current,
"atom",
lv_atom_1_0,
"ATOMS");
afterParserOrEnumRuleCall();
}
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1586:2: (otherlv_2= '(' ( (lv_terms_3_0= ruleExpressionInfinity ) ) otherlv_4= ')' )?
int alt22=2;
int LA22_0 = input.LA(1);
if ( (LA22_0==30) ) {
alt22=1;
}
switch (alt22) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1586:4: otherlv_2= '(' ( (lv_terms_3_0= ruleExpressionInfinity ) ) otherlv_4= ')'
{
otherlv_2=(Token)match(input,30,FOLLOW_30_in_ruleExpression03389); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_2, grammarAccess.getExpression0Access().getLeftParenthesisKeyword_0_2_0());
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1590:1: ( (lv_terms_3_0= ruleExpressionInfinity ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1591:1: (lv_terms_3_0= ruleExpressionInfinity )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1591:1: (lv_terms_3_0= ruleExpressionInfinity )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1592:3: lv_terms_3_0= ruleExpressionInfinity
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression0Access().getTermsExpressionInfinityParserRuleCall_0_2_1_0());
}
pushFollow(FOLLOW_ruleExpressionInfinity_in_ruleExpression03410);
lv_terms_3_0=ruleExpressionInfinity();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression0Rule());
}
set(
current,
"terms",
lv_terms_3_0,
"ExpressionInfinity");
afterParserOrEnumRuleCall();
}
}
}
otherlv_4=(Token)match(input,31,FOLLOW_31_in_ruleExpression03422); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_4, grammarAccess.getExpression0Access().getRightParenthesisKeyword_0_2_2());
}
}
break;
}
}
}
break;
case 2 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1613:6: ( () ( (lv_name_6_0= RULE_VARIABLE ) ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1613:6: ( () ( (lv_name_6_0= RULE_VARIABLE ) ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1613:7: () ( (lv_name_6_0= RULE_VARIABLE ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1613:7: ()
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1614:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getExpression0Access().getVariableExpressionAction_1_0(),
current);
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1622:2: ( (lv_name_6_0= RULE_VARIABLE ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1623:1: (lv_name_6_0= RULE_VARIABLE )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1623:1: (lv_name_6_0= RULE_VARIABLE )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1624:3: lv_name_6_0= RULE_VARIABLE
{
lv_name_6_0=(Token)match(input,RULE_VARIABLE,FOLLOW_RULE_VARIABLE_in_ruleExpression03461); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_name_6_0, grammarAccess.getExpression0Access().getNameVARIABLETerminalRuleCall_1_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getExpression0Rule());
}
setWithLastConsumed(
current,
"name",
lv_name_6_0,
"VARIABLE");
}
}
}
}
}
break;
case 3 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1641:6: ( () ( (lv_value_8_0= RULE_STRING ) ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1641:6: ( () ( (lv_value_8_0= RULE_STRING ) ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1641:7: () ( (lv_value_8_0= RULE_STRING ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1641:7: ()
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1642:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getExpression0Access().getStringExpressionAction_2_0(),
current);
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1650:2: ( (lv_value_8_0= RULE_STRING ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1651:1: (lv_value_8_0= RULE_STRING )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1651:1: (lv_value_8_0= RULE_STRING )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1652:3: lv_value_8_0= RULE_STRING
{
lv_value_8_0=(Token)match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleExpression03503); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(lv_value_8_0, grammarAccess.getExpression0Access().getValueSTRINGTerminalRuleCall_2_1_0());
}
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElement(grammarAccess.getExpression0Rule());
}
setWithLastConsumed(
current,
"value",
lv_value_8_0,
"STRING");
}
}
}
}
}
break;
case 4 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1669:6: ( () ( (lv_value_10_0= ruleNUMBER ) ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1669:6: ( () ( (lv_value_10_0= ruleNUMBER ) ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1669:7: () ( (lv_value_10_0= ruleNUMBER ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1669:7: ()
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1670:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getExpression0Access().getNumberExpressionAction_3_0(),
current);
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1678:2: ( (lv_value_10_0= ruleNUMBER ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1679:1: (lv_value_10_0= ruleNUMBER )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1679:1: (lv_value_10_0= ruleNUMBER )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1680:3: lv_value_10_0= ruleNUMBER
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression0Access().getValueNUMBERParserRuleCall_3_1_0());
}
pushFollow(FOLLOW_ruleNUMBER_in_ruleExpression03549);
lv_value_10_0=ruleNUMBER();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression0Rule());
}
set(
current,
"value",
lv_value_10_0,
"NUMBER");
afterParserOrEnumRuleCall();
}
}
}
}
}
break;
case 5 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1697:6: ( () otherlv_12= '[' ( ( (lv_head_13_0= ruleExpressionInfinity ) ) (otherlv_14= '|' ( (lv_tail_15_0= ruleExpressionInfinity ) ) )? )? otherlv_16= ']' )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1697:6: ( () otherlv_12= '[' ( ( (lv_head_13_0= ruleExpressionInfinity ) ) (otherlv_14= '|' ( (lv_tail_15_0= ruleExpressionInfinity ) ) )? )? otherlv_16= ']' )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1697:7: () otherlv_12= '[' ( ( (lv_head_13_0= ruleExpressionInfinity ) ) (otherlv_14= '|' ( (lv_tail_15_0= ruleExpressionInfinity ) ) )? )? otherlv_16= ']'
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1697:7: ()
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1698:2:
{
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
current = forceCreateModelElement(
grammarAccess.getExpression0Access().getListExpressionAction_4_0(),
current);
}
}
otherlv_12=(Token)match(input,32,FOLLOW_32_in_ruleExpression03581); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_12, grammarAccess.getExpression0Access().getLeftSquareBracketKeyword_4_1());
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1710:1: ( ( (lv_head_13_0= ruleExpressionInfinity ) ) (otherlv_14= '|' ( (lv_tail_15_0= ruleExpressionInfinity ) ) )? )?
int alt24=2;
int LA24_0 = input.LA(1);
if ( ((LA24_0>=RULE_ATOM && LA24_0<=RULE_INT)||(LA24_0>=RULE_VARIABLE && LA24_0<=RULE_STRING)||(LA24_0>=27 && LA24_0<=30)||LA24_0==32) ) {
alt24=1;
}
switch (alt24) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1710:2: ( (lv_head_13_0= ruleExpressionInfinity ) ) (otherlv_14= '|' ( (lv_tail_15_0= ruleExpressionInfinity ) ) )?
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1710:2: ( (lv_head_13_0= ruleExpressionInfinity ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1711:1: (lv_head_13_0= ruleExpressionInfinity )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1711:1: (lv_head_13_0= ruleExpressionInfinity )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1712:3: lv_head_13_0= ruleExpressionInfinity
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression0Access().getHeadExpressionInfinityParserRuleCall_4_2_0_0());
}
pushFollow(FOLLOW_ruleExpressionInfinity_in_ruleExpression03603);
lv_head_13_0=ruleExpressionInfinity();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression0Rule());
}
set(
current,
"head",
lv_head_13_0,
"ExpressionInfinity");
afterParserOrEnumRuleCall();
}
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1728:2: (otherlv_14= '|' ( (lv_tail_15_0= ruleExpressionInfinity ) ) )?
int alt23=2;
int LA23_0 = input.LA(1);
if ( (LA23_0==33) ) {
alt23=1;
}
switch (alt23) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1728:4: otherlv_14= '|' ( (lv_tail_15_0= ruleExpressionInfinity ) )
{
otherlv_14=(Token)match(input,33,FOLLOW_33_in_ruleExpression03616); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_14, grammarAccess.getExpression0Access().getVerticalLineKeyword_4_2_1_0());
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1732:1: ( (lv_tail_15_0= ruleExpressionInfinity ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1733:1: (lv_tail_15_0= ruleExpressionInfinity )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1733:1: (lv_tail_15_0= ruleExpressionInfinity )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1734:3: lv_tail_15_0= ruleExpressionInfinity
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression0Access().getTailExpressionInfinityParserRuleCall_4_2_1_1_0());
}
pushFollow(FOLLOW_ruleExpressionInfinity_in_ruleExpression03637);
lv_tail_15_0=ruleExpressionInfinity();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
if (current==null) {
current = createModelElementForParent(grammarAccess.getExpression0Rule());
}
set(
current,
"tail",
lv_tail_15_0,
"ExpressionInfinity");
afterParserOrEnumRuleCall();
}
}
}
}
break;
}
}
break;
}
otherlv_16=(Token)match(input,34,FOLLOW_34_in_ruleExpression03653); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_16, grammarAccess.getExpression0Access().getRightSquareBracketKeyword_4_3());
}
}
}
break;
case 6 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1755:6: (otherlv_17= '(' this_ExpressionInfinity_18= ruleExpressionInfinity otherlv_19= ')' )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1755:6: (otherlv_17= '(' this_ExpressionInfinity_18= ruleExpressionInfinity otherlv_19= ')' )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1755:8: otherlv_17= '(' this_ExpressionInfinity_18= ruleExpressionInfinity otherlv_19= ')'
{
otherlv_17=(Token)match(input,30,FOLLOW_30_in_ruleExpression03673); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_17, grammarAccess.getExpression0Access().getLeftParenthesisKeyword_5_0());
}
if ( state.backtracking==0 ) {
/* */
}
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression0Access().getExpressionInfinityParserRuleCall_5_1());
}
pushFollow(FOLLOW_ruleExpressionInfinity_in_ruleExpression03698);
this_ExpressionInfinity_18=ruleExpressionInfinity();
state._fsp--;
if (state.failed) return current;
if ( state.backtracking==0 ) {
current = this_ExpressionInfinity_18;
afterParserOrEnumRuleCall();
}
otherlv_19=(Token)match(input,31,FOLLOW_31_in_ruleExpression03709); if (state.failed) return current;
if ( state.backtracking==0 ) {
newLeafNode(otherlv_19, grammarAccess.getExpression0Access().getRightParenthesisKeyword_5_2());
}
}
}
break;
}
}
if ( state.backtracking==0 ) {
leaveRule();
}
}
catch (RecognitionException re) {
recover(input,re);
appendSkippedTokens();
}
finally {
}
return current;
}
// $ANTLR end "ruleExpression0"
// $ANTLR start synpred22_InternalProlog
public final void synpred22_InternalProlog_fragment() throws RecognitionException {
Token kw=null;
Token this_EXT_INT_3=null;
Token this_INT_4=null;
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:320:2: (kw= '.' (this_EXT_INT_3= RULE_EXT_INT | this_INT_4= RULE_INT ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:320:2: kw= '.' (this_EXT_INT_3= RULE_EXT_INT | this_INT_4= RULE_INT )
{
kw=(Token)match(input,27,FOLLOW_27_in_synpred22_InternalProlog834); if (state.failed) return ;
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:325:1: (this_EXT_INT_3= RULE_EXT_INT | this_INT_4= RULE_INT )
int alt26=2;
int LA26_0 = input.LA(1);
if ( (LA26_0==RULE_EXT_INT) ) {
alt26=1;
}
else if ( (LA26_0==RULE_INT) ) {
alt26=2;
}
else {
if (state.backtracking>0) {state.failed=true; return ;}
NoViableAltException nvae =
new NoViableAltException("", 26, 0, input);
throw nvae;
}
switch (alt26) {
case 1 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:325:6: this_EXT_INT_3= RULE_EXT_INT
{
this_EXT_INT_3=(Token)match(input,RULE_EXT_INT,FOLLOW_RULE_EXT_INT_in_synpred22_InternalProlog850); if (state.failed) return ;
}
break;
case 2 :
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:333:10: this_INT_4= RULE_INT
{
this_INT_4=(Token)match(input,RULE_INT,FOLLOW_RULE_INT_in_synpred22_InternalProlog876); if (state.failed) return ;
}
break;
}
}
}
// $ANTLR end synpred22_InternalProlog
// $ANTLR start synpred24_InternalProlog
public final void synpred24_InternalProlog_fragment() throws RecognitionException {
Token lv_op_0_0=null;
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:476:1: ( (lv_op_0_0= RULE_OP1200FX ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:476:1: (lv_op_0_0= RULE_OP1200FX )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:476:1: (lv_op_0_0= RULE_OP1200FX )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:477:3: lv_op_0_0= RULE_OP1200FX
{
lv_op_0_0=(Token)match(input,RULE_OP1200FX,FOLLOW_RULE_OP1200FX_in_synpred24_InternalProlog1226); if (state.failed) return ;
}
}
}
// $ANTLR end synpred24_InternalProlog
// $ANTLR start synpred25_InternalProlog
public final void synpred25_InternalProlog_fragment() throws RecognitionException {
Token lv_op_0_0=null;
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:533:1: ( (lv_op_0_0= RULE_OP1150FX ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:533:1: (lv_op_0_0= RULE_OP1150FX )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:533:1: (lv_op_0_0= RULE_OP1150FX )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:534:3: lv_op_0_0= RULE_OP1150FX
{
lv_op_0_0=(Token)match(input,RULE_OP1150FX,FOLLOW_RULE_OP1150FX_in_synpred25_InternalProlog1341); if (state.failed) return ;
}
}
}
// $ANTLR end synpred25_InternalProlog
// $ANTLR start synpred30_InternalProlog
public final void synpred30_InternalProlog_fragment() throws RecognitionException {
Token lv_op_0_0=null;
EObject lv_right_1_0 = null;
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:901:2: ( ( ( (lv_op_0_0= RULE_OP900FY ) ) ( (lv_right_1_0= ruleExpression900fy ) ) ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:901:2: ( ( (lv_op_0_0= RULE_OP900FY ) ) ( (lv_right_1_0= ruleExpression900fy ) ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:901:2: ( ( (lv_op_0_0= RULE_OP900FY ) ) ( (lv_right_1_0= ruleExpression900fy ) ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:901:3: ( (lv_op_0_0= RULE_OP900FY ) ) ( (lv_right_1_0= ruleExpression900fy ) )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:901:3: ( (lv_op_0_0= RULE_OP900FY ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:902:1: (lv_op_0_0= RULE_OP900FY )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:902:1: (lv_op_0_0= RULE_OP900FY )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:903:3: lv_op_0_0= RULE_OP900FY
{
lv_op_0_0=(Token)match(input,RULE_OP900FY,FOLLOW_RULE_OP900FY_in_synpred30_InternalProlog2069); if (state.failed) return ;
}
}
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:919:2: ( (lv_right_1_0= ruleExpression900fy ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:920:1: (lv_right_1_0= ruleExpression900fy )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:920:1: (lv_right_1_0= ruleExpression900fy )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:921:3: lv_right_1_0= ruleExpression900fy
{
if ( state.backtracking==0 ) {
newCompositeNode(grammarAccess.getExpression900fyAccess().getRightExpression900fyParserRuleCall_0_1_0());
}
pushFollow(FOLLOW_ruleExpression900fy_in_synpred30_InternalProlog2095);
lv_right_1_0=ruleExpression900fy();
state._fsp--;
if (state.failed) return ;
}
}
}
}
}
// $ANTLR end synpred30_InternalProlog
// $ANTLR start synpred31_InternalProlog
public final void synpred31_InternalProlog_fragment() throws RecognitionException {
Token lv_op_0_0=null;
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:978:1: ( (lv_op_0_0= RULE_OP900FX ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:978:1: (lv_op_0_0= RULE_OP900FX )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:978:1: (lv_op_0_0= RULE_OP900FX )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:979:3: lv_op_0_0= RULE_OP900FX
{
lv_op_0_0=(Token)match(input,RULE_OP900FX,FOLLOW_RULE_OP900FX_in_synpred31_InternalProlog2211); if (state.failed) return ;
}
}
}
// $ANTLR end synpred31_InternalProlog
// $ANTLR start synpred35_InternalProlog
public final void synpred35_InternalProlog_fragment() throws RecognitionException {
Token lv_op_0_0=null;
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1269:1: ( (lv_op_0_0= RULE_OP500FX ) )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1269:1: (lv_op_0_0= RULE_OP500FX )
{
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1269:1: (lv_op_0_0= RULE_OP500FX )
// ../org.archstudio.prolog.xtext/src-gen/org/archstudio/prolog/xtext/parser/antlr/internal/InternalProlog.g:1270:3: lv_op_0_0= RULE_OP500FX
{
lv_op_0_0=(Token)match(input,RULE_OP500FX,FOLLOW_RULE_OP500FX_in_synpred35_InternalProlog2785); if (state.failed) return ;
}
}
}
// $ANTLR end synpred35_InternalProlog
// Delegated rules
public final boolean synpred25_InternalProlog() {
state.backtracking++;
int start = input.mark();
try {
synpred25_InternalProlog_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 synpred24_InternalProlog() {
state.backtracking++;
int start = input.mark();
try {
synpred24_InternalProlog_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 synpred22_InternalProlog() {
state.backtracking++;
int start = input.mark();
try {
synpred22_InternalProlog_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 synpred35_InternalProlog() {
state.backtracking++;
int start = input.mark();
try {
synpred35_InternalProlog_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 synpred31_InternalProlog() {
state.backtracking++;
int start = input.mark();
try {
synpred31_InternalProlog_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 synpred30_InternalProlog() {
state.backtracking++;
int start = input.mark();
try {
synpred30_InternalProlog_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 DFA7 dfa7 = new DFA7(this);
protected DFA8 dfa8 = new DFA8(this);
protected DFA13 dfa13 = new DFA13(this);
protected DFA14 dfa14 = new DFA14(this);
protected DFA18 dfa18 = new DFA18(this);
static final String DFA7_eotS =
"\33\uffff";
static final String DFA7_eofS =
"\33\uffff";
static final String DFA7_minS =
"\1\4\1\0\31\uffff";
static final String DFA7_maxS =
"\1\40\1\0\31\uffff";
static final String DFA7_acceptS =
"\2\uffff\1\2\27\uffff\1\1";
static final String DFA7_specialS =
"\1\uffff\1\0\31\uffff}>";
static final String[] DFA7_transitionS = {
"\2\2\1\1\17\2\1\uffff\2\2\2\uffff\4\2\1\uffff\1\2",
"\1\uffff",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
""
};
static final short[] DFA7_eot = DFA.unpackEncodedString(DFA7_eotS);
static final short[] DFA7_eof = DFA.unpackEncodedString(DFA7_eofS);
static final char[] DFA7_min = DFA.unpackEncodedStringToUnsignedChars(DFA7_minS);
static final char[] DFA7_max = DFA.unpackEncodedStringToUnsignedChars(DFA7_maxS);
static final short[] DFA7_accept = DFA.unpackEncodedString(DFA7_acceptS);
static final short[] DFA7_special = DFA.unpackEncodedString(DFA7_specialS);
static final short[][] DFA7_transition;
static {
int numStates = DFA7_transitionS.length;
DFA7_transition = new short[numStates][];
for (int i=0; i<numStates; i++) {
DFA7_transition[i] = DFA.unpackEncodedString(DFA7_transitionS[i]);
}
}
class DFA7 extends DFA {
public DFA7(BaseRecognizer recognizer) {
this.recognizer = recognizer;
this.decisionNumber = 7;
this.eot = DFA7_eot;
this.eof = DFA7_eof;
this.min = DFA7_min;
this.max = DFA7_max;
this.accept = DFA7_accept;
this.special = DFA7_special;
this.transition = DFA7_transition;
}
public String getDescription() {
return "475:2: ( (lv_op_0_0= RULE_OP1200FX ) )?";
}
public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
TokenStream input = (TokenStream)_input;
int _s = s;
switch ( s ) {
case 0 :
int LA7_1 = input.LA(1);
int index7_1 = input.index();
input.rewind();
s = -1;
if ( (synpred24_InternalProlog()) ) {s = 26;}
else if ( (true) ) {s = 2;}
input.seek(index7_1);
if ( s>=0 ) return s;
break;
}
if (state.backtracking>0) {state.failed=true; return -1;}
NoViableAltException nvae =
new NoViableAltException(getDescription(), 7, _s, input);
error(nvae);
throw nvae;
}
}
static final String DFA8_eotS =
"\33\uffff";
static final String DFA8_eofS =
"\33\uffff";
static final String DFA8_minS =
"\1\4\1\0\31\uffff";
static final String DFA8_maxS =
"\1\40\1\0\31\uffff";
static final String DFA8_acceptS =
"\2\uffff\1\2\27\uffff\1\1";
static final String DFA8_specialS =
"\1\uffff\1\0\31\uffff}>";
static final String[] DFA8_transitionS = {
"\3\2\1\1\16\2\1\uffff\2\2\2\uffff\4\2\1\uffff\1\2",
"\1\uffff",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
""
};
static final short[] DFA8_eot = DFA.unpackEncodedString(DFA8_eotS);
static final short[] DFA8_eof = DFA.unpackEncodedString(DFA8_eofS);
static final char[] DFA8_min = DFA.unpackEncodedStringToUnsignedChars(DFA8_minS);
static final char[] DFA8_max = DFA.unpackEncodedStringToUnsignedChars(DFA8_maxS);
static final short[] DFA8_accept = DFA.unpackEncodedString(DFA8_acceptS);
static final short[] DFA8_special = DFA.unpackEncodedString(DFA8_specialS);
static final short[][] DFA8_transition;
static {
int numStates = DFA8_transitionS.length;
DFA8_transition = new short[numStates][];
for (int i=0; i<numStates; i++) {
DFA8_transition[i] = DFA.unpackEncodedString(DFA8_transitionS[i]);
}
}
class DFA8 extends DFA {
public DFA8(BaseRecognizer recognizer) {
this.recognizer = recognizer;
this.decisionNumber = 8;
this.eot = DFA8_eot;
this.eof = DFA8_eof;
this.min = DFA8_min;
this.max = DFA8_max;
this.accept = DFA8_accept;
this.special = DFA8_special;
this.transition = DFA8_transition;
}
public String getDescription() {
return "532:2: ( (lv_op_0_0= RULE_OP1150FX ) )?";
}
public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
TokenStream input = (TokenStream)_input;
int _s = s;
switch ( s ) {
case 0 :
int LA8_1 = input.LA(1);
int index8_1 = input.index();
input.rewind();
s = -1;
if ( (synpred25_InternalProlog()) ) {s = 26;}
else if ( (true) ) {s = 2;}
input.seek(index8_1);
if ( s>=0 ) return s;
break;
}
if (state.backtracking>0) {state.failed=true; return -1;}
NoViableAltException nvae =
new NoViableAltException(getDescription(), 8, _s, input);
error(nvae);
throw nvae;
}
}
static final String DFA13_eotS =
"\33\uffff";
static final String DFA13_eofS =
"\33\uffff";
static final String DFA13_minS =
"\1\4\1\0\31\uffff";
static final String DFA13_maxS =
"\1\40\1\0\31\uffff";
static final String DFA13_acceptS =
"\2\uffff\1\2\27\uffff\1\1";
static final String DFA13_specialS =
"\1\uffff\1\0\31\uffff}>";
static final String[] DFA13_transitionS = {
"\10\2\1\1\11\2\1\uffff\2\2\2\uffff\4\2\1\uffff\1\2",
"\1\uffff",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
""
};
static final short[] DFA13_eot = DFA.unpackEncodedString(DFA13_eotS);
static final short[] DFA13_eof = DFA.unpackEncodedString(DFA13_eofS);
static final char[] DFA13_min = DFA.unpackEncodedStringToUnsignedChars(DFA13_minS);
static final char[] DFA13_max = DFA.unpackEncodedStringToUnsignedChars(DFA13_maxS);
static final short[] DFA13_accept = DFA.unpackEncodedString(DFA13_acceptS);
static final short[] DFA13_special = DFA.unpackEncodedString(DFA13_specialS);
static final short[][] DFA13_transition;
static {
int numStates = DFA13_transitionS.length;
DFA13_transition = new short[numStates][];
for (int i=0; i<numStates; i++) {
DFA13_transition[i] = DFA.unpackEncodedString(DFA13_transitionS[i]);
}
}
class DFA13 extends DFA {
public DFA13(BaseRecognizer recognizer) {
this.recognizer = recognizer;
this.decisionNumber = 13;
this.eot = DFA13_eot;
this.eof = DFA13_eof;
this.min = DFA13_min;
this.max = DFA13_max;
this.accept = DFA13_accept;
this.special = DFA13_special;
this.transition = DFA13_transition;
}
public String getDescription() {
return "901:1: ( ( ( (lv_op_0_0= RULE_OP900FY ) ) ( (lv_right_1_0= ruleExpression900fy ) ) ) | ( (lv_right_2_0= ruleExpression900fx ) ) )";
}
public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
TokenStream input = (TokenStream)_input;
int _s = s;
switch ( s ) {
case 0 :
int LA13_1 = input.LA(1);
int index13_1 = input.index();
input.rewind();
s = -1;
if ( (synpred30_InternalProlog()) ) {s = 26;}
else if ( (true) ) {s = 2;}
input.seek(index13_1);
if ( s>=0 ) return s;
break;
}
if (state.backtracking>0) {state.failed=true; return -1;}
NoViableAltException nvae =
new NoViableAltException(getDescription(), 13, _s, input);
error(nvae);
throw nvae;
}
}
static final String DFA14_eotS =
"\33\uffff";
static final String DFA14_eofS =
"\33\uffff";
static final String DFA14_minS =
"\1\4\1\0\31\uffff";
static final String DFA14_maxS =
"\1\40\1\0\31\uffff";
static final String DFA14_acceptS =
"\2\uffff\1\2\27\uffff\1\1";
static final String DFA14_specialS =
"\1\uffff\1\0\31\uffff}>";
static final String[] DFA14_transitionS = {
"\11\2\1\1\10\2\1\uffff\2\2\2\uffff\4\2\1\uffff\1\2",
"\1\uffff",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
""
};
static final short[] DFA14_eot = DFA.unpackEncodedString(DFA14_eotS);
static final short[] DFA14_eof = DFA.unpackEncodedString(DFA14_eofS);
static final char[] DFA14_min = DFA.unpackEncodedStringToUnsignedChars(DFA14_minS);
static final char[] DFA14_max = DFA.unpackEncodedStringToUnsignedChars(DFA14_maxS);
static final short[] DFA14_accept = DFA.unpackEncodedString(DFA14_acceptS);
static final short[] DFA14_special = DFA.unpackEncodedString(DFA14_specialS);
static final short[][] DFA14_transition;
static {
int numStates = DFA14_transitionS.length;
DFA14_transition = new short[numStates][];
for (int i=0; i<numStates; i++) {
DFA14_transition[i] = DFA.unpackEncodedString(DFA14_transitionS[i]);
}
}
class DFA14 extends DFA {
public DFA14(BaseRecognizer recognizer) {
this.recognizer = recognizer;
this.decisionNumber = 14;
this.eot = DFA14_eot;
this.eof = DFA14_eof;
this.min = DFA14_min;
this.max = DFA14_max;
this.accept = DFA14_accept;
this.special = DFA14_special;
this.transition = DFA14_transition;
}
public String getDescription() {
return "977:2: ( (lv_op_0_0= RULE_OP900FX ) )?";
}
public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
TokenStream input = (TokenStream)_input;
int _s = s;
switch ( s ) {
case 0 :
int LA14_1 = input.LA(1);
int index14_1 = input.index();
input.rewind();
s = -1;
if ( (synpred31_InternalProlog()) ) {s = 26;}
else if ( (true) ) {s = 2;}
input.seek(index14_1);
if ( s>=0 ) return s;
break;
}
if (state.backtracking>0) {state.failed=true; return -1;}
NoViableAltException nvae =
new NoViableAltException(getDescription(), 14, _s, input);
error(nvae);
throw nvae;
}
}
static final String DFA18_eotS =
"\33\uffff";
static final String DFA18_eofS =
"\33\uffff";
static final String DFA18_minS =
"\1\4\1\0\31\uffff";
static final String DFA18_maxS =
"\1\40\1\0\31\uffff";
static final String DFA18_acceptS =
"\2\uffff\1\2\27\uffff\1\1";
static final String DFA18_specialS =
"\1\uffff\1\0\31\uffff}>";
static final String[] DFA18_transitionS = {
"\15\2\1\1\4\2\1\uffff\2\2\2\uffff\4\2\1\uffff\1\2",
"\1\uffff",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
""
};
static final short[] DFA18_eot = DFA.unpackEncodedString(DFA18_eotS);
static final short[] DFA18_eof = DFA.unpackEncodedString(DFA18_eofS);
static final char[] DFA18_min = DFA.unpackEncodedStringToUnsignedChars(DFA18_minS);
static final char[] DFA18_max = DFA.unpackEncodedStringToUnsignedChars(DFA18_maxS);
static final short[] DFA18_accept = DFA.unpackEncodedString(DFA18_acceptS);
static final short[] DFA18_special = DFA.unpackEncodedString(DFA18_specialS);
static final short[][] DFA18_transition;
static {
int numStates = DFA18_transitionS.length;
DFA18_transition = new short[numStates][];
for (int i=0; i<numStates; i++) {
DFA18_transition[i] = DFA.unpackEncodedString(DFA18_transitionS[i]);
}
}
class DFA18 extends DFA {
public DFA18(BaseRecognizer recognizer) {
this.recognizer = recognizer;
this.decisionNumber = 18;
this.eot = DFA18_eot;
this.eof = DFA18_eof;
this.min = DFA18_min;
this.max = DFA18_max;
this.accept = DFA18_accept;
this.special = DFA18_special;
this.transition = DFA18_transition;
}
public String getDescription() {
return "1268:2: ( (lv_op_0_0= RULE_OP500FX ) )?";
}
public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
TokenStream input = (TokenStream)_input;
int _s = s;
switch ( s ) {
case 0 :
int LA18_1 = input.LA(1);
int index18_1 = input.index();
input.rewind();
s = -1;
if ( (synpred35_InternalProlog()) ) {s = 26;}
else if ( (true) ) {s = 2;}
input.seek(index18_1);
if ( s>=0 ) return s;
break;
}
if (state.backtracking>0) {state.failed=true; return -1;}
NoViableAltException nvae =
new NoViableAltException(getDescription(), 18, _s, input);
error(nvae);
throw nvae;
}
}
public static final BitSet FOLLOW_ruleModel_in_entryRuleModel81 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleModel91 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpressionInfinity_in_ruleModel137 = new BitSet(new long[]{0x0000000008000000L});
public static final BitSet FOLLOW_27_in_ruleModel149 = new BitSet(new long[]{0x0000000179BFFFF2L});
public static final BitSet FOLLOW_ruleATOMS_in_entryRuleATOMS187 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleATOMS198 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_27_in_ruleATOMS236 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_28_in_ruleATOMS255 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_ATOM_in_ruleATOMS276 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP1200XFX_in_ruleATOMS302 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP1200FX_in_ruleATOMS328 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP1150FX_in_ruleATOMS354 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP1100XFY_in_ruleATOMS380 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP1050XFY_in_ruleATOMS406 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP1000XFY_in_ruleATOMS432 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP954XFY_in_ruleATOMS458 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP900FY_in_ruleATOMS484 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP900FX_in_ruleATOMS510 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP700XFX_in_ruleATOMS536 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP600XFY_in_ruleATOMS562 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP500YFX_in_ruleATOMS588 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP500FX_in_ruleATOMS614 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP400YFX_in_ruleATOMS640 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP200XFX_in_ruleATOMS666 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP200XFY_in_ruleATOMS692 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleNUMBER_in_entryRuleNUMBER744 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleNUMBER755 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_29_in_ruleNUMBER798 = new BitSet(new long[]{0x0000000000200000L});
public static final BitSet FOLLOW_RULE_INT_in_ruleNUMBER815 = new BitSet(new long[]{0x0000000008000002L});
public static final BitSet FOLLOW_27_in_ruleNUMBER834 = new BitSet(new long[]{0x0000000000600000L});
public static final BitSet FOLLOW_RULE_EXT_INT_in_ruleNUMBER850 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_INT_in_ruleNUMBER876 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpressionInfinity_in_entryRuleExpressionInfinity928 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleExpressionInfinity938 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression1200xfx_in_ruleExpressionInfinity987 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression1200xfx_in_entryRuleExpression1200xfx1021 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleExpression1200xfx1031 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression1200fx_in_ruleExpression1200xfx1081 = new BitSet(new long[]{0x0000000000000022L});
public static final BitSet FOLLOW_RULE_OP1200XFX_in_ruleExpression1200xfx1110 = new BitSet(new long[]{0x0000000179BFFFF0L});
public static final BitSet FOLLOW_ruleExpression1200fx_in_ruleExpression1200xfx1136 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression1200fx_in_entryRuleExpression1200fx1174 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleExpression1200fx1184 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP1200FX_in_ruleExpression1200fx1226 = new BitSet(new long[]{0x0000000179BFFFF0L});
public static final BitSet FOLLOW_ruleExpression1150fx_in_ruleExpression1200fx1253 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression1150fx_in_entryRuleExpression1150fx1289 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleExpression1150fx1299 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP1150FX_in_ruleExpression1150fx1341 = new BitSet(new long[]{0x0000000179BFFFF0L});
public static final BitSet FOLLOW_ruleExpression1100xfy_in_ruleExpression1150fx1368 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression1100xfy_in_entryRuleExpression1100xfy1404 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleExpression1100xfy1414 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression1050xfy_in_ruleExpression1100xfy1464 = new BitSet(new long[]{0x0000000000000102L});
public static final BitSet FOLLOW_RULE_OP1100XFY_in_ruleExpression1100xfy1493 = new BitSet(new long[]{0x0000000179BFFFF0L});
public static final BitSet FOLLOW_ruleExpression1100xfy_in_ruleExpression1100xfy1519 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression1050xfy_in_entryRuleExpression1050xfy1557 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleExpression1050xfy1567 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression1000xfy_in_ruleExpression1050xfy1617 = new BitSet(new long[]{0x0000000000000202L});
public static final BitSet FOLLOW_RULE_OP1050XFY_in_ruleExpression1050xfy1646 = new BitSet(new long[]{0x0000000179BFFFF0L});
public static final BitSet FOLLOW_ruleExpression1050xfy_in_ruleExpression1050xfy1672 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression1000xfy_in_entryRuleExpression1000xfy1710 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleExpression1000xfy1720 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression954xfy_in_ruleExpression1000xfy1770 = new BitSet(new long[]{0x0000000000000402L});
public static final BitSet FOLLOW_RULE_OP1000XFY_in_ruleExpression1000xfy1799 = new BitSet(new long[]{0x0000000179BFFFF0L});
public static final BitSet FOLLOW_ruleExpression1000xfy_in_ruleExpression1000xfy1825 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression954xfy_in_entryRuleExpression954xfy1863 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleExpression954xfy1873 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression900fy_in_ruleExpression954xfy1923 = new BitSet(new long[]{0x0000000000000802L});
public static final BitSet FOLLOW_RULE_OP954XFY_in_ruleExpression954xfy1952 = new BitSet(new long[]{0x0000000179BFFFF0L});
public static final BitSet FOLLOW_ruleExpression954xfy_in_ruleExpression954xfy1978 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression900fy_in_entryRuleExpression900fy2016 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleExpression900fy2026 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP900FY_in_ruleExpression900fy2069 = new BitSet(new long[]{0x0000000179BFFFF0L});
public static final BitSet FOLLOW_ruleExpression900fy_in_ruleExpression900fy2095 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression900fx_in_ruleExpression900fy2123 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression900fx_in_entryRuleExpression900fx2159 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleExpression900fx2169 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP900FX_in_ruleExpression900fx2211 = new BitSet(new long[]{0x0000000179BFFFF0L});
public static final BitSet FOLLOW_ruleExpression700xfx_in_ruleExpression900fx2238 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression700xfx_in_entryRuleExpression700xfx2274 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleExpression700xfx2284 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression600xfy_in_ruleExpression700xfx2334 = new BitSet(new long[]{0x0000000000004002L});
public static final BitSet FOLLOW_RULE_OP700XFX_in_ruleExpression700xfx2363 = new BitSet(new long[]{0x0000000179BFFFF0L});
public static final BitSet FOLLOW_ruleExpression600xfy_in_ruleExpression700xfx2389 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression600xfy_in_entryRuleExpression600xfy2427 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleExpression600xfy2437 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression500yfx_in_ruleExpression600xfy2487 = new BitSet(new long[]{0x0000000000008002L});
public static final BitSet FOLLOW_RULE_OP600XFY_in_ruleExpression600xfy2516 = new BitSet(new long[]{0x0000000179BFFFF0L});
public static final BitSet FOLLOW_ruleExpression600xfy_in_ruleExpression600xfy2542 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression500yfx_in_entryRuleExpression500yfx2580 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleExpression500yfx2590 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression500fx_in_ruleExpression500yfx2640 = new BitSet(new long[]{0x0000000000010002L});
public static final BitSet FOLLOW_RULE_OP500YFX_in_ruleExpression500yfx2669 = new BitSet(new long[]{0x0000000179BFFFF0L});
public static final BitSet FOLLOW_ruleExpression500fx_in_ruleExpression500yfx2695 = new BitSet(new long[]{0x0000000000010002L});
public static final BitSet FOLLOW_ruleExpression500fx_in_entryRuleExpression500fx2733 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleExpression500fx2743 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP500FX_in_ruleExpression500fx2785 = new BitSet(new long[]{0x0000000179BFFFF0L});
public static final BitSet FOLLOW_ruleExpression400yfx_in_ruleExpression500fx2812 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression400yfx_in_entryRuleExpression400yfx2848 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleExpression400yfx2858 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression200xfx_in_ruleExpression400yfx2908 = new BitSet(new long[]{0x0000000000040002L});
public static final BitSet FOLLOW_RULE_OP400YFX_in_ruleExpression400yfx2937 = new BitSet(new long[]{0x0000000179BFFFF0L});
public static final BitSet FOLLOW_ruleExpression200xfx_in_ruleExpression400yfx2963 = new BitSet(new long[]{0x0000000000040002L});
public static final BitSet FOLLOW_ruleExpression200xfx_in_entryRuleExpression200xfx3001 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleExpression200xfx3011 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression200xfy_in_ruleExpression200xfx3061 = new BitSet(new long[]{0x0000000000080002L});
public static final BitSet FOLLOW_RULE_OP200XFX_in_ruleExpression200xfx3090 = new BitSet(new long[]{0x0000000179BFFFF0L});
public static final BitSet FOLLOW_ruleExpression200xfy_in_ruleExpression200xfx3116 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression200xfy_in_entryRuleExpression200xfy3154 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleExpression200xfy3164 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression0_in_ruleExpression200xfy3214 = new BitSet(new long[]{0x0000000000100002L});
public static final BitSet FOLLOW_RULE_OP200XFY_in_ruleExpression200xfy3243 = new BitSet(new long[]{0x0000000179BFFFF0L});
public static final BitSet FOLLOW_ruleExpression200xfy_in_ruleExpression200xfy3269 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleExpression0_in_entryRuleExpression03307 = new BitSet(new long[]{0x0000000000000000L});
public static final BitSet FOLLOW_EOF_in_entryRuleExpression03317 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleATOMS_in_ruleExpression03376 = new BitSet(new long[]{0x0000000040000002L});
public static final BitSet FOLLOW_30_in_ruleExpression03389 = new BitSet(new long[]{0x00000001F9BFFFF0L});
public static final BitSet FOLLOW_ruleExpressionInfinity_in_ruleExpression03410 = new BitSet(new long[]{0x0000000080000000L});
public static final BitSet FOLLOW_31_in_ruleExpression03422 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_VARIABLE_in_ruleExpression03461 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_STRING_in_ruleExpression03503 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_ruleNUMBER_in_ruleExpression03549 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_32_in_ruleExpression03581 = new BitSet(new long[]{0x0000000779BFFFF0L});
public static final BitSet FOLLOW_ruleExpressionInfinity_in_ruleExpression03603 = new BitSet(new long[]{0x0000000600000000L});
public static final BitSet FOLLOW_33_in_ruleExpression03616 = new BitSet(new long[]{0x0000000579BFFFF0L});
public static final BitSet FOLLOW_ruleExpressionInfinity_in_ruleExpression03637 = new BitSet(new long[]{0x0000000400000000L});
public static final BitSet FOLLOW_34_in_ruleExpression03653 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_30_in_ruleExpression03673 = new BitSet(new long[]{0x00000001F9BFFFF0L});
public static final BitSet FOLLOW_ruleExpressionInfinity_in_ruleExpression03698 = new BitSet(new long[]{0x0000000080000000L});
public static final BitSet FOLLOW_31_in_ruleExpression03709 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_27_in_synpred22_InternalProlog834 = new BitSet(new long[]{0x0000000000600000L});
public static final BitSet FOLLOW_RULE_EXT_INT_in_synpred22_InternalProlog850 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_INT_in_synpred22_InternalProlog876 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP1200FX_in_synpred24_InternalProlog1226 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP1150FX_in_synpred25_InternalProlog1341 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP900FY_in_synpred30_InternalProlog2069 = new BitSet(new long[]{0x0000000179BFFFF0L});
public static final BitSet FOLLOW_ruleExpression900fy_in_synpred30_InternalProlog2095 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP900FX_in_synpred31_InternalProlog2211 = new BitSet(new long[]{0x0000000000000002L});
public static final BitSet FOLLOW_RULE_OP500FX_in_synpred35_InternalProlog2785 = new BitSet(new long[]{0x0000000000000002L});
}