// throws RecognitionException [1] // $ANTLR start statement // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:672:1: statement : ( ( LCURLY )=> block | declarationStatement | expressionStatement | ifStatement | forStatement | whileStatement | doWhileStatement | withStatement | switchStatement | breakStatement | continueStatement | returnStatement | throwStatement | tryStatement | SEMI | c= comments ); public statement_return statement() { statement_return retval = new statement_return(); retval.start = input.LT(1); int statement_StartIndex = input.Index(); CommonTree root_0 = null; CommonToken SEMI93 = null; comments_return c = null; block_return block79 = null; declarationStatement_return declarationStatement80 = null; expressionStatement_return expressionStatement81 = null; ifStatement_return ifStatement82 = null; forStatement_return forStatement83 = null; whileStatement_return whileStatement84 = null; doWhileStatement_return doWhileStatement85 = null; withStatement_return withStatement86 = null; switchStatement_return switchStatement87 = null; breakStatement_return breakStatement88 = null; continueStatement_return continueStatement89 = null; returnStatement_return returnStatement90 = null; throwStatement_return throwStatement91 = null; tryStatement_return tryStatement92 = null; CommonTree SEMI93_tree=null; try { if ( (backtracking > 0) && AlreadyParsedRule(input, 36) ) { return retval; } // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:673:4: ( ( LCURLY )=> block | declarationStatement | expressionStatement | ifStatement | forStatement | whileStatement | doWhileStatement | withStatement | switchStatement | breakStatement | continueStatement | returnStatement | throwStatement | tryStatement | SEMI | c= comments ) int alt29 = 16; switch ( input.LA(1) ) { case LCURLY: { int LA29_1 = input.LA(2); if ( (LA29_1 == LCURLY) && (synpred37()) ) { alt29 = 1; } else if ( ((LA29_1 >= VAR && LA29_1 <= CONST)) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == INC) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == DEC) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == MINUS) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == PLUS) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == DELETE) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == VOID) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == TYPEOF) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == LNOT) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == BNOT) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == UNDEFINED) && (synpred37()) ) { alt29 = 1; } else if ( ((LA29_1 >= HEX_LITERAL && LA29_1 <= FLOAT_LITERAL)) ) { int LA29_56 = input.LA(3); if ( (synpred37()) ) { alt29 = 1; } else if ( (synpred39()) ) { alt29 = 3; } else { if ( backtracking > 0 ) {failed = true; return retval;} NoViableAltException nvae_d29s56 = new NoViableAltException("672:1: statement : ( ( LCURLY )=> block | declarationStatement | expressionStatement | ifStatement | forStatement | whileStatement | doWhileStatement | withStatement | switchStatement | breakStatement | continueStatement | returnStatement | throwStatement | tryStatement | SEMI | c= comments );", 29, 56, input); throw nvae_d29s56; } } else if ( (LA29_1 == STRING_LITERAL) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == TRUE) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == FALSE) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == NULL) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == LBRACK) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == FUNCTION) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == NEW) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == LPAREN) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == IDENT) ) { int LA29_65 = input.LA(3); if ( (synpred37()) ) { alt29 = 1; } else if ( (synpred39()) ) { alt29 = 3; } else { if ( backtracking > 0 ) {failed = true; return retval;} NoViableAltException nvae_d29s65 = new NoViableAltException("672:1: statement : ( ( LCURLY )=> block | declarationStatement | expressionStatement | ifStatement | forStatement | whileStatement | doWhileStatement | withStatement | switchStatement | breakStatement | continueStatement | returnStatement | throwStatement | tryStatement | SEMI | c= comments );", 29, 65, input); throw nvae_d29s65; } } else if ( (LA29_1 == USE) ) { int LA29_66 = input.LA(3); if ( (synpred37()) ) { alt29 = 1; } else if ( (synpred39()) ) { alt29 = 3; } else { if ( backtracking > 0 ) {failed = true; return retval;} NoViableAltException nvae_d29s66 = new NoViableAltException("672:1: statement : ( ( LCURLY )=> block | declarationStatement | expressionStatement | ifStatement | forStatement | whileStatement | doWhileStatement | withStatement | switchStatement | breakStatement | continueStatement | returnStatement | throwStatement | tryStatement | SEMI | c= comments );", 29, 66, input); throw nvae_d29s66; } } else if ( (LA29_1 == XML) ) { int LA29_67 = input.LA(3); if ( (synpred37()) ) { alt29 = 1; } else if ( (synpred39()) ) { alt29 = 3; } else { if ( backtracking > 0 ) {failed = true; return retval;} NoViableAltException nvae_d29s67 = new NoViableAltException("672:1: statement : ( ( LCURLY )=> block | declarationStatement | expressionStatement | ifStatement | forStatement | whileStatement | doWhileStatement | withStatement | switchStatement | breakStatement | continueStatement | returnStatement | throwStatement | tryStatement | SEMI | c= comments );", 29, 67, input); throw nvae_d29s67; } } else if ( (LA29_1 == DYNAMIC) ) { int LA29_68 = input.LA(3); if ( (synpred37()) ) { alt29 = 1; } else if ( (synpred39()) ) { alt29 = 3; } else { if ( backtracking > 0 ) {failed = true; return retval;} NoViableAltException nvae_d29s68 = new NoViableAltException("672:1: statement : ( ( LCURLY )=> block | declarationStatement | expressionStatement | ifStatement | forStatement | whileStatement | doWhileStatement | withStatement | switchStatement | breakStatement | continueStatement | returnStatement | throwStatement | tryStatement | SEMI | c= comments );", 29, 68, input); throw nvae_d29s68; } } else if ( (LA29_1 == IS) ) { int LA29_69 = input.LA(3); if ( (synpred37()) ) { alt29 = 1; } else if ( (synpred39()) ) { alt29 = 3; } else { if ( backtracking > 0 ) {failed = true; return retval;} NoViableAltException nvae_d29s69 = new NoViableAltException("672:1: statement : ( ( LCURLY )=> block | declarationStatement | expressionStatement | ifStatement | forStatement | whileStatement | doWhileStatement | withStatement | switchStatement | breakStatement | continueStatement | returnStatement | throwStatement | tryStatement | SEMI | c= comments );", 29, 69, input); throw nvae_d29s69; } } else if ( (LA29_1 == AS) ) { int LA29_70 = input.LA(3); if ( (synpred37()) ) { alt29 = 1; } else if ( (synpred39()) ) { alt29 = 3; } else { if ( backtracking > 0 ) {failed = true; return retval;} NoViableAltException nvae_d29s70 = new NoViableAltException("672:1: statement : ( ( LCURLY )=> block | declarationStatement | expressionStatement | ifStatement | forStatement | whileStatement | doWhileStatement | withStatement | switchStatement | breakStatement | continueStatement | returnStatement | throwStatement | tryStatement | SEMI | c= comments );", 29, 70, input); throw nvae_d29s70; } } else if ( (LA29_1 == GET) ) { int LA29_71 = input.LA(3); if ( (synpred37()) ) { alt29 = 1; } else if ( (synpred39()) ) { alt29 = 3; } else { if ( backtracking > 0 ) {failed = true; return retval;} NoViableAltException nvae_d29s71 = new NoViableAltException("672:1: statement : ( ( LCURLY )=> block | declarationStatement | expressionStatement | ifStatement | forStatement | whileStatement | doWhileStatement | withStatement | switchStatement | breakStatement | continueStatement | returnStatement | throwStatement | tryStatement | SEMI | c= comments );", 29, 71, input); throw nvae_d29s71; } } else if ( (LA29_1 == SET) ) { int LA29_72 = input.LA(3); if ( (synpred37()) ) { alt29 = 1; } else if ( (synpred39()) ) { alt29 = 3; } else { if ( backtracking > 0 ) {failed = true; return retval;} NoViableAltException nvae_d29s72 = new NoViableAltException("672:1: statement : ( ( LCURLY )=> block | declarationStatement | expressionStatement | ifStatement | forStatement | whileStatement | doWhileStatement | withStatement | switchStatement | breakStatement | continueStatement | returnStatement | throwStatement | tryStatement | SEMI | c= comments );", 29, 72, input); throw nvae_d29s72; } } else if ( (LA29_1 == IF) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == FOR) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == WHILE) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == DO) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == WITH) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == SWITCH) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == BREAK) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == CONTINUE) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == RETURN) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == 176) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == 177) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == SEMI) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == SL_COMMENT) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == ML_COMMENT) && (synpred37()) ) { alt29 = 1; } else if ( (LA29_1 == RCURLY) ) { int LA29_87 = input.LA(3); if ( (synpred37()) ) { alt29 = 1; } else if ( (synpred39()) ) { alt29 = 3; } else { if ( backtracking > 0 ) {failed = true; return retval;} NoViableAltException nvae_d29s87 = new NoViableAltException("672:1: statement : ( ( LCURLY )=> block | declarationStatement | expressionStatement | ifStatement | forStatement | whileStatement | doWhileStatement | withStatement | switchStatement | breakStatement | continueStatement | returnStatement | throwStatement | tryStatement | SEMI | c= comments );", 29, 87, input); throw nvae_d29s87; } } else { if ( backtracking > 0 ) {failed = true; return retval;} NoViableAltException nvae_d29s1 = new NoViableAltException("672:1: statement : ( ( LCURLY )=> block | declarationStatement | expressionStatement | ifStatement | forStatement | whileStatement | doWhileStatement | withStatement | switchStatement | breakStatement | continueStatement | returnStatement | throwStatement | tryStatement | SEMI | c= comments );", 29, 1, input); throw nvae_d29s1; } } break; case VAR: case CONST: { alt29 = 2; } break; case STRING_LITERAL: case FUNCTION: case GET: case SET: case LPAREN: case VOID: case IDENT: case LBRACK: case DYNAMIC: case IS: case AS: case PLUS: case MINUS: case INC: case DEC: case DELETE: case TYPEOF: case LNOT: case BNOT: case UNDEFINED: case TRUE: case FALSE: case NULL: case HEX_LITERAL: case DECIMAL_LITERAL: case OCTAL_LITERAL: case FLOAT_LITERAL: case NEW: case USE: case XML: { alt29 = 3; } break; case IF: { alt29 = 4; } break; case FOR: { alt29 = 5; } break; case WHILE: { alt29 = 6; } break; case DO: { alt29 = 7; } break; case WITH: { alt29 = 8; } break; case SWITCH: { alt29 = 9; } break; case BREAK: { alt29 = 10; } break; case CONTINUE: { alt29 = 11; } break; case RETURN: { alt29 = 12; } break; case 176: { alt29 = 13; } break; case 177: { alt29 = 14; } break; case SEMI: { alt29 = 15; } break; case SL_COMMENT: case ML_COMMENT: { alt29 = 16; } break; default: if ( backtracking > 0 ) {failed = true; return retval;} NoViableAltException nvae_d29s0 = new NoViableAltException("672:1: statement : ( ( LCURLY )=> block | declarationStatement | expressionStatement | ifStatement | forStatement | whileStatement | doWhileStatement | withStatement | switchStatement | breakStatement | continueStatement | returnStatement | throwStatement | tryStatement | SEMI | c= comments );", 29, 0, input); throw nvae_d29s0; } switch (alt29) { case 1 : // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:673:4: ( LCURLY )=> block { root_0 = (CommonTree)adaptor.GetNilNode(); PushFollow(FOLLOW_block_in_statement1982); block79 = block(); followingStackPointer_--; if (failed) return retval; if ( backtracking==0 ) adaptor.AddChild(root_0, block79.Tree); } break; case 2 : // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:674:4: declarationStatement { root_0 = (CommonTree)adaptor.GetNilNode(); PushFollow(FOLLOW_declarationStatement_in_statement1987); declarationStatement80 = declarationStatement(); followingStackPointer_--; if (failed) return retval; if ( backtracking==0 ) adaptor.AddChild(root_0, declarationStatement80.Tree); if ( backtracking == 0 ) { buffer.Append(";"); } } break; case 3 : // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:675:4: expressionStatement { root_0 = (CommonTree)adaptor.GetNilNode(); PushFollow(FOLLOW_expressionStatement_in_statement1996); expressionStatement81 = expressionStatement(); followingStackPointer_--; if (failed) return retval; if ( backtracking==0 ) adaptor.AddChild(root_0, expressionStatement81.Tree); if ( backtracking == 0 ) { buffer.Append(";"); } } break; case 4 : // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:676:4: ifStatement { root_0 = (CommonTree)adaptor.GetNilNode(); PushFollow(FOLLOW_ifStatement_in_statement2006); ifStatement82 = ifStatement(); followingStackPointer_--; if (failed) return retval; if ( backtracking==0 ) adaptor.AddChild(root_0, ifStatement82.Tree); } break; case 5 : // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:677:4: forStatement { root_0 = (CommonTree)adaptor.GetNilNode(); PushFollow(FOLLOW_forStatement_in_statement2011); forStatement83 = forStatement(); followingStackPointer_--; if (failed) return retval; if ( backtracking==0 ) adaptor.AddChild(root_0, forStatement83.Tree); } break; case 6 : // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:678:4: whileStatement { root_0 = (CommonTree)adaptor.GetNilNode(); PushFollow(FOLLOW_whileStatement_in_statement2016); whileStatement84 = whileStatement(); followingStackPointer_--; if (failed) return retval; if ( backtracking==0 ) adaptor.AddChild(root_0, whileStatement84.Tree); } break; case 7 : // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:679:4: doWhileStatement { root_0 = (CommonTree)adaptor.GetNilNode(); PushFollow(FOLLOW_doWhileStatement_in_statement2021); doWhileStatement85 = doWhileStatement(); followingStackPointer_--; if (failed) return retval; if ( backtracking==0 ) adaptor.AddChild(root_0, doWhileStatement85.Tree); } break; case 8 : // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:680:4: withStatement { root_0 = (CommonTree)adaptor.GetNilNode(); PushFollow(FOLLOW_withStatement_in_statement2026); withStatement86 = withStatement(); followingStackPointer_--; if (failed) return retval; if ( backtracking==0 ) adaptor.AddChild(root_0, withStatement86.Tree); } break; case 9 : // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:681:4: switchStatement { root_0 = (CommonTree)adaptor.GetNilNode(); PushFollow(FOLLOW_switchStatement_in_statement2031); switchStatement87 = switchStatement(); followingStackPointer_--; if (failed) return retval; if ( backtracking==0 ) adaptor.AddChild(root_0, switchStatement87.Tree); } break; case 10 : // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:682:4: breakStatement { root_0 = (CommonTree)adaptor.GetNilNode(); PushFollow(FOLLOW_breakStatement_in_statement2036); breakStatement88 = breakStatement(); followingStackPointer_--; if (failed) return retval; if ( backtracking==0 ) adaptor.AddChild(root_0, breakStatement88.Tree); if ( backtracking == 0 ) { buffer.Append(";"); } } break; case 11 : // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:683:4: continueStatement { root_0 = (CommonTree)adaptor.GetNilNode(); PushFollow(FOLLOW_continueStatement_in_statement2046); continueStatement89 = continueStatement(); followingStackPointer_--; if (failed) return retval; if ( backtracking==0 ) adaptor.AddChild(root_0, continueStatement89.Tree); if ( backtracking == 0 ) { buffer.Append(";"); } } break; case 12 : // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:684:4: returnStatement { root_0 = (CommonTree)adaptor.GetNilNode(); PushFollow(FOLLOW_returnStatement_in_statement2055); returnStatement90 = returnStatement(); followingStackPointer_--; if (failed) return retval; if ( backtracking==0 ) adaptor.AddChild(root_0, returnStatement90.Tree); if ( backtracking == 0 ) { buffer.Append(";"); } } break; case 13 : // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:685:4: throwStatement { root_0 = (CommonTree)adaptor.GetNilNode(); PushFollow(FOLLOW_throwStatement_in_statement2065); throwStatement91 = throwStatement(); followingStackPointer_--; if (failed) return retval; if ( backtracking==0 ) adaptor.AddChild(root_0, throwStatement91.Tree); if ( backtracking == 0 ) { buffer.Append(";"); } } break; case 14 : // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:686:4: tryStatement { root_0 = (CommonTree)adaptor.GetNilNode(); PushFollow(FOLLOW_tryStatement_in_statement2075); tryStatement92 = tryStatement(); followingStackPointer_--; if (failed) return retval; if ( backtracking==0 ) adaptor.AddChild(root_0, tryStatement92.Tree); } break; case 15 : // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:687:4: SEMI { root_0 = (CommonTree)adaptor.GetNilNode(); SEMI93 = (CommonToken)input.LT(1); Match(input,SEMI,FOLLOW_SEMI_in_statement2080); if (failed) return retval; } break; case 16 : // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:688:4: c= comments { root_0 = (CommonTree)adaptor.GetNilNode(); PushFollow(FOLLOW_comments_in_statement2088); c = comments(); followingStackPointer_--; if (failed) return retval; if ( backtracking==0 ) adaptor.AddChild(root_0, c.Tree); if ( backtracking == 0 ) { insertComment(c); } } break; } retval.stop = input.LT(-1); if ( backtracking==0 ) { retval.tree = (CommonTree)adaptor.RulePostProcessing(root_0); adaptor.SetTokenBoundaries(retval.Tree, retval.start, retval.stop); } } catch (NoViableAltException e) { Debug.WriteLine("NoValiable alt: token=" + e.Token + " (decision=" + e.decisionNumber + " state " + e.stateNumber + ")" + " decision=<<" + e.grammarDecisionDescription + ">>"); throw e; } catch (MismatchedTokenException e) { Debug.WriteLine("[" + e.Line + ":" + e.Index + "]: " + e.Message + ". Unexpected " + e.UnexpectedType.ToString() + "( expecting: "+ e.expecting + " )"); throw e; } catch(RecognitionException e) { Debug.WriteLine("RecognitionException: " + e); throw e; } finally { if ( backtracking > 0 ) { Memoize(input, 36, statement_StartIndex); } } return retval; }
// $ANTLR start statement // C:\\Documents and Settings\\Sébastien Ros\\Mes documents\\Développement\\NLinq\\NLinq.g:147:1: statement returns [Statement value] : first= primaryExpression ( '.' follow= primaryExpression )* ; public statement_return statement() // throws RecognitionException [1] { statement_return retval = new statement_return(); retval.start = input.LT(1); CommonTree root_0 = null; IToken char_literal27 = null; primaryExpression_return first = null; primaryExpression_return follow = null; CommonTree char_literal27_tree=null; List<Expression> expressions = new List<Expression>(); try { // C:\\Documents and Settings\\Sébastien Ros\\Mes documents\\Développement\\NLinq\\NLinq.g:151:2: (first= primaryExpression ( '.' follow= primaryExpression )* ) // C:\\Documents and Settings\\Sébastien Ros\\Mes documents\\Développement\\NLinq\\NLinq.g:151:4: first= primaryExpression ( '.' follow= primaryExpression )* { root_0 = (CommonTree)adaptor.GetNilNode(); PushFollow(FOLLOW_primaryExpression_in_statement594); first = primaryExpression(); followingStackPointer_--; adaptor.AddChild(root_0, first.Tree); expressions.Add(first.value); // C:\\Documents and Settings\\Sébastien Ros\\Mes documents\\Développement\\NLinq\\NLinq.g:151:63: ( '.' follow= primaryExpression )* do { int alt14 = 2; int LA14_0 = input.LA(1); if ( (LA14_0 == 33) ) { alt14 = 1; } switch (alt14) { case 1 : // C:\\Documents and Settings\\Sébastien Ros\\Mes documents\\Développement\\NLinq\\NLinq.g:151:65: '.' follow= primaryExpression { char_literal27 = (IToken)input.LT(1); Match(input,33,FOLLOW_33_in_statement600); char_literal27_tree = (CommonTree)adaptor.Create(char_literal27); adaptor.AddChild(root_0, char_literal27_tree); PushFollow(FOLLOW_primaryExpression_in_statement604); follow = primaryExpression(); followingStackPointer_--; adaptor.AddChild(root_0, follow.Tree); expressions.Add(follow.value); } break; default: goto loop14; } } while (true); loop14: ; // Stops C# compiler whinging that label 'loop14' has no statements retval.value = new Statement(expressions.ToArray()); } retval.stop = input.LT(-1); retval.tree = (CommonTree)adaptor.RulePostProcessing(root_0); adaptor.SetTokenBoundaries(retval.Tree, retval.start, retval.stop); } catch (RecognitionException re) { ReportError(re); Recover(input,re); } finally { } return retval; }