// $ANTLR start "logicalANDExpression" // AS3_ex.g3:2267:1: logicalANDExpression : bitwiseORExpression (L= LAND bitwiseORExpression )* ; public AS3_exParser.logicalANDExpression_return logicalANDExpression() // throws RecognitionException [1] { AS3_exParser.logicalANDExpression_return retval = new AS3_exParser.logicalANDExpression_return(); retval.Start = input.LT(1); int logicalANDExpression_StartIndex = input.Index(); object root_0 = null; IToken L = null; AS3_exParser.bitwiseORExpression_return bitwiseORExpression265 = null; AS3_exParser.bitwiseORExpression_return bitwiseORExpression266 = null; object L_tree=null; try { if ( (state.backtracking > 0) && AlreadyParsedRule(input, 110) ) { return retval; } // AS3_ex.g3:2268:5: ( bitwiseORExpression (L= LAND bitwiseORExpression )* ) // AS3_ex.g3:2268:9: bitwiseORExpression (L= LAND bitwiseORExpression )* { root_0 = (object)adaptor.GetNilNode(); PushFollow(FOLLOW_bitwiseORExpression_in_logicalANDExpression10734); bitwiseORExpression265 = bitwiseORExpression(); state.followingStackPointer--; if (state.failed) return retval; if ( state.backtracking == 0 ) adaptor.AddChild(root_0, bitwiseORExpression265.Tree); // AS3_ex.g3:2268:29: (L= LAND bitwiseORExpression )* do { int alt121 = 2; int LA121_0 = input.LA(1); if ( (LA121_0 == LAND) ) { alt121 = 1; } switch (alt121) { case 1 : // AS3_ex.g3:2268:31: L= LAND bitwiseORExpression { L=(IToken)Match(input,LAND,FOLLOW_LAND_in_logicalANDExpression10740); if (state.failed) return retval; if ( state.backtracking == 0 ) {L_tree = (object)adaptor.Create(L); adaptor.AddChild(root_0, L_tree); } if ( state.backtracking == 0 ) { IndentEmit((CommonToken)L); } PushFollow(FOLLOW_bitwiseORExpression_in_logicalANDExpression10744); bitwiseORExpression266 = bitwiseORExpression(); state.followingStackPointer--; if (state.failed) return retval; if ( state.backtracking == 0 ) adaptor.AddChild(root_0, bitwiseORExpression266.Tree); if ( state.backtracking == 0 ) { PopIndent(); } } break; default: goto loop121; } } while (true); loop121: ; // Stops C# compiler whining that label 'loop121' has no statements } retval.Stop = input.LT(-1); if ( state.backtracking==0 ) { retval.Tree = (object)adaptor.RulePostProcessing(root_0); adaptor.SetTokenBoundaries(retval.Tree, (IToken) retval.Start, (IToken) retval.Stop);} } catch (RecognitionException re) { ReportError(re); Recover(input,re); // Conversion of the second argument necessary, but harmless retval.Tree = (object)adaptor.ErrorNode(input, (IToken) retval.Start, input.LT(-1), re); } finally { if ( state.backtracking > 0 ) { Memoize(input, 110, logicalANDExpression_StartIndex); } } return retval; }
// $ANTLR start "logicalANDExpression" // AS3_ex.g3:3133:1: logicalANDExpression : bitwiseORExpression (L= LAND bitwiseORExpression )* ; public AS3_exParser.logicalANDExpression_return logicalANDExpression() // throws RecognitionException [1] { AS3_exParser.logicalANDExpression_return retval = new AS3_exParser.logicalANDExpression_return(); retval.Start = input.LT(1); int logicalANDExpression_StartIndex = input.Index(); object root_0 = null; IToken L = null; AS3_exParser.bitwiseORExpression_return bitwiseORExpression276 = null; AS3_exParser.bitwiseORExpression_return bitwiseORExpression277 = null; object L_tree=null; WrapOptions options=mPrinter.getExpressionWrapOptions(); bool pushedWrapInfo=false; try { if ( (state.backtracking > 0) && AlreadyParsedRule(input, 110) ) { return retval; } // AS3_ex.g3:3138:5: ( bitwiseORExpression (L= LAND bitwiseORExpression )* ) // AS3_ex.g3:3138:9: bitwiseORExpression (L= LAND bitwiseORExpression )* { root_0 = (object)adaptor.GetNilNode(); if ( state.backtracking == 0 ) { pushedWrapInfo=pushWrapInfo(options, true); } PushFollow(FOLLOW_bitwiseORExpression_in_logicalANDExpression12136); bitwiseORExpression276 = bitwiseORExpression(); state.followingStackPointer--; if (state.failed) return retval; if ( state.backtracking == 0 ) adaptor.AddChild(root_0, bitwiseORExpression276.Tree); // AS3_ex.g3:3139:29: (L= LAND bitwiseORExpression )* do { int alt128 = 2; int LA128_0 = input.LA(1); if ( (LA128_0 == LAND) ) { int LA128_2 = input.LA(2); if ( (synpred259_AS3_ex()) ) { alt128 = 1; } } switch (alt128) { case 1 : // AS3_ex.g3:3139:31: L= LAND bitwiseORExpression { L=(IToken)Match(input,LAND,FOLLOW_LAND_in_logicalANDExpression12142); if (state.failed) return retval; if ( state.backtracking == 0 ) {L_tree = (object)adaptor.Create(L); adaptor.AddChild(root_0, L_tree); } if ( state.backtracking == 0 ) { indentEmit(L, ASPrettyPrinter.Break_Logical_Ops_code); } PushFollow(FOLLOW_bitwiseORExpression_in_logicalANDExpression12146); bitwiseORExpression277 = bitwiseORExpression(); state.followingStackPointer--; if (state.failed) return retval; if ( state.backtracking == 0 ) adaptor.AddChild(root_0, bitwiseORExpression277.Tree); if ( state.backtracking == 0 ) { popIndent(); } } break; default: goto loop128; } } while (true); loop128: ; // Stops C# compiler whining that label 'loop128' has no statements if ( state.backtracking == 0 ) { if (pushedWrapInfo) mPrinter.popWrapContext(); } } retval.Stop = input.LT(-1); if ( state.backtracking==0 ) { retval.Tree = (object)adaptor.RulePostProcessing(root_0); adaptor.SetTokenBoundaries(retval.Tree, (IToken) retval.Start, (IToken) retval.Stop);} } catch (RecognitionException re) { ReportError(re); Recover(input,re); // Conversion of the second argument necessary, but harmless retval.Tree = (object)adaptor.ErrorNode(input, (IToken) retval.Start, input.LT(-1), re); } finally { if ( state.backtracking > 0 ) { Memoize(input, 110, logicalANDExpression_StartIndex); } } return retval; }