// throws RecognitionException [1] // $ANTLR start identifier // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:1026:1: identifier : qualifiedIdent ( options {greedy=true; } : DOT qualifiedIdent )* -> ^( IDENTIFIER ( qualifiedIdent )+ ) ; public identifier_return identifier() { identifier_return retval = new identifier_return(); retval.start = input.LT(1); int identifier_StartIndex = input.Index(); CommonTree root_0 = null; CommonToken DOT173 = null; qualifiedIdent_return qualifiedIdent172 = null; qualifiedIdent_return qualifiedIdent174 = null; CommonTree DOT173_tree=null; RewriteRuleTokenStream stream_DOT = new RewriteRuleTokenStream(adaptor,"token DOT"); RewriteRuleSubtreeStream stream_qualifiedIdent = new RewriteRuleSubtreeStream(adaptor,"rule qualifiedIdent"); try { if ( (backtracking > 0) && AlreadyParsedRule(input, 65) ) { return retval; } // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:1027:4: ( qualifiedIdent ( options {greedy=true; } : DOT qualifiedIdent )* -> ^( IDENTIFIER ( qualifiedIdent )+ ) ) // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:1027:4: qualifiedIdent ( options {greedy=true; } : DOT qualifiedIdent )* { PushFollow(FOLLOW_qualifiedIdent_in_identifier3221); qualifiedIdent172 = qualifiedIdent(); followingStackPointer_--; if (failed) return retval; if ( backtracking==0 ) stream_qualifiedIdent.Add(qualifiedIdent172.Tree); if ( backtracking == 0 ) { } // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:1028:3: ( options {greedy=true; } : DOT qualifiedIdent )* do { int alt46 = 2; int LA46_0 = input.LA(1); if ( (LA46_0 == DOT) ) { alt46 = 1; } switch (alt46) { case 1 : // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:1029:6: DOT qualifiedIdent { DOT173 = (CommonToken)input.LT(1); Match(input,DOT,FOLLOW_DOT_in_identifier3245); if (failed) return retval; if ( backtracking==0 ) stream_DOT.Add(DOT173); if ( backtracking == 0 ) { buffer.Append("."); } PushFollow(FOLLOW_qualifiedIdent_in_identifier3249); qualifiedIdent174 = qualifiedIdent(); followingStackPointer_--; if (failed) return retval; if ( backtracking==0 ) stream_qualifiedIdent.Add(qualifiedIdent174.Tree); } break; default: goto loop46; } } while (true); loop46: ; // Stops C# compiler whinging that label 'loop46' has no statements // AST REWRITE // elements: qualifiedIdent // token labels: // rule labels: retval // token list labels: // rule list labels: if ( backtracking==0 ) { retval.tree = root_0; RewriteRuleSubtreeStream stream_retval = new RewriteRuleSubtreeStream(adaptor, "token retval", (retval!=null ? retval.Tree : null)); root_0 = (CommonTree)adaptor.GetNilNode(); // 1031:3: -> ^( IDENTIFIER ( qualifiedIdent )+ ) { // C:\\Users\\sephiroth\\Documents\\Visual Studio 2005\\Projects\\CodeReformatter\\CodeReformatter\\AS.g:1031:6: ^( IDENTIFIER ( qualifiedIdent )+ ) { CommonTree root_1 = (CommonTree)adaptor.GetNilNode(); root_1 = (CommonTree)adaptor.BecomeRoot(adaptor.Create(IDENTIFIER, "IDENTIFIER"), root_1); if ( !(stream_qualifiedIdent.HasNext()) ) { throw new RewriteEarlyExitException(); } while ( stream_qualifiedIdent.HasNext() ) { adaptor.AddChild(root_1, stream_qualifiedIdent.Next()); } stream_qualifiedIdent.Reset(); adaptor.AddChild(root_0, root_1); } } } } 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, 65, identifier_StartIndex); } } return retval; }
// $ANTLR start "identifier" // C:\\Projects\\CalcEngine\\src\\CalcEngine\\Parsers\\Antlr\\AntlrCalcEngine.g:262:1: identifier : ID -> ^( IDENTIFIER ID ) ; public identifier_return identifier() // throws RecognitionException [1] { var retval = new identifier_return(); retval.Start = input.LT( 1 ); CommonTree root_0 = null; IToken ID92 = null; CommonTree ID92_tree = null; var stream_ID = new RewriteRuleTokenStream( adaptor, "token ID" ); try { // C:\\Projects\\CalcEngine\\src\\CalcEngine\\Parsers\\Antlr\\AntlrCalcEngine.g:263:2: ( ID -> ^( IDENTIFIER ID ) ) // C:\\Projects\\CalcEngine\\src\\CalcEngine\\Parsers\\Antlr\\AntlrCalcEngine.g:263:4: ID { ID92 = (IToken)Match( input, ID, FOLLOW_ID_in_identifier1399 ); stream_ID.Add( ID92 ); // AST REWRITE // elements: ID // token labels: // rule labels: retval // token list labels: // rule list labels: // wildcard labels: retval.Tree = root_0; var stream_retval = new RewriteRuleSubtreeStream( adaptor, "rule retval", retval != null ? retval.Tree : null ); root_0 = (CommonTree)adaptor.GetNilNode(); // 263:7: -> ^( IDENTIFIER ID ) { // C:\\Projects\\CalcEngine\\src\\CalcEngine\\Parsers\\Antlr\\AntlrCalcEngine.g:263:10: ^( IDENTIFIER ID ) { var root_1 = (CommonTree)adaptor.GetNilNode(); root_1 = (CommonTree)adaptor.BecomeRoot( adaptor.Create( IDENTIFIER, "IDENTIFIER" ), root_1 ); adaptor.AddChild( root_1, stream_ID.NextNode() ); adaptor.AddChild( root_0, root_1 ); } } retval.Tree = root_0; retval.Tree = root_0; } retval.Stop = input.LT( -1 ); retval.Tree = 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 = adaptor.ErrorNode( input, (IToken)retval.Start, input.LT( -1 ), re ); } finally {} return retval; }
// $ANTLR start identifier // C:\\Documents and Settings\\Sébastien Ros\\Mes documents\\Développement\\NLinq\\NLinq.g:188:1: identifier returns [Identifier value] : ID ; public identifier_return identifier() // throws RecognitionException [1] { identifier_return retval = new identifier_return(); retval.start = input.LT(1); CommonTree root_0 = null; IToken ID51 = null; CommonTree ID51_tree=null; try { // C:\\Documents and Settings\\Sébastien Ros\\Mes documents\\Développement\\NLinq\\NLinq.g:189:2: ( ID ) // C:\\Documents and Settings\\Sébastien Ros\\Mes documents\\Développement\\NLinq\\NLinq.g:189:5: ID { root_0 = (CommonTree)adaptor.GetNilNode(); ID51 = (IToken)input.LT(1); Match(input,ID,FOLLOW_ID_in_identifier869); ID51_tree = (CommonTree)adaptor.Create(ID51); adaptor.AddChild(root_0, ID51_tree); retval.value = new Identifier(ID51.Text); } 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; }