parser 129 ext/racc/cparse/cparse.c VALUE parser; /* parser object */ parser 223 ext/racc/cparse/cparse.c vparams = initialize_params(vparams, parser, arg, Qnil, Qnil); parser 240 ext/racc/cparse/cparse.c vparams = initialize_params(vparams, parser, arg, lexer, lexmid); parser 320 ext/racc/cparse/cparse.c v->parser = parser; parser 325 ext/racc/cparse/cparse.c v->debug = RTEST(rb_ivar_get(parser, id_yydebug)); parser 358 ext/racc/cparse/cparse.c rb_ivar_set(parser, id_errstatus, LONG2NUM(v->errstatus)); parser 365 ext/racc/cparse/cparse.c rb_iv_set(parser, "@vstack", v->vstack); parser 367 ext/racc/cparse/cparse.c rb_iv_set(parser, "@tstack", v->tstack); parser 370 ext/racc/cparse/cparse.c rb_iv_set(parser, "@tstack", Qnil); parser 382 ext/racc/cparse/cparse.c rb_gc_mark(v->parser); parser 481 ext/racc/cparse/cparse.c tmp = rb_funcall(v->parser, id_nexttoken, 0); parser 491 ext/racc/cparse/cparse.c rb_funcall(v->parser, id_d_read_token, parser 528 ext/racc/cparse/cparse.c rb_ivar_set(v->parser, id_errstatus, LONG2NUM(v->errstatus)); parser 551 ext/racc/cparse/cparse.c rb_funcall(v->parser, id_d_next_state, parser 559 ext/racc/cparse/cparse.c if (v->debug) rb_funcall(v->parser, id_d_accept, 0); parser 569 ext/racc/cparse/cparse.c rb_funcall(v->parser, id_onerror, parser 582 ext/racc/cparse/cparse.c rb_ivar_set(v->parser, id_errstatus, LONG2NUM(v->errstatus)); parser 630 ext/racc/cparse/cparse.c rb_funcall(v->parser, id_d_e_pop, parser 660 ext/racc/cparse/cparse.c rb_funcall(v->parser, id_d_shift, parser 673 ext/racc/cparse/cparse.c v->errstatus = num_to_long(rb_ivar_get(v->parser, id_errstatus)); parser 720 ext/racc/cparse/cparse.c tmp = rb_funcall(v->parser, mid, parser 724 ext/racc/cparse/cparse.c tmp = rb_funcall(v->parser, mid, parser 733 ext/racc/cparse/cparse.c rb_funcall(v->parser, id_d_reduce, parser 333 ext/ripper/ripper.c #define YYMALLOC(size) rb_parser_malloc(parser, size) parser 334 ext/ripper/ripper.c #define YYREALLOC(ptr, size) rb_parser_realloc(parser, ptr, size) parser 335 ext/ripper/ripper.c #define YYCALLOC(nelem, size) rb_parser_calloc(parser, nelem, size) parser 336 ext/ripper/ripper.c #define YYFREE(ptr) rb_parser_free(parser, ptr) parser 569 ext/ripper/ripper.c #define UTF8_ENC() (parser->utf8 ? parser->utf8 : \ parser 570 ext/ripper/ripper.c (parser->utf8 = rb_utf8_encoding())) parser 571 ext/ripper/ripper.c #define STR_NEW(p,n) rb_enc_str_new((p),(n),parser->enc) parser 572 ext/ripper/ripper.c #define STR_NEW0() rb_enc_str_new(0,0,parser->enc) parser 573 ext/ripper/ripper.c #define STR_NEW2(p) rb_enc_str_new((p),strlen(p),parser->enc) parser 574 ext/ripper/ripper.c #define STR_NEW3(p,n,e,func) parser_str_new((p),(n),(e),(func),parser->enc) parser 576 ext/ripper/ripper.c #define TOK_INTERN(mb) rb_intern3(tok(), toklen(), parser->enc) parser 586 ext/ripper/ripper.c #define yyerror(msg) parser_yyerror(parser, msg) parser 588 ext/ripper/ripper.c #define YYLEX_PARAM parser parser 590 ext/ripper/ripper.c #define lex_strterm (parser->parser_lex_strterm) parser 591 ext/ripper/ripper.c #define lex_state (parser->parser_lex_state) parser 592 ext/ripper/ripper.c #define cond_stack (parser->parser_cond_stack) parser 593 ext/ripper/ripper.c #define cmdarg_stack (parser->parser_cmdarg_stack) parser 594 ext/ripper/ripper.c #define class_nest (parser->parser_class_nest) parser 595 ext/ripper/ripper.c #define paren_nest (parser->parser_paren_nest) parser 596 ext/ripper/ripper.c #define lpar_beg (parser->parser_lpar_beg) parser 597 ext/ripper/ripper.c #define in_single (parser->parser_in_single) parser 598 ext/ripper/ripper.c #define in_def (parser->parser_in_def) parser 599 ext/ripper/ripper.c #define compile_for_eval (parser->parser_compile_for_eval) parser 600 ext/ripper/ripper.c #define cur_mid (parser->parser_cur_mid) parser 601 ext/ripper/ripper.c #define in_defined (parser->parser_in_defined) parser 602 ext/ripper/ripper.c #define tokenbuf (parser->parser_tokenbuf) parser 603 ext/ripper/ripper.c #define tokidx (parser->parser_tokidx) parser 604 ext/ripper/ripper.c #define toksiz (parser->parser_toksiz) parser 605 ext/ripper/ripper.c #define lex_input (parser->parser_lex_input) parser 606 ext/ripper/ripper.c #define lex_lastline (parser->parser_lex_lastline) parser 607 ext/ripper/ripper.c #define lex_nextline (parser->parser_lex_nextline) parser 608 ext/ripper/ripper.c #define lex_pbeg (parser->parser_lex_pbeg) parser 609 ext/ripper/ripper.c #define lex_p (parser->parser_lex_p) parser 610 ext/ripper/ripper.c #define lex_pend (parser->parser_lex_pend) parser 611 ext/ripper/ripper.c #define heredoc_end (parser->parser_heredoc_end) parser 612 ext/ripper/ripper.c #define command_start (parser->parser_command_start) parser 613 ext/ripper/ripper.c #define deferred_nodes (parser->parser_deferred_nodes) parser 614 ext/ripper/ripper.c #define lex_gets_ptr (parser->parser_lex_gets_ptr) parser 615 ext/ripper/ripper.c #define lex_gets (parser->parser_lex_gets) parser 616 ext/ripper/ripper.c #define lvtbl (parser->parser_lvtbl) parser 617 ext/ripper/ripper.c #define ruby__end__seen (parser->parser_ruby__end__seen) parser 618 ext/ripper/ripper.c #define ruby_sourceline (parser->parser_ruby_sourceline) parser 619 ext/ripper/ripper.c #define ruby_sourcefile (parser->parser_ruby_sourcefile) parser 620 ext/ripper/ripper.c #define yydebug (parser->parser_yydebug) parser 623 ext/ripper/ripper.c #define ruby_eval_tree (parser->parser_eval_tree) parser 624 ext/ripper/ripper.c #define ruby_eval_tree_begin (parser->parser_eval_tree_begin) parser 625 ext/ripper/ripper.c #define ruby_debug_lines (parser->debug_lines) parser 626 ext/ripper/ripper.c #define ruby_coverage (parser->coverage) parser 635 ext/ripper/ripper.c #define rb_node_newnode(type, a1, a2, a3) node_newnode(parser, type, a1, a2, a3) parser 638 ext/ripper/ripper.c #define cond(node) cond_gen(parser, node) parser 640 ext/ripper/ripper.c #define logop(type,node1,node2) logop_gen(parser, type, node1, node2) parser 648 ext/ripper/ripper.c #define value_expr(node) value_expr_gen(parser, (node) = remove_begin(node)) parser 649 ext/ripper/ripper.c #define void_expr0(node) void_expr_gen(parser, (node)) parser 652 ext/ripper/ripper.c #define void_stmts(node) void_stmts_gen(parser, node) parser 654 ext/ripper/ripper.c #define reduce_nodes(n) reduce_nodes_gen(parser,n) parser 656 ext/ripper/ripper.c #define block_dup_check(n1,n2) block_dup_check_gen(parser,n1,n2) parser 659 ext/ripper/ripper.c #define block_append(h,t) block_append_gen(parser,h,t) parser 661 ext/ripper/ripper.c #define list_append(l,i) list_append_gen(parser,l,i) parser 663 ext/ripper/ripper.c #define list_concat(h,t) list_concat_gen(parser,h,t) parser 665 ext/ripper/ripper.c #define arg_append(h,t) arg_append_gen(parser,h,t) parser 667 ext/ripper/ripper.c #define arg_concat(h,t) arg_concat_gen(parser,h,t) parser 669 ext/ripper/ripper.c #define literal_concat(h,t) literal_concat_gen(parser,h,t) parser 671 ext/ripper/ripper.c #define new_evstr(n) new_evstr_gen(parser,n) parser 673 ext/ripper/ripper.c #define evstr2dstr(n) evstr2dstr_gen(parser,n) parser 677 ext/ripper/ripper.c #define call_bin_op(recv,id,arg1) call_bin_op_gen(parser, recv,id,arg1) parser 679 ext/ripper/ripper.c #define call_uni_op(recv,id) call_uni_op_gen(parser, recv,id) parser 682 ext/ripper/ripper.c #define new_args(f,o,r,p,b) new_args_gen(parser, f,o,r,p,b) parser 684 ext/ripper/ripper.c #define shadowing_lvar(name) shadowing_lvar_gen(parser, name) parser 688 ext/ripper/ripper.c #define ret_args(node) ret_args_gen(parser, node) parser 691 ext/ripper/ripper.c #define new_yield(node) new_yield_gen(parser, node) parser 694 ext/ripper/ripper.c #define gettable(id) gettable_gen(parser,id) parser 696 ext/ripper/ripper.c #define assignable(id,node) assignable_gen(parser, id, node) parser 698 ext/ripper/ripper.c #define new_bv(id) new_bv_gen(parser, id) parser 700 ext/ripper/ripper.c #define aryset(node1,node2) aryset_gen(parser, node1, node2) parser 702 ext/ripper/ripper.c #define attrset(node,id) attrset_gen(parser, node, id) parser 705 ext/ripper/ripper.c #define rb_backref_error(n) rb_backref_error_gen(parser,n) parser 707 ext/ripper/ripper.c #define node_assign(node1, node2) node_assign_gen(parser, node1, node2) parser 710 ext/ripper/ripper.c #define match_op(node1,node2) match_op_gen(parser, node1, node2) parser 713 ext/ripper/ripper.c #define local_push(top) local_push_gen(parser,top) parser 715 ext/ripper/ripper.c #define local_pop() local_pop_gen(parser) parser 717 ext/ripper/ripper.c #define local_var(id) local_var_gen(parser, id); parser 719 ext/ripper/ripper.c #define arg_var(id) arg_var_gen(parser, id) parser 721 ext/ripper/ripper.c #define local_id(id) local_id_gen(parser, id) parser 723 ext/ripper/ripper.c #define local_tbl() local_tbl_gen(parser) parser 725 ext/ripper/ripper.c #define internal_id() internal_id_gen(parser) parser 728 ext/ripper/ripper.c #define dyna_push() dyna_push_gen(parser) parser 730 ext/ripper/ripper.c #define dyna_pop() dyna_pop_gen(parser) parser 732 ext/ripper/ripper.c #define dyna_in_block() dyna_in_block_gen(parser) parser 735 ext/ripper/ripper.c #define dvar_defined(id) dvar_defined_gen(parser, id) parser 737 ext/ripper/ripper.c #define dvar_curr(id) dvar_curr_gen(parser, id) parser 747 ext/ripper/ripper.c #define reg_compile(str,options) reg_compile_gen(parser, str, options) parser 749 ext/ripper/ripper.c #define reg_fragment_setenc(str,options) reg_fragment_setenc_gen(parser, str, options) parser 751 ext/ripper/ripper.c #define reg_fragment_check(str,options) reg_fragment_check_gen(parser, str, options) parser 753 ext/ripper/ripper.c #define reg_named_capture_assign(regexp,match) reg_named_capture_assign_gen(parser,regexp,match) parser 759 ext/ripper/ripper.c #define lvar_defined(id) lvar_defined_gen(parser, id) parser 797 ext/ripper/ripper.c #define dispatch0(n) ripper_dispatch0(parser, TOKEN_PASTE(ripper_id_, n)) parser 798 ext/ripper/ripper.c #define dispatch1(n,a) ripper_dispatch1(parser, TOKEN_PASTE(ripper_id_, n), a) parser 799 ext/ripper/ripper.c #define dispatch2(n,a,b) ripper_dispatch2(parser, TOKEN_PASTE(ripper_id_, n), a, b) parser 800 ext/ripper/ripper.c #define dispatch3(n,a,b,c) ripper_dispatch3(parser, TOKEN_PASTE(ripper_id_, n), a, b, c) parser 801 ext/ripper/ripper.c #define dispatch4(n,a,b,c,d) ripper_dispatch4(parser, TOKEN_PASTE(ripper_id_, n), a, b, c, d) parser 802 ext/ripper/ripper.c #define dispatch5(n,a,b,c,d,e) ripper_dispatch5(parser, TOKEN_PASTE(ripper_id_, n), a, b, c, d, e) parser 861 ext/ripper/ripper.c # define rb_warn0(fmt) ripper_warn0(parser, fmt) parser 862 ext/ripper/ripper.c # define rb_warnI(fmt,a) ripper_warnI(parser, fmt, a) parser 863 ext/ripper/ripper.c # define rb_warnS(fmt,a) ripper_warnS(parser, fmt, a) parser 864 ext/ripper/ripper.c # define rb_warning0(fmt) ripper_warning0(parser, fmt) parser 865 ext/ripper/ripper.c # define rb_warningS(fmt,a) ripper_warningS(parser, fmt, a) parser 879 ext/ripper/ripper.c # define PARSER_ARG parser, parser 881 ext/ripper/ripper.c # define compile_error parser->nerr++,rb_compile_error parser 4251 ext/ripper/ripper.c parser_yyerror (parser, YY_("syntax error: cannot back up")); \ parser 4331 ext/ripper/ripper.c Type, Value, parser); \ parser 4357 ext/ripper/ripper.c YYUSE (parser); parser 4394 ext/ripper/ripper.c yy_symbol_value_print (yyoutput, yytype, yyvaluep, parser); parser 4454 ext/ripper/ripper.c , parser); parser 4462 ext/ripper/ripper.c yy_reduce_print (yyvsp, Rule, parser); \ parser 4726 ext/ripper/ripper.c YYUSE (parser); parser 5070 ext/ripper/ripper.c parser->result = dispatch1(program, (yyval.val)); parser 7942 ext/ripper/ripper.c if (RTEST(ruby_verbose)) token_info_push(parser, "begin"); parser 7951 ext/ripper/ripper.c if (RTEST(ruby_verbose)) token_info_push(parser, "if"); parser 7960 ext/ripper/ripper.c if (RTEST(ruby_verbose)) token_info_push(parser, "unless"); parser 7969 ext/ripper/ripper.c if (RTEST(ruby_verbose)) token_info_push(parser, "while"); parser 7978 ext/ripper/ripper.c if (RTEST(ruby_verbose)) token_info_push(parser, "until"); parser 7987 ext/ripper/ripper.c if (RTEST(ruby_verbose)) token_info_push(parser, "case"); parser 7996 ext/ripper/ripper.c if (RTEST(ruby_verbose)) token_info_push(parser, "for"); parser 8005 ext/ripper/ripper.c if (RTEST(ruby_verbose)) token_info_push(parser, "class"); parser 8014 ext/ripper/ripper.c if (RTEST(ruby_verbose)) token_info_push(parser, "module"); parser 8023 ext/ripper/ripper.c if (RTEST(ruby_verbose)) token_info_push(parser, "def"); parser 8032 ext/ripper/ripper.c if (RTEST(ruby_verbose)) token_info_pop(parser, "end"); /* POP */ parser 9959 ext/ripper/ripper.c parser_yyerror (parser, YY_("syntax error")); parser 9983 ext/ripper/ripper.c parser_yyerror (parser, yymsg); parser 9987 ext/ripper/ripper.c parser_yyerror (parser, YY_("syntax error")); parser 10011 ext/ripper/ripper.c yytoken, &yylval, parser); parser 10067 ext/ripper/ripper.c yystos[yystate], yyvsp, parser); parser 10105 ext/ripper/ripper.c parser_yyerror (parser, YY_("memory exhausted")); parser 10113 ext/ripper/ripper.c yytoken, &yylval, parser); parser 10121 ext/ripper/ripper.c yystos[*yyssp], yyvsp, parser); parser 10142 ext/ripper/ripper.c # define yylval (*((YYSTYPE*)(parser->parser_yylval))) parser 10151 ext/ripper/ripper.c # define nextc() parser_nextc(parser) parser 10152 ext/ripper/ripper.c # define pushback(c) parser_pushback(parser, c) parser 10153 ext/ripper/ripper.c # define newtok() parser_newtok(parser) parser 10154 ext/ripper/ripper.c # define tokspace(n) parser_tokspace(parser, n) parser 10155 ext/ripper/ripper.c # define tokadd(c) parser_tokadd(parser, c) parser 10156 ext/ripper/ripper.c # define tok_hex(numlen) parser_tok_hex(parser, numlen) parser 10157 ext/ripper/ripper.c # define read_escape(flags,e) parser_read_escape(parser, flags, e) parser 10158 ext/ripper/ripper.c # define tokadd_escape(e) parser_tokadd_escape(parser, e) parser 10159 ext/ripper/ripper.c # define regx_options() parser_regx_options(parser) parser 10160 ext/ripper/ripper.c # define tokadd_string(f,t,p,n,e) parser_tokadd_string(parser,f,t,p,n,e) parser 10161 ext/ripper/ripper.c # define parse_string(n) parser_parse_string(parser,n) parser 10162 ext/ripper/ripper.c # define tokaddmbc(c, enc) parser_tokaddmbc(parser, c, enc) parser 10163 ext/ripper/ripper.c # define here_document(n) parser_here_document(parser,n) parser 10164 ext/ripper/ripper.c # define heredoc_identifier() parser_heredoc_identifier(parser) parser 10165 ext/ripper/ripper.c # define heredoc_restore(n) parser_heredoc_restore(parser,n) parser 10166 ext/ripper/ripper.c # define whole_match_p(e,l,i) parser_whole_match_p(parser,e,l,i) parser 10198 ext/ripper/ripper.c if (lex_p < parser->tokp) rb_raise(rb_eRuntimeError, "lex_p < tokp"); parser 10199 ext/ripper/ripper.c if (lex_p == parser->tokp) return; parser 10200 ext/ripper/ripper.c str = STR_NEW(parser->tokp, lex_p - parser->tokp); parser 10201 ext/ripper/ripper.c yylval.val = ripper_dispatch1(parser, ripper_token2eventid(t), str); parser 10202 ext/ripper/ripper.c ripper_flush(parser); parser 10209 ext/ripper/ripper.c const char *saved_tokp = parser->tokp; parser 10211 ext/ripper/ripper.c ruby_sourceline = parser->delayed_line; parser 10212 ext/ripper/ripper.c parser->tokp = lex_pbeg + parser->delayed_col; parser 10213 ext/ripper/ripper.c yylval.val = ripper_dispatch1(parser, ripper_token2eventid(t), parser->delayed); parser 10214 ext/ripper/ripper.c parser->delayed = Qnil; parser 10216 ext/ripper/ripper.c parser->tokp = saved_tokp; parser 10235 ext/ripper/ripper.c #define parser_encoding_name() (parser->enc->name) parser 10236 ext/ripper/ripper.c #define parser_mbclen() mbclen((lex_p-1),lex_pend,parser->enc) parser 10237 ext/ripper/ripper.c #define parser_precise_mbclen() rb_enc_precise_mbclen((lex_p-1),lex_pend,parser->enc) parser 10239 ext/ripper/ripper.c #define parser_is_identchar() (!parser->eofp && is_identchar((lex_p-1),lex_pend,parser->enc)) parser 10279 ext/ripper/ripper.c ptinfo->column = token_info_get_column(parser, token); parser 10280 ext/ripper/ripper.c ptinfo->nonspc = token_info_has_nonspaces(parser, token); parser 10281 ext/ripper/ripper.c ptinfo->next = parser->parser_token_info; parser 10283 ext/ripper/ripper.c parser->parser_token_info = ptinfo; parser 10290 ext/ripper/ripper.c token_info *ptinfo = parser->parser_token_info; parser 10293 ext/ripper/ripper.c parser->parser_token_info = ptinfo->next; parser 10294 ext/ripper/ripper.c if (token_info_get_column(parser, token) == ptinfo->column) { /* OK */ parser 10301 ext/ripper/ripper.c if (token_info_has_nonspaces(parser, token) || ptinfo->nonspc) { /* SKIP */ parser 10425 ext/ripper/ripper.c struct parser_params *parser = (struct parser_params *)arg; parser 10437 ext/ripper/ripper.c if (!e_option_supplied(parser)) { parser 10442 ext/ripper/ripper.c parser_prepare(parser); parser 10444 ext/ripper/ripper.c n = yyparse((void*)parser); parser 10452 ext/ripper/ripper.c if (parser->nerr) { parser 10478 ext/ripper/ripper.c return (NODE *)ruby_suppress_tracing(yycompile0, (VALUE)parser, Qtrue); parser 10504 ext/ripper/ripper.c VALUE line = (*parser->parser_lex_gets)(parser, parser->parser_lex_input); parser 10528 ext/ripper/ripper.c struct parser_params *parser; parser 10532 ext/ripper/ripper.c Data_Get_Struct(vparser, struct parser_params, parser); parser 10539 ext/ripper/ripper.c node = yycompile(parser, f, line); parser 10574 ext/ripper/ripper.c struct parser_params *parser; parser 10578 ext/ripper/ripper.c Data_Get_Struct(vparser, struct parser_params, parser); parser 10584 ext/ripper/ripper.c node = yycompile(parser, f, start); parser 10626 ext/ripper/ripper.c #define lex_goto_eol(parser) (parser->parser_lex_p = parser->parser_lex_pend) parser 10638 ext/ripper/ripper.c if (parser->eofp) parser 10641 ext/ripper/ripper.c if (!lex_input || NIL_P(v = lex_getline(parser))) { parser 10642 ext/ripper/ripper.c parser->eofp = Qtrue; parser 10643 ext/ripper/ripper.c lex_goto_eol(parser); parser 10649 ext/ripper/ripper.c if (parser->tokp < lex_pend) { parser 10650 ext/ripper/ripper.c if (NIL_P(parser->delayed)) { parser 10651 ext/ripper/ripper.c parser->delayed = rb_str_buf_new(1024); parser 10652 ext/ripper/ripper.c rb_str_buf_cat(parser->delayed, parser 10653 ext/ripper/ripper.c parser->tokp, lex_pend - parser->tokp); parser 10654 ext/ripper/ripper.c parser->delayed_line = ruby_sourceline; parser 10655 ext/ripper/ripper.c parser->delayed_col = parser->tokp - lex_pbeg; parser 10658 ext/ripper/ripper.c rb_str_buf_cat(parser->delayed, parser 10659 ext/ripper/ripper.c parser->tokp, lex_pend - parser->tokp); parser 10668 ext/ripper/ripper.c parser->line_count++; parser 10672 ext/ripper/ripper.c ripper_flush(parser); parser 11077 ext/ripper/ripper.c #define tokadd_mbchar(c) parser_tokadd_mbchar(parser, c) parser 11144 ext/ripper/ripper.c parser_tokadd_utf8(parser, &enc, 1, parser 11216 ext/ripper/ripper.c rb_encoding *enc = parser->enc; parser 11254 ext/ripper/ripper.c if (parser->eofp) parser 11259 ext/ripper/ripper.c if (parser->eofp) parser 11319 ext/ripper/ripper.c ripper_dispatch_scan_event(parser, tHEREDOC_BEG); parser 11322 ext/ripper/ripper.c lex_goto_eol(parser); parser 11329 ext/ripper/ripper.c ripper_flush(parser); parser 11340 ext/ripper/ripper.c if (!NIL_P(parser->delayed)) parser 11341 ext/ripper/ripper.c ripper_dispatch_delayed_token(parser, tSTRING_CONTENT); parser 11342 ext/ripper/ripper.c lex_goto_eol(parser); parser 11343 ext/ripper/ripper.c ripper_dispatch_scan_event(parser, tHEREDOC_END); parser 11355 ext/ripper/ripper.c ripper_flush(parser); parser 11420 ext/ripper/ripper.c lex_goto_eol(parser); parser 11429 ext/ripper/ripper.c rb_encoding *enc = parser->enc; parser 11445 ext/ripper/ripper.c if (parser->eofp) goto error; parser 11479 ext/ripper/ripper.c #define arg_ambiguous() arg_ambiguous_gen(parser) parser 11523 ext/ripper/ripper.c parser->enc = enc; parser 11530 ext/ripper/ripper.c if (parser->line_count != (parser->has_shebang ? 2 : 1)) return 0; parser 11545 ext/ripper/ripper.c if (!comment_at_top(parser)) { parser 11550 ext/ripper/ripper.c parser_set_encode(parser, val); parser 11675 ext/ripper/ripper.c n = (*p->length)(parser, vbeg, n); parser 11678 ext/ripper/ripper.c (*p->func)(parser, s, RSTRING_PTR(val)); parser 11728 ext/ripper/ripper.c s = rb_str_new(beg, parser_encode_length(parser, beg, str - beg)); parser 11729 ext/ripper/ripper.c parser_set_encode(parser, RSTRING_PTR(s)); parser 11739 ext/ripper/ripper.c if (peek('!')) parser->has_shebang = 1; parser 11745 ext/ripper/ripper.c parser->enc = rb_utf8_encoding(); parser 11755 ext/ripper/ripper.c parser->enc = rb_enc_get(lex_lastline); parser 11819 ext/ripper/ripper.c ripper_dispatch_scan_event(parser, tSP); parser 11825 ext/ripper/ripper.c if (!parser_magic_comment(parser, lex_p, lex_pend - lex_p)) { parser 11826 ext/ripper/ripper.c if (comment_at_top(parser)) { parser 11827 ext/ripper/ripper.c set_file_encoding(parser, lex_p, lex_pend); parser 11832 ext/ripper/ripper.c ripper_dispatch_scan_event(parser, tCOMMENT); parser 11845 ext/ripper/ripper.c ripper_dispatch_scan_event(parser, tIGNORED_NL); parser 11870 ext/ripper/ripper.c lex_goto_eol(parser); parser 11873 ext/ripper/ripper.c parser->tokp = lex_p; parser 11947 ext/ripper/ripper.c lex_goto_eol(parser); parser 11948 ext/ripper/ripper.c ripper_dispatch_scan_event(parser, tEMBDOC_BEG); parser 11951 ext/ripper/ripper.c lex_goto_eol(parser); parser 11954 ext/ripper/ripper.c ripper_dispatch_scan_event(parser, tEMBDOC); parser 11969 ext/ripper/ripper.c lex_goto_eol(parser); parser 11971 ext/ripper/ripper.c ripper_dispatch_scan_event(parser, tEMBDOC_END); parser 12090 ext/ripper/ripper.c if (rb_enc_isspace(c, parser->enc)) { parser 12123 ext/ripper/ripper.c enc = parser->enc; parser 12127 ext/ripper/ripper.c else if ((rb_enc_isalnum(c, parser->enc) || c == '_') && parser 12128 ext/ripper/ripper.c lex_p < lex_pend && is_identchar(lex_p, lex_pend, parser->enc)) { parser 12134 ext/ripper/ripper.c c = parser_tokadd_utf8(parser, &enc, 0, 0, 0); parser 12682 ext/ripper/ripper.c ripper_dispatch_scan_event(parser, tSP); parser 12702 ext/ripper/ripper.c if (rb_enc_isalnum(term, parser->enc) || !parser_isascii()) { parser 12889 ext/ripper/ripper.c parser->eofp = Qtrue; parser 12893 ext/ripper/ripper.c lex_goto_eol(parser); parser 12894 ext/ripper/ripper.c ripper_dispatch_scan_event(parser, k__END__); parser 13051 ext/ripper/ripper.c struct parser_params *parser = (struct parser_params*)p; parser 13055 ext/ripper/ripper.c parser->parser_yylval = lval; parser 13056 ext/ripper/ripper.c parser->parser_yylval->val = Qundef; parser 13058 ext/ripper/ripper.c t = parser_yylex(parser); parser 13060 ext/ripper/ripper.c if (!NIL_P(parser->delayed)) { parser 13061 ext/ripper/ripper.c ripper_dispatch_delayed_token(parser, t); parser 13065 ext/ripper/ripper.c ripper_dispatch_scan_event(parser, t); parser 13116 ext/ripper/ripper.c #define parser_warning(node, mesg) parser_warning(parser, node, mesg) parser 13123 ext/ripper/ripper.c #define parser_warn(node, mesg) parser_warn(parser, node, mesg) parser 13255 ext/ripper/ripper.c if (!literal_concat0(parser, head->nd_lit, tail->nd_lit)) { parser 13270 ext/ripper/ripper.c if (!literal_concat0(parser, head->nd_lit, tail->nd_lit)) parser 13389 ext/ripper/ripper.c return NEW_LIT(rb_enc_from_encoding(parser->enc)); parser 13911 ext/ripper/ripper.c if (!e_option_supplied(parser)) parser_warn(node, str); parser 13917 ext/ripper/ripper.c if (!e_option_supplied(parser)) parser_warning(node, str); parser 13961 ext/ripper/ripper.c warn_unless_e_option(parser, node, "integer literal in conditional range"); parser 13964 ext/ripper/ripper.c return cond0(parser, node); parser 13992 ext/ripper/ripper.c assign_in_cond(parser, node); parser 14003 ext/ripper/ripper.c warning_unless_e_option(parser, node, "regex literal in condition"); parser 14008 ext/ripper/ripper.c node->nd_1st = cond0(parser, node->nd_1st); parser 14009 ext/ripper/ripper.c node->nd_2nd = cond0(parser, node->nd_2nd); parser 14014 ext/ripper/ripper.c node->nd_beg = range_op(parser, node->nd_beg); parser 14015 ext/ripper/ripper.c node->nd_end = range_op(parser, node->nd_end); parser 14018 ext/ripper/ripper.c if (!e_option_supplied(parser)) { parser 14033 ext/ripper/ripper.c warn_unless_e_option(parser, node, "regex literal in condition"); parser 14049 ext/ripper/ripper.c return cond0(parser, node); parser 14079 ext/ripper/ripper.c no_blockarg(parser, node); parser 14098 ext/ripper/ripper.c no_blockarg(parser, node); parser 14334 ext/ripper/ripper.c else if (parser->enc == rb_usascii_encoding()) { parser 14355 ext/ripper/ripper.c reg_fragment_setenc_gen(parser, str, options); parser 14365 ext/ripper/ripper.c struct parser_params* parser; parser 14377 ext/ripper/ripper.c struct parser_params* parser = arg->parser; parser 14416 ext/ripper/ripper.c arg.parser = parser; parser 14477 ext/ripper/ripper.c struct parser_params *parser; parser 14481 ext/ripper/ripper.c Data_Get_Struct(vparser, struct parser_params, parser); parser 14509 ext/ripper/ripper.c struct parser_params *parser; parser 14513 ext/ripper/ripper.c Data_Get_Struct(vparser, struct parser_params, parser); parser 15062 ext/ripper/ripper.c parser->eofp = Qfalse; parser 15064 ext/ripper/ripper.c parser->parser_lex_strterm = 0; parser 15065 ext/ripper/ripper.c parser->parser_cond_stack = 0; parser 15066 ext/ripper/ripper.c parser->parser_cmdarg_stack = 0; parser 15067 ext/ripper/ripper.c parser->parser_class_nest = 0; parser 15068 ext/ripper/ripper.c parser->parser_paren_nest = 0; parser 15069 ext/ripper/ripper.c parser->parser_lpar_beg = 0; parser 15070 ext/ripper/ripper.c parser->parser_in_single = 0; parser 15071 ext/ripper/ripper.c parser->parser_in_def = 0; parser 15072 ext/ripper/ripper.c parser->parser_in_defined = 0; parser 15073 ext/ripper/ripper.c parser->parser_compile_for_eval = 0; parser 15074 ext/ripper/ripper.c parser->parser_cur_mid = 0; parser 15075 ext/ripper/ripper.c parser->parser_tokenbuf = NULL; parser 15076 ext/ripper/ripper.c parser->parser_tokidx = 0; parser 15077 ext/ripper/ripper.c parser->parser_toksiz = 0; parser 15078 ext/ripper/ripper.c parser->parser_heredoc_end = 0; parser 15079 ext/ripper/ripper.c parser->parser_command_start = Qtrue; parser 15080 ext/ripper/ripper.c parser->parser_deferred_nodes = 0; parser 15081 ext/ripper/ripper.c parser->parser_lex_pbeg = 0; parser 15082 ext/ripper/ripper.c parser->parser_lex_p = 0; parser 15083 ext/ripper/ripper.c parser->parser_lex_pend = 0; parser 15084 ext/ripper/ripper.c parser->parser_lvtbl = 0; parser 15085 ext/ripper/ripper.c parser->parser_ruby__end__seen = 0; parser 15086 ext/ripper/ripper.c parser->parser_ruby_sourcefile = 0; parser 15088 ext/ripper/ripper.c parser->is_ripper = 0; parser 15089 ext/ripper/ripper.c parser->parser_eval_tree_begin = 0; parser 15090 ext/ripper/ripper.c parser->parser_eval_tree = 0; parser 15092 ext/ripper/ripper.c parser->is_ripper = 1; parser 15093 ext/ripper/ripper.c parser->parser_ruby_sourcefile_string = Qnil; parser 15094 ext/ripper/ripper.c parser->delayed = Qnil; parser 15096 ext/ripper/ripper.c parser->result = Qnil; parser 15097 ext/ripper/ripper.c parser->parsing_thread = Qnil; parser 15098 ext/ripper/ripper.c parser->toplevel_p = Qtrue; parser 15101 ext/ripper/ripper.c parser->heap = NULL; parser 15103 ext/ripper/ripper.c parser->enc = rb_usascii_encoding(); parser 15190 ext/ripper/ripper.c struct parser_params *parser; parser 15192 ext/ripper/ripper.c Data_Get_Struct(vparser, struct parser_params, parser); parser 15205 ext/ripper/ripper.c struct parser_params *parser; parser 15207 ext/ripper/ripper.c Data_Get_Struct(vparser, struct parser_params, parser); parser 15208 ext/ripper/ripper.c return rb_enc_from_encoding(parser->enc); parser 15220 ext/ripper/ripper.c struct parser_params *parser; parser 15222 ext/ripper/ripper.c Data_Get_Struct(self, struct parser_params, parser); parser 15235 ext/ripper/ripper.c struct parser_params *parser; parser 15237 ext/ripper/ripper.c Data_Get_Struct(self, struct parser_params, parser); parser 15244 ext/ripper/ripper.c #define NEWHEAP() rb_node_newnode(NODE_ALLOCA, 0, (VALUE)parser->heap, 0) parser 15245 ext/ripper/ripper.c #define ADD2HEAP(n, c, p) ((parser->heap = (n))->u1.node = (p), \ parser 15274 ext/ripper/ripper.c if (ptr && (n = parser->heap) != NULL) { parser 15291 ext/ripper/ripper.c NODE **prev = &parser->heap, *n; parser 15345 ext/ripper/ripper.c return rb_funcall(parser->value, mid, 0); parser 15352 ext/ripper/ripper.c return rb_funcall(parser->value, mid, 1, a); parser 15360 ext/ripper/ripper.c return rb_funcall(parser->value, mid, 2, a, b); parser 15369 ext/ripper/ripper.c return rb_funcall(parser->value, mid, 3, a, b, c); parser 15379 ext/ripper/ripper.c return rb_funcall(parser->value, mid, 4, a, b, c, d); parser 15390 ext/ripper/ripper.c return rb_funcall(parser->value, mid, 5, a, b, c, d, e); parser 15507 ext/ripper/ripper.c rb_funcall(parser->value, rb_intern("compile_error"), 1, str); parser 15513 ext/ripper/ripper.c rb_funcall(parser->value, rb_intern("warn"), 1, STR_NEW2(fmt)); parser 15519 ext/ripper/ripper.c rb_funcall(parser->value, rb_intern("warn"), 2, parser 15527 ext/ripper/ripper.c rb_funcall(parser->value, rb_intern("warn"), 2, parser 15535 ext/ripper/ripper.c rb_funcall(parser->value, rb_intern("warning"), 1, STR_NEW2(fmt)); parser 15541 ext/ripper/ripper.c rb_funcall(parser->value, rb_intern("warning"), 2, parser 15579 ext/ripper/ripper.c struct parser_params *parser; parser 15582 ext/ripper/ripper.c Data_Get_Struct(self, struct parser_params, parser); parser 15585 ext/ripper/ripper.c parser->parser_lex_gets = ripper_lex_get_generic; parser 15589 ext/ripper/ripper.c parser->parser_lex_gets = lex_get_str; parser 15591 ext/ripper/ripper.c parser->parser_lex_input = src; parser 15592 ext/ripper/ripper.c parser->eofp = Qfalse; parser 15599 ext/ripper/ripper.c parser_initialize(parser); parser 15601 ext/ripper/ripper.c parser->parser_ruby_sourcefile_string = fname; parser 15602 ext/ripper/ripper.c parser->parser_ruby_sourcefile = RSTRING_PTR(fname); parser 15603 ext/ripper/ripper.c parser->parser_ruby_sourceline = NIL_P(lineno) ? 0 : NUM2INT(lineno) - 1; parser 15611 ext/ripper/ripper.c struct parser_params *parser; parser 15619 ext/ripper/ripper.c struct parser_params *parser; parser 15621 ext/ripper/ripper.c Data_Get_Struct(parser_v, struct parser_params, parser); parser 15622 ext/ripper/ripper.c parser_prepare(parser); parser 15623 ext/ripper/ripper.c ripper_yyparse((void*)parser); parser 15624 ext/ripper/ripper.c return parser->result; parser 15630 ext/ripper/ripper.c struct parser_params *parser; parser 15632 ext/ripper/ripper.c Data_Get_Struct(parser_v, struct parser_params, parser); parser 15633 ext/ripper/ripper.c parser->parsing_thread = Qnil; parser 15646 ext/ripper/ripper.c struct parser_params *parser; parser 15648 ext/ripper/ripper.c Data_Get_Struct(self, struct parser_params, parser); parser 15649 ext/ripper/ripper.c if (!ripper_initialized_p(parser)) { parser 15652 ext/ripper/ripper.c if (!NIL_P(parser->parsing_thread)) { parser 15653 ext/ripper/ripper.c if (parser->parsing_thread == rb_thread_current()) parser 15658 ext/ripper/ripper.c parser->parsing_thread = rb_thread_current(); parser 15661 ext/ripper/ripper.c return parser->result; parser 15674 ext/ripper/ripper.c struct parser_params *parser; parser 15677 ext/ripper/ripper.c Data_Get_Struct(self, struct parser_params, parser); parser 15678 ext/ripper/ripper.c if (!ripper_initialized_p(parser)) { parser 15681 ext/ripper/ripper.c if (NIL_P(parser->parsing_thread)) return Qnil; parser 15682 ext/ripper/ripper.c col = parser->tokp - parser->parser_lex_pbeg; parser 15696 ext/ripper/ripper.c struct parser_params *parser; parser 15698 ext/ripper/ripper.c Data_Get_Struct(self, struct parser_params, parser); parser 15699 ext/ripper/ripper.c if (!ripper_initialized_p(parser)) { parser 15702 ext/ripper/ripper.c if (NIL_P(parser->parsing_thread)) return Qnil; parser 15703 ext/ripper/ripper.c return INT2NUM(parser->parser_ruby_sourceline); parser 29 ext/ripper/ripper.y #define YYMALLOC(size) rb_parser_malloc(parser, size) parser 30 ext/ripper/ripper.y #define YYREALLOC(ptr, size) rb_parser_realloc(parser, ptr, size) parser 31 ext/ripper/ripper.y #define YYCALLOC(nelem, size) rb_parser_calloc(parser, nelem, size) parser 32 ext/ripper/ripper.y #define YYFREE(ptr) rb_parser_free(parser, ptr) parser 265 ext/ripper/ripper.y #define UTF8_ENC() (parser->utf8 ? parser->utf8 : \ parser 266 ext/ripper/ripper.y (parser->utf8 = rb_utf8_encoding())) parser 267 ext/ripper/ripper.y #define STR_NEW(p,n) rb_enc_str_new((p),(n),parser->enc) parser 268 ext/ripper/ripper.y #define STR_NEW0() rb_enc_str_new(0,0,parser->enc) parser 269 ext/ripper/ripper.y #define STR_NEW2(p) rb_enc_str_new((p),strlen(p),parser->enc) parser 270 ext/ripper/ripper.y #define STR_NEW3(p,n,e,func) parser_str_new((p),(n),(e),(func),parser->enc) parser 272 ext/ripper/ripper.y #define TOK_INTERN(mb) rb_intern3(tok(), toklen(), parser->enc) parser 282 ext/ripper/ripper.y #define yyerror(msg) parser_yyerror(parser, msg) parser 284 ext/ripper/ripper.y #define YYLEX_PARAM parser parser 286 ext/ripper/ripper.y #define lex_strterm (parser->parser_lex_strterm) parser 287 ext/ripper/ripper.y #define lex_state (parser->parser_lex_state) parser 288 ext/ripper/ripper.y #define cond_stack (parser->parser_cond_stack) parser 289 ext/ripper/ripper.y #define cmdarg_stack (parser->parser_cmdarg_stack) parser 290 ext/ripper/ripper.y #define class_nest (parser->parser_class_nest) parser 291 ext/ripper/ripper.y #define paren_nest (parser->parser_paren_nest) parser 292 ext/ripper/ripper.y #define lpar_beg (parser->parser_lpar_beg) parser 293 ext/ripper/ripper.y #define in_single (parser->parser_in_single) parser 294 ext/ripper/ripper.y #define in_def (parser->parser_in_def) parser 295 ext/ripper/ripper.y #define compile_for_eval (parser->parser_compile_for_eval) parser 296 ext/ripper/ripper.y #define cur_mid (parser->parser_cur_mid) parser 297 ext/ripper/ripper.y #define in_defined (parser->parser_in_defined) parser 298 ext/ripper/ripper.y #define tokenbuf (parser->parser_tokenbuf) parser 299 ext/ripper/ripper.y #define tokidx (parser->parser_tokidx) parser 300 ext/ripper/ripper.y #define toksiz (parser->parser_toksiz) parser 301 ext/ripper/ripper.y #define lex_input (parser->parser_lex_input) parser 302 ext/ripper/ripper.y #define lex_lastline (parser->parser_lex_lastline) parser 303 ext/ripper/ripper.y #define lex_nextline (parser->parser_lex_nextline) parser 304 ext/ripper/ripper.y #define lex_pbeg (parser->parser_lex_pbeg) parser 305 ext/ripper/ripper.y #define lex_p (parser->parser_lex_p) parser 306 ext/ripper/ripper.y #define lex_pend (parser->parser_lex_pend) parser 307 ext/ripper/ripper.y #define heredoc_end (parser->parser_heredoc_end) parser 308 ext/ripper/ripper.y #define command_start (parser->parser_command_start) parser 309 ext/ripper/ripper.y #define deferred_nodes (parser->parser_deferred_nodes) parser 310 ext/ripper/ripper.y #define lex_gets_ptr (parser->parser_lex_gets_ptr) parser 311 ext/ripper/ripper.y #define lex_gets (parser->parser_lex_gets) parser 312 ext/ripper/ripper.y #define lvtbl (parser->parser_lvtbl) parser 313 ext/ripper/ripper.y #define ruby__end__seen (parser->parser_ruby__end__seen) parser 314 ext/ripper/ripper.y #define ruby_sourceline (parser->parser_ruby_sourceline) parser 315 ext/ripper/ripper.y #define ruby_sourcefile (parser->parser_ruby_sourcefile) parser 316 ext/ripper/ripper.y #define yydebug (parser->parser_yydebug) parser 319 ext/ripper/ripper.y #define ruby_eval_tree (parser->parser_eval_tree) parser 320 ext/ripper/ripper.y #define ruby_eval_tree_begin (parser->parser_eval_tree_begin) parser 321 ext/ripper/ripper.y #define ruby_debug_lines (parser->debug_lines) parser 322 ext/ripper/ripper.y #define ruby_coverage (parser->coverage) parser 331 ext/ripper/ripper.y #define rb_node_newnode(type, a1, a2, a3) node_newnode(parser, type, a1, a2, a3) parser 334 ext/ripper/ripper.y #define cond(node) cond_gen(parser, node) parser 336 ext/ripper/ripper.y #define logop(type,node1,node2) logop_gen(parser, type, node1, node2) parser 344 ext/ripper/ripper.y #define value_expr(node) value_expr_gen(parser, (node) = remove_begin(node)) parser 345 ext/ripper/ripper.y #define void_expr0(node) void_expr_gen(parser, (node)) parser 348 ext/ripper/ripper.y #define void_stmts(node) void_stmts_gen(parser, node) parser 350 ext/ripper/ripper.y #define reduce_nodes(n) reduce_nodes_gen(parser,n) parser 352 ext/ripper/ripper.y #define block_dup_check(n1,n2) block_dup_check_gen(parser,n1,n2) parser 355 ext/ripper/ripper.y #define block_append(h,t) block_append_gen(parser,h,t) parser 357 ext/ripper/ripper.y #define list_append(l,i) list_append_gen(parser,l,i) parser 359 ext/ripper/ripper.y #define list_concat(h,t) list_concat_gen(parser,h,t) parser 361 ext/ripper/ripper.y #define arg_append(h,t) arg_append_gen(parser,h,t) parser 363 ext/ripper/ripper.y #define arg_concat(h,t) arg_concat_gen(parser,h,t) parser 365 ext/ripper/ripper.y #define literal_concat(h,t) literal_concat_gen(parser,h,t) parser 367 ext/ripper/ripper.y #define new_evstr(n) new_evstr_gen(parser,n) parser 369 ext/ripper/ripper.y #define evstr2dstr(n) evstr2dstr_gen(parser,n) parser 373 ext/ripper/ripper.y #define call_bin_op(recv,id,arg1) call_bin_op_gen(parser, recv,id,arg1) parser 375 ext/ripper/ripper.y #define call_uni_op(recv,id) call_uni_op_gen(parser, recv,id) parser 378 ext/ripper/ripper.y #define new_args(f,o,r,p,b) new_args_gen(parser, f,o,r,p,b) parser 380 ext/ripper/ripper.y #define shadowing_lvar(name) shadowing_lvar_gen(parser, name) parser 384 ext/ripper/ripper.y #define ret_args(node) ret_args_gen(parser, node) parser 387 ext/ripper/ripper.y #define new_yield(node) new_yield_gen(parser, node) parser 390 ext/ripper/ripper.y #define gettable(id) gettable_gen(parser,id) parser 392 ext/ripper/ripper.y #define assignable(id,node) assignable_gen(parser, id, node) parser 394 ext/ripper/ripper.y #define new_bv(id) new_bv_gen(parser, id) parser 396 ext/ripper/ripper.y #define aryset(node1,node2) aryset_gen(parser, node1, node2) parser 398 ext/ripper/ripper.y #define attrset(node,id) attrset_gen(parser, node, id) parser 401 ext/ripper/ripper.y #define rb_backref_error(n) rb_backref_error_gen(parser,n) parser 403 ext/ripper/ripper.y #define node_assign(node1, node2) node_assign_gen(parser, node1, node2) parser 406 ext/ripper/ripper.y #define match_op(node1,node2) match_op_gen(parser, node1, node2) parser 409 ext/ripper/ripper.y #define local_push(top) local_push_gen(parser,top) parser 411 ext/ripper/ripper.y #define local_pop() local_pop_gen(parser) parser 413 ext/ripper/ripper.y #define local_var(id) local_var_gen(parser, id); parser 415 ext/ripper/ripper.y #define arg_var(id) arg_var_gen(parser, id) parser 417 ext/ripper/ripper.y #define local_id(id) local_id_gen(parser, id) parser 419 ext/ripper/ripper.y #define local_tbl() local_tbl_gen(parser) parser 421 ext/ripper/ripper.y #define internal_id() internal_id_gen(parser) parser 424 ext/ripper/ripper.y #define dyna_push() dyna_push_gen(parser) parser 426 ext/ripper/ripper.y #define dyna_pop() dyna_pop_gen(parser) parser 428 ext/ripper/ripper.y #define dyna_in_block() dyna_in_block_gen(parser) parser 431 ext/ripper/ripper.y #define dvar_defined(id) dvar_defined_gen(parser, id) parser 433 ext/ripper/ripper.y #define dvar_curr(id) dvar_curr_gen(parser, id) parser 443 ext/ripper/ripper.y #define reg_compile(str,options) reg_compile_gen(parser, str, options) parser 445 ext/ripper/ripper.y #define reg_fragment_setenc(str,options) reg_fragment_setenc_gen(parser, str, options) parser 447 ext/ripper/ripper.y #define reg_fragment_check(str,options) reg_fragment_check_gen(parser, str, options) parser 449 ext/ripper/ripper.y #define reg_named_capture_assign(regexp,match) reg_named_capture_assign_gen(parser,regexp,match) parser 455 ext/ripper/ripper.y #define lvar_defined(id) lvar_defined_gen(parser, id) parser 493 ext/ripper/ripper.y #define dispatch0(n) ripper_dispatch0(parser, TOKEN_PASTE(ripper_id_, n)) parser 494 ext/ripper/ripper.y #define dispatch1(n,a) ripper_dispatch1(parser, TOKEN_PASTE(ripper_id_, n), a) parser 495 ext/ripper/ripper.y #define dispatch2(n,a,b) ripper_dispatch2(parser, TOKEN_PASTE(ripper_id_, n), a, b) parser 496 ext/ripper/ripper.y #define dispatch3(n,a,b,c) ripper_dispatch3(parser, TOKEN_PASTE(ripper_id_, n), a, b, c) parser 497 ext/ripper/ripper.y #define dispatch4(n,a,b,c,d) ripper_dispatch4(parser, TOKEN_PASTE(ripper_id_, n), a, b, c, d) parser 498 ext/ripper/ripper.y #define dispatch5(n,a,b,c,d,e) ripper_dispatch5(parser, TOKEN_PASTE(ripper_id_, n), a, b, c, d, e) parser 557 ext/ripper/ripper.y # define rb_warn0(fmt) ripper_warn0(parser, fmt) parser 558 ext/ripper/ripper.y # define rb_warnI(fmt,a) ripper_warnI(parser, fmt, a) parser 559 ext/ripper/ripper.y # define rb_warnS(fmt,a) ripper_warnS(parser, fmt, a) parser 560 ext/ripper/ripper.y # define rb_warning0(fmt) ripper_warning0(parser, fmt) parser 561 ext/ripper/ripper.y # define rb_warningS(fmt,a) ripper_warningS(parser, fmt, a) parser 575 ext/ripper/ripper.y # define PARSER_ARG parser, parser 577 ext/ripper/ripper.y # define compile_error parser->nerr++,rb_compile_error parser 597 ext/ripper/ripper.y %parse-param {struct parser_params *parser} parser 790 ext/ripper/ripper.y parser->result = dispatch1(program, $$); parser 3025 ext/ripper/ripper.y if (RTEST(ruby_verbose)) token_info_push(parser, "begin"); parser 3032 ext/ripper/ripper.y if (RTEST(ruby_verbose)) token_info_push(parser, "if"); parser 3039 ext/ripper/ripper.y if (RTEST(ruby_verbose)) token_info_push(parser, "unless"); parser 3046 ext/ripper/ripper.y if (RTEST(ruby_verbose)) token_info_push(parser, "while"); parser 3053 ext/ripper/ripper.y if (RTEST(ruby_verbose)) token_info_push(parser, "until"); parser 3060 ext/ripper/ripper.y if (RTEST(ruby_verbose)) token_info_push(parser, "case"); parser 3067 ext/ripper/ripper.y if (RTEST(ruby_verbose)) token_info_push(parser, "for"); parser 3074 ext/ripper/ripper.y if (RTEST(ruby_verbose)) token_info_push(parser, "class"); parser 3081 ext/ripper/ripper.y if (RTEST(ruby_verbose)) token_info_push(parser, "module"); parser 3088 ext/ripper/ripper.y if (RTEST(ruby_verbose)) token_info_push(parser, "def"); parser 3095 ext/ripper/ripper.y if (RTEST(ruby_verbose)) token_info_pop(parser, "end"); /* POP */ parser 4742 ext/ripper/ripper.y # define yylval (*((YYSTYPE*)(parser->parser_yylval))) parser 4751 ext/ripper/ripper.y # define nextc() parser_nextc(parser) parser 4752 ext/ripper/ripper.y # define pushback(c) parser_pushback(parser, c) parser 4753 ext/ripper/ripper.y # define newtok() parser_newtok(parser) parser 4754 ext/ripper/ripper.y # define tokspace(n) parser_tokspace(parser, n) parser 4755 ext/ripper/ripper.y # define tokadd(c) parser_tokadd(parser, c) parser 4756 ext/ripper/ripper.y # define tok_hex(numlen) parser_tok_hex(parser, numlen) parser 4757 ext/ripper/ripper.y # define read_escape(flags,e) parser_read_escape(parser, flags, e) parser 4758 ext/ripper/ripper.y # define tokadd_escape(e) parser_tokadd_escape(parser, e) parser 4759 ext/ripper/ripper.y # define regx_options() parser_regx_options(parser) parser 4760 ext/ripper/ripper.y # define tokadd_string(f,t,p,n,e) parser_tokadd_string(parser,f,t,p,n,e) parser 4761 ext/ripper/ripper.y # define parse_string(n) parser_parse_string(parser,n) parser 4762 ext/ripper/ripper.y # define tokaddmbc(c, enc) parser_tokaddmbc(parser, c, enc) parser 4763 ext/ripper/ripper.y # define here_document(n) parser_here_document(parser,n) parser 4764 ext/ripper/ripper.y # define heredoc_identifier() parser_heredoc_identifier(parser) parser 4765 ext/ripper/ripper.y # define heredoc_restore(n) parser_heredoc_restore(parser,n) parser 4766 ext/ripper/ripper.y # define whole_match_p(e,l,i) parser_whole_match_p(parser,e,l,i) parser 4798 ext/ripper/ripper.y if (lex_p < parser->tokp) rb_raise(rb_eRuntimeError, "lex_p < tokp"); parser 4799 ext/ripper/ripper.y if (lex_p == parser->tokp) return; parser 4800 ext/ripper/ripper.y str = STR_NEW(parser->tokp, lex_p - parser->tokp); parser 4801 ext/ripper/ripper.y yylval.val = ripper_dispatch1(parser, ripper_token2eventid(t), str); parser 4802 ext/ripper/ripper.y ripper_flush(parser); parser 4809 ext/ripper/ripper.y const char *saved_tokp = parser->tokp; parser 4811 ext/ripper/ripper.y ruby_sourceline = parser->delayed_line; parser 4812 ext/ripper/ripper.y parser->tokp = lex_pbeg + parser->delayed_col; parser 4813 ext/ripper/ripper.y yylval.val = ripper_dispatch1(parser, ripper_token2eventid(t), parser->delayed); parser 4814 ext/ripper/ripper.y parser->delayed = Qnil; parser 4816 ext/ripper/ripper.y parser->tokp = saved_tokp; parser 4835 ext/ripper/ripper.y #define parser_encoding_name() (parser->enc->name) parser 4836 ext/ripper/ripper.y #define parser_mbclen() mbclen((lex_p-1),lex_pend,parser->enc) parser 4837 ext/ripper/ripper.y #define parser_precise_mbclen() rb_enc_precise_mbclen((lex_p-1),lex_pend,parser->enc) parser 4839 ext/ripper/ripper.y #define parser_is_identchar() (!parser->eofp && is_identchar((lex_p-1),lex_pend,parser->enc)) parser 4879 ext/ripper/ripper.y ptinfo->column = token_info_get_column(parser, token); parser 4880 ext/ripper/ripper.y ptinfo->nonspc = token_info_has_nonspaces(parser, token); parser 4881 ext/ripper/ripper.y ptinfo->next = parser->parser_token_info; parser 4883 ext/ripper/ripper.y parser->parser_token_info = ptinfo; parser 4890 ext/ripper/ripper.y token_info *ptinfo = parser->parser_token_info; parser 4893 ext/ripper/ripper.y parser->parser_token_info = ptinfo->next; parser 4894 ext/ripper/ripper.y if (token_info_get_column(parser, token) == ptinfo->column) { /* OK */ parser 4901 ext/ripper/ripper.y if (token_info_has_nonspaces(parser, token) || ptinfo->nonspc) { /* SKIP */ parser 5025 ext/ripper/ripper.y struct parser_params *parser = (struct parser_params *)arg; parser 5037 ext/ripper/ripper.y if (!e_option_supplied(parser)) { parser 5042 ext/ripper/ripper.y parser_prepare(parser); parser 5044 ext/ripper/ripper.y n = yyparse((void*)parser); parser 5052 ext/ripper/ripper.y if (parser->nerr) { parser 5078 ext/ripper/ripper.y return (NODE *)ruby_suppress_tracing(yycompile0, (VALUE)parser, Qtrue); parser 5104 ext/ripper/ripper.y VALUE line = (*parser->parser_lex_gets)(parser, parser->parser_lex_input); parser 5128 ext/ripper/ripper.y struct parser_params *parser; parser 5132 ext/ripper/ripper.y Data_Get_Struct(vparser, struct parser_params, parser); parser 5139 ext/ripper/ripper.y node = yycompile(parser, f, line); parser 5174 ext/ripper/ripper.y struct parser_params *parser; parser 5178 ext/ripper/ripper.y Data_Get_Struct(vparser, struct parser_params, parser); parser 5184 ext/ripper/ripper.y node = yycompile(parser, f, start); parser 5226 ext/ripper/ripper.y #define lex_goto_eol(parser) (parser->parser_lex_p = parser->parser_lex_pend) parser 5238 ext/ripper/ripper.y if (parser->eofp) parser 5241 ext/ripper/ripper.y if (!lex_input || NIL_P(v = lex_getline(parser))) { parser 5242 ext/ripper/ripper.y parser->eofp = Qtrue; parser 5243 ext/ripper/ripper.y lex_goto_eol(parser); parser 5249 ext/ripper/ripper.y if (parser->tokp < lex_pend) { parser 5250 ext/ripper/ripper.y if (NIL_P(parser->delayed)) { parser 5251 ext/ripper/ripper.y parser->delayed = rb_str_buf_new(1024); parser 5252 ext/ripper/ripper.y rb_str_buf_cat(parser->delayed, parser 5253 ext/ripper/ripper.y parser->tokp, lex_pend - parser->tokp); parser 5254 ext/ripper/ripper.y parser->delayed_line = ruby_sourceline; parser 5255 ext/ripper/ripper.y parser->delayed_col = parser->tokp - lex_pbeg; parser 5258 ext/ripper/ripper.y rb_str_buf_cat(parser->delayed, parser 5259 ext/ripper/ripper.y parser->tokp, lex_pend - parser->tokp); parser 5268 ext/ripper/ripper.y parser->line_count++; parser 5272 ext/ripper/ripper.y ripper_flush(parser); parser 5677 ext/ripper/ripper.y #define tokadd_mbchar(c) parser_tokadd_mbchar(parser, c) parser 5744 ext/ripper/ripper.y parser_tokadd_utf8(parser, &enc, 1, parser 5816 ext/ripper/ripper.y rb_encoding *enc = parser->enc; parser 5854 ext/ripper/ripper.y if (parser->eofp) parser 5859 ext/ripper/ripper.y if (parser->eofp) parser 5919 ext/ripper/ripper.y ripper_dispatch_scan_event(parser, tHEREDOC_BEG); parser 5922 ext/ripper/ripper.y lex_goto_eol(parser); parser 5929 ext/ripper/ripper.y ripper_flush(parser); parser 5940 ext/ripper/ripper.y if (!NIL_P(parser->delayed)) parser 5941 ext/ripper/ripper.y ripper_dispatch_delayed_token(parser, tSTRING_CONTENT); parser 5942 ext/ripper/ripper.y lex_goto_eol(parser); parser 5943 ext/ripper/ripper.y ripper_dispatch_scan_event(parser, tHEREDOC_END); parser 5955 ext/ripper/ripper.y ripper_flush(parser); parser 6020 ext/ripper/ripper.y lex_goto_eol(parser); parser 6029 ext/ripper/ripper.y rb_encoding *enc = parser->enc; parser 6045 ext/ripper/ripper.y if (parser->eofp) goto error; parser 6079 ext/ripper/ripper.y #define arg_ambiguous() arg_ambiguous_gen(parser) parser 6123 ext/ripper/ripper.y parser->enc = enc; parser 6130 ext/ripper/ripper.y if (parser->line_count != (parser->has_shebang ? 2 : 1)) return 0; parser 6145 ext/ripper/ripper.y if (!comment_at_top(parser)) { parser 6150 ext/ripper/ripper.y parser_set_encode(parser, val); parser 6275 ext/ripper/ripper.y n = (*p->length)(parser, vbeg, n); parser 6278 ext/ripper/ripper.y (*p->func)(parser, s, RSTRING_PTR(val)); parser 6328 ext/ripper/ripper.y s = rb_str_new(beg, parser_encode_length(parser, beg, str - beg)); parser 6329 ext/ripper/ripper.y parser_set_encode(parser, RSTRING_PTR(s)); parser 6339 ext/ripper/ripper.y if (peek('!')) parser->has_shebang = 1; parser 6345 ext/ripper/ripper.y parser->enc = rb_utf8_encoding(); parser 6355 ext/ripper/ripper.y parser->enc = rb_enc_get(lex_lastline); parser 6419 ext/ripper/ripper.y ripper_dispatch_scan_event(parser, tSP); parser 6425 ext/ripper/ripper.y if (!parser_magic_comment(parser, lex_p, lex_pend - lex_p)) { parser 6426 ext/ripper/ripper.y if (comment_at_top(parser)) { parser 6427 ext/ripper/ripper.y set_file_encoding(parser, lex_p, lex_pend); parser 6432 ext/ripper/ripper.y ripper_dispatch_scan_event(parser, tCOMMENT); parser 6445 ext/ripper/ripper.y ripper_dispatch_scan_event(parser, tIGNORED_NL); parser 6470 ext/ripper/ripper.y lex_goto_eol(parser); parser 6473 ext/ripper/ripper.y parser->tokp = lex_p; parser 6547 ext/ripper/ripper.y lex_goto_eol(parser); parser 6548 ext/ripper/ripper.y ripper_dispatch_scan_event(parser, tEMBDOC_BEG); parser 6551 ext/ripper/ripper.y lex_goto_eol(parser); parser 6554 ext/ripper/ripper.y ripper_dispatch_scan_event(parser, tEMBDOC); parser 6569 ext/ripper/ripper.y lex_goto_eol(parser); parser 6571 ext/ripper/ripper.y ripper_dispatch_scan_event(parser, tEMBDOC_END); parser 6690 ext/ripper/ripper.y if (rb_enc_isspace(c, parser->enc)) { parser 6723 ext/ripper/ripper.y enc = parser->enc; parser 6727 ext/ripper/ripper.y else if ((rb_enc_isalnum(c, parser->enc) || c == '_') && parser 6728 ext/ripper/ripper.y lex_p < lex_pend && is_identchar(lex_p, lex_pend, parser->enc)) { parser 6734 ext/ripper/ripper.y c = parser_tokadd_utf8(parser, &enc, 0, 0, 0); parser 7282 ext/ripper/ripper.y ripper_dispatch_scan_event(parser, tSP); parser 7302 ext/ripper/ripper.y if (rb_enc_isalnum(term, parser->enc) || !parser_isascii()) { parser 7489 ext/ripper/ripper.y parser->eofp = Qtrue; parser 7493 ext/ripper/ripper.y lex_goto_eol(parser); parser 7494 ext/ripper/ripper.y ripper_dispatch_scan_event(parser, k__END__); parser 7651 ext/ripper/ripper.y struct parser_params *parser = (struct parser_params*)p; parser 7655 ext/ripper/ripper.y parser->parser_yylval = lval; parser 7656 ext/ripper/ripper.y parser->parser_yylval->val = Qundef; parser 7658 ext/ripper/ripper.y t = parser_yylex(parser); parser 7660 ext/ripper/ripper.y if (!NIL_P(parser->delayed)) { parser 7661 ext/ripper/ripper.y ripper_dispatch_delayed_token(parser, t); parser 7665 ext/ripper/ripper.y ripper_dispatch_scan_event(parser, t); parser 7716 ext/ripper/ripper.y #define parser_warning(node, mesg) parser_warning(parser, node, mesg) parser 7723 ext/ripper/ripper.y #define parser_warn(node, mesg) parser_warn(parser, node, mesg) parser 7855 ext/ripper/ripper.y if (!literal_concat0(parser, head->nd_lit, tail->nd_lit)) { parser 7870 ext/ripper/ripper.y if (!literal_concat0(parser, head->nd_lit, tail->nd_lit)) parser 7989 ext/ripper/ripper.y return NEW_LIT(rb_enc_from_encoding(parser->enc)); parser 8511 ext/ripper/ripper.y if (!e_option_supplied(parser)) parser_warn(node, str); parser 8517 ext/ripper/ripper.y if (!e_option_supplied(parser)) parser_warning(node, str); parser 8561 ext/ripper/ripper.y warn_unless_e_option(parser, node, "integer literal in conditional range"); parser 8564 ext/ripper/ripper.y return cond0(parser, node); parser 8592 ext/ripper/ripper.y assign_in_cond(parser, node); parser 8603 ext/ripper/ripper.y warning_unless_e_option(parser, node, "regex literal in condition"); parser 8608 ext/ripper/ripper.y node->nd_1st = cond0(parser, node->nd_1st); parser 8609 ext/ripper/ripper.y node->nd_2nd = cond0(parser, node->nd_2nd); parser 8614 ext/ripper/ripper.y node->nd_beg = range_op(parser, node->nd_beg); parser 8615 ext/ripper/ripper.y node->nd_end = range_op(parser, node->nd_end); parser 8618 ext/ripper/ripper.y if (!e_option_supplied(parser)) { parser 8633 ext/ripper/ripper.y warn_unless_e_option(parser, node, "regex literal in condition"); parser 8649 ext/ripper/ripper.y return cond0(parser, node); parser 8679 ext/ripper/ripper.y no_blockarg(parser, node); parser 8698 ext/ripper/ripper.y no_blockarg(parser, node); parser 8934 ext/ripper/ripper.y else if (parser->enc == rb_usascii_encoding()) { parser 8955 ext/ripper/ripper.y reg_fragment_setenc_gen(parser, str, options); parser 8965 ext/ripper/ripper.y struct parser_params* parser; parser 8977 ext/ripper/ripper.y struct parser_params* parser = arg->parser; parser 9016 ext/ripper/ripper.y arg.parser = parser; parser 9077 ext/ripper/ripper.y struct parser_params *parser; parser 9081 ext/ripper/ripper.y Data_Get_Struct(vparser, struct parser_params, parser); parser 9109 ext/ripper/ripper.y struct parser_params *parser; parser 9113 ext/ripper/ripper.y Data_Get_Struct(vparser, struct parser_params, parser); parser 9662 ext/ripper/ripper.y parser->eofp = Qfalse; parser 9664 ext/ripper/ripper.y parser->parser_lex_strterm = 0; parser 9665 ext/ripper/ripper.y parser->parser_cond_stack = 0; parser 9666 ext/ripper/ripper.y parser->parser_cmdarg_stack = 0; parser 9667 ext/ripper/ripper.y parser->parser_class_nest = 0; parser 9668 ext/ripper/ripper.y parser->parser_paren_nest = 0; parser 9669 ext/ripper/ripper.y parser->parser_lpar_beg = 0; parser 9670 ext/ripper/ripper.y parser->parser_in_single = 0; parser 9671 ext/ripper/ripper.y parser->parser_in_def = 0; parser 9672 ext/ripper/ripper.y parser->parser_in_defined = 0; parser 9673 ext/ripper/ripper.y parser->parser_compile_for_eval = 0; parser 9674 ext/ripper/ripper.y parser->parser_cur_mid = 0; parser 9675 ext/ripper/ripper.y parser->parser_tokenbuf = NULL; parser 9676 ext/ripper/ripper.y parser->parser_tokidx = 0; parser 9677 ext/ripper/ripper.y parser->parser_toksiz = 0; parser 9678 ext/ripper/ripper.y parser->parser_heredoc_end = 0; parser 9679 ext/ripper/ripper.y parser->parser_command_start = Qtrue; parser 9680 ext/ripper/ripper.y parser->parser_deferred_nodes = 0; parser 9681 ext/ripper/ripper.y parser->parser_lex_pbeg = 0; parser 9682 ext/ripper/ripper.y parser->parser_lex_p = 0; parser 9683 ext/ripper/ripper.y parser->parser_lex_pend = 0; parser 9684 ext/ripper/ripper.y parser->parser_lvtbl = 0; parser 9685 ext/ripper/ripper.y parser->parser_ruby__end__seen = 0; parser 9686 ext/ripper/ripper.y parser->parser_ruby_sourcefile = 0; parser 9688 ext/ripper/ripper.y parser->is_ripper = 0; parser 9689 ext/ripper/ripper.y parser->parser_eval_tree_begin = 0; parser 9690 ext/ripper/ripper.y parser->parser_eval_tree = 0; parser 9692 ext/ripper/ripper.y parser->is_ripper = 1; parser 9693 ext/ripper/ripper.y parser->parser_ruby_sourcefile_string = Qnil; parser 9694 ext/ripper/ripper.y parser->delayed = Qnil; parser 9696 ext/ripper/ripper.y parser->result = Qnil; parser 9697 ext/ripper/ripper.y parser->parsing_thread = Qnil; parser 9698 ext/ripper/ripper.y parser->toplevel_p = Qtrue; parser 9701 ext/ripper/ripper.y parser->heap = NULL; parser 9703 ext/ripper/ripper.y parser->enc = rb_usascii_encoding(); parser 9790 ext/ripper/ripper.y struct parser_params *parser; parser 9792 ext/ripper/ripper.y Data_Get_Struct(vparser, struct parser_params, parser); parser 9805 ext/ripper/ripper.y struct parser_params *parser; parser 9807 ext/ripper/ripper.y Data_Get_Struct(vparser, struct parser_params, parser); parser 9808 ext/ripper/ripper.y return rb_enc_from_encoding(parser->enc); parser 9820 ext/ripper/ripper.y struct parser_params *parser; parser 9822 ext/ripper/ripper.y Data_Get_Struct(self, struct parser_params, parser); parser 9835 ext/ripper/ripper.y struct parser_params *parser; parser 9837 ext/ripper/ripper.y Data_Get_Struct(self, struct parser_params, parser); parser 9844 ext/ripper/ripper.y #define NEWHEAP() rb_node_newnode(NODE_ALLOCA, 0, (VALUE)parser->heap, 0) parser 9845 ext/ripper/ripper.y #define ADD2HEAP(n, c, p) ((parser->heap = (n))->u1.node = (p), \ parser 9874 ext/ripper/ripper.y if (ptr && (n = parser->heap) != NULL) { parser 9891 ext/ripper/ripper.y NODE **prev = &parser->heap, *n; parser 9945 ext/ripper/ripper.y return rb_funcall(parser->value, mid, 0); parser 9952 ext/ripper/ripper.y return rb_funcall(parser->value, mid, 1, a); parser 9960 ext/ripper/ripper.y return rb_funcall(parser->value, mid, 2, a, b); parser 9969 ext/ripper/ripper.y return rb_funcall(parser->value, mid, 3, a, b, c); parser 9979 ext/ripper/ripper.y return rb_funcall(parser->value, mid, 4, a, b, c, d); parser 9990 ext/ripper/ripper.y return rb_funcall(parser->value, mid, 5, a, b, c, d, e); parser 10107 ext/ripper/ripper.y rb_funcall(parser->value, rb_intern("compile_error"), 1, str); parser 10113 ext/ripper/ripper.y rb_funcall(parser->value, rb_intern("warn"), 1, STR_NEW2(fmt)); parser 10119 ext/ripper/ripper.y rb_funcall(parser->value, rb_intern("warn"), 2, parser 10127 ext/ripper/ripper.y rb_funcall(parser->value, rb_intern("warn"), 2, parser 10135 ext/ripper/ripper.y rb_funcall(parser->value, rb_intern("warning"), 1, STR_NEW2(fmt)); parser 10141 ext/ripper/ripper.y rb_funcall(parser->value, rb_intern("warning"), 2, parser 10179 ext/ripper/ripper.y struct parser_params *parser; parser 10182 ext/ripper/ripper.y Data_Get_Struct(self, struct parser_params, parser); parser 10185 ext/ripper/ripper.y parser->parser_lex_gets = ripper_lex_get_generic; parser 10189 ext/ripper/ripper.y parser->parser_lex_gets = lex_get_str; parser 10191 ext/ripper/ripper.y parser->parser_lex_input = src; parser 10192 ext/ripper/ripper.y parser->eofp = Qfalse; parser 10199 ext/ripper/ripper.y parser_initialize(parser); parser 10201 ext/ripper/ripper.y parser->parser_ruby_sourcefile_string = fname; parser 10202 ext/ripper/ripper.y parser->parser_ruby_sourcefile = RSTRING_PTR(fname); parser 10203 ext/ripper/ripper.y parser->parser_ruby_sourceline = NIL_P(lineno) ? 0 : NUM2INT(lineno) - 1; parser 10211 ext/ripper/ripper.y struct parser_params *parser; parser 10219 ext/ripper/ripper.y struct parser_params *parser; parser 10221 ext/ripper/ripper.y Data_Get_Struct(parser_v, struct parser_params, parser); parser 10222 ext/ripper/ripper.y parser_prepare(parser); parser 10223 ext/ripper/ripper.y ripper_yyparse((void*)parser); parser 10224 ext/ripper/ripper.y return parser->result; parser 10230 ext/ripper/ripper.y struct parser_params *parser; parser 10232 ext/ripper/ripper.y Data_Get_Struct(parser_v, struct parser_params, parser); parser 10233 ext/ripper/ripper.y parser->parsing_thread = Qnil; parser 10246 ext/ripper/ripper.y struct parser_params *parser; parser 10248 ext/ripper/ripper.y Data_Get_Struct(self, struct parser_params, parser); parser 10249 ext/ripper/ripper.y if (!ripper_initialized_p(parser)) { parser 10252 ext/ripper/ripper.y if (!NIL_P(parser->parsing_thread)) { parser 10253 ext/ripper/ripper.y if (parser->parsing_thread == rb_thread_current()) parser 10258 ext/ripper/ripper.y parser->parsing_thread = rb_thread_current(); parser 10261 ext/ripper/ripper.y return parser->result; parser 10274 ext/ripper/ripper.y struct parser_params *parser; parser 10277 ext/ripper/ripper.y Data_Get_Struct(self, struct parser_params, parser); parser 10278 ext/ripper/ripper.y if (!ripper_initialized_p(parser)) { parser 10281 ext/ripper/ripper.y if (NIL_P(parser->parsing_thread)) return Qnil; parser 10282 ext/ripper/ripper.y col = parser->tokp - parser->parser_lex_pbeg; parser 10296 ext/ripper/ripper.y struct parser_params *parser; parser 10298 ext/ripper/ripper.y Data_Get_Struct(self, struct parser_params, parser); parser 10299 ext/ripper/ripper.y if (!ripper_initialized_p(parser)) { parser 10302 ext/ripper/ripper.y if (NIL_P(parser->parsing_thread)) return Qnil; parser 10303 ext/ripper/ripper.y return INT2NUM(parser->parser_ruby_sourceline); parser 20 ext/syck/bytecode.c #define YYCURSOR parser->cursor parser 21 ext/syck/bytecode.c #define YYMARKER parser->marker parser 22 ext/syck/bytecode.c #define YYLIMIT parser->limit parser 23 ext/syck/bytecode.c #define YYTOKEN parser->token parser 24 ext/syck/bytecode.c #define YYTOKTMP parser->toktmp parser 25 ext/syck/bytecode.c #define YYLINEPTR parser->lineptr parser 26 ext/syck/bytecode.c #define YYLINECTPTR parser->linectptr parser 27 ext/syck/bytecode.c #define YYLINE parser->linect parser 28 ext/syck/bytecode.c #define YYFILL(n) syck_parser_read(parser) parser 48 ext/syck/bytecode.c #define ADD_LEVEL(len, status) syck_parser_add_level( parser, len, status ) parser 49 ext/syck/bytecode.c #define POP_LEVEL() syck_parser_pop_level( parser ) parser 50 ext/syck/bytecode.c #define CURRENT_LEVEL() syck_parser_current_level( parser ) parser 55 ext/syck/bytecode.c #define FORCE_NEXT_TOKEN(tok) parser->force_token = tok; parser 110 ext/syck/bytecode.c syck_parser_pop_level( parser ); \ parser 137 ext/syck/bytecode.c syck_parser_ptr = parser; parser 140 ext/syck/bytecode.c syck_parser_read( parser ); parser 143 ext/syck/bytecode.c if ( parser->force_token != 0 ) parser 145 ext/syck/bytecode.c int t = parser->force_token; parser 146 ext/syck/bytecode.c parser->force_token = 0; parser 301 ext/syck/bytecode.c sycklval->name = get_inline( parser ); parser 302 ext/syck/bytecode.c syck_hdlr_remove_anchor( parser, sycklval->name ); parser 312 ext/syck/bytecode.c sycklval->name = get_inline( parser ); parser 324 ext/syck/bytecode.c qstr = get_inline( parser ); parser 1088 ext/syck/bytecode.c if ( parser->implicit_typing == 1 ) parser 1090 ext/syck/bytecode.c try_tag_implicit( sycklval->nodeData, parser->taguri_expansion ); parser 103 ext/syck/gram.c #define YYPARSE_PARAM parser parser 104 ext/syck/gram.c #define YYLEX_PARAM parser parser 108 ext/syck/gram.c if ( ((SyckParser *)parser)->taguri_expansion == 1 ) \ parser 1199 ext/syck/gram.c ((SyckParser *)parser)->root = syck_hdlr_add_node( (SyckParser *)parser, yyvsp[0].nodeData ); parser 1206 ext/syck/gram.c ((SyckParser *)parser)->root = syck_hdlr_add_node( (SyckParser *)parser, yyvsp[0].nodeData ); parser 1213 ext/syck/gram.c ((SyckParser *)parser)->eof = 1; parser 1220 ext/syck/gram.c syck_add_transfer( yyvsp[-1].name, yyvsp[0].nodeData, ((SyckParser *)parser)->taguri_expansion ); parser 1241 ext/syck/gram.c yyval.nodeData = syck_hdlr_add_anchor( (SyckParser *)parser, yyvsp[-1].name, yyvsp[0].nodeData ); parser 1262 ext/syck/gram.c NULL_NODE( parser, n ); parser 1270 ext/syck/gram.c if ( ((SyckParser *)parser)->implicit_typing == 1 ) parser 1272 ext/syck/gram.c try_tag_implicit( yyvsp[0].nodeData, ((SyckParser *)parser)->taguri_expansion ); parser 1281 ext/syck/gram.c syck_add_transfer( yyvsp[-1].name, yyvsp[0].nodeData, ((SyckParser *)parser)->taguri_expansion ); parser 1302 ext/syck/gram.c yyval.nodeData = syck_hdlr_add_anchor( (SyckParser *)parser, yyvsp[-1].name, yyvsp[0].nodeData ); parser 1309 ext/syck/gram.c syck_add_transfer( yyvsp[-1].name, yyvsp[0].nodeData, ((SyckParser *)parser)->taguri_expansion ); parser 1325 ext/syck/gram.c if ( ((SyckParser *)parser)->implicit_typing == 1 ) parser 1327 ext/syck/gram.c try_tag_implicit( yyvsp[0].nodeData, ((SyckParser *)parser)->taguri_expansion ); parser 1336 ext/syck/gram.c yyval.nodeData = syck_hdlr_add_anchor( (SyckParser *)parser, yyvsp[-1].name, yyvsp[0].nodeData ); parser 1347 ext/syck/gram.c yyval.nodeData = syck_hdlr_get_anchor( (SyckParser *)parser, yyvsp[0].name ); parser 1355 ext/syck/gram.c if ( ((SyckParser *)parser)->taguri_expansion == 1 ) parser 1391 ext/syck/gram.c yyval.nodeId = syck_hdlr_add_node( (SyckParser *)parser, yyvsp[0].nodeData ); parser 1398 ext/syck/gram.c syck_add_transfer( yyvsp[-2].name, yyvsp[0].nodeData, ((SyckParser *)parser)->taguri_expansion ); parser 1406 ext/syck/gram.c syck_add_transfer( yyvsp[-1].name, yyvsp[0].nodeData, ((SyckParser *)parser)->taguri_expansion ); parser 1430 ext/syck/gram.c yyval.nodeData = syck_hdlr_add_anchor( (SyckParser *)parser, yyvsp[-2].name, yyvsp[0].nodeData ); parser 1437 ext/syck/gram.c yyval.nodeData = syck_hdlr_add_anchor( (SyckParser *)parser, yyvsp[-1].name, yyvsp[0].nodeData ); parser 1480 ext/syck/gram.c yyval.nodeData = syck_new_seq( syck_hdlr_add_node( (SyckParser *)parser, yyvsp[0].nodeData ) ); parser 1487 ext/syck/gram.c syck_seq_add( yyvsp[-2].nodeData, syck_hdlr_add_node( (SyckParser *)parser, yyvsp[0].nodeData ) ); parser 1495 ext/syck/gram.c apply_seq_in_map( (SyckParser *)parser, yyvsp[-1].nodeData ); parser 1503 ext/syck/gram.c apply_seq_in_map( (SyckParser *)parser, yyvsp[-1].nodeData ); parser 1511 ext/syck/gram.c syck_add_transfer( yyvsp[-2].name, yyvsp[0].nodeData, ((SyckParser *)parser)->taguri_expansion ); parser 1519 ext/syck/gram.c syck_add_transfer( yyvsp[-1].name, yyvsp[0].nodeData, ((SyckParser *)parser)->taguri_expansion ); parser 1543 ext/syck/gram.c yyval.nodeData = syck_hdlr_add_anchor( (SyckParser *)parser, yyvsp[-2].name, yyvsp[0].nodeData ); parser 1550 ext/syck/gram.c yyval.nodeData = syck_hdlr_add_anchor( (SyckParser *)parser, yyvsp[-1].name, yyvsp[0].nodeData ); parser 1565 ext/syck/gram.c syck_hdlr_add_node( (SyckParser *)parser, yyvsp[-2].nodeData ), parser 1566 ext/syck/gram.c syck_hdlr_add_node( (SyckParser *)parser, yyvsp[0].nodeData ) ); parser 1588 ext/syck/gram.c apply_seq_in_map( (SyckParser *)parser, yyvsp[-2].nodeData ); parser 1607 ext/syck/gram.c syck_hdlr_add_node( (SyckParser *)parser, yyvsp[-2].nodeData ), parser 1608 ext/syck/gram.c syck_hdlr_add_node( (SyckParser *)parser, yyvsp[0].nodeData ) ); parser 1639 ext/syck/gram.c NULL_NODE( parser, n ); parser 1641 ext/syck/gram.c syck_hdlr_add_node( (SyckParser *)parser, yyvsp[0].nodeData ), parser 1642 ext/syck/gram.c syck_hdlr_add_node( (SyckParser *)parser, n ) ); parser 1889 ext/syck/gram.c syck_hdlr_add_node( parser, n->shortcut ) ); parser 109 ext/syck/rubyext.c SyckParser *parser = syck_new_parser(); parser 110 ext/syck/rubyext.c taint = syck_parser_assign_io(parser, &port); parser 111 ext/syck/rubyext.c syck_parser_handler( parser, syck_yaml2byte_handler ); parser 112 ext/syck/rubyext.c syck_parser_error_handler( parser, NULL ); parser 113 ext/syck/rubyext.c syck_parser_implicit_typing( parser, 0 ); parser 114 ext/syck/rubyext.c syck_parser_taguri_expansion( parser, 0 ); parser 115 ext/syck/rubyext.c oid = syck_parse( parser ); parser 116 ext/syck/rubyext.c if (!syck_lookup_sym( parser, oid, &data )) { parser 126 ext/syck/rubyext.c syck_free_parser( parser ); parser 177 ext/syck/rubyext.c syck_parser_str( parser, RSTRING_PTR(port), RSTRING_LEN(port), NULL ); parser 183 ext/syck/rubyext.c syck_parser_str( parser, (char *)port, 0, rb_syck_io_str_read ); parser 704 ext/syck/rubyext.c SyckParser *parser; parser 705 ext/syck/rubyext.c Data_Get_Struct(p, SyckParser, parser); parser 706 ext/syck/rubyext.c syck_parser_handler( parser, rb_syck_load_handler ); parser 712 ext/syck/rubyext.c syck_parser_implicit_typing( parser, 1 ); parser 713 ext/syck/rubyext.c syck_parser_taguri_expansion( parser, 1 ); parser 721 ext/syck/rubyext.c syck_parser_set_input_type( parser, syck_bytecode_utf8 ); parser 725 ext/syck/rubyext.c syck_parser_set_input_type( parser, syck_yaml_utf8 ); parser 727 ext/syck/rubyext.c syck_parser_error_handler( parser, rb_syck_err_handler ); parser 728 ext/syck/rubyext.c syck_parser_bad_anchor_handler( parser, rb_syck_bad_anchor_handler ); parser 744 ext/syck/rubyext.c struct parser_xtra *bonus = (struct parser_xtra *)parser->bonus; parser 745 ext/syck/rubyext.c rb_gc_mark_maybe(parser->root); parser 746 ext/syck/rubyext.c rb_gc_mark_maybe(parser->root_on_error); parser 751 ext/syck/rubyext.c if ( parser->anchors != NULL ) parser 753 ext/syck/rubyext.c st_foreach( parser->anchors, syck_st_mark_nodes, 0 ); parser 755 ext/syck/rubyext.c if ( parser->bad_anchors != NULL ) parser 757 ext/syck/rubyext.c st_foreach( parser->bad_anchors, syck_st_mark_nodes, 0 ); parser 779 ext/syck/rubyext.c SyckParser *parser = syck_new_parser(); parser 781 ext/syck/rubyext.c parser->bonus = S_ALLOC( struct parser_xtra ); parser 782 ext/syck/rubyext.c S_MEMZERO( parser->bonus, struct parser_xtra, 1 ); parser 784 ext/syck/rubyext.c pobj = Data_Wrap_Struct( class, syck_mark_parser, rb_syck_free_parser, parser ); parser 786 ext/syck/rubyext.c syck_parser_set_root_on_error( parser, Qnil ); parser 817 ext/syck/rubyext.c SyckParser *parser; parser 821 ext/syck/rubyext.c Data_Get_Struct(self, SyckParser, parser); parser 822 ext/syck/rubyext.c parser->bufsize = n; parser 833 ext/syck/rubyext.c SyckParser *parser; parser 835 ext/syck/rubyext.c Data_Get_Struct(self, SyckParser, parser); parser 836 ext/syck/rubyext.c return INT2FIX( parser->bufsize ); parser 846 ext/syck/rubyext.c SyckParser *parser; parser 853 ext/syck/rubyext.c Data_Get_Struct(self, SyckParser, parser); parser 856 ext/syck/rubyext.c bonus = (struct parser_xtra *)parser->bonus; parser 857 ext/syck/rubyext.c bonus->taint = syck_parser_assign_io(parser, &port); parser 863 ext/syck/rubyext.c return syck_parse( parser ); parser 873 ext/syck/rubyext.c SyckParser *parser; parser 880 ext/syck/rubyext.c Data_Get_Struct(self, SyckParser, parser); parser 883 ext/syck/rubyext.c bonus = (struct parser_xtra *)parser->bonus; parser 884 ext/syck/rubyext.c bonus->taint = syck_parser_assign_io(parser, &port); parser 894 ext/syck/rubyext.c v = syck_parse( parser ); parser 895 ext/syck/rubyext.c if ( parser->eof == 1 ) parser 23 ext/syck/token.c #define YYCURSOR parser->cursor parser 24 ext/syck/token.c #define YYMARKER parser->marker parser 25 ext/syck/token.c #define YYLIMIT parser->limit parser 26 ext/syck/token.c #define YYTOKEN parser->token parser 27 ext/syck/token.c #define YYTOKTMP parser->toktmp parser 28 ext/syck/token.c #define YYLINEPTR parser->lineptr parser 29 ext/syck/token.c #define YYLINECTPTR parser->linectptr parser 30 ext/syck/token.c #define YYLINE parser->linect parser 31 ext/syck/token.c #define YYFILL(n) syck_parser_read(parser) parser 47 ext/syck/token.c #define ADD_LEVEL(len, status) syck_parser_add_level( parser, len, status ) parser 48 ext/syck/token.c #define POP_LEVEL() syck_parser_pop_level( parser ) parser 49 ext/syck/token.c #define CURRENT_LEVEL() syck_parser_current_level( parser ) parser 54 ext/syck/token.c #define FORCE_NEXT_TOKEN(tok) parser->force_token = tok; parser 82 ext/syck/token.c syck_parser_pop_level( parser ); \ parser 126 ext/syck/token.c if ( parser->implicit_typing == 1 ) \ parser 128 ext/syck/token.c try_tag_implicit( sycklval->nodeData, parser->taguri_expansion ); \ parser 159 ext/syck/token.c if ( ((SyckParser *)parser)->taguri_expansion == 1 ) \ parser 223 ext/syck/token.c parser->lvl_idx--; \ parser 226 ext/syck/token.c parser->lvl_idx++; \ parser 254 ext/syck/token.c switch ( parser->input_type ) parser 257 ext/syck/token.c return sycklex_yaml_utf8( sycklval, parser ); parser 268 ext/syck/token.c return sycklex_bytecode_utf8( sycklval, parser ); parser 280 ext/syck/token.c syck_parser_ptr = parser; parser 283 ext/syck/token.c syck_parser_read( parser ); parser 286 ext/syck/token.c if ( parser->force_token != 0 ) parser 288 ext/syck/token.c int t = parser->force_token; parser 289 ext/syck/token.c parser->force_token = 0; parser 347 ext/syck/token.c { eat_comments( parser ); parser 803 ext/syck/token.c { eat_comments( parser ); parser 1032 ext/syck/token.c syck_hdlr_remove_anchor(parser, sycklval->name); parser 1658 ext/syck/token.c { eat_comments( parser ); parser 1833 ext/syck/token.c if ( ((SyckParser *)parser)->taguri_expansion == 1 ) parser 2001 ext/syck/token.c if ( ((SyckParser *)parser)->taguri_expansion == 1 ) parser 2492 ext/syck/token.c eat_comments( parser ); parser 224 ext/syck/yaml2byte.c SyckParser *parser = syck_new_parser(); parser 225 ext/syck/yaml2byte.c syck_parser_str_auto( parser, yamlstr, NULL ); parser 226 ext/syck/yaml2byte.c syck_parser_handler( parser, syck_yaml2byte_handler ); parser 227 ext/syck/yaml2byte.c syck_parser_error_handler( parser, NULL ); parser 228 ext/syck/yaml2byte.c syck_parser_implicit_typing( parser, 1 ); parser 229 ext/syck/yaml2byte.c syck_parser_taguri_expansion( parser, 1 ); parser 230 ext/syck/yaml2byte.c oid = syck_parse( parser ); parser 232 ext/syck/yaml2byte.c if ( syck_lookup_sym( parser, oid, &data ) ) { parser 244 ext/syck/yaml2byte.c syck_free_parser( parser ); parser 458 iseq.c VALUE parser = rb_parser_new(); parser 459 iseq.c NODE *node = rb_parser_compile_string(parser, StringValueCStr(file), parser 511 iseq.c VALUE parser; parser 524 iseq.c parser = rb_parser_new(); parser 525 iseq.c node = rb_parser_compile_file(parser, fname, f, NUM2INT(line)); parser 333 parse.c #define YYMALLOC(size) rb_parser_malloc(parser, size) parser 334 parse.c #define YYREALLOC(ptr, size) rb_parser_realloc(parser, ptr, size) parser 335 parse.c #define YYCALLOC(nelem, size) rb_parser_calloc(parser, nelem, size) parser 336 parse.c #define YYFREE(ptr) rb_parser_free(parser, ptr) parser 569 parse.c #define UTF8_ENC() (parser->utf8 ? parser->utf8 : \ parser 570 parse.c (parser->utf8 = rb_utf8_encoding())) parser 571 parse.c #define STR_NEW(p,n) rb_enc_str_new((p),(n),parser->enc) parser 572 parse.c #define STR_NEW0() rb_enc_str_new(0,0,parser->enc) parser 573 parse.c #define STR_NEW2(p) rb_enc_str_new((p),strlen(p),parser->enc) parser 574 parse.c #define STR_NEW3(p,n,e,func) parser_str_new((p),(n),(e),(func),parser->enc) parser 576 parse.c #define TOK_INTERN(mb) rb_intern3(tok(), toklen(), parser->enc) parser 586 parse.c #define yyerror(msg) parser_yyerror(parser, msg) parser 588 parse.c #define YYLEX_PARAM parser parser 590 parse.c #define lex_strterm (parser->parser_lex_strterm) parser 591 parse.c #define lex_state (parser->parser_lex_state) parser 592 parse.c #define cond_stack (parser->parser_cond_stack) parser 593 parse.c #define cmdarg_stack (parser->parser_cmdarg_stack) parser 594 parse.c #define class_nest (parser->parser_class_nest) parser 595 parse.c #define paren_nest (parser->parser_paren_nest) parser 596 parse.c #define lpar_beg (parser->parser_lpar_beg) parser 597 parse.c #define in_single (parser->parser_in_single) parser 598 parse.c #define in_def (parser->parser_in_def) parser 599 parse.c #define compile_for_eval (parser->parser_compile_for_eval) parser 600 parse.c #define cur_mid (parser->parser_cur_mid) parser 601 parse.c #define in_defined (parser->parser_in_defined) parser 602 parse.c #define tokenbuf (parser->parser_tokenbuf) parser 603 parse.c #define tokidx (parser->parser_tokidx) parser 604 parse.c #define toksiz (parser->parser_toksiz) parser 605 parse.c #define lex_input (parser->parser_lex_input) parser 606 parse.c #define lex_lastline (parser->parser_lex_lastline) parser 607 parse.c #define lex_nextline (parser->parser_lex_nextline) parser 608 parse.c #define lex_pbeg (parser->parser_lex_pbeg) parser 609 parse.c #define lex_p (parser->parser_lex_p) parser 610 parse.c #define lex_pend (parser->parser_lex_pend) parser 611 parse.c #define heredoc_end (parser->parser_heredoc_end) parser 612 parse.c #define command_start (parser->parser_command_start) parser 613 parse.c #define deferred_nodes (parser->parser_deferred_nodes) parser 614 parse.c #define lex_gets_ptr (parser->parser_lex_gets_ptr) parser 615 parse.c #define lex_gets (parser->parser_lex_gets) parser 616 parse.c #define lvtbl (parser->parser_lvtbl) parser 617 parse.c #define ruby__end__seen (parser->parser_ruby__end__seen) parser 618 parse.c #define ruby_sourceline (parser->parser_ruby_sourceline) parser 619 parse.c #define ruby_sourcefile (parser->parser_ruby_sourcefile) parser 620 parse.c #define yydebug (parser->parser_yydebug) parser 623 parse.c #define ruby_eval_tree (parser->parser_eval_tree) parser 624 parse.c #define ruby_eval_tree_begin (parser->parser_eval_tree_begin) parser 625 parse.c #define ruby_debug_lines (parser->debug_lines) parser 626 parse.c #define ruby_coverage (parser->coverage) parser 635 parse.c #define rb_node_newnode(type, a1, a2, a3) node_newnode(parser, type, a1, a2, a3) parser 638 parse.c #define cond(node) cond_gen(parser, node) parser 640 parse.c #define logop(type,node1,node2) logop_gen(parser, type, node1, node2) parser 648 parse.c #define value_expr(node) value_expr_gen(parser, (node) = remove_begin(node)) parser 649 parse.c #define void_expr0(node) void_expr_gen(parser, (node)) parser 652 parse.c #define void_stmts(node) void_stmts_gen(parser, node) parser 654 parse.c #define reduce_nodes(n) reduce_nodes_gen(parser,n) parser 656 parse.c #define block_dup_check(n1,n2) block_dup_check_gen(parser,n1,n2) parser 659 parse.c #define block_append(h,t) block_append_gen(parser,h,t) parser 661 parse.c #define list_append(l,i) list_append_gen(parser,l,i) parser 663 parse.c #define list_concat(h,t) list_concat_gen(parser,h,t) parser 665 parse.c #define arg_append(h,t) arg_append_gen(parser,h,t) parser 667 parse.c #define arg_concat(h,t) arg_concat_gen(parser,h,t) parser 669 parse.c #define literal_concat(h,t) literal_concat_gen(parser,h,t) parser 671 parse.c #define new_evstr(n) new_evstr_gen(parser,n) parser 673 parse.c #define evstr2dstr(n) evstr2dstr_gen(parser,n) parser 677 parse.c #define call_bin_op(recv,id,arg1) call_bin_op_gen(parser, recv,id,arg1) parser 679 parse.c #define call_uni_op(recv,id) call_uni_op_gen(parser, recv,id) parser 682 parse.c #define new_args(f,o,r,p,b) new_args_gen(parser, f,o,r,p,b) parser 684 parse.c #define shadowing_lvar(name) shadowing_lvar_gen(parser, name) parser 688 parse.c #define ret_args(node) ret_args_gen(parser, node) parser 691 parse.c #define new_yield(node) new_yield_gen(parser, node) parser 694 parse.c #define gettable(id) gettable_gen(parser,id) parser 696 parse.c #define assignable(id,node) assignable_gen(parser, id, node) parser 698 parse.c #define new_bv(id) new_bv_gen(parser, id) parser 700 parse.c #define aryset(node1,node2) aryset_gen(parser, node1, node2) parser 702 parse.c #define attrset(node,id) attrset_gen(parser, node, id) parser 705 parse.c #define rb_backref_error(n) rb_backref_error_gen(parser,n) parser 707 parse.c #define node_assign(node1, node2) node_assign_gen(parser, node1, node2) parser 710 parse.c #define match_op(node1,node2) match_op_gen(parser, node1, node2) parser 713 parse.c #define local_push(top) local_push_gen(parser,top) parser 715 parse.c #define local_pop() local_pop_gen(parser) parser 717 parse.c #define local_var(id) local_var_gen(parser, id); parser 719 parse.c #define arg_var(id) arg_var_gen(parser, id) parser 721 parse.c #define local_id(id) local_id_gen(parser, id) parser 723 parse.c #define local_tbl() local_tbl_gen(parser) parser 725 parse.c #define internal_id() internal_id_gen(parser) parser 728 parse.c #define dyna_push() dyna_push_gen(parser) parser 730 parse.c #define dyna_pop() dyna_pop_gen(parser) parser 732 parse.c #define dyna_in_block() dyna_in_block_gen(parser) parser 735 parse.c #define dvar_defined(id) dvar_defined_gen(parser, id) parser 737 parse.c #define dvar_curr(id) dvar_curr_gen(parser, id) parser 747 parse.c #define reg_compile(str,options) reg_compile_gen(parser, str, options) parser 749 parse.c #define reg_fragment_setenc(str,options) reg_fragment_setenc_gen(parser, str, options) parser 751 parse.c #define reg_fragment_check(str,options) reg_fragment_check_gen(parser, str, options) parser 753 parse.c #define reg_named_capture_assign(regexp,match) reg_named_capture_assign_gen(parser,regexp,match) parser 759 parse.c #define lvar_defined(id) lvar_defined_gen(parser, id) parser 797 parse.c #define dispatch0(n) ripper_dispatch0(parser, TOKEN_PASTE(ripper_id_, n)) parser 798 parse.c #define dispatch1(n,a) ripper_dispatch1(parser, TOKEN_PASTE(ripper_id_, n), a) parser 799 parse.c #define dispatch2(n,a,b) ripper_dispatch2(parser, TOKEN_PASTE(ripper_id_, n), a, b) parser 800 parse.c #define dispatch3(n,a,b,c) ripper_dispatch3(parser, TOKEN_PASTE(ripper_id_, n), a, b, c) parser 801 parse.c #define dispatch4(n,a,b,c,d) ripper_dispatch4(parser, TOKEN_PASTE(ripper_id_, n), a, b, c, d) parser 802 parse.c #define dispatch5(n,a,b,c,d,e) ripper_dispatch5(parser, TOKEN_PASTE(ripper_id_, n), a, b, c, d, e) parser 861 parse.c # define rb_warn0(fmt) ripper_warn0(parser, fmt) parser 862 parse.c # define rb_warnI(fmt,a) ripper_warnI(parser, fmt, a) parser 863 parse.c # define rb_warnS(fmt,a) ripper_warnS(parser, fmt, a) parser 864 parse.c # define rb_warning0(fmt) ripper_warning0(parser, fmt) parser 865 parse.c # define rb_warningS(fmt,a) ripper_warningS(parser, fmt, a) parser 879 parse.c # define PARSER_ARG parser, parser 881 parse.c # define compile_error parser->nerr++,rb_compile_error parser 4251 parse.c parser_yyerror (parser, YY_("syntax error: cannot back up")); \ parser 4331 parse.c Type, Value, parser); \ parser 4357 parse.c YYUSE (parser); parser 4394 parse.c yy_symbol_value_print (yyoutput, yytype, yyvaluep, parser); parser 4454 parse.c , parser); parser 4462 parse.c yy_reduce_print (yyvsp, Rule, parser); \ parser 4726 parse.c YYUSE (parser); parser 7935 parse.c if (RTEST(ruby_verbose)) token_info_push(parser, "begin"); parser 7944 parse.c if (RTEST(ruby_verbose)) token_info_push(parser, "if"); parser 7953 parse.c if (RTEST(ruby_verbose)) token_info_push(parser, "unless"); parser 7962 parse.c if (RTEST(ruby_verbose)) token_info_push(parser, "while"); parser 7971 parse.c if (RTEST(ruby_verbose)) token_info_push(parser, "until"); parser 7980 parse.c if (RTEST(ruby_verbose)) token_info_push(parser, "case"); parser 7989 parse.c if (RTEST(ruby_verbose)) token_info_push(parser, "for"); parser 7998 parse.c if (RTEST(ruby_verbose)) token_info_push(parser, "class"); parser 8007 parse.c if (RTEST(ruby_verbose)) token_info_push(parser, "module"); parser 8016 parse.c if (RTEST(ruby_verbose)) token_info_push(parser, "def"); parser 8025 parse.c if (RTEST(ruby_verbose)) token_info_pop(parser, "end"); /* POP */ parser 9891 parse.c parser_yyerror (parser, YY_("syntax error")); parser 9915 parse.c parser_yyerror (parser, yymsg); parser 9919 parse.c parser_yyerror (parser, YY_("syntax error")); parser 9943 parse.c yytoken, &yylval, parser); parser 9999 parse.c yystos[yystate], yyvsp, parser); parser 10037 parse.c parser_yyerror (parser, YY_("memory exhausted")); parser 10045 parse.c yytoken, &yylval, parser); parser 10053 parse.c yystos[*yyssp], yyvsp, parser); parser 10074 parse.c # define yylval (*((YYSTYPE*)(parser->parser_yylval))) parser 10083 parse.c # define nextc() parser_nextc(parser) parser 10084 parse.c # define pushback(c) parser_pushback(parser, c) parser 10085 parse.c # define newtok() parser_newtok(parser) parser 10086 parse.c # define tokspace(n) parser_tokspace(parser, n) parser 10087 parse.c # define tokadd(c) parser_tokadd(parser, c) parser 10088 parse.c # define tok_hex(numlen) parser_tok_hex(parser, numlen) parser 10089 parse.c # define read_escape(flags,e) parser_read_escape(parser, flags, e) parser 10090 parse.c # define tokadd_escape(e) parser_tokadd_escape(parser, e) parser 10091 parse.c # define regx_options() parser_regx_options(parser) parser 10092 parse.c # define tokadd_string(f,t,p,n,e) parser_tokadd_string(parser,f,t,p,n,e) parser 10093 parse.c # define parse_string(n) parser_parse_string(parser,n) parser 10094 parse.c # define tokaddmbc(c, enc) parser_tokaddmbc(parser, c, enc) parser 10095 parse.c # define here_document(n) parser_here_document(parser,n) parser 10096 parse.c # define heredoc_identifier() parser_heredoc_identifier(parser) parser 10097 parse.c # define heredoc_restore(n) parser_heredoc_restore(parser,n) parser 10098 parse.c # define whole_match_p(e,l,i) parser_whole_match_p(parser,e,l,i) parser 10130 parse.c if (lex_p < parser->tokp) rb_raise(rb_eRuntimeError, "lex_p < tokp"); parser 10131 parse.c if (lex_p == parser->tokp) return; parser 10132 parse.c str = STR_NEW(parser->tokp, lex_p - parser->tokp); parser 10133 parse.c yylval.val = ripper_dispatch1(parser, ripper_token2eventid(t), str); parser 10134 parse.c ripper_flush(parser); parser 10141 parse.c const char *saved_tokp = parser->tokp; parser 10143 parse.c ruby_sourceline = parser->delayed_line; parser 10144 parse.c parser->tokp = lex_pbeg + parser->delayed_col; parser 10145 parse.c yylval.val = ripper_dispatch1(parser, ripper_token2eventid(t), parser->delayed); parser 10146 parse.c parser->delayed = Qnil; parser 10148 parse.c parser->tokp = saved_tokp; parser 10167 parse.c #define parser_encoding_name() (parser->enc->name) parser 10168 parse.c #define parser_mbclen() mbclen((lex_p-1),lex_pend,parser->enc) parser 10169 parse.c #define parser_precise_mbclen() rb_enc_precise_mbclen((lex_p-1),lex_pend,parser->enc) parser 10171 parse.c #define parser_is_identchar() (!parser->eofp && is_identchar((lex_p-1),lex_pend,parser->enc)) parser 10211 parse.c ptinfo->column = token_info_get_column(parser, token); parser 10212 parse.c ptinfo->nonspc = token_info_has_nonspaces(parser, token); parser 10213 parse.c ptinfo->next = parser->parser_token_info; parser 10215 parse.c parser->parser_token_info = ptinfo; parser 10222 parse.c token_info *ptinfo = parser->parser_token_info; parser 10225 parse.c parser->parser_token_info = ptinfo->next; parser 10226 parse.c if (token_info_get_column(parser, token) == ptinfo->column) { /* OK */ parser 10233 parse.c if (token_info_has_nonspaces(parser, token) || ptinfo->nonspc) { /* SKIP */ parser 10357 parse.c struct parser_params *parser = (struct parser_params *)arg; parser 10369 parse.c if (!e_option_supplied(parser)) { parser 10374 parse.c parser_prepare(parser); parser 10376 parse.c n = yyparse((void*)parser); parser 10384 parse.c if (parser->nerr) { parser 10410 parse.c return (NODE *)ruby_suppress_tracing(yycompile0, (VALUE)parser, Qtrue); parser 10436 parse.c VALUE line = (*parser->parser_lex_gets)(parser, parser->parser_lex_input); parser 10460 parse.c struct parser_params *parser; parser 10464 parse.c Data_Get_Struct(vparser, struct parser_params, parser); parser 10471 parse.c node = yycompile(parser, f, line); parser 10506 parse.c struct parser_params *parser; parser 10510 parse.c Data_Get_Struct(vparser, struct parser_params, parser); parser 10516 parse.c node = yycompile(parser, f, start); parser 10558 parse.c #define lex_goto_eol(parser) (parser->parser_lex_p = parser->parser_lex_pend) parser 10570 parse.c if (parser->eofp) parser 10573 parse.c if (!lex_input || NIL_P(v = lex_getline(parser))) { parser 10574 parse.c parser->eofp = Qtrue; parser 10575 parse.c lex_goto_eol(parser); parser 10581 parse.c if (parser->tokp < lex_pend) { parser 10582 parse.c if (NIL_P(parser->delayed)) { parser 10583 parse.c parser->delayed = rb_str_buf_new(1024); parser 10584 parse.c rb_str_buf_cat(parser->delayed, parser 10585 parse.c parser->tokp, lex_pend - parser->tokp); parser 10586 parse.c parser->delayed_line = ruby_sourceline; parser 10587 parse.c parser->delayed_col = parser->tokp - lex_pbeg; parser 10590 parse.c rb_str_buf_cat(parser->delayed, parser 10591 parse.c parser->tokp, lex_pend - parser->tokp); parser 10600 parse.c parser->line_count++; parser 10604 parse.c ripper_flush(parser); parser 11009 parse.c #define tokadd_mbchar(c) parser_tokadd_mbchar(parser, c) parser 11076 parse.c parser_tokadd_utf8(parser, &enc, 1, parser 11148 parse.c rb_encoding *enc = parser->enc; parser 11186 parse.c if (parser->eofp) parser 11191 parse.c if (parser->eofp) parser 11251 parse.c ripper_dispatch_scan_event(parser, tHEREDOC_BEG); parser 11254 parse.c lex_goto_eol(parser); parser 11261 parse.c ripper_flush(parser); parser 11272 parse.c if (!NIL_P(parser->delayed)) parser 11273 parse.c ripper_dispatch_delayed_token(parser, tSTRING_CONTENT); parser 11274 parse.c lex_goto_eol(parser); parser 11275 parse.c ripper_dispatch_scan_event(parser, tHEREDOC_END); parser 11287 parse.c ripper_flush(parser); parser 11352 parse.c lex_goto_eol(parser); parser 11361 parse.c rb_encoding *enc = parser->enc; parser 11377 parse.c if (parser->eofp) goto error; parser 11411 parse.c #define arg_ambiguous() arg_ambiguous_gen(parser) parser 11455 parse.c parser->enc = enc; parser 11462 parse.c if (parser->line_count != (parser->has_shebang ? 2 : 1)) return 0; parser 11477 parse.c if (!comment_at_top(parser)) { parser 11482 parse.c parser_set_encode(parser, val); parser 11607 parse.c n = (*p->length)(parser, vbeg, n); parser 11610 parse.c (*p->func)(parser, s, RSTRING_PTR(val)); parser 11660 parse.c s = rb_str_new(beg, parser_encode_length(parser, beg, str - beg)); parser 11661 parse.c parser_set_encode(parser, RSTRING_PTR(s)); parser 11671 parse.c if (peek('!')) parser->has_shebang = 1; parser 11677 parse.c parser->enc = rb_utf8_encoding(); parser 11687 parse.c parser->enc = rb_enc_get(lex_lastline); parser 11751 parse.c ripper_dispatch_scan_event(parser, tSP); parser 11757 parse.c if (!parser_magic_comment(parser, lex_p, lex_pend - lex_p)) { parser 11758 parse.c if (comment_at_top(parser)) { parser 11759 parse.c set_file_encoding(parser, lex_p, lex_pend); parser 11764 parse.c ripper_dispatch_scan_event(parser, tCOMMENT); parser 11777 parse.c ripper_dispatch_scan_event(parser, tIGNORED_NL); parser 11802 parse.c lex_goto_eol(parser); parser 11805 parse.c parser->tokp = lex_p; parser 11879 parse.c lex_goto_eol(parser); parser 11880 parse.c ripper_dispatch_scan_event(parser, tEMBDOC_BEG); parser 11883 parse.c lex_goto_eol(parser); parser 11886 parse.c ripper_dispatch_scan_event(parser, tEMBDOC); parser 11901 parse.c lex_goto_eol(parser); parser 11903 parse.c ripper_dispatch_scan_event(parser, tEMBDOC_END); parser 12022 parse.c if (rb_enc_isspace(c, parser->enc)) { parser 12055 parse.c enc = parser->enc; parser 12059 parse.c else if ((rb_enc_isalnum(c, parser->enc) || c == '_') && parser 12060 parse.c lex_p < lex_pend && is_identchar(lex_p, lex_pend, parser->enc)) { parser 12066 parse.c c = parser_tokadd_utf8(parser, &enc, 0, 0, 0); parser 12614 parse.c ripper_dispatch_scan_event(parser, tSP); parser 12634 parse.c if (rb_enc_isalnum(term, parser->enc) || !parser_isascii()) { parser 12821 parse.c parser->eofp = Qtrue; parser 12825 parse.c lex_goto_eol(parser); parser 12826 parse.c ripper_dispatch_scan_event(parser, k__END__); parser 12983 parse.c struct parser_params *parser = (struct parser_params*)p; parser 12987 parse.c parser->parser_yylval = lval; parser 12988 parse.c parser->parser_yylval->val = Qundef; parser 12990 parse.c t = parser_yylex(parser); parser 12992 parse.c if (!NIL_P(parser->delayed)) { parser 12993 parse.c ripper_dispatch_delayed_token(parser, t); parser 12997 parse.c ripper_dispatch_scan_event(parser, t); parser 13048 parse.c #define parser_warning(node, mesg) parser_warning(parser, node, mesg) parser 13055 parse.c #define parser_warn(node, mesg) parser_warn(parser, node, mesg) parser 13187 parse.c if (!literal_concat0(parser, head->nd_lit, tail->nd_lit)) { parser 13202 parse.c if (!literal_concat0(parser, head->nd_lit, tail->nd_lit)) parser 13321 parse.c return NEW_LIT(rb_enc_from_encoding(parser->enc)); parser 13843 parse.c if (!e_option_supplied(parser)) parser_warn(node, str); parser 13849 parse.c if (!e_option_supplied(parser)) parser_warning(node, str); parser 13893 parse.c warn_unless_e_option(parser, node, "integer literal in conditional range"); parser 13896 parse.c return cond0(parser, node); parser 13924 parse.c assign_in_cond(parser, node); parser 13935 parse.c warning_unless_e_option(parser, node, "regex literal in condition"); parser 13940 parse.c node->nd_1st = cond0(parser, node->nd_1st); parser 13941 parse.c node->nd_2nd = cond0(parser, node->nd_2nd); parser 13946 parse.c node->nd_beg = range_op(parser, node->nd_beg); parser 13947 parse.c node->nd_end = range_op(parser, node->nd_end); parser 13950 parse.c if (!e_option_supplied(parser)) { parser 13965 parse.c warn_unless_e_option(parser, node, "regex literal in condition"); parser 13981 parse.c return cond0(parser, node); parser 14011 parse.c no_blockarg(parser, node); parser 14030 parse.c no_blockarg(parser, node); parser 14266 parse.c else if (parser->enc == rb_usascii_encoding()) { parser 14287 parse.c reg_fragment_setenc_gen(parser, str, options); parser 14297 parse.c struct parser_params* parser; parser 14309 parse.c struct parser_params* parser = arg->parser; parser 14348 parse.c arg.parser = parser; parser 14409 parse.c struct parser_params *parser; parser 14413 parse.c Data_Get_Struct(vparser, struct parser_params, parser); parser 14441 parse.c struct parser_params *parser; parser 14445 parse.c Data_Get_Struct(vparser, struct parser_params, parser); parser 14994 parse.c parser->eofp = Qfalse; parser 14996 parse.c parser->parser_lex_strterm = 0; parser 14997 parse.c parser->parser_cond_stack = 0; parser 14998 parse.c parser->parser_cmdarg_stack = 0; parser 14999 parse.c parser->parser_class_nest = 0; parser 15000 parse.c parser->parser_paren_nest = 0; parser 15001 parse.c parser->parser_lpar_beg = 0; parser 15002 parse.c parser->parser_in_single = 0; parser 15003 parse.c parser->parser_in_def = 0; parser 15004 parse.c parser->parser_in_defined = 0; parser 15005 parse.c parser->parser_compile_for_eval = 0; parser 15006 parse.c parser->parser_cur_mid = 0; parser 15007 parse.c parser->parser_tokenbuf = NULL; parser 15008 parse.c parser->parser_tokidx = 0; parser 15009 parse.c parser->parser_toksiz = 0; parser 15010 parse.c parser->parser_heredoc_end = 0; parser 15011 parse.c parser->parser_command_start = Qtrue; parser 15012 parse.c parser->parser_deferred_nodes = 0; parser 15013 parse.c parser->parser_lex_pbeg = 0; parser 15014 parse.c parser->parser_lex_p = 0; parser 15015 parse.c parser->parser_lex_pend = 0; parser 15016 parse.c parser->parser_lvtbl = 0; parser 15017 parse.c parser->parser_ruby__end__seen = 0; parser 15018 parse.c parser->parser_ruby_sourcefile = 0; parser 15020 parse.c parser->is_ripper = 0; parser 15021 parse.c parser->parser_eval_tree_begin = 0; parser 15022 parse.c parser->parser_eval_tree = 0; parser 15024 parse.c parser->is_ripper = 1; parser 15025 parse.c parser->parser_ruby_sourcefile_string = Qnil; parser 15026 parse.c parser->delayed = Qnil; parser 15028 parse.c parser->result = Qnil; parser 15029 parse.c parser->parsing_thread = Qnil; parser 15030 parse.c parser->toplevel_p = Qtrue; parser 15033 parse.c parser->heap = NULL; parser 15035 parse.c parser->enc = rb_usascii_encoding(); parser 15122 parse.c struct parser_params *parser; parser 15124 parse.c Data_Get_Struct(vparser, struct parser_params, parser); parser 15137 parse.c struct parser_params *parser; parser 15139 parse.c Data_Get_Struct(vparser, struct parser_params, parser); parser 15140 parse.c return rb_enc_from_encoding(parser->enc); parser 15152 parse.c struct parser_params *parser; parser 15154 parse.c Data_Get_Struct(self, struct parser_params, parser); parser 15167 parse.c struct parser_params *parser; parser 15169 parse.c Data_Get_Struct(self, struct parser_params, parser); parser 15176 parse.c #define NEWHEAP() rb_node_newnode(NODE_ALLOCA, 0, (VALUE)parser->heap, 0) parser 15177 parse.c #define ADD2HEAP(n, c, p) ((parser->heap = (n))->u1.node = (p), \ parser 15206 parse.c if (ptr && (n = parser->heap) != NULL) { parser 15223 parse.c NODE **prev = &parser->heap, *n; parser 15277 parse.c return rb_funcall(parser->value, mid, 0); parser 15284 parse.c return rb_funcall(parser->value, mid, 1, a); parser 15292 parse.c return rb_funcall(parser->value, mid, 2, a, b); parser 15301 parse.c return rb_funcall(parser->value, mid, 3, a, b, c); parser 15311 parse.c return rb_funcall(parser->value, mid, 4, a, b, c, d); parser 15322 parse.c return rb_funcall(parser->value, mid, 5, a, b, c, d, e); parser 15439 parse.c rb_funcall(parser->value, rb_intern("compile_error"), 1, str); parser 15445 parse.c rb_funcall(parser->value, rb_intern("warn"), 1, STR_NEW2(fmt)); parser 15451 parse.c rb_funcall(parser->value, rb_intern("warn"), 2, parser 15459 parse.c rb_funcall(parser->value, rb_intern("warn"), 2, parser 15467 parse.c rb_funcall(parser->value, rb_intern("warning"), 1, STR_NEW2(fmt)); parser 15473 parse.c rb_funcall(parser->value, rb_intern("warning"), 2, parser 15511 parse.c struct parser_params *parser; parser 15514 parse.c Data_Get_Struct(self, struct parser_params, parser); parser 15517 parse.c parser->parser_lex_gets = ripper_lex_get_generic; parser 15521 parse.c parser->parser_lex_gets = lex_get_str; parser 15523 parse.c parser->parser_lex_input = src; parser 15524 parse.c parser->eofp = Qfalse; parser 15531 parse.c parser_initialize(parser); parser 15533 parse.c parser->parser_ruby_sourcefile_string = fname; parser 15534 parse.c parser->parser_ruby_sourcefile = RSTRING_PTR(fname); parser 15535 parse.c parser->parser_ruby_sourceline = NIL_P(lineno) ? 0 : NUM2INT(lineno) - 1; parser 15543 parse.c struct parser_params *parser; parser 15551 parse.c struct parser_params *parser; parser 15553 parse.c Data_Get_Struct(parser_v, struct parser_params, parser); parser 15554 parse.c parser_prepare(parser); parser 15555 parse.c ripper_yyparse((void*)parser); parser 15556 parse.c return parser->result; parser 15562 parse.c struct parser_params *parser; parser 15564 parse.c Data_Get_Struct(parser_v, struct parser_params, parser); parser 15565 parse.c parser->parsing_thread = Qnil; parser 15578 parse.c struct parser_params *parser; parser 15580 parse.c Data_Get_Struct(self, struct parser_params, parser); parser 15581 parse.c if (!ripper_initialized_p(parser)) { parser 15584 parse.c if (!NIL_P(parser->parsing_thread)) { parser 15585 parse.c if (parser->parsing_thread == rb_thread_current()) parser 15590 parse.c parser->parsing_thread = rb_thread_current(); parser 15593 parse.c return parser->result; parser 15606 parse.c struct parser_params *parser; parser 15609 parse.c Data_Get_Struct(self, struct parser_params, parser); parser 15610 parse.c if (!ripper_initialized_p(parser)) { parser 15613 parse.c if (NIL_P(parser->parsing_thread)) return Qnil; parser 15614 parse.c col = parser->tokp - parser->parser_lex_pbeg; parser 15628 parse.c struct parser_params *parser; parser 15630 parse.c Data_Get_Struct(self, struct parser_params, parser); parser 15631 parse.c if (!ripper_initialized_p(parser)) { parser 15634 parse.c if (NIL_P(parser->parsing_thread)) return Qnil; parser 15635 parse.c return INT2NUM(parser->parser_ruby_sourceline); parser 29 parse.y #define YYMALLOC(size) rb_parser_malloc(parser, size) parser 30 parse.y #define YYREALLOC(ptr, size) rb_parser_realloc(parser, ptr, size) parser 31 parse.y #define YYCALLOC(nelem, size) rb_parser_calloc(parser, nelem, size) parser 32 parse.y #define YYFREE(ptr) rb_parser_free(parser, ptr) parser 265 parse.y #define UTF8_ENC() (parser->utf8 ? parser->utf8 : \ parser 266 parse.y (parser->utf8 = rb_utf8_encoding())) parser 267 parse.y #define STR_NEW(p,n) rb_enc_str_new((p),(n),parser->enc) parser 268 parse.y #define STR_NEW0() rb_enc_str_new(0,0,parser->enc) parser 269 parse.y #define STR_NEW2(p) rb_enc_str_new((p),strlen(p),parser->enc) parser 270 parse.y #define STR_NEW3(p,n,e,func) parser_str_new((p),(n),(e),(func),parser->enc) parser 272 parse.y #define TOK_INTERN(mb) rb_intern3(tok(), toklen(), parser->enc) parser 282 parse.y #define yyerror(msg) parser_yyerror(parser, msg) parser 284 parse.y #define YYLEX_PARAM parser parser 286 parse.y #define lex_strterm (parser->parser_lex_strterm) parser 287 parse.y #define lex_state (parser->parser_lex_state) parser 288 parse.y #define cond_stack (parser->parser_cond_stack) parser 289 parse.y #define cmdarg_stack (parser->parser_cmdarg_stack) parser 290 parse.y #define class_nest (parser->parser_class_nest) parser 291 parse.y #define paren_nest (parser->parser_paren_nest) parser 292 parse.y #define lpar_beg (parser->parser_lpar_beg) parser 293 parse.y #define in_single (parser->parser_in_single) parser 294 parse.y #define in_def (parser->parser_in_def) parser 295 parse.y #define compile_for_eval (parser->parser_compile_for_eval) parser 296 parse.y #define cur_mid (parser->parser_cur_mid) parser 297 parse.y #define in_defined (parser->parser_in_defined) parser 298 parse.y #define tokenbuf (parser->parser_tokenbuf) parser 299 parse.y #define tokidx (parser->parser_tokidx) parser 300 parse.y #define toksiz (parser->parser_toksiz) parser 301 parse.y #define lex_input (parser->parser_lex_input) parser 302 parse.y #define lex_lastline (parser->parser_lex_lastline) parser 303 parse.y #define lex_nextline (parser->parser_lex_nextline) parser 304 parse.y #define lex_pbeg (parser->parser_lex_pbeg) parser 305 parse.y #define lex_p (parser->parser_lex_p) parser 306 parse.y #define lex_pend (parser->parser_lex_pend) parser 307 parse.y #define heredoc_end (parser->parser_heredoc_end) parser 308 parse.y #define command_start (parser->parser_command_start) parser 309 parse.y #define deferred_nodes (parser->parser_deferred_nodes) parser 310 parse.y #define lex_gets_ptr (parser->parser_lex_gets_ptr) parser 311 parse.y #define lex_gets (parser->parser_lex_gets) parser 312 parse.y #define lvtbl (parser->parser_lvtbl) parser 313 parse.y #define ruby__end__seen (parser->parser_ruby__end__seen) parser 314 parse.y #define ruby_sourceline (parser->parser_ruby_sourceline) parser 315 parse.y #define ruby_sourcefile (parser->parser_ruby_sourcefile) parser 316 parse.y #define yydebug (parser->parser_yydebug) parser 319 parse.y #define ruby_eval_tree (parser->parser_eval_tree) parser 320 parse.y #define ruby_eval_tree_begin (parser->parser_eval_tree_begin) parser 321 parse.y #define ruby_debug_lines (parser->debug_lines) parser 322 parse.y #define ruby_coverage (parser->coverage) parser 331 parse.y #define rb_node_newnode(type, a1, a2, a3) node_newnode(parser, type, a1, a2, a3) parser 334 parse.y #define cond(node) cond_gen(parser, node) parser 336 parse.y #define logop(type,node1,node2) logop_gen(parser, type, node1, node2) parser 344 parse.y #define value_expr(node) value_expr_gen(parser, (node) = remove_begin(node)) parser 345 parse.y #define void_expr0(node) void_expr_gen(parser, (node)) parser 348 parse.y #define void_stmts(node) void_stmts_gen(parser, node) parser 350 parse.y #define reduce_nodes(n) reduce_nodes_gen(parser,n) parser 352 parse.y #define block_dup_check(n1,n2) block_dup_check_gen(parser,n1,n2) parser 355 parse.y #define block_append(h,t) block_append_gen(parser,h,t) parser 357 parse.y #define list_append(l,i) list_append_gen(parser,l,i) parser 359 parse.y #define list_concat(h,t) list_concat_gen(parser,h,t) parser 361 parse.y #define arg_append(h,t) arg_append_gen(parser,h,t) parser 363 parse.y #define arg_concat(h,t) arg_concat_gen(parser,h,t) parser 365 parse.y #define literal_concat(h,t) literal_concat_gen(parser,h,t) parser 367 parse.y #define new_evstr(n) new_evstr_gen(parser,n) parser 369 parse.y #define evstr2dstr(n) evstr2dstr_gen(parser,n) parser 373 parse.y #define call_bin_op(recv,id,arg1) call_bin_op_gen(parser, recv,id,arg1) parser 375 parse.y #define call_uni_op(recv,id) call_uni_op_gen(parser, recv,id) parser 378 parse.y #define new_args(f,o,r,p,b) new_args_gen(parser, f,o,r,p,b) parser 380 parse.y #define shadowing_lvar(name) shadowing_lvar_gen(parser, name) parser 384 parse.y #define ret_args(node) ret_args_gen(parser, node) parser 387 parse.y #define new_yield(node) new_yield_gen(parser, node) parser 390 parse.y #define gettable(id) gettable_gen(parser,id) parser 392 parse.y #define assignable(id,node) assignable_gen(parser, id, node) parser 394 parse.y #define new_bv(id) new_bv_gen(parser, id) parser 396 parse.y #define aryset(node1,node2) aryset_gen(parser, node1, node2) parser 398 parse.y #define attrset(node,id) attrset_gen(parser, node, id) parser 401 parse.y #define rb_backref_error(n) rb_backref_error_gen(parser,n) parser 403 parse.y #define node_assign(node1, node2) node_assign_gen(parser, node1, node2) parser 406 parse.y #define match_op(node1,node2) match_op_gen(parser, node1, node2) parser 409 parse.y #define local_push(top) local_push_gen(parser,top) parser 411 parse.y #define local_pop() local_pop_gen(parser) parser 413 parse.y #define local_var(id) local_var_gen(parser, id); parser 415 parse.y #define arg_var(id) arg_var_gen(parser, id) parser 417 parse.y #define local_id(id) local_id_gen(parser, id) parser 419 parse.y #define local_tbl() local_tbl_gen(parser) parser 421 parse.y #define internal_id() internal_id_gen(parser) parser 424 parse.y #define dyna_push() dyna_push_gen(parser) parser 426 parse.y #define dyna_pop() dyna_pop_gen(parser) parser 428 parse.y #define dyna_in_block() dyna_in_block_gen(parser) parser 431 parse.y #define dvar_defined(id) dvar_defined_gen(parser, id) parser 433 parse.y #define dvar_curr(id) dvar_curr_gen(parser, id) parser 443 parse.y #define reg_compile(str,options) reg_compile_gen(parser, str, options) parser 445 parse.y #define reg_fragment_setenc(str,options) reg_fragment_setenc_gen(parser, str, options) parser 447 parse.y #define reg_fragment_check(str,options) reg_fragment_check_gen(parser, str, options) parser 449 parse.y #define reg_named_capture_assign(regexp,match) reg_named_capture_assign_gen(parser,regexp,match) parser 455 parse.y #define lvar_defined(id) lvar_defined_gen(parser, id) parser 493 parse.y #define dispatch0(n) ripper_dispatch0(parser, TOKEN_PASTE(ripper_id_, n)) parser 494 parse.y #define dispatch1(n,a) ripper_dispatch1(parser, TOKEN_PASTE(ripper_id_, n), a) parser 495 parse.y #define dispatch2(n,a,b) ripper_dispatch2(parser, TOKEN_PASTE(ripper_id_, n), a, b) parser 496 parse.y #define dispatch3(n,a,b,c) ripper_dispatch3(parser, TOKEN_PASTE(ripper_id_, n), a, b, c) parser 497 parse.y #define dispatch4(n,a,b,c,d) ripper_dispatch4(parser, TOKEN_PASTE(ripper_id_, n), a, b, c, d) parser 498 parse.y #define dispatch5(n,a,b,c,d,e) ripper_dispatch5(parser, TOKEN_PASTE(ripper_id_, n), a, b, c, d, e) parser 557 parse.y # define rb_warn0(fmt) ripper_warn0(parser, fmt) parser 558 parse.y # define rb_warnI(fmt,a) ripper_warnI(parser, fmt, a) parser 559 parse.y # define rb_warnS(fmt,a) ripper_warnS(parser, fmt, a) parser 560 parse.y # define rb_warning0(fmt) ripper_warning0(parser, fmt) parser 561 parse.y # define rb_warningS(fmt,a) ripper_warningS(parser, fmt, a) parser 575 parse.y # define PARSER_ARG parser, parser 577 parse.y # define compile_error parser->nerr++,rb_compile_error parser 597 parse.y %parse-param {struct parser_params *parser} parser 3025 parse.y if (RTEST(ruby_verbose)) token_info_push(parser, "begin"); parser 3032 parse.y if (RTEST(ruby_verbose)) token_info_push(parser, "if"); parser 3039 parse.y if (RTEST(ruby_verbose)) token_info_push(parser, "unless"); parser 3046 parse.y if (RTEST(ruby_verbose)) token_info_push(parser, "while"); parser 3053 parse.y if (RTEST(ruby_verbose)) token_info_push(parser, "until"); parser 3060 parse.y if (RTEST(ruby_verbose)) token_info_push(parser, "case"); parser 3067 parse.y if (RTEST(ruby_verbose)) token_info_push(parser, "for"); parser 3074 parse.y if (RTEST(ruby_verbose)) token_info_push(parser, "class"); parser 3081 parse.y if (RTEST(ruby_verbose)) token_info_push(parser, "module"); parser 3088 parse.y if (RTEST(ruby_verbose)) token_info_push(parser, "def"); parser 3095 parse.y if (RTEST(ruby_verbose)) token_info_pop(parser, "end"); /* POP */ parser 4742 parse.y # define yylval (*((YYSTYPE*)(parser->parser_yylval))) parser 4751 parse.y # define nextc() parser_nextc(parser) parser 4752 parse.y # define pushback(c) parser_pushback(parser, c) parser 4753 parse.y # define newtok() parser_newtok(parser) parser 4754 parse.y # define tokspace(n) parser_tokspace(parser, n) parser 4755 parse.y # define tokadd(c) parser_tokadd(parser, c) parser 4756 parse.y # define tok_hex(numlen) parser_tok_hex(parser, numlen) parser 4757 parse.y # define read_escape(flags,e) parser_read_escape(parser, flags, e) parser 4758 parse.y # define tokadd_escape(e) parser_tokadd_escape(parser, e) parser 4759 parse.y # define regx_options() parser_regx_options(parser) parser 4760 parse.y # define tokadd_string(f,t,p,n,e) parser_tokadd_string(parser,f,t,p,n,e) parser 4761 parse.y # define parse_string(n) parser_parse_string(parser,n) parser 4762 parse.y # define tokaddmbc(c, enc) parser_tokaddmbc(parser, c, enc) parser 4763 parse.y # define here_document(n) parser_here_document(parser,n) parser 4764 parse.y # define heredoc_identifier() parser_heredoc_identifier(parser) parser 4765 parse.y # define heredoc_restore(n) parser_heredoc_restore(parser,n) parser 4766 parse.y # define whole_match_p(e,l,i) parser_whole_match_p(parser,e,l,i) parser 4798 parse.y if (lex_p < parser->tokp) rb_raise(rb_eRuntimeError, "lex_p < tokp"); parser 4799 parse.y if (lex_p == parser->tokp) return; parser 4800 parse.y str = STR_NEW(parser->tokp, lex_p - parser->tokp); parser 4801 parse.y yylval.val = ripper_dispatch1(parser, ripper_token2eventid(t), str); parser 4802 parse.y ripper_flush(parser); parser 4809 parse.y const char *saved_tokp = parser->tokp; parser 4811 parse.y ruby_sourceline = parser->delayed_line; parser 4812 parse.y parser->tokp = lex_pbeg + parser->delayed_col; parser 4813 parse.y yylval.val = ripper_dispatch1(parser, ripper_token2eventid(t), parser->delayed); parser 4814 parse.y parser->delayed = Qnil; parser 4816 parse.y parser->tokp = saved_tokp; parser 4835 parse.y #define parser_encoding_name() (parser->enc->name) parser 4836 parse.y #define parser_mbclen() mbclen((lex_p-1),lex_pend,parser->enc) parser 4837 parse.y #define parser_precise_mbclen() rb_enc_precise_mbclen((lex_p-1),lex_pend,parser->enc) parser 4839 parse.y #define parser_is_identchar() (!parser->eofp && is_identchar((lex_p-1),lex_pend,parser->enc)) parser 4879 parse.y ptinfo->column = token_info_get_column(parser, token); parser 4880 parse.y ptinfo->nonspc = token_info_has_nonspaces(parser, token); parser 4881 parse.y ptinfo->next = parser->parser_token_info; parser 4883 parse.y parser->parser_token_info = ptinfo; parser 4890 parse.y token_info *ptinfo = parser->parser_token_info; parser 4893 parse.y parser->parser_token_info = ptinfo->next; parser 4894 parse.y if (token_info_get_column(parser, token) == ptinfo->column) { /* OK */ parser 4901 parse.y if (token_info_has_nonspaces(parser, token) || ptinfo->nonspc) { /* SKIP */ parser 5025 parse.y struct parser_params *parser = (struct parser_params *)arg; parser 5037 parse.y if (!e_option_supplied(parser)) { parser 5042 parse.y parser_prepare(parser); parser 5044 parse.y n = yyparse((void*)parser); parser 5052 parse.y if (parser->nerr) { parser 5078 parse.y return (NODE *)ruby_suppress_tracing(yycompile0, (VALUE)parser, Qtrue); parser 5104 parse.y VALUE line = (*parser->parser_lex_gets)(parser, parser->parser_lex_input); parser 5128 parse.y struct parser_params *parser; parser 5132 parse.y Data_Get_Struct(vparser, struct parser_params, parser); parser 5139 parse.y node = yycompile(parser, f, line); parser 5174 parse.y struct parser_params *parser; parser 5178 parse.y Data_Get_Struct(vparser, struct parser_params, parser); parser 5184 parse.y node = yycompile(parser, f, start); parser 5226 parse.y #define lex_goto_eol(parser) (parser->parser_lex_p = parser->parser_lex_pend) parser 5238 parse.y if (parser->eofp) parser 5241 parse.y if (!lex_input || NIL_P(v = lex_getline(parser))) { parser 5242 parse.y parser->eofp = Qtrue; parser 5243 parse.y lex_goto_eol(parser); parser 5249 parse.y if (parser->tokp < lex_pend) { parser 5250 parse.y if (NIL_P(parser->delayed)) { parser 5251 parse.y parser->delayed = rb_str_buf_new(1024); parser 5252 parse.y rb_str_buf_cat(parser->delayed, parser 5253 parse.y parser->tokp, lex_pend - parser->tokp); parser 5254 parse.y parser->delayed_line = ruby_sourceline; parser 5255 parse.y parser->delayed_col = parser->tokp - lex_pbeg; parser 5258 parse.y rb_str_buf_cat(parser->delayed, parser 5259 parse.y parser->tokp, lex_pend - parser->tokp); parser 5268 parse.y parser->line_count++; parser 5272 parse.y ripper_flush(parser); parser 5677 parse.y #define tokadd_mbchar(c) parser_tokadd_mbchar(parser, c) parser 5744 parse.y parser_tokadd_utf8(parser, &enc, 1, parser 5816 parse.y rb_encoding *enc = parser->enc; parser 5854 parse.y if (parser->eofp) parser 5859 parse.y if (parser->eofp) parser 5919 parse.y ripper_dispatch_scan_event(parser, tHEREDOC_BEG); parser 5922 parse.y lex_goto_eol(parser); parser 5929 parse.y ripper_flush(parser); parser 5940 parse.y if (!NIL_P(parser->delayed)) parser 5941 parse.y ripper_dispatch_delayed_token(parser, tSTRING_CONTENT); parser 5942 parse.y lex_goto_eol(parser); parser 5943 parse.y ripper_dispatch_scan_event(parser, tHEREDOC_END); parser 5955 parse.y ripper_flush(parser); parser 6020 parse.y lex_goto_eol(parser); parser 6029 parse.y rb_encoding *enc = parser->enc; parser 6045 parse.y if (parser->eofp) goto error; parser 6079 parse.y #define arg_ambiguous() arg_ambiguous_gen(parser) parser 6123 parse.y parser->enc = enc; parser 6130 parse.y if (parser->line_count != (parser->has_shebang ? 2 : 1)) return 0; parser 6145 parse.y if (!comment_at_top(parser)) { parser 6150 parse.y parser_set_encode(parser, val); parser 6275 parse.y n = (*p->length)(parser, vbeg, n); parser 6278 parse.y (*p->func)(parser, s, RSTRING_PTR(val)); parser 6328 parse.y s = rb_str_new(beg, parser_encode_length(parser, beg, str - beg)); parser 6329 parse.y parser_set_encode(parser, RSTRING_PTR(s)); parser 6339 parse.y if (peek('!')) parser->has_shebang = 1; parser 6345 parse.y parser->enc = rb_utf8_encoding(); parser 6355 parse.y parser->enc = rb_enc_get(lex_lastline); parser 6419 parse.y ripper_dispatch_scan_event(parser, tSP); parser 6425 parse.y if (!parser_magic_comment(parser, lex_p, lex_pend - lex_p)) { parser 6426 parse.y if (comment_at_top(parser)) { parser 6427 parse.y set_file_encoding(parser, lex_p, lex_pend); parser 6432 parse.y ripper_dispatch_scan_event(parser, tCOMMENT); parser 6445 parse.y ripper_dispatch_scan_event(parser, tIGNORED_NL); parser 6470 parse.y lex_goto_eol(parser); parser 6473 parse.y parser->tokp = lex_p; parser 6547 parse.y lex_goto_eol(parser); parser 6548 parse.y ripper_dispatch_scan_event(parser, tEMBDOC_BEG); parser 6551 parse.y lex_goto_eol(parser); parser 6554 parse.y ripper_dispatch_scan_event(parser, tEMBDOC); parser 6569 parse.y lex_goto_eol(parser); parser 6571 parse.y ripper_dispatch_scan_event(parser, tEMBDOC_END); parser 6690 parse.y if (rb_enc_isspace(c, parser->enc)) { parser 6723 parse.y enc = parser->enc; parser 6727 parse.y else if ((rb_enc_isalnum(c, parser->enc) || c == '_') && parser 6728 parse.y lex_p < lex_pend && is_identchar(lex_p, lex_pend, parser->enc)) { parser 6734 parse.y c = parser_tokadd_utf8(parser, &enc, 0, 0, 0); parser 7282 parse.y ripper_dispatch_scan_event(parser, tSP); parser 7302 parse.y if (rb_enc_isalnum(term, parser->enc) || !parser_isascii()) { parser 7489 parse.y parser->eofp = Qtrue; parser 7493 parse.y lex_goto_eol(parser); parser 7494 parse.y ripper_dispatch_scan_event(parser, k__END__); parser 7651 parse.y struct parser_params *parser = (struct parser_params*)p; parser 7655 parse.y parser->parser_yylval = lval; parser 7656 parse.y parser->parser_yylval->val = Qundef; parser 7658 parse.y t = parser_yylex(parser); parser 7660 parse.y if (!NIL_P(parser->delayed)) { parser 7661 parse.y ripper_dispatch_delayed_token(parser, t); parser 7665 parse.y ripper_dispatch_scan_event(parser, t); parser 7716 parse.y #define parser_warning(node, mesg) parser_warning(parser, node, mesg) parser 7723 parse.y #define parser_warn(node, mesg) parser_warn(parser, node, mesg) parser 7855 parse.y if (!literal_concat0(parser, head->nd_lit, tail->nd_lit)) { parser 7870 parse.y if (!literal_concat0(parser, head->nd_lit, tail->nd_lit)) parser 7989 parse.y return NEW_LIT(rb_enc_from_encoding(parser->enc)); parser 8511 parse.y if (!e_option_supplied(parser)) parser_warn(node, str); parser 8517 parse.y if (!e_option_supplied(parser)) parser_warning(node, str); parser 8561 parse.y warn_unless_e_option(parser, node, "integer literal in conditional range"); parser 8564 parse.y return cond0(parser, node); parser 8592 parse.y assign_in_cond(parser, node); parser 8603 parse.y warning_unless_e_option(parser, node, "regex literal in condition"); parser 8608 parse.y node->nd_1st = cond0(parser, node->nd_1st); parser 8609 parse.y node->nd_2nd = cond0(parser, node->nd_2nd); parser 8614 parse.y node->nd_beg = range_op(parser, node->nd_beg); parser 8615 parse.y node->nd_end = range_op(parser, node->nd_end); parser 8618 parse.y if (!e_option_supplied(parser)) { parser 8633 parse.y warn_unless_e_option(parser, node, "regex literal in condition"); parser 8649 parse.y return cond0(parser, node); parser 8679 parse.y no_blockarg(parser, node); parser 8698 parse.y no_blockarg(parser, node); parser 8934 parse.y else if (parser->enc == rb_usascii_encoding()) { parser 8955 parse.y reg_fragment_setenc_gen(parser, str, options); parser 8965 parse.y struct parser_params* parser; parser 8977 parse.y struct parser_params* parser = arg->parser; parser 9016 parse.y arg.parser = parser; parser 9077 parse.y struct parser_params *parser; parser 9081 parse.y Data_Get_Struct(vparser, struct parser_params, parser); parser 9109 parse.y struct parser_params *parser; parser 9113 parse.y Data_Get_Struct(vparser, struct parser_params, parser); parser 9662 parse.y parser->eofp = Qfalse; parser 9664 parse.y parser->parser_lex_strterm = 0; parser 9665 parse.y parser->parser_cond_stack = 0; parser 9666 parse.y parser->parser_cmdarg_stack = 0; parser 9667 parse.y parser->parser_class_nest = 0; parser 9668 parse.y parser->parser_paren_nest = 0; parser 9669 parse.y parser->parser_lpar_beg = 0; parser 9670 parse.y parser->parser_in_single = 0; parser 9671 parse.y parser->parser_in_def = 0; parser 9672 parse.y parser->parser_in_defined = 0; parser 9673 parse.y parser->parser_compile_for_eval = 0; parser 9674 parse.y parser->parser_cur_mid = 0; parser 9675 parse.y parser->parser_tokenbuf = NULL; parser 9676 parse.y parser->parser_tokidx = 0; parser 9677 parse.y parser->parser_toksiz = 0; parser 9678 parse.y parser->parser_heredoc_end = 0; parser 9679 parse.y parser->parser_command_start = Qtrue; parser 9680 parse.y parser->parser_deferred_nodes = 0; parser 9681 parse.y parser->parser_lex_pbeg = 0; parser 9682 parse.y parser->parser_lex_p = 0; parser 9683 parse.y parser->parser_lex_pend = 0; parser 9684 parse.y parser->parser_lvtbl = 0; parser 9685 parse.y parser->parser_ruby__end__seen = 0; parser 9686 parse.y parser->parser_ruby_sourcefile = 0; parser 9688 parse.y parser->is_ripper = 0; parser 9689 parse.y parser->parser_eval_tree_begin = 0; parser 9690 parse.y parser->parser_eval_tree = 0; parser 9692 parse.y parser->is_ripper = 1; parser 9693 parse.y parser->parser_ruby_sourcefile_string = Qnil; parser 9694 parse.y parser->delayed = Qnil; parser 9696 parse.y parser->result = Qnil; parser 9697 parse.y parser->parsing_thread = Qnil; parser 9698 parse.y parser->toplevel_p = Qtrue; parser 9701 parse.y parser->heap = NULL; parser 9703 parse.y parser->enc = rb_usascii_encoding(); parser 9790 parse.y struct parser_params *parser; parser 9792 parse.y Data_Get_Struct(vparser, struct parser_params, parser); parser 9805 parse.y struct parser_params *parser; parser 9807 parse.y Data_Get_Struct(vparser, struct parser_params, parser); parser 9808 parse.y return rb_enc_from_encoding(parser->enc); parser 9820 parse.y struct parser_params *parser; parser 9822 parse.y Data_Get_Struct(self, struct parser_params, parser); parser 9835 parse.y struct parser_params *parser; parser 9837 parse.y Data_Get_Struct(self, struct parser_params, parser); parser 9844 parse.y #define NEWHEAP() rb_node_newnode(NODE_ALLOCA, 0, (VALUE)parser->heap, 0) parser 9845 parse.y #define ADD2HEAP(n, c, p) ((parser->heap = (n))->u1.node = (p), \ parser 9874 parse.y if (ptr && (n = parser->heap) != NULL) { parser 9891 parse.y NODE **prev = &parser->heap, *n; parser 9945 parse.y return rb_funcall(parser->value, mid, 0); parser 9952 parse.y return rb_funcall(parser->value, mid, 1, a); parser 9960 parse.y return rb_funcall(parser->value, mid, 2, a, b); parser 9969 parse.y return rb_funcall(parser->value, mid, 3, a, b, c); parser 9979 parse.y return rb_funcall(parser->value, mid, 4, a, b, c, d); parser 9990 parse.y return rb_funcall(parser->value, mid, 5, a, b, c, d, e); parser 10107 parse.y rb_funcall(parser->value, rb_intern("compile_error"), 1, str); parser 10113 parse.y rb_funcall(parser->value, rb_intern("warn"), 1, STR_NEW2(fmt)); parser 10119 parse.y rb_funcall(parser->value, rb_intern("warn"), 2, parser 10127 parse.y rb_funcall(parser->value, rb_intern("warn"), 2, parser 10135 parse.y rb_funcall(parser->value, rb_intern("warning"), 1, STR_NEW2(fmt)); parser 10141 parse.y rb_funcall(parser->value, rb_intern("warning"), 2, parser 10179 parse.y struct parser_params *parser; parser 10182 parse.y Data_Get_Struct(self, struct parser_params, parser); parser 10185 parse.y parser->parser_lex_gets = ripper_lex_get_generic; parser 10189 parse.y parser->parser_lex_gets = lex_get_str; parser 10191 parse.y parser->parser_lex_input = src; parser 10192 parse.y parser->eofp = Qfalse; parser 10199 parse.y parser_initialize(parser); parser 10201 parse.y parser->parser_ruby_sourcefile_string = fname; parser 10202 parse.y parser->parser_ruby_sourcefile = RSTRING_PTR(fname); parser 10203 parse.y parser->parser_ruby_sourceline = NIL_P(lineno) ? 0 : NUM2INT(lineno) - 1; parser 10211 parse.y struct parser_params *parser; parser 10219 parse.y struct parser_params *parser; parser 10221 parse.y Data_Get_Struct(parser_v, struct parser_params, parser); parser 10222 parse.y parser_prepare(parser); parser 10223 parse.y ripper_yyparse((void*)parser); parser 10224 parse.y return parser->result; parser 10230 parse.y struct parser_params *parser; parser 10232 parse.y Data_Get_Struct(parser_v, struct parser_params, parser); parser 10233 parse.y parser->parsing_thread = Qnil; parser 10246 parse.y struct parser_params *parser; parser 10248 parse.y Data_Get_Struct(self, struct parser_params, parser); parser 10249 parse.y if (!ripper_initialized_p(parser)) { parser 10252 parse.y if (!NIL_P(parser->parsing_thread)) { parser 10253 parse.y if (parser->parsing_thread == rb_thread_current()) parser 10258 parse.y parser->parsing_thread = rb_thread_current(); parser 10261 parse.y return parser->result; parser 10274 parse.y struct parser_params *parser; parser 10277 parse.y Data_Get_Struct(self, struct parser_params, parser); parser 10278 parse.y if (!ripper_initialized_p(parser)) { parser 10281 parse.y if (NIL_P(parser->parsing_thread)) return Qnil; parser 10282 parse.y col = parser->tokp - parser->parser_lex_pbeg; parser 10296 parse.y struct parser_params *parser; parser 10298 parse.y Data_Get_Struct(self, struct parser_params, parser); parser 10299 parse.y if (!ripper_initialized_p(parser)) { parser 10302 parse.y if (NIL_P(parser->parsing_thread)) return Qnil; parser 10303 parse.y return INT2NUM(parser->parser_ruby_sourceline); parser 1199 ruby.c VALUE parser; parser 1280 ruby.c parser = rb_parser_new(); parser 1281 ruby.c if (opt->yydebug) rb_parser_set_yydebug(parser, Qtrue); parser 1345 ruby.c tree = rb_parser_compile_string(parser, opt->script, opt->e_script, 1); parser 1354 ruby.c tree = load_file(parser, opt->script, 1, opt); parser 1384 ruby.c tree = rb_parser_append_print(parser, tree); parser 1389 ruby.c tree = rb_parser_while_loop(parser, tree, opt->do_line, opt->do_split); parser 1414 ruby.c VALUE parser; parser 1425 ruby.c VALUE parser = argp->parser; parser 1567 ruby.c tree = (NODE *)rb_parser_compile_file(parser, fname, f, line_start); parser 1568 ruby.c rb_funcall(f, set_encoding, 1, rb_parser_encoding(parser)); parser 1569 ruby.c if (script && rb_parser_end_seen_p(parser)) { parser 1588 ruby.c arg.parser = parser;