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;