// throws RecognitionException [1] // $ANTLR start llamada // D:\\Proyectos\\ProyectosVS\\FKVM\\FKVM\\src\\antlr\\FKVMGen.g:115:1: llamada : ^( LLAMADA IDENT le= lista_expr ) -> llamada(id=$IDENT.textlp=$le.st); public llamada_return llamada() { llamada_return retval = new llamada_return(); retval.start = input.LT(1); FkvmAST IDENT25 = null; lista_expr_return le = null; try { // D:\\Proyectos\\ProyectosVS\\FKVM\\FKVM\\src\\antlr\\FKVMGen.g:115:9: ( ^( LLAMADA IDENT le= lista_expr ) -> llamada(id=$IDENT.textlp=$le.st)) // D:\\Proyectos\\ProyectosVS\\FKVM\\FKVM\\src\\antlr\\FKVMGen.g:115:11: ^( LLAMADA IDENT le= lista_expr ) { Match(input,LLAMADA,FOLLOW_LLAMADA_in_llamada978); Match(input, Token.DOWN, null); IDENT25 = (FkvmAST)input.LT(1); Match(input,IDENT,FOLLOW_IDENT_in_llamada980); PushFollow(FOLLOW_lista_expr_in_llamada984); le = lista_expr(); followingStackPointer_--; Match(input, Token.UP, null); // TEMPLATE REWRITE // 115:42: -> llamada(id=$IDENT.textlp=$le.st) { retval.st = templateLib.GetInstanceOf("llamada", new STAttrMap().Add("id", IDENT25.Text).Add("lp", le.st)); } } } catch (RecognitionException re) { ReportError(re); Recover(input,re); } finally { } return retval; }
// throws RecognitionException [1] // $ANTLR start llamada // D:\\Proyectos\\ProyectosVS\\FKVM\\FKVM\\src\\antlr\\FKVM.g:141:1: llamada : IDENT '(' lista_expr ')' -> ^( LLAMADA IDENT lista_expr ) ; public llamada_return llamada() { llamada_return retval = new llamada_return(); retval.start = input.LT(1); FkvmAST root_0 = null; IToken IDENT93 = null; IToken char_literal94 = null; IToken char_literal96 = null; lista_expr_return lista_expr95 = null; FkvmAST IDENT93_tree=null; FkvmAST char_literal94_tree=null; FkvmAST char_literal96_tree=null; RewriteRuleTokenStream stream_IDENT = new RewriteRuleTokenStream(adaptor,"token IDENT"); RewriteRuleTokenStream stream_25 = new RewriteRuleTokenStream(adaptor,"token 25"); RewriteRuleTokenStream stream_26 = new RewriteRuleTokenStream(adaptor,"token 26"); RewriteRuleSubtreeStream stream_lista_expr = new RewriteRuleSubtreeStream(adaptor,"rule lista_expr"); try { // D:\\Proyectos\\ProyectosVS\\FKVM\\FKVM\\src\\antlr\\FKVM.g:141:9: ( IDENT '(' lista_expr ')' -> ^( LLAMADA IDENT lista_expr ) ) // D:\\Proyectos\\ProyectosVS\\FKVM\\FKVM\\src\\antlr\\FKVM.g:141:11: IDENT '(' lista_expr ')' { IDENT93 = (IToken)input.LT(1); Match(input,IDENT,FOLLOW_IDENT_in_llamada825); stream_IDENT.Add(IDENT93); char_literal94 = (IToken)input.LT(1); Match(input,25,FOLLOW_25_in_llamada827); stream_25.Add(char_literal94); PushFollow(FOLLOW_lista_expr_in_llamada829); lista_expr95 = lista_expr(); followingStackPointer_--; stream_lista_expr.Add(lista_expr95.Tree); char_literal96 = (IToken)input.LT(1); Match(input,26,FOLLOW_26_in_llamada831); stream_26.Add(char_literal96); // AST REWRITE // elements: lista_expr, IDENT // token labels: // rule labels: retval // token list labels: // rule list labels: retval.tree = root_0; RewriteRuleSubtreeStream stream_retval = new RewriteRuleSubtreeStream(adaptor, "token retval", (retval!=null ? retval.Tree : null)); root_0 = (FkvmAST)adaptor.GetNilNode(); // 141:36: -> ^( LLAMADA IDENT lista_expr ) { // D:\\Proyectos\\ProyectosVS\\FKVM\\FKVM\\src\\antlr\\FKVM.g:141:39: ^( LLAMADA IDENT lista_expr ) { FkvmAST root_1 = (FkvmAST)adaptor.GetNilNode(); root_1 = (FkvmAST)adaptor.BecomeRoot(adaptor.Create(LLAMADA, "LLAMADA"), root_1); adaptor.AddChild(root_1, stream_IDENT.Next()); adaptor.AddChild(root_1, stream_lista_expr.Next()); adaptor.AddChild(root_0, root_1); } } } retval.stop = input.LT(-1); retval.tree = (FkvmAST)adaptor.RulePostProcessing(root_0); adaptor.SetTokenBoundaries(retval.Tree, retval.start, retval.stop); } catch (RecognitionException re) { ReportError(re); Recover(input,re); } finally { } return retval; }