Ruby
1.9.3p551(2014-11-13revision48407)
|
#include "ruby/ruby.h"
#include "ruby/st.h"
#include "ruby/encoding.h"
#include "internal.h"
#include "node.h"
#include "parse.h"
#include "id.h"
#include "regenc.h"
#include <stdio.h>
#include <errno.h>
#include <ctype.h>
#include "id.c"
#include "ruby/regex.h"
#include "ruby/util.h"
#include "lex.c"
Go to the source code of this file.
Data Structures | |
struct | vtable |
struct | local_vars |
struct | token_info |
struct | parser_params |
union | yyalloc |
struct | magic_comment |
struct | reg_named_capture_assign_t |
struct | symbols |
Typedefs | |
typedef VALUE | stack_type |
typedef struct token_info | token_info |
typedef unsigned char | yytype_uint8 |
typedef short int | yytype_int8 |
typedef unsigned short int | yytype_uint16 |
typedef short int | yytype_int16 |
typedef long(* | rb_magic_comment_length_t )(struct parser_params *parser, const char *name, long len) |
typedef void(* | rb_magic_comment_setter_t )(struct parser_params *parser, const char *name, const char *val) |
Definition at line 16658 of file ripper.c.
Referenced by rb_parser_calloc(), rb_parser_malloc(), and rb_parser_realloc().
#define ambiguous_operator | ( | op, | |
syn | |||
) |
#define arg_ambiguous | ( | ) | (arg_ambiguous_gen(parser), 1) |
Definition at line 12640 of file ripper.c.
Referenced by arg_ambiguous_gen(), and parser_yylex().
#define arg_append | ( | h, | |
t | |||
) | arg_append_gen(parser,(h),(t)) |
Definition at line 419 of file ripper.c.
Referenced by arg_append_gen(), node_assign_gen(), and switch().
#define arg_concat | ( | h, | |
t | |||
) | arg_concat_gen(parser,(h),(t)) |
Definition at line 421 of file ripper.c.
Referenced by arg_concat_gen(), and switch().
#define arg_var | ( | id | ) | arg_var_gen(parser, (id)) |
#define aryset | ( | node1, | |
node2 | |||
) | aryset_gen(parser, (node1), (node2)) |
#define assignable | ( | id, | |
node | |||
) | assignable_gen(parser, (id), (node)) |
Definition at line 449 of file ripper.c.
Referenced by reg_named_capture_assign_iter(), and switch().
#define assignable_result | ( | x | ) | (x) |
Referenced by if().
#define attrset | ( | node, | |
id | |||
) | attrset_gen(parser, (node), (id)) |
#define BITSTACK_LEXPOP | ( | stack | ) | ((stack) = ((stack) >> 1) | ((stack) & 1)) |
#define block_append | ( | h, | |
t | |||
) | block_append_gen(parser,(h),(t)) |
Definition at line 413 of file ripper.c.
Referenced by rb_parser_append_print(), rb_parser_while_loop(), reg_named_capture_assign_gen(), reg_named_capture_assign_iter(), and switch().
#define block_dup_check | ( | n1, | |
n2 | |||
) | block_dup_check_gen(parser,(n1),(n2)) |
#define call_bin_op | ( | recv, | |
id, | |||
arg1 | |||
) | call_bin_op_gen(parser, (recv),(id),(arg1)) |
#define call_uni_op | ( | recv, | |
id | |||
) | call_uni_op_gen(parser, (recv),(id)) |
#define calloc YYCALLOC |
Definition at line 96 of file ripper.c.
Referenced by compat_init_setproctitle(), opendir_internal(), rb_w32_cmdvector(), and vm_xcalloc().
#define CMDARG_LEXPOP | ( | ) | BITSTACK_LEXPOP(cmdarg_stack) |
Definition at line 148 of file ripper.c.
Referenced by parser_yylex().
#define CMDARG_P | ( | ) | BITSTACK_SET_P(cmdarg_stack) |
Definition at line 149 of file ripper.c.
Referenced by parser_yylex().
#define CMDARG_POP | ( | ) | BITSTACK_POP(cmdarg_stack) |
#define CMDARG_PUSH | ( | n | ) | BITSTACK_PUSH(cmdarg_stack, (n)) |
Definition at line 146 of file ripper.c.
Referenced by parser_yylex(), and switch().
#define cmdarg_stack (parser->parser_cmdarg_stack) |
Definition at line 342 of file ripper.c.
Referenced by local_pop_gen(), local_push_gen(), and switch().
#define command_start (parser->parser_command_start) |
Definition at line 361 of file ripper.c.
Referenced by parser_peek_variable_name(), parser_yylex(), and switch().
#define compile_error parser->nerr++,rb_compile_error_with_enc |
Definition at line 650 of file ripper.c.
Referenced by block_dup_check_gen(), gettable_gen(), literal_concat0(), new_bv_gen(), no_blockarg(), parser_here_document(), parser_heredoc_identifier(), parser_parse_string(), parser_regx_options(), parser_tokadd_mbchar(), parser_yyerror(), parser_yylex(), rb_backref_error_gen(), reg_compile_gen(), reg_fragment_check_gen(), reg_fragment_setenc_gen(), and switch().
#define compile_for_eval (parser->parser_compile_for_eval) |
Definition at line 348 of file ripper.c.
Referenced by parser_compile_string(), rb_parser_compile_file(), switch(), and yycompile0().
Definition at line 392 of file ripper.c.
Referenced by switch(), and value_expr_gen().
#define COND_LEXPOP | ( | ) | BITSTACK_LEXPOP(cond_stack) |
Definition at line 143 of file ripper.c.
Referenced by parser_yylex().
#define COND_P | ( | ) | BITSTACK_SET_P(cond_stack) |
Definition at line 144 of file ripper.c.
Referenced by parser_yylex().
#define COND_POP | ( | ) | BITSTACK_POP(cond_stack) |
#define COND_PUSH | ( | n | ) | BITSTACK_PUSH(cond_stack, (n)) |
Definition at line 141 of file ripper.c.
Referenced by parser_yylex(), and switch().
#define cond_stack (parser->parser_cond_stack) |
#define cur_mid (parser->parser_cur_mid) |
fixup_nodes & deferred_nodes (parser->parser_deferred_nodes) |
Definition at line 362 of file ripper.c.
Referenced by switch(), and yycompile0().
#define dispatch_heredoc_end | ( | ) | ((void)0) |
Definition at line 12525 of file ripper.c.
Referenced by parser_here_document().
#define dvar_curr | ( | id | ) | dvar_curr_gen(parser, (id)) |
Definition at line 525 of file ripper.c.
Referenced by if(), and shadowing_lvar_gen().
#define dvar_defined | ( | id | ) | dvar_defined_gen(parser, (id), 0) |
Definition at line 522 of file ripper.c.
Referenced by gettable_gen(), if(), and reg_named_capture_assign_iter().
#define dvar_defined_get | ( | id | ) | dvar_defined_gen(parser, (id), 1) |
Definition at line 523 of file ripper.c.
Referenced by lvar_defined_gen(), and shadowing_lvar_gen().
#define DVARS_INHERIT ((void*)1) |
Definition at line 166 of file ripper.c.
Referenced by dvar_defined_gen(), local_id_gen(), and local_push_gen().
#define DVARS_TOPSCOPE NULL |
Definition at line 167 of file ripper.c.
Referenced by dyna_in_block_gen(), and local_push_gen().
#define dyna_in_block | ( | ) | dyna_in_block_gen(parser) |
Definition at line 519 of file ripper.c.
Referenced by gettable_gen(), if(), lvar_defined_gen(), shadowing_lvar_gen(), and switch().
#define dyna_pop | ( | node | ) | dyna_pop_gen(parser, (node)) |
#define dyna_push | ( | ) | dyna_push_gen(parser) |
Definition at line 520 of file ripper.c.
Referenced by if(), and new_bv_gen().
#define ENC_SINGLE | ( | cr | ) | ((cr)==ENC_CODERANGE_7BIT) |
Definition at line 333 of file ripper.c.
Referenced by parser_yylex().
#define ESCAPE_CONTROL 1 |
Definition at line 11909 of file ripper.c.
Referenced by parser_read_escape(), and parser_tokadd_escape().
#define ESCAPE_META 2 |
Definition at line 11910 of file ripper.c.
Referenced by parser_read_escape(), and parser_tokadd_escape().
#define evstr2dstr | ( | n | ) | evstr2dstr_gen(parser,(n)) |
Definition at line 12293 of file ripper.c.
Referenced by parser_here_document(), and parser_parse_string().
#define formal_argument | ( | id | ) | formal_argument_gen(parser, (id)) |
#define gettable | ( | id | ) | gettable_gen(parser,(id)) |
Definition at line 447 of file ripper.c.
Referenced by reg_named_capture_assign_gen(), reg_named_capture_assign_iter(), and switch().
Definition at line 16656 of file ripper.c.
Referenced by rb_parser_calloc(), rb_parser_malloc(), and rb_parser_realloc().
#define here_document | ( | n | ) | parser_here_document(parser,(n)) |
Definition at line 11196 of file ripper.c.
Referenced by parser_yylex().
#define heredoc_end (parser->parser_heredoc_end) |
Definition at line 360 of file ripper.c.
Referenced by parser_heredoc_restore(), and parser_nextc().
#define heredoc_identifier | ( | ) | parser_heredoc_identifier(parser) |
Definition at line 11197 of file ripper.c.
Referenced by parser_yylex().
#define heredoc_restore | ( | n | ) | parser_heredoc_restore(parser,(n)) |
Definition at line 11198 of file ripper.c.
Referenced by parser_here_document().
#define in_def (parser->parser_in_def) |
#define in_defined (parser->parser_in_defined) |
#define in_single (parser->parser_in_single) |
#define internal_id | ( | ) | internal_id_gen(parser) |
#define IS_ARG | ( | ) | (lex_state == EXPR_ARG || lex_state == EXPR_CMDARG) |
Definition at line 12967 of file ripper.c.
Referenced by parser_yylex().
#define is_asgn_or_id | ( | id | ) |
Definition at line 114 of file ripper.c.
Referenced by switch().
#define is_attrset_id | ( | id | ) | (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_ATTRSET) |
Definition at line 109 of file ripper.c.
Referenced by rb_id2str(), and rb_intern3().
#define IS_BEG | ( | ) | (lex_state == EXPR_BEG || lex_state == EXPR_MID || lex_state == EXPR_VALUE || lex_state == EXPR_CLASS) |
Definition at line 12969 of file ripper.c.
Referenced by parser_yylex().
#define is_class_id | ( | id | ) | (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_CLASS) |
Definition at line 111 of file ripper.c.
Referenced by gettable_gen(), and rb_is_class_id().
#define is_const_id | ( | id | ) | (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_CONST) |
Definition at line 110 of file ripper.c.
Referenced by gettable_gen(), and rb_is_const_id().
#define IS_END | ( | ) | (lex_state == EXPR_END || lex_state == EXPR_ENDARG || lex_state == EXPR_ENDFN) |
Definition at line 12968 of file ripper.c.
Referenced by parser_yylex().
#define is_global_id | ( | id | ) | (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_GLOBAL) |
Definition at line 107 of file ripper.c.
Referenced by gettable_gen().
Definition at line 11295 of file ripper.c.
Referenced by is_special_global_name(), parser_yylex(), rb_enc_symname2_p(), and rb_intern3().
#define is_instance_id | ( | id | ) | (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_INSTANCE) |
Definition at line 108 of file ripper.c.
Referenced by gettable_gen(), and rb_is_instance_id().
#define is_junk_id | ( | id | ) | (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_JUNK) |
Definition at line 112 of file ripper.c.
Referenced by rb_is_junk_id().
Definition at line 12971 of file ripper.c.
Referenced by parser_yylex().
Definition at line 12972 of file ripper.c.
Referenced by parser_yylex().
#define is_local_id | ( | id | ) | (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_LOCAL) |
Definition at line 106 of file ripper.c.
Referenced by formal_argument_gen(), gettable_gen(), new_bv_gen(), parser_yylex(), rb_id2str(), rb_is_local_id(), and switch().
#define is_notop_id | ( | id | ) | ((id)>tLAST_TOKEN) |
Definition at line 12970 of file ripper.c.
Referenced by parser_yylex().
Definition at line 11707 of file ripper.c.
Referenced by parser_yylex().
#define lex_gets (parser->parser_lex_gets) |
Definition at line 364 of file ripper.c.
Referenced by parser_compile_string(), and rb_parser_compile_file().
#define lex_gets_ptr (parser->parser_lex_gets_ptr) |
Definition at line 363 of file ripper.c.
Referenced by lex_get_str(), and parser_compile_string().
Definition at line 11706 of file ripper.c.
Referenced by parser_here_document(), parser_heredoc_identifier(), parser_nextc(), and parser_yylex().
#define lex_input (parser->parser_lex_input) |
Definition at line 354 of file ripper.c.
Referenced by parser_compile_string(), parser_nextc(), and rb_parser_compile_file().
#define lex_lastline (parser->parser_lex_lastline) |
Definition at line 355 of file ripper.c.
Referenced by parser_here_document(), parser_heredoc_identifier(), parser_heredoc_restore(), parser_nextc(), parser_prepare(), parser_yyerror(), parser_yylex(), and yycompile0().
#define lex_nextline (parser->parser_lex_nextline) |
Definition at line 356 of file ripper.c.
Referenced by parser_nextc(), parser_yylex(), and yycompile0().
#define lex_p (parser->parser_lex_p) |
Definition at line 358 of file ripper.c.
Referenced by comment_at_top(), parser_compile_string(), parser_here_document(), parser_heredoc_identifier(), parser_heredoc_restore(), parser_nextc(), parser_peek_variable_name(), parser_prepare(), parser_pushback(), parser_read_escape(), parser_tok_hex(), parser_tokadd_escape(), parser_tokadd_mbchar(), parser_tokadd_string(), parser_tokadd_utf8(), parser_yyerror(), parser_yylex(), rb_parser_compile_file(), token_info_get_column(), token_info_has_nonspaces(), and yycompile0().
#define lex_pbeg (parser->parser_lex_pbeg) |
Definition at line 357 of file ripper.c.
Referenced by comment_at_top(), parser_compile_string(), parser_heredoc_identifier(), parser_heredoc_restore(), parser_nextc(), parser_prepare(), parser_pushback(), parser_whole_match_p(), parser_yyerror(), rb_parser_compile_file(), token_info_get_column(), token_info_has_nonspaces(), and yycompile0().
#define lex_pend (parser->parser_lex_pend) |
Definition at line 359 of file ripper.c.
Referenced by parser_compile_string(), parser_here_document(), parser_heredoc_restore(), parser_nextc(), parser_peek_variable_name(), parser_prepare(), parser_tokadd_string(), parser_whole_match_p(), parser_yyerror(), parser_yylex(), rb_parser_compile_file(), and yycompile0().
#define lex_state (parser->parser_lex_state) |
Definition at line 340 of file ripper.c.
Referenced by parser_yylex(), and switch().
#define lex_strterm (parser->parser_lex_strterm) |
Definition at line 339 of file ripper.c.
Referenced by parser_here_document(), parser_heredoc_identifier(), parser_yylex(), switch(), and yycompile0().
#define list_append | ( | l, | |
i | |||
) | list_append_gen(parser,(l),(i)) |
Definition at line 415 of file ripper.c.
Referenced by arg_append_gen(), evstr2dstr_gen(), literal_concat_gen(), and switch().
#define list_concat | ( | h, | |
t | |||
) | list_concat_gen(parser,(h),(t)) |
Definition at line 417 of file ripper.c.
Referenced by arg_concat_gen(), literal_concat_gen(), and switch().
#define literal_concat | ( | h, | |
t | |||
) | literal_concat_gen(parser,(h),(t)) |
#define local_id | ( | id | ) | local_id_gen(parser, (id)) |
Definition at line 510 of file ripper.c.
Referenced by gettable_gen(), if(), lvar_defined_gen(), reg_named_capture_assign_iter(), shadowing_lvar_gen(), and switch().
#define local_pop | ( | ) | local_pop_gen(parser) |
#define local_push | ( | top | ) | local_push_gen(parser,(top)) |
#define local_tbl | ( | ) | local_tbl_gen(parser) |
#define local_var | ( | id | ) | local_var_gen(parser, (id)); |
#define lpar_beg (parser->parser_lpar_beg) |
Definition at line 345 of file ripper.c.
Referenced by parser_yylex(), and switch().
#define lvar_defined | ( | id | ) | lvar_defined_gen(parser, (id)) |
Definition at line 528 of file ripper.c.
Referenced by parser_yylex().
Definition at line 14754 of file ripper.c.
Referenced by dvar_defined_gen(), local_id_gen(), shadowing_lvar_gen(), and warn_unused_var().
#define lvtbl (parser->parser_lvtbl) |
Definition at line 365 of file ripper.c.
Referenced by arg_var_gen(), dvar_curr_gen(), dvar_defined_gen(), dyna_in_block_gen(), dyna_pop_1(), dyna_pop_gen(), dyna_push_gen(), internal_id_gen(), local_id_gen(), local_pop_gen(), local_push_gen(), local_tbl_gen(), local_var_gen(), and shadowing_lvar_gen().
#define malloc YYMALLOC |
Definition at line 94 of file ripper.c.
Referenced by allocate_sorted_heaps(), assign_heap_slot(), cmdglob(), Init_BareVM(), init_heap(), insert(), mbstr_to_wstr(), nkf_xmalloc(), open_ifs_socket(), rb_objspace_alloc(), rb_w32_cmdvector(), rb_w32_conv_from_wstr(), rb_w32_get_environ(), rb_w32_getcwd(), readline_attempted_completion_function(), ruby_setenv(), run_exec_dup2(), sdbm_open(), sdbm_prep(), sip_hash_final(), sip_hash_new(), stack_chunk_alloc(), th_init(), vm_xmalloc(), and wstr_to_mbstr().
#define match_op | ( | node1, | |
node2 | |||
) | match_op_gen(parser, (node1), (node2)) |
#define mixed_error | ( | enc1, | |
enc2 | |||
) |
Referenced by parser_tokadd_string().
#define mixed_escape | ( | beg, | |
enc1, | |||
enc2 | |||
) |
Referenced by parser_tokadd_string().
Definition at line 547 of file ripper.c.
Referenced by parser_parse_string().
#define nd_term | ( | node | ) | SIGN_EXTEND((node)->u2.id, CHAR_BIT*2) |
Definition at line 545 of file ripper.c.
Referenced by parser_parse_string().
Definition at line 437 of file ripper.c.
Referenced by check_funcall_exec(), switch(), and vm_call0().
#define new_bv | ( | id | ) | new_bv_gen(parser, (id)) |
#define new_evstr | ( | n | ) | new_evstr_gen(parser,(n)) |
#define NEW_STRTERM | ( | func, | |
term, | |||
paren | |||
) | rb_node_newnode(NODE_STRTERM, (func), (term) | ((paren) << (CHAR_BIT * 2)), 0) |
Definition at line 12274 of file ripper.c.
Referenced by parser_here_document(), and parser_yylex().
#define new_yield | ( | node | ) | new_yield_gen(parser, (node)) |
#define NEWHEAP | ( | ) | rb_node_newnode(NODE_ALLOCA, 0, (VALUE)parser->heap, 0) |
Definition at line 16657 of file ripper.c.
Referenced by rb_parser_calloc(), rb_parser_malloc(), and rb_parser_realloc().
#define newtok | ( | ) | parser_newtok(parser) |
Definition at line 11186 of file ripper.c.
Referenced by parser_here_document(), parser_heredoc_identifier(), parser_parse_string(), parser_regx_options(), and parser_yylex().
#define nextc | ( | ) | parser_nextc(parser) |
Definition at line 11184 of file ripper.c.
Referenced by parser_here_document(), parser_heredoc_identifier(), parser_parse_string(), parser_prepare(), parser_read_escape(), parser_regx_options(), parser_tokadd_escape(), parser_tokadd_string(), parser_tokadd_utf8(), and parser_yylex().
Referenced by parser_yylex(), rb_str_upto(), and ruby_dtoa().
#define node_assign | ( | node1, | |
node2 | |||
) | node_assign_gen(parser, (node1), (node2)) |
Definition at line 459 of file ripper.c.
Referenced by reg_named_capture_assign_iter(), and switch().
#define NODE_HEREDOC NODE_ARRAY /* 1, 3 to gc */ |
Definition at line 539 of file ripper.c.
Referenced by parser_heredoc_identifier(), and parser_yylex().
#define NODE_STRTERM NODE_ZARRAY /* nothing to gc */ |
Definition at line 88 of file ripper.c.
Referenced by parser_magic_comment().
Definition at line 15928 of file ripper.c.
Referenced by rb_id2str(), and rb_intern3().
#define paren_nest (parser->parser_paren_nest) |
Definition at line 344 of file ripper.c.
Referenced by parser_yylex(), and switch().
#define parse_string | ( | n | ) | parser_parse_string(parser,(n)) |
Definition at line 11194 of file ripper.c.
Referenced by parser_yylex().
#define PARSER_ARG ruby_sourcefile, ruby_sourceline, current_enc, |
Definition at line 651 of file ripper.c.
Referenced by block_dup_check_gen(), gettable_gen(), literal_concat0(), new_bv_gen(), no_blockarg(), parser_here_document(), parser_heredoc_identifier(), parser_parse_string(), parser_regx_options(), parser_tokadd_mbchar(), parser_yyerror(), parser_yylex(), rb_backref_error_gen(), reg_compile_gen(), reg_fragment_check_gen(), reg_fragment_setenc_gen(), and switch().
Definition at line 11292 of file ripper.c.
Referenced by parser_tokadd_mbchar().
Definition at line 11296 of file ripper.c.
Referenced by parser_heredoc_identifier(), and parser_yylex().
Definition at line 11298 of file ripper.c.
Referenced by parser_tokadd_string(), and parser_yylex().
#define parser_precise_mbclen | ( | ) | rb_enc_precise_mbclen((lex_p-1),lex_pend,parser->enc) |
Definition at line 11294 of file ripper.c.
Referenced by parser_tokadd_mbchar().
#define parser_warn | ( | node, | |
mesg | |||
) | parser_warn(parser, (node), (mesg)) |
Definition at line 14356 of file ripper.c.
Referenced by assign_in_cond(), cond0(), and warn_unless_e_option().
#define parser_warning | ( | node, | |
mesg | |||
) | parser_warning(parser, (node), (mesg)) |
Definition at line 14349 of file ripper.c.
Referenced by block_append_gen(), cond0(), value_expr_gen(), and warning_unless_e_option().
Definition at line 11708 of file ripper.c.
Referenced by parser_nextc(), parser_prepare(), parser_read_escape(), parser_tokadd_utf8(), and parser_yylex().
Definition at line 11709 of file ripper.c.
Referenced by parser_yylex().
Definition at line 169 of file ripper.c.
Referenced by dvar_defined_gen(), dyna_in_block_gen(), local_id_gen(), vtable_add(), vtable_free(), vtable_included(), and vtable_size().
#define pushback | ( | c | ) | parser_pushback(parser, (c)) |
Definition at line 11185 of file ripper.c.
Referenced by parser_here_document(), parser_heredoc_identifier(), parser_parse_string(), parser_prepare(), parser_read_escape(), parser_regx_options(), parser_tokadd_escape(), parser_tokadd_string(), and parser_yylex().
#define rb_backref_error | ( | n | ) | rb_backref_error_gen(parser,(n)) |
#define rb_compile_error rb_compile_error_with_enc |
Definition at line 649 of file ripper.c.
Referenced by parser_yylex().
#define rb_node_newnode | ( | type, | |
a1, | |||
a2, | |||
a3 | |||
) | node_newnode(parser, (type), (a1), (a2), (a3)) |
Definition at line 389 of file ripper.c.
Referenced by enum_zip(), node_newnode(), parser_heredoc_identifier(), and rb_autoload().
#define rb_warn0 | ( | fmt | ) | rb_compile_warn(ruby_sourcefile, ruby_sourceline, (fmt)) |
#define rb_warnI | ( | fmt, | |
a | |||
) | rb_compile_warn(ruby_sourcefile, ruby_sourceline, (fmt), (a)) |
Definition at line 624 of file ripper.c.
Referenced by parser_yylex().
#define rb_warning0 | ( | fmt | ) | rb_compile_warning(ruby_sourcefile, ruby_sourceline, (fmt)) |
Definition at line 626 of file ripper.c.
Referenced by arg_ambiguous_gen(), parser_yylex(), switch(), and value_expr_gen().
#define rb_warningS | ( | fmt, | |
a | |||
) | rb_compile_warning(ruby_sourcefile, ruby_sourceline, (fmt), (a)) |
Definition at line 627 of file ripper.c.
Referenced by parser_yylex(), reg_named_capture_assign_iter(), and shadowing_lvar_gen().
#define rb_warnS | ( | fmt, | |
a | |||
) | rb_compile_warn(ruby_sourcefile, ruby_sourceline, (fmt), (a)) |
Definition at line 625 of file ripper.c.
Referenced by void_expr_gen().
Definition at line 532 of file ripper.c.
Referenced by parser_regx_options().
#define RE_OPTION_ENCODING_IDX | ( | o | ) | (((o)>>RE_OPTION_ENCODING_SHIFT)&0xff) |
Definition at line 533 of file ripper.c.
Referenced by reg_fragment_setenc_gen().
#define RE_OPTION_ENCODING_NONE | ( | o | ) | ((o)&RE_OPTION_ARG_ENCODING_NONE) |
Definition at line 534 of file ripper.c.
Referenced by reg_fragment_setenc_gen().
#define RE_OPTION_MASK 0xff |
Definition at line 535 of file ripper.c.
Referenced by reg_compile_gen(), and switch().
#define RE_OPTION_ONCE (1<<16) |
Definition at line 530 of file ripper.c.
Referenced by parser_regx_options(), and switch().
Definition at line 11190 of file ripper.c.
Referenced by parser_read_escape(), parser_tokadd_string(), and parser_yylex().
#define realloc YYREALLOC |
Definition at line 95 of file ripper.c.
Referenced by allocate_sorted_heaps(), enc_table_expand(), nkf_xrealloc(), opendir_internal(), stub_sysinit(), and vm_xrealloc().
#define reduce_nodes | ( | n | ) | reduce_nodes_gen(parser,(n)) |
Definition at line 472 of file ripper.c.
Referenced by reg_compile_gen(), and reg_fragment_check_gen().
#define reg_named_capture_assign | ( | regexp, | |
match | |||
) | reg_named_capture_assign_gen(parser,(regexp),(match)) |
#define regx_options | ( | ) | parser_regx_options(parser) |
Definition at line 11192 of file ripper.c.
Referenced by parser_parse_string().
#define ret_args | ( | node | ) | ret_args_gen(parser, (node)) |
Definition at line 11225 of file ripper.c.
Referenced by parser_heredoc_identifier(), parser_heredoc_restore(), and parser_nextc().
#define ruby__end__seen (parser->parser_ruby__end__seen) |
Definition at line 366 of file ripper.c.
Referenced by parser_yylex(), and rb_parser_end_seen_p().
Definition at line 376 of file ripper.c.
Referenced by lex_getline(), and yycompile0().
#define ruby_debug_lines (parser->debug_lines) |
Definition at line 375 of file ripper.c.
Referenced by lex_getline(), parser_set_encode(), and yycompile0().
#define ruby_eval_tree (parser->parser_eval_tree) |
Definition at line 373 of file ripper.c.
Referenced by switch(), and yycompile0().
#define ruby_eval_tree_begin (parser->parser_eval_tree_begin) |
Definition at line 374 of file ripper.c.
Referenced by switch(), and yycompile0().
#define ruby_sourceline (parser->parser_ruby_sourceline) |
Definition at line 367 of file ripper.c.
Referenced by gettable_gen(), local_var_gen(), new_args_gen(), node_newnode(), parser_heredoc_identifier(), parser_heredoc_restore(), parser_nextc(), parser_parse_string(), parser_set_encode(), parser_set_token_info(), parser_yylex(), reg_compile_gen(), shadowing_lvar_gen(), switch(), token_info_pop(), token_info_push(), void_expr_gen(), yycompile(), and yycompile0().
#define set_yylval_id | ( | x | ) | (yylval.id = (x)) |
Definition at line 11204 of file ripper.c.
Referenced by parser_yylex().
#define set_yylval_literal | ( | x | ) | (yylval.node = NEW_LIT(x)) |
Definition at line 11206 of file ripper.c.
Referenced by parser_yylex().
#define set_yylval_name | ( | x | ) | (yylval.id = (x)) |
Definition at line 11205 of file ripper.c.
Referenced by parser_yylex().
#define set_yylval_node | ( | x | ) | (yylval.node = (x)) |
Definition at line 11207 of file ripper.c.
Referenced by parser_yylex().
#define set_yylval_num | ( | x | ) | (yylval.num = (x)) |
Definition at line 11203 of file ripper.c.
Referenced by parser_parse_string().
#define set_yylval_str | ( | x | ) | (yylval.node = NEW_STR(x)) |
Definition at line 11202 of file ripper.c.
Referenced by parser_here_document(), parser_parse_string(), and parser_yylex().
#define shadowing_lvar | ( | name | ) | shadowing_lvar_gen(parser, (name)) |
Definition at line 497 of file ripper.c.
Referenced by formal_argument_gen(), new_bv_gen(), and switch().
#define str_copy | ( | _s, | |
_p, | |||
_n | |||
) |
Referenced by parser_magic_comment().
#define STR_FUNC_ESCAPE 0x01 |
Definition at line 11671 of file ripper.c.
Referenced by parser_tokadd_string().
#define STR_FUNC_EXPAND 0x02 |
Definition at line 11672 of file ripper.c.
Referenced by parser_here_document(), parser_parse_string(), and parser_tokadd_string().
#define STR_FUNC_INDENT 0x20 |
Definition at line 11676 of file ripper.c.
Referenced by parser_here_document(), and parser_heredoc_identifier().
#define STR_FUNC_QWORDS 0x08 |
Definition at line 11674 of file ripper.c.
Referenced by parser_parse_string(), and parser_tokadd_string().
#define STR_FUNC_REGEXP 0x04 |
Definition at line 11673 of file ripper.c.
Referenced by parser_parse_string(), parser_str_new(), and parser_tokadd_string().
#define STR_FUNC_SYMBOL 0x10 |
Definition at line 11675 of file ripper.c.
Referenced by parser_tokadd_string().
Definition at line 329 of file ripper.c.
Referenced by parser_here_document(), and parser_heredoc_identifier().
#define STR_NEW0 | ( | ) | rb_enc_str_new(0,0,parser->enc) |
Definition at line 330 of file ripper.c.
Referenced by switch(), and yycompile0().
Definition at line 331 of file ripper.c.
Referenced by parser_yyerror().
Definition at line 332 of file ripper.c.
Referenced by parser_here_document(), parser_parse_string(), and parser_yylex().
#define subnodes | ( | n1, | |
n2 | |||
) |
Referenced by reduce_nodes_gen().
#define tok | ( | ) | tokenbuf |
Definition at line 11780 of file ripper.c.
Referenced by get_inline(), lexer_i(), parse_regexp(), parser_here_document(), parser_heredoc_identifier(), parser_parse_string(), parser_regx_options(), parser_yylex(), sycklex_bytecode_utf8(), and sycklex_yaml_utf8().
#define tok_hex | ( | numlen | ) | parser_tok_hex(parser, (numlen)) |
Definition at line 11189 of file ripper.c.
Referenced by parser_read_escape(), and parser_tokadd_escape().
#define TOK_INTERN | ( | mb | ) | rb_intern3(tok(), toklen(), parser->enc) |
Definition at line 334 of file ripper.c.
Referenced by parser_yylex().
#define tokadd | ( | c | ) | parser_tokadd(parser, (c)) |
Definition at line 11188 of file ripper.c.
Referenced by parser_here_document(), parser_heredoc_identifier(), parser_parse_string(), parser_regx_options(), parser_tokadd_escape(), parser_tokadd_mbchar(), parser_tokadd_string(), parser_tokadd_utf8(), and parser_yylex().
#define tokadd_escape | ( | e | ) | parser_tokadd_escape(parser, (e)) |
Definition at line 11191 of file ripper.c.
Referenced by parser_tokadd_string().
#define tokadd_mbchar | ( | c | ) | parser_tokadd_mbchar(parser, (c)) |
Definition at line 12142 of file ripper.c.
Referenced by parser_heredoc_identifier(), parser_tokadd_string(), and parser_yylex().
Definition at line 11193 of file ripper.c.
Referenced by parser_here_document(), and parser_parse_string().
Definition at line 11195 of file ripper.c.
Referenced by parser_tokadd_utf8(), and parser_yylex().
Definition at line 11835 of file ripper.c.
Referenced by parser_tokadd_escape(), parser_tokadd_mbchar(), and parser_tokadd_utf8().
#define tokenbuf (parser->parser_tokenbuf) |
Definition at line 351 of file ripper.c.
Referenced by parser_newtok(), parser_tokadd(), and parser_tokspace().
Definition at line 11779 of file ripper.c.
Referenced by parser_heredoc_identifier(), parser_parse_string(), parser_regx_options(), and parser_yylex().
#define tokidx (parser->parser_tokidx) |
Definition at line 352 of file ripper.c.
Referenced by parser_newtok(), parser_tokadd(), parser_tokspace(), and parser_yylex().
Definition at line 11782 of file ripper.c.
Referenced by parser_yylex().
#define toklen | ( | ) | tokidx |
Definition at line 11781 of file ripper.c.
Referenced by parser_here_document(), parser_heredoc_identifier(), parser_parse_string(), parser_regx_options(), and parser_yylex().
#define toksiz (parser->parser_toksiz) |
Definition at line 353 of file ripper.c.
Referenced by parser_newtok(), parser_tokadd(), and parser_tokspace().
#define tokspace | ( | n | ) | parser_tokspace(parser, (n)) |
Definition at line 11187 of file ripper.c.
Referenced by parser_tokaddmbc().
#define UTF8_ENC | ( | ) |
#define value_expr | ( | node | ) | value_expr_gen(parser, (node) = remove_begin(node)) |
Definition at line 402 of file ripper.c.
Referenced by call_bin_op_gen(), call_uni_op_gen(), logop_gen(), match_op_gen(), range_op(), switch(), and value_expr_gen().
#define void_expr | ( | node | ) | void_expr0((node) = remove_begin(node)) |
#define void_expr0 | ( | node | ) | void_expr_gen(parser, (node)) |
Definition at line 403 of file ripper.c.
Referenced by void_stmts_gen().
#define void_stmts | ( | node | ) | void_stmts_gen(parser, (node)) |
#define VTBL_DEBUG 0 |
Definition at line 182 of file ripper.c.
Referenced by vtable_add(), vtable_alloc(), and vtable_free().
#define warn_balanced | ( | op, | |
syn | |||
) |
Definition at line 12981 of file ripper.c.
Referenced by parser_yylex().
Definition at line 11777 of file ripper.c.
Referenced by parser_here_document(), and parser_yylex().
Definition at line 11199 of file ripper.c.
Referenced by parser_here_document(), and parser_yylex().
#define YY_ | ( | msgid | ) | msgid |
Definition at line 910 of file ripper.c.
Referenced by if(), and yysyntax_error().
#define YY_REDUCE_PRINT | ( | Rule | ) |
#define YY_STACK_PRINT | ( | Bottom, | |
Top | |||
) |
#define YY_SYMBOL_PRINT | ( | Title, | |
Type, | |||
Value, | |||
Location | |||
) |
#define YYABORT goto yyabortlab |
#define YYACCEPT goto yyacceptlab |
#define YYBACKUP | ( | Token, | |
Value | |||
) |
#define YYCALLOC | ( | nelem, | |
size | |||
) | rb_parser_calloc(parser, (nelem), (size)) |
Referenced by yysyntax_error().
#define YYCOPY | ( | To, | |
From, | |||
Count | |||
) |
#define YYDPRINTF | ( | Args | ) |
#define YYEMPTY (-2) |
Definition at line 4195 of file ripper.c.
Referenced by if(), and yysyntax_error().
#define yyerrok (yyerrstatus = 0) |
#define yyerror | ( | msg | ) | parser_yyerror(parser, (msg)) |
Definition at line 337 of file ripper.c.
Referenced by assign_in_cond(), formal_argument_gen(), if(), parser_read_escape(), parser_tok_hex(), parser_tokadd_escape(), parser_tokadd_utf8(), parser_yylex(), shadowing_lvar_gen(), switch(), and value_expr_gen().
#define YYLAST 10748 |
Definition at line 1072 of file ripper.c.
Referenced by for(), and yysyntax_error().
#define YYLLOC_DEFAULT | ( | Current, | |
Rhs, | |||
N | |||
) |
#define yylval (*((YYSTYPE*)(parser->parser_yylval))) |
#define YYNTOKENS 148 |
Definition at line 1075 of file ripper.c.
Referenced by yysyntax_error().
Definition at line 3002 of file ripper.c.
Referenced by for(), and yysyntax_error().
#define yyparse ruby_yyparse |
Definition at line 386 of file ripper.c.
Referenced by yycompile0().
#define YYRECOVERING | ( | ) | (!!yyerrstatus) |
#define YYSIZE_T unsigned int |
Definition at line 896 of file ripper.c.
Referenced by if(), yysyntax_error(), and yytnamerr().
#define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM |
Definition at line 981 of file ripper.c.
Referenced by yysyntax_error().
#define YYSTACK_BYTES | ( | N | ) |
#define YYSTACK_FREE YYFREE |
#define YYSTACK_RELOCATE | ( | Stack_alloc, | |
Stack | |||
) |
#define YYSYNTAX_ERROR |
Referenced by if().
#define yytable_value_is_error | ( | yytable_value | ) | ((yytable_value) == (-574)) |
Definition at line 3005 of file ripper.c.
Referenced by if(), and yysyntax_error().
#define YYTERROR 1 |
Definition at line 4237 of file ripper.c.
Referenced by for(), and yysyntax_error().
#define YYTRANSLATE | ( | YYX | ) | ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) |
typedef VALUE stack_type |
typedef struct token_info token_info |
typedef short int yytype_int16 |
typedef short int yytype_int8 |
typedef unsigned short int yytype_uint16 |
typedef unsigned char yytype_uint8 |
enum lex_state_e |
enum string_type |
|
static |
Definition at line 12632 of file ripper.c.
References arg_ambiguous, dispatch0(), and rb_warning0.
|
static |
Definition at line 14865 of file ripper.c.
References arg_append, list_append, nd_set_type, nd_type, NEW_ARGSPUSH, NEW_LIST, NODE_ARGSCAT, NODE_ARGSPUSH, NODE_ARRAY, and NODE_BLOCK_PASS.
|
static |
Definition at line 14840 of file ripper.c.
References arg_concat, list_concat, nd_set_type, nd_type, NEW_ARGSCAT, NEW_LIST, NODE_ARGSCAT, NODE_ARGSPUSH, NODE_ARRAY, and NODE_BLOCK_PASS.
|
static |
Definition at line 15536 of file ripper.c.
References lvtbl, vtable_add(), and vtable_size().
|
static |
|
static |
Definition at line 15158 of file ripper.c.
References nd_type, NODE_DASGN, NODE_DASGN_CURR, NODE_DREGX, NODE_DSTR, NODE_DXSTR, NODE_EVSTR, NODE_FALSE, NODE_GASGN, NODE_IASGN, NODE_LASGN, NODE_LIT, NODE_MASGN, NODE_NIL, NODE_STR, NODE_TRUE, NODE_XSTR, parser_warn, and yyerror.
Referenced by cond0().
|
static |
return assignable_result | ( | 0 | ) |
|
static |
Definition at line 14819 of file ripper.c.
References nd_type, NEW_ATTRASGN, NODE_SELF, and rb_id_attrset().
|
static |
Definition at line 14359 of file ripper.c.
References end, fixpos(), nd_type, NEW_BLOCK, NODE_BLOCK, NODE_BREAK, NODE_FALSE, NODE_LIT, NODE_NEXT, NODE_NIL, NODE_REDO, NODE_RETRY, NODE_RETURN, NODE_SELF, NODE_STR, NODE_TRUE, parser_warning, RTEST, and ruby_verbose.
|
static |
Definition at line 14803 of file ripper.c.
References compile_error, nd_type, NODE_BLOCK_PASS, and PARSER_ARG.
|
static |
Definition at line 14558 of file ripper.c.
References NEW_CALL, NEW_LIST, and value_expr.
|
static |
Definition at line 14566 of file ripper.c.
References NEW_CALL, and value_expr.
|
static |
Definition at line 12713 of file ripper.c.
References parser_params::has_shebang, ISSPACE, lex_p, lex_pbeg, parser_params::line_count, and p.
Referenced by magic_comment_encoding(), and parser_yylex().
|
static |
Definition at line 15279 of file ripper.c.
References assign_in_cond(), b, e, e_option_supplied(), literal_node(), nd_set_type, nd_type, NEW_GVAR, NEW_MATCH2, NODE_AND, NODE_DOT2, NODE_DOT3, NODE_DREGX, NODE_DREGX_ONCE, NODE_DSTR, NODE_DSYM, NODE_EVSTR, NODE_FLIP2, NODE_FLIP3, NODE_LIT, NODE_MATCH, NODE_OR, NODE_STR, parser_warn, parser_warning, range_op(), rb_intern, rb_warn0, RTEST, ruby_verbose, T_REGEXP, TYPE, warn_unless_e_option(), and warning_unless_e_option().
Referenced by cond_gen(), and range_op().
|
static |
Definition at line 11457 of file ripper.c.
References i, klass, n, Qnil, RARRAY, RARRAY_PTR(), rb_ary_new2(), rb_external_str_new_with_enc(), rb_filesystem_encoding(), rb_get_coverages(), rb_hash_aset(), RBASIC, RTEST, and strlen().
Referenced by coverage_result_i(), update_coverage(), and yycompile0().
Definition at line 11440 of file ripper.c.
References CONST_ID, hash, rb_ary_new(), rb_cObject, rb_const_defined_at(), rb_const_get_at(), rb_external_str_new_with_enc(), rb_filesystem_encoding(), rb_hash_aset(), strlen(), T_HASH, and TYPE.
Referenced by yycompile0().
Definition at line 12120 of file ripper.c.
References flags, rb_gc_force_recycle(), RBASIC, RSTRING_NOEMBED, RSTRING_PTR, and xfree.
Referenced by parser_here_document(), and parser_heredoc_restore().
|
static |
Definition at line 15661 of file ripper.c.
References lvtbl, and vtable_included().
|
static |
Definition at line 15630 of file ripper.c.
References args, DVARS_INHERIT, i, LVAR_USED, lvtbl, POINTER_P, vtable::prev, rb_dvar_defined(), vtable::tbl, and vtable_included().
|
static |
Definition at line 15624 of file ripper.c.
References DVARS_TOPSCOPE, lvtbl, and POINTER_P.
|
static |
Definition at line 15592 of file ripper.c.
References lvtbl, vtable_free(), and warn_unused_var().
Referenced by dyna_pop_gen().
|
static |
Definition at line 15610 of file ripper.c.
References dyna_pop_1(), lvtbl, and xfree.
|
static |
Definition at line 15581 of file ripper.c.
References lvtbl, and vtable_alloc().
|
static |
Definition at line 11474 of file ripper.c.
References ruby_sourcefile.
Referenced by cond0(), warn_unless_e_option(), warning_unless_e_option(), and yycompile0().
|
static |
Definition at line 14535 of file ripper.c.
References list_append, nd_type, NEW_DSTR, NODE_EVSTR, and Qnil.
Definition at line 14336 of file ripper.c.
References nd_line, and nd_set_line().
Referenced by block_append_gen(), and switch().
Definition at line 15211 of file ripper.c.
References nd_set_type, nd_type, NODE_DOT2, NODE_DOT3, NODE_LIT, rb_gc_force_recycle(), rb_range_new(), type, and val.
Referenced by switch().
for | ( | ) |
for | ( | ;; | ) |
Definition at line 11076 of file ripper.c.
References YY_STACK_PRINT, YYABORT, yydestruct(), YYLAST, yyn, yypact_value_is_default, YYPOPSTACK, yyssp, yystate, and YYTERROR.
|
static |
Definition at line 12643 of file ripper.c.
References is_local_id, lhs, shadowing_lvar, and yyerror.
|
static |
Definition at line 14607 of file ripper.c.
References compile_error, dvar_defined, dyna_in_block, parser_params::enc, INT2FIX, is_class_id, is_const_id, is_global_id, is_instance_id, is_local_id, keyword__ENCODING__, keyword__FILE__, keyword__LINE__, keyword_false, keyword_nil, keyword_self, keyword_true, local_id, NEW_CONST, NEW_CVAR, NEW_DVAR, NEW_FALSE, NEW_GVAR, NEW_IVAR, NEW_LIT, NEW_LVAR, NEW_NIL, NEW_SELF, NEW_STR, NEW_TRUE, NEW_VCALL, PARSER_ARG, rb_enc_from_encoding(), rb_external_str_new_with_enc(), rb_filesystem_encoding(), rb_id2name(), ruby_sourcefile, ruby_sourceline, and strlen().
if | ( | yyss+yystacksize-1<= | yyssp | ) |
Definition at line 4868 of file ripper.c.
References YY_, YYABORT, YYDPRINTF, YYMAXDEPTH, YYSIZE_T, yyss, yyalloc::yyss_alloc, YYSTACK_ALLOC, YYSTACK_BYTES, YYSTACK_FREE, YYSTACK_RELOCATE, yyvs, and yyalloc::yyvs_alloc.
if | ( | yyn<= | 0 | ) |
if | ( | ! | yyerrstatus | ) |
Definition at line 10985 of file ripper.c.
References parser_yyerror(), YY_, yymsg, yymsgbuf, yynerrs, YYSTACK_ALLOC, YYSTACK_FREE, and YYSYNTAX_ERROR.
if | ( | yyerrstatus | = = 3 | ) |
else if | ( | is_local_id(id) | ) |
Definition at line 14709 of file ripper.c.
References assignable_result, dvar_curr, dvar_defined, dyna_in_block, dyna_var, local_id, local_var, NEW_DASGN, NEW_DASGN_CURR, and NEW_LASGN.
else if | ( | is_global_id(id) | ) |
Definition at line 14732 of file ripper.c.
References assignable_result, and NEW_GASGN.
else if | ( | is_instance_id(id) | ) |
Definition at line 14735 of file ripper.c.
References assignable_result, and NEW_IASGN.
else if | ( | is_const_id(id) | ) |
else if | ( | is_class_id(id) | ) |
Definition at line 14743 of file ripper.c.
References assignable_result, and NEW_CVASGN.
Definition at line 15978 of file ripper.c.
References global_symbols, symbols::id_str, Init_id(), st_init_numtable_with_size, st_init_table_with_size, and symbols::sym_id.
|
static |
Definition at line 16000 of file ripper.c.
References ID_INTERNAL, ID_SCOPE_SHIFT, lvtbl, tLAST_TOKEN, and vtable_size().
Definition at line 12318 of file ripper.c.
Referenced by is_special_global_name(), and parser_peek_variable_name().
|
static |
Definition at line 16009 of file ripper.c.
References is_global_name_punct(), is_identchar, ISASCII, m, rb_enc_isdigit, and rb_enc_mbclen().
Referenced by rb_enc_symname2_p(), and rb_intern3().
|
static |
Definition at line 11547 of file ripper.c.
References enc, end, lex_gets_ptr, must_be_ascii_compatible(), Qnil, rb_enc_str_new(), RSTRING_LEN, and RSTRING_PTR.
Referenced by parser_compile_string().
|
static |
Definition at line 11567 of file ripper.c.
References parser_params::enc, must_be_ascii_compatible(), NIL_P, parser_params::parser_lex_gets, parser_params::parser_lex_input, Qnil, rb_ary_push(), rb_enc_associate(), ruby_coverage, and ruby_debug_lines.
Referenced by parser_nextc().
|
static |
Definition at line 11638 of file ripper.c.
References rb_io_gets().
Referenced by rb_parser_compile_file().
|
static |
|
static |
|
static |
Definition at line 14457 of file ripper.c.
References compile_error, NIL_P, PARSER_ARG, rb_enc_compatible(), rb_enc_get(), rb_enc_name, rb_str_buf_append(), and rb_str_resize().
Referenced by literal_concat_gen(), and switch().
|
static |
Definition at line 14474 of file ripper.c.
References list_append, list_concat, literal_concat0(), nd_set_type, nd_type, NEW_DSTR, NEW_STR, NIL_P, NODE_ARRAY, NODE_DSTR, NODE_EVSTR, NODE_STR, Qnil, and rb_gc_force_recycle().
Definition at line 15258 of file ripper.c.
References nd_type, NODE_DREGX, NODE_DREGX_ONCE, NODE_DSTR, NODE_DSYM, NODE_EVSTR, NODE_FALSE, NODE_LIT, NODE_NIL, NODE_STR, and NODE_TRUE.
Referenced by cond0().
|
static |
Definition at line 15553 of file ripper.c.
References args, DVARS_INHERIT, i, LVAR_USED, lvtbl, POINTER_P, vtable::prev, rb_local_defined(), vtable::tbl, and vtable_included().
|
static |
Definition at line 15490 of file ripper.c.
References cmdarg_stack, lvtbl, vtable_free(), warn_unused_var(), and xfree.
|
static |
Definition at line 15475 of file ripper.c.
References ALLOC, local_vars::args, cmdarg_stack, local_vars::cmdargs, DVARS_INHERIT, DVARS_TOPSCOPE, lvtbl, local_vars::prev, RTEST, ruby_verbose, local_vars::used, local_vars::vars, and vtable_alloc().
|
static |
Definition at line 15521 of file ripper.c.
References ALLOC_N, buf, cnt, lvtbl, vtable_size(), and vtable_tblcpy().
|
static |
Definition at line 15543 of file ripper.c.
References lvtbl, ruby_sourceline, vtable_add(), and vtable_size().
|
static |
Definition at line 15343 of file ripper.c.
References nd_type, NEW_NODE, and value_expr.
|
static |
Definition at line 12654 of file ripper.c.
References dvar_defined_get, dyna_in_block, and local_id.
|
static |
Definition at line 12729 of file ripper.c.
References comment_at_top(), and parser_set_encode().
|
static |
Definition at line 14573 of file ripper.c.
References nd_type, NEW_CALL, NEW_LIST, NEW_MATCH2, NEW_MATCH3, NODE_DREGX, NODE_DREGX_ONCE, NODE_LIT, T_REGEXP, tMATCH, TYPE, and value_expr.
|
static |
Definition at line 11537 of file ripper.c.
References enc, rb_eArgError, rb_enc_asciicompat, rb_enc_get(), and rb_raise().
Referenced by lex_get_str(), lex_getline(), rb_compile_string(), and rb_parser_compile_string().
|
static |
Definition at line 15429 of file ripper.c.
References NEW_ARGS, NEW_ARGS_AUX, NEW_NODE, NODE_AND, and ruby_sourceline.
|
static |
Definition at line 14781 of file ripper.c.
References compile_error, dyna_var, is_local_id, PARSER_ARG, rb_id2name(), and shadowing_lvar.
|
static |
|
static |
Definition at line 15383 of file ripper.c.
References nd_type, NEW_YIELD, no_blockarg(), NODE_SPLAT, Qfalse, and Qtrue.
Definition at line 14326 of file ripper.c.
References RNode::flags, NODE_FL_NEWLINE, and remove_begin().
Referenced by reg_named_capture_assign_gen(), reg_named_capture_assign_iter(), and switch().
|
static |
Definition at line 15358 of file ripper.c.
References compile_error, nd_type, NODE_BLOCK_PASS, and PARSER_ARG.
Referenced by new_yield_gen(), and ret_args_gen().
|
static |
Definition at line 14891 of file ripper.c.
References arg_append, lhs, nd_type, NODE_ATTRASGN, NODE_CALL, NODE_CDECL, NODE_CVASGN, NODE_DASGN, NODE_DASGN_CURR, NODE_GASGN, NODE_IASGN, NODE_IASGN2, NODE_LASGN, and NODE_MASGN.
|
static |
Definition at line 14306 of file ripper.c.
References n, nd_set_line(), rb_node_newnode, and ruby_sourceline.
|
static |
Definition at line 11590 of file ripper.c.
References compile_for_eval, lex_get_str(), lex_gets, lex_gets_ptr, lex_input, lex_p, lex_pbeg, lex_pend, parser, rb_parse_in_eval(), s, TypedData_Get_Struct, and yycompile().
Referenced by rb_compile_cstr(), rb_compile_string(), rb_parser_compile_cstr(), and rb_parser_compile_string().
|
static |
Definition at line 12661 of file ripper.c.
References len, and rb_memcicmp().
Referenced by set_file_encoding().
Definition at line 16513 of file ripper.c.
References parser_params::parser_lvtbl, parser_params::parser_ruby_sourcefile, parser_params::parser_tokenbuf, local_vars::prev, local_vars::vars, and xfree.
|
static |
Definition at line 12529 of file ripper.c.
References c, compile_error, dispatch_heredoc_end, dispose_string(), parser_params::enc, enc, parser_params::eofp, flush_string_content, func, heredoc_restore, len, lex_goto_eol, lex_lastline, lex_p, lex_pend, lex_strterm, NEW_STRTERM, newtok, nextc, NIL_P, NULL, p, PARSER_ARG, parser_peek_variable_name(), pushback, rb_str_append(), rb_str_cat(), RSTRING_LEN, RSTRING_PTR, set_yylval_str, STR_FUNC_EXPAND, STR_FUNC_INDENT, STR_NEW, STR_NEW3, t, tok, tokadd, tokadd_string, toklen, tSTRING_CONTENT, tSTRING_END, was_bol, and whole_match_p.
|
static |
Definition at line 12419 of file ripper.c.
References c, compile_error, func, len, lex_goto_eol, lex_lastline, lex_p, lex_pbeg, lex_strterm, nd_set_line(), newtok, nextc, NODE_HEREDOC, PARSER_ARG, parser_is_identchar, pushback, rb_node_newnode, ripper_flush, ruby_sourceline, str_dquote, STR_FUNC_INDENT, STR_NEW, str_squote, str_xquote, tHEREDOC_BEG, tok, tokadd, tokadd_mbchar, tokfix, toklen, tSTRING_BEG, and tXSTRING_BEG.
|
static |
Definition at line 12482 of file ripper.c.
References dispose_string(), heredoc_end, lex_lastline, lex_p, lex_pbeg, lex_pend, nd_line, rb_gc_force_recycle(), ripper_flush, RSTRING_LEN, RSTRING_PTR, and ruby_sourceline.
|
static |
Definition at line 16435 of file ripper.c.
References parser_params::enc, parser_params::eofp, parser_params::heap, parser_params::is_ripper, NULL, parser_params::parser_class_nest, parser_params::parser_cmdarg_stack, parser_params::parser_command_start, parser_params::parser_compile_for_eval, parser_params::parser_cond_stack, parser_params::parser_cur_mid, parser_params::parser_deferred_nodes, parser_params::parser_eval_tree, parser_params::parser_eval_tree_begin, parser_params::parser_heredoc_end, parser_params::parser_in_def, parser_params::parser_in_defined, parser_params::parser_in_single, parser_params::parser_lex_p, parser_params::parser_lex_pbeg, parser_params::parser_lex_pend, parser_params::parser_lex_strterm, parser_params::parser_lpar_beg, parser_params::parser_lvtbl, parser_params::parser_paren_nest, parser_params::parser_ruby__end__seen, parser_params::parser_ruby_sourcefile, parser_params::parser_tokenbuf, parser_params::parser_tokidx, parser_params::parser_toksiz, Qfalse, Qnil, rb_usascii_encoding(), and TRUE.
Referenced by parser_new().
|
static |
Definition at line 12806 of file ripper.c.
References end, FALSE, magic_comment::func, i, ISSPACE, len, magic_comment::length, magic_comment_marker(), magic_comments, n, magic_comment::name, numberof, p, RSTRING_PTR, s, str, str_copy, STRNCASECMP, TRUE, and val.
Referenced by parser_yylex().
Definition at line 16487 of file ripper.c.
References parser_params::debug_lines, parser_params::heap, parser_params::parser_deferred_nodes, parser_params::parser_eval_tree, parser_params::parser_eval_tree_begin, parser_params::parser_lex_input, parser_params::parser_lex_lastline, parser_params::parser_lex_nextline, parser_params::parser_lex_strterm, and rb_gc_mark().
Definition at line 16533 of file ripper.c.
References vtable::capa, parser_params::parser_lvtbl, parser_params::parser_ruby_sourcefile, parser_params::parser_toksiz, local_vars::prev, size, strlen(), and local_vars::vars.
|
static |
Definition at line 16576 of file ripper.c.
References ALLOC_N, MEMZERO, p, and parser_initialize().
Referenced by rb_parser_new().
|
static |
|
inlinestatic |
Definition at line 11712 of file ripper.c.
References c, parser_params::enc, parser_params::eofp, heredoc_end, int, lex_getline(), lex_goto_eol, lex_input, lex_lastline, lex_nextline, lex_p, lex_pbeg, lex_pend, parser_params::line_count, NIL_P, peek, Qtrue, rb_enc_associate(), rb_str_buf_cat(), rb_str_buf_new(), ripper_flush, RSTRING_LEN, RSTRING_PTR, ruby_sourceline, and v.
|
static |
Definition at line 12361 of file ripper.c.
References c, compile_error, parser_params::enc, enc, parser_params::eofp, flush_string_content, func, int, ISSPACE, nd_line, nd_paren, nd_term, newtok, nextc, PARSER_ARG, parser_peek_variable_name(), pushback, regx_options, ruby_sourceline, set_yylval_num, set_yylval_str, STR_FUNC_EXPAND, STR_FUNC_QWORDS, STR_FUNC_REGEXP, STR_NEW3, t, tok, tokadd, tokadd_string, tokfix, toklen, tREGEXP_END, tSTRING_CONTENT, and tSTRING_END.
|
static |
Definition at line 12325 of file ripper.c.
References c, command_start, is_global_name_punct(), ISALPHA, ISASCII, ISDIGIT, lex_p, lex_pend, p, TRUE, tSTRING_DBEG, and tSTRING_DVAR.
Referenced by parser_here_document(), and parser_parse_string().
|
static |
Definition at line 12943 of file ripper.c.
References c, parser_params::enc, EOF, parser_params::has_shebang, lex_lastline, lex_p, lex_pbeg, lex_pend, nextc, peek, pushback, rb_enc_get(), and rb_utf8_encoding().
Referenced by yycompile0().
|
static |
|
static |
Definition at line 11913 of file ripper.c.
References c, ESCAPE_CONTROL, ESCAPE_META, ISASCII, lex_p, nextc, peek, pushback, read_escape, scan_oct, tok_hex, and yyerror.
|
static |
Definition at line 12084 of file ripper.c.
References c, compile_error, ISALPHA, newtok, nextc, PARSER_ARG, pushback, rb_ascii8bit_encindex(), rb_char_to_option_kcode(), RE_OPTION_ENCODING, RE_OPTION_ONCE, tok, tokadd, tokfix, and toklen.
|
static |
Definition at line 12681 of file ripper.c.
References parser_params::enc, enc, i, idx, n, p, RARRAY_LEN, RARRAY_PTR(), rb_ary_unshift(), rb_eArgError, rb_enc_asciicompat, rb_enc_associate_index(), rb_enc_find_index(), rb_enc_from_index(), rb_enc_name, rb_exc_raise(), rb_make_backtrace(), rb_make_exception(), rb_sprintf(), ruby_debug_lines, ruby_sourcefile, and ruby_sourceline.
Referenced by magic_comment_encoding(), and set_file_encoding().
|
static |
Definition at line 12738 of file ripper.c.
References FALSE, p, parser_params::parser_token_info_enabled, rb_compile_warning(), ruby_sourcefile, ruby_sourceline, strcasecmp, and TRUE.
|
static |
Definition at line 11690 of file ripper.c.
References ENC_CODERANGE_7BIT, rb_ascii8bit_encoding(), rb_enc_asciicompat, rb_enc_associate(), rb_enc_str_coderange(), rb_enc_str_new(), rb_usascii_encoding(), rb_utf8_encoding(), str, and STR_FUNC_REGEXP.
|
static |
|
static |
|
static |
Definition at line 12011 of file ripper.c.
References c, ESCAPE_CONTROL, ESCAPE_META, flags, lex_p, nextc, pushback, ruby_scan_oct(), tok_hex, tokadd, tokcopy, and yyerror.
|
static |
Definition at line 12129 of file ripper.c.
References c, compile_error, len, lex_p, MBCLEN_CHARFOUND_P, PARSER_ARG, parser_encoding_name, parser_precise_mbclen, tokadd, and tokcopy.
|
static |
Definition at line 12145 of file ripper.c.
References c, enc, encp, ISASCII, ISSPACE, lex_p, lex_pend, mixed_error, mixed_escape, nextc, parser_isascii, parser_tokadd_utf8(), pushback, read_escape, STR_FUNC_ESCAPE, STR_FUNC_EXPAND, STR_FUNC_QWORDS, STR_FUNC_REGEXP, STR_FUNC_SYMBOL, tokadd, tokadd_escape, and tokadd_mbchar.
|
static |
|
static |
Definition at line 12004 of file ripper.c.
References len, rb_enc_codelen(), rb_enc_mbcput, and tokspace.
|
static |
|
static |
Definition at line 14352 of file ripper.c.
References nd_line, rb_compile_warn(), and ruby_sourcefile.
|
static |
Definition at line 14345 of file ripper.c.
References nd_line, rb_compile_warning(), and ruby_sourcefile.
|
static |
|
static |
Definition at line 11375 of file ripper.c.
References ALLOCA_N, buf, compile_error, i, int, len, lex_lastline, lex_p, lex_pbeg, lex_pend, MEMCPY, p, p2, PARSER_ARG, rb_compile_error_append(), rb_enc_get(), rb_enc_prev_char, and STR_NEW2.
Referenced by if().
|
static |
Definition at line 12989 of file ripper.c.
References arg_ambiguous, c, CMDARG_LEXPOP, CMDARG_P, CMDARG_PUSH, command_start, comment_at_top(), compile_error, COND_LEXPOP, COND_P, COND_PUSH, d, DBL2NUM, parser_params::enc, enc, ENC_CODERANGE_7BIT, ENC_CODERANGE_UNKNOWN, ENC_SINGLE, parser_params::eofp, errno, EXPR_ARG, EXPR_BEG, EXPR_CLASS, EXPR_CMDARG, EXPR_DOT, EXPR_END, EXPR_ENDARG, EXPR_ENDFN, EXPR_FNAME, EXPR_VALUE, FALSE, here_document, heredoc_identifier, kwtable::id, INT2FIX, IS_ARG, IS_BEG, IS_END, is_identchar, IS_LABEL_POSSIBLE, IS_LABEL_SUFFIX, is_local_id, IS_SPCARG, ISALNUM, ISASCII, ISDIGIT, ISSPACE, ISUPPER, ISXDIGIT, k__END__, keyword_do, keyword_do_block, keyword_do_cond, keyword_do_LAMBDA, lex_eol_p, lex_goto_eol, lex_lastline, lex_nextline, lex_p, lex_pend, lex_state, lex_strterm, lpar_beg, lvar_defined, kwtable::name, nd_type, NEW_BACK_REF, NEW_NTH_REF, NEW_STRTERM, newtok, nextc, no_digits, NODE_HEREDOC, paren_nest, parse_string, PARSER_ARG, parser_is_identchar, parser_isascii, parser_magic_comment(), parser_tokadd_utf8(), peek, peek_n, pushback, Qtrue, rb_compile_error, rb_cstr_to_inum(), rb_enc_isalnum, rb_enc_isspace, rb_gc_force_recycle(), rb_intern, rb_reserved_word, rb_warnI, rb_warning0, rb_warningS, read_escape, result, ruby__end__seen, ruby_sourceline, set_file_encoding(), set_yylval_id, set_yylval_literal, set_yylval_name, set_yylval_node, set_yylval_str, snprintf, start, kwtable::state, str_dquote, str_dsym, str_dword, STR_NEW3, str_regexp, str_squote, str_ssym, str_sword, str_xquote, strtod, tAMPER, tANDOP, tAREF, tASET, tASSOC, tBACK_REF, tCHAR, tCMP, tCOLON2, tCOLON3, tCOMMENT, tCONSTANT, tCVAR, tDOT2, tDOT3, tEMBDOC, tEMBDOC_BEG, tEMBDOC_END, tEQ, tEQQ, tFID, tFLOAT, tGEQ, tGVAR, tIDENTIFIER, tIGNORED_NL, tINTEGER, tIVAR, tLABEL, tLAMBDA, tLAMBEG, tLBRACE, tLBRACE_ARG, tLBRACK, tLEQ, tLPAREN, tLPAREN_ARG, tLSHFT, tMATCH, tNEQ, tNMATCH, tNTH_REF, tok, TOK_INTERN, tokadd, tokadd_mbchar, tokaddmbc, token, tokfix, tokidx, toklast, toklen, tOP_ASGN, tOROP, tPOW, tQWORDS_BEG, tREGEXP_BEG, tREGEXP_END, tRSHFT, TRUE, tSP, tSTAR, tSTRING_BEG, tSTRING_END, tSYMBEG, tUMINUS, tUMINUS_NUM, tUPLUS, tWORDS_BEG, tXSTRING_BEG, void, warn_balanced, was_bol, whole_match_p, and yyerror.
|
static |
|
static |
Definition at line 14827 of file ripper.c.
References compile_error, nd_type, NODE_BACK_REF, NODE_NTH_REF, and PARSER_ARG.
int rb_enc_symname2_p | ( | const char * | name, |
long | len, | ||
rb_encoding * | enc | ||
) |
Definition at line 16047 of file ripper.c.
Referenced by rb_enc_symname_p(), and reg_named_capture_assign_iter().
int rb_enc_symname_p | ( | const char * | name, |
rb_encoding * | enc | ||
) |
Definition at line 16041 of file ripper.c.
Referenced by rb_symname_p(), and sym_inspect().
Definition at line 15827 of file ripper.c.
Referenced by gc_marks().
Definition at line 15991 of file ripper.c.
Referenced by gc_marks().
Definition at line 16362 of file ripper.c.
Referenced by add_opt_method(), addrinfo_inspect(), check_dump_arg(), check_exec_redirect(), check_load_arg(), chunk_ii(), control_frame_dump(), econv_opts(), error_pos(), esignal_init(), extract_user_token(), fole_missing(), generic_ivar_get(), gettable_gen(), id2ref(), insn_data_to_s_detail(), insn_operand_intern(), inspect_enumerator(), inspect_i(), inspect_sockaddr(), iseq_compile_each(), iseq_load(), ivar_get(), match_aref(), match_backref_number(), mnew(), must_respond_to(), new_bv_gen(), num_sadded(), ossl_pkcs7_sym2typeid(), ossl_sslctx_set_ssl_version(), r_object0(), racc_yyparse(), rb_attr(), rb_autoload(), rb_const_get_0(), rb_const_remove(), rb_const_set(), rb_cvar_get(), rb_cvar_set(), rb_define_class_id_under(), rb_dlcfunc_call(), rb_exec_arg_addopt(), rb_f_kill(), rb_f_local_variables(), rb_f_untrace_var(), rb_insecure_operation(), rb_iseq_disasm(), rb_iseq_parameters(), rb_method_call_status(), rb_method_entry_make(), rb_mod_const_defined(), rb_mod_const_get(), rb_mod_const_set(), rb_mod_cvar_defined(), rb_mod_cvar_get(), rb_mod_cvar_set(), rb_mod_remove_const(), rb_mod_remove_cvar(), rb_notimplement(), rb_obj_ivar_defined(), rb_obj_ivar_get(), rb_obj_ivar_set(), rb_obj_remove_instance_variable(), rb_print_undef(), rb_search_method_entry(), rb_secure(), rb_str_format(), rb_str_setter(), rb_struct_aref_id(), rb_struct_aset_id(), rb_struct_getmember(), rb_struct_set(), rb_thread_current_status(), rb_undef(), readonly_setter(), reg_named_capture_assign_iter(), remove_method(), rsock_revlookup_flag(), ruby_debug_print_id(), set_const_visibility(), set_method_visibility(), shadowing_lvar_gen(), sockopt_inspect(), specific_eval(), trap_signm(), undef_getter(), uninitialized_constant(), validate_label(), vm_call_method(), vm_define_method(), vm_getivar(), void_expr_gen(), vtable_add(), and warn_unused_var().
Definition at line 16301 of file ripper.c.
Referenced by add_id(), addrinfo_mdump(), classname(), fc_path(), insn_operand_intern(), inspect_struct(), iseq_compile_each(), iseq_data_to_ary(), method_inspect(), r_unique(), rb_attr(), rb_define_class_id_under(), rb_define_module_id_under(), rb_enc_get_index(), rb_id2name(), rb_id2str(), rb_intern3(), rb_sym_to_s(), rsock_ipaddr(), sym_capitalize(), sym_downcase(), sym_empty(), sym_encoding(), sym_inspect(), sym_length(), sym_swapcase(), sym_upcase(), trap_handler(), vm_backtrace_each(), and w_symbol().
Definition at line 14811 of file ripper.c.
Referenced by attrset_gen(), make_struct(), rb_attr(), rb_intern3(), and rb_struct_set().
Definition at line 16271 of file ripper.c.
Referenced by global_id(), Init_load(), rb_f_global_variables(), rb_intern(), and switch().
ID rb_intern3 | ( | const char * | name, |
long | len, | ||
rb_encoding * | enc | ||
) |
Definition at line 16140 of file ripper.c.
Referenced by rb_intern2(), rb_intern3(), rb_intern_str(), rb_path_to_class(), rb_str_format(), and reg_named_capture_assign_iter().
Definition at line 16284 of file ripper.c.
Referenced by r_symreal(), rb_attr(), rb_id2str(), rb_str_intern(), switch(), and w_unique().
Definition at line 16409 of file ripper.c.
Referenced by cv_i(), rb_cv_get(), rb_cv_set(), rb_define_class_variable(), rb_mod_cvar_defined(), rb_mod_cvar_get(), rb_mod_cvar_set(), and rb_mod_remove_cvar().
Definition at line 16403 of file ripper.c.
Referenced by defined_expr(), fc_i(), inspect_struct(), iseq_compile_each(), make_struct(), ole_const_load(), rb_attr(), rb_autoload(), rb_define_const(), rb_mod_const_defined(), rb_mod_const_get(), rb_mod_const_set(), rb_mod_remove_const(), and sv_i().
Definition at line 16415 of file ripper.c.
Referenced by inspect_i(), ivar_i(), rb_obj_ivar_defined(), rb_obj_ivar_get(), rb_obj_ivar_set(), and rb_obj_remove_instance_variable().
Definition at line 16421 of file ripper.c.
Referenced by collect_local_variables_in_iseq(), inspect_struct(), make_struct(), and rb_attr().
Definition at line 15832 of file ripper.c.
Referenced by process_options().
void* rb_parser_calloc | ( | struct parser_params * | parser, |
size_t | nelem, | ||
size_t | size | ||
) |
Definition at line 11652 of file ripper.c.
Referenced by iseq_s_compile_file(), load_file_internal(), and rb_compile_file().
Definition at line 11617 of file ripper.c.
Referenced by load_file_internal(), parse_string(), and process_options().
Definition at line 16616 of file ripper.c.
Referenced by load_file_internal().
Definition at line 16601 of file ripper.c.
Referenced by load_file_internal().
void rb_parser_free | ( | struct parser_params * | parser, |
void * | ptr | ||
) |
void* rb_parser_malloc | ( | struct parser_params * | parser, |
size_t | size | ||
) |
Definition at line 16587 of file ripper.c.
Referenced by iseq_s_compile_file(), parse_string(), process_options(), rb_compile_cstr(), rb_compile_file(), rb_compile_string(), and rb_load_file().
void* rb_parser_realloc | ( | struct parser_params * | parser, |
void * | ptr, | ||
size_t | size | ||
) |
Definition at line 16646 of file ripper.c.
Referenced by process_options().
Definition at line 15864 of file ripper.c.
Referenced by process_options().
Definition at line 16394 of file ripper.c.
Referenced by Init_String().
|
static |
Definition at line 15097 of file ripper.c.
References end, RNode::flags, int, nd_body, nd_else, nd_head, nd_next, nd_resq, nd_type, NEW_NIL, NODE_BEGIN, NODE_BLOCK, NODE_CASE, NODE_ENSURE, NODE_FL_NEWLINE, NODE_IF, NODE_NIL, NODE_RESCUE, NODE_RETURN, NODE_WHEN, and subnodes.
|
static |
Definition at line 15803 of file ripper.c.
References compile_error, err, m, NIL_P, PARSER_ARG, Qnil, rb_attr_get(), rb_errinfo, rb_intern, rb_reg_compile(), rb_set_errinfo(), rb_str_append(), rb_str_cat(), RE_OPTION_MASK, reg_fragment_setenc, RSTRING_PTR, ruby_sourcefile, and ruby_sourceline.
|
static |
Definition at line 15708 of file ripper.c.
References compile_error, err, PARSER_ARG, Qnil, RB_GC_GUARD, rb_obj_as_string(), rb_reg_check_preprocess(), reg_fragment_setenc, and RSTRING_PTR.
|
static |
Definition at line 15669 of file ripper.c.
References c, compile_error, parser_params::enc, ENC_CODERANGE_7BIT, ENCODING_GET, ENCODING_IS_ASCII8BIT, ENCODING_SET, idx, PARSER_ARG, rb_ascii8bit_encoding(), rb_char_to_option_kcode(), rb_enc_associate(), rb_enc_get(), rb_enc_name, rb_enc_str_coderange(), rb_usascii_encoding(), RE_OPTION_ENCODING_IDX, and RE_OPTION_ENCODING_NONE.
|
static |
Definition at line 15771 of file ripper.c.
References arg, block_append, reg_named_capture_assign_t::enc, reg_named_capture_assign_t::fail_block, gettable, INT2FIX, match(), NEW_CALL, NEW_IF, NEW_LIST, NEW_LIT, newline_node(), reg_named_capture_assign_t::num, onig_foreach_name(), parser, reg_named_capture_assign_t::parser, ptr, Qnil, rb_enc_get(), rb_intern, reg_named_capture_assign_iter(), RREGEXP, and reg_named_capture_assign_t::succ_block.
|
static |
Definition at line 15731 of file ripper.c.
References arg, assignable, block_append, dvar_defined, enc, reg_named_capture_assign_t::enc, reg_named_capture_assign_t::fail_block, gettable, ID2SYM, idAREF, ISASCII, len, local_id, MAX_WORD_LENGTH, name, NEW_BEGIN, NEW_CALL, NEW_LIST, NEW_LIT, newline_node(), node_assign, reg_named_capture_assign_t::num, reg_named_capture_assign_t::parser, Qnil, rb_enc_islower, rb_enc_symname2_p(), rb_id2name(), rb_intern, rb_intern3(), rb_reserved_word, rb_warningS, s, ST_CONTINUE, reg_named_capture_assign_t::succ_block, and var.
Referenced by reg_named_capture_assign_gen().
|
static |
Definition at line 16130 of file ripper.c.
References global_symbols, id, symbols::id_str, OBJ_FREEZE, rb_enc_str_new(), st_add_direct, and symbols::sym_id.
Referenced by rb_intern3().
Definition at line 15087 of file ripper.c.
References n, nd_type, and NODE_BEGIN.
Referenced by newline_node(), and switch().
|
static |
Definition at line 15366 of file ripper.c.
References nd_set_type, nd_type, no_blockarg(), NODE_ARRAY, and NODE_VALUES.
|
static |
Definition at line 12900 of file ripper.c.
References ISALNUM, ISSPACE, parser_encode_length(), parser_set_encode(), rb_str_new(), rb_str_resize(), RSTRING_PTR, s, str, and STRNCASECMP.
Referenced by parser_yylex().
|
static |
Definition at line 14757 of file ripper.c.
References dvar_curr, dvar_defined_get, dyna_in_block, local_id, LVAR_USED, lvtbl, name, rb_id2name(), rb_warningS, ruby_sourceline, vtable_add(), and yyerror.
Definition at line 14883 of file ripper.c.
References nd_type, NODE_ARRAY, and NODE_SPLAT.
Referenced by switch().
switch | ( | yytype | ) |
switch | ( | yyn | ) |
Definition at line 5029 of file ripper.c.
References alias, ALLOC_N, arg_append, arg_blk_pass(), arg_concat, arg_var, args, aryset, assignable, attrset, block_append, block_dup_check, buf, call_bin_op, call_uni_op, CMDARG_PUSH, cmdarg_stack, command_call, command_start, compile_error, compile_for_eval, cond, COND_POP, COND_PUSH, cond_stack, cur_mid, deferred_nodes, dispatch0(), dyna_in_block, dyna_pop, dyna_push, END, escape_Qundef(), evstr2dstr, EXPR_BEG, EXPR_END, EXPR_ENDARG, EXPR_ENDFN, EXPR_FNAME, FIXNUM_P, fixpos(), fixup_nodes(), formal_argument, get_id, get_value, gettable, hash, YYSTYPE::id, id, ID2SYM, ifndef_ripper, in_def, in_defined, in_single, INT2FIX, internal_id, is_asgn_or_id, is_local_id, keyword__ENCODING__, keyword__FILE__, keyword__LINE__, keyword_false, keyword_nil, keyword_self, keyword_true, lex_state, lex_strterm, list, list_append, list_concat, literal_concat, literal_concat0(), local_id, local_pop, local_push, logop, lpar_beg, m, match_op, nd_aid, nd_args, nd_body, nd_iter, nd_lit, nd_next, nd_plen, nd_set_line(), nd_set_type, nd_type, nd_value, nd_vid, negate_lit(), NEW_ALIAS, new_args, NEW_ARGS_AUX, NEW_ARGSCAT, NEW_BEGIN, NEW_BLOCK_PASS, NEW_BREAK, new_bv, NEW_CALL, NEW_CASE, NEW_CDECL, NEW_CLASS, NEW_COLON2, NEW_COLON3, NEW_CVAR, NEW_DASGN_CURR, NEW_DEFINED, NEW_DEFN, NEW_DEFS, NEW_DOT2, NEW_DOT3, NEW_DSTR, NEW_DVAR, NEW_ENSURE, NEW_ERRINFO, NEW_EVSTR, new_evstr, NEW_FCALL, NEW_FOR, NEW_GVAR, NEW_HASH, NEW_IF, NEW_ITER, NEW_IVAR, NEW_LAMBDA, NEW_LIST, NEW_LIT, NEW_LVAR, NEW_MASGN, NEW_MODULE, NEW_NEXT, NEW_NIL, NEW_NODE, NEW_OP_ASGN1, NEW_OP_ASGN2, NEW_OP_ASGN_AND, NEW_OP_ASGN_OR, NEW_OPT_ARG, NEW_POSTARG, NEW_POSTEXE, NEW_REDO, NEW_RESBODY, NEW_RESCUE, NEW_RETRY, NEW_RETURN, NEW_SCLASS, NEW_SCOPE, NEW_SPLAT, NEW_STR, NEW_SUPER, NEW_UNDEF, NEW_UNLESS, NEW_UNTIL, NEW_VALIAS, NEW_WHEN, NEW_WHILE, NEW_XSTR, NEW_YIELD, new_yield, NEW_ZARRAY, NEW_ZSUPER, newline_node(), NIL_P, YYSTYPE::node, NODE_AND, NODE_ARRAY, node_assign, NODE_BEGIN, NODE_BLOCK, NODE_BLOCK_PASS, NODE_DASGN, NODE_DASGN_CURR, NODE_DREGX, NODE_DREGX_ONCE, NODE_DSTR, NODE_DSYM, NODE_DXSTR, NODE_ENSURE, NODE_FL_NEWLINE, NODE_LASGN, NODE_LIT, NODE_MASGN, NODE_OR, NODE_RESCUE, NODE_SCOPE, NODE_SELF, NODE_STR, NODE_XSTR, NODE_YIELD, NODE_ZARRAY, NOEX_PRIVATE, NULL, YYSTYPE::num, one(), opts, paren_nest, PARSER_ARG, Qfalse, Qnil, Qundef, rb_ary_new3(), rb_ary_push(), rb_assoc_new(), rb_backref_error, rb_cArray, rb_gc_force_recycle(), rb_intern, rb_intern2(), rb_intern_str(), rb_parse_in_main(), rb_str_resize(), rb_warn0, rb_warning0, RE_OPTION_MASK, RE_OPTION_ONCE, reduce_nodes, reg_compile, reg_fragment_check, reg_named_capture_assign, remove_begin(), ret_args, ripper_id2sym(), ripper_intern(), ruby_eval_tree, ruby_eval_tree_begin, ruby_sourceline, shadowing_lvar, splat_array(), src, STR_NEW0, T_REGEXP, tANDOP, tAREF, tASET, tbl, tCMP, tEQ, tEQQ, tGEQ, tLEQ, tLSHFT, tMATCH, tNEQ, tNMATCH, token_info_pop, token_info_push, tOROP, tPOW, tRSHFT, TRUE, tUMINUS, tUPLUS, TYPE, YYSTYPE::val, val, value_expr, YYSTYPE::vars, void_expr, void_stmts, yyerrok, yyerror, and zero().
Definition at line 16371 of file ripper.c.
References ID2SYM, rb_ary_push(), and ST_CONTINUE.
Referenced by rb_sym_all_symbols().
|
static |
Definition at line 11302 of file ripper.c.
References lex_p, lex_pbeg, p, and strlen().
Referenced by token_info_pop(), and token_info_push().
|
static |
Definition at line 11316 of file ripper.c.
References lex_p, lex_pbeg, p, and strlen().
Referenced by token_info_pop(), and token_info_push().
|
static |
Definition at line 11346 of file ripper.c.
References token_info::column, finish, token_info::linenum, token_info::next, token_info::nonspc, parser_params::parser_token_info, parser_params::parser_token_info_enabled, rb_compile_warn(), ruby_sourcefile, ruby_sourceline, token_info::token, token_info_get_column(), token_info_has_nonspaces(), and xfree.
|
static |
Definition at line 11329 of file ripper.c.
References ALLOC, token_info::column, token_info::linenum, token_info::next, token_info::nonspc, parser_params::parser_token_info, parser_params::parser_token_info_enabled, ruby_sourceline, token_info::token, token, token_info_get_column(), and token_info_has_nonspaces().
|
static |
Definition at line 14922 of file ripper.c.
References cond, FALSE, nd_type, NODE_AND, NODE_BEGIN, NODE_BLOCK, NODE_BREAK, NODE_DEFN, NODE_DEFS, NODE_IF, NODE_NEXT, NODE_OR, NODE_REDO, NODE_RETRY, NODE_RETURN, parser_warning, rb_warning0, TRUE, value_expr, and yyerror.
|
static |
Definition at line 14984 of file ripper.c.
References nd_line, nd_type, NODE_BACK_REF, NODE_CALL, NODE_COLON2, NODE_COLON3, NODE_CONST, NODE_CVAR, NODE_DEFINED, NODE_DOT2, NODE_DOT3, NODE_DREGX, NODE_DREGX_ONCE, NODE_DSTR, NODE_DVAR, NODE_FALSE, NODE_GVAR, NODE_IVAR, NODE_LIT, NODE_LVAR, NODE_NIL, NODE_NTH_REF, NODE_SELF, NODE_STR, NODE_TRUE, rb_id2name(), rb_warnS, RTEST, ruby_sourceline, ruby_verbose, tCMP, tEQ, tGEQ, tLEQ, tNEQ, tPOW, tUMINUS, and tUPLUS.
|
static |
Definition at line 15073 of file ripper.c.
References nd_type, NODE_BLOCK, RTEST, ruby_verbose, and void_expr0.
Definition at line 209 of file ripper.c.
References vtable::capa, id, POINTER_P, vtable::pos, rb_bug(), rb_id2name(), REALLOC_N, vtable::tbl, and VTBL_DEBUG.
Referenced by arg_var_gen(), local_var_gen(), and shadowing_lvar_gen().
Definition at line 185 of file ripper.c.
References ALLOC, ALLOC_N, vtable::capa, vtable::pos, vtable::prev, vtable::tbl, tbl, and VTBL_DEBUG.
Referenced by dyna_push_gen(), and local_push_gen().
Definition at line 197 of file ripper.c.
References POINTER_P, vtable::tbl, VTBL_DEBUG, and xfree.
Referenced by dyna_pop_1(), and local_pop_gen().
Definition at line 224 of file ripper.c.
References i, POINTER_P, vtable::pos, and vtable::tbl.
Referenced by dvar_curr_gen(), dvar_defined_gen(), and local_id_gen().
Definition at line 172 of file ripper.c.
References POINTER_P, and vtable::pos.
Referenced by arg_var_gen(), internal_id_gen(), local_tbl_gen(), local_var_gen(), and vtable_tblcpy().
Definition at line 15506 of file ripper.c.
References buf, cnt, i, vtable::tbl, and vtable_size().
Referenced by local_tbl_gen().
|
static |
Definition at line 15199 of file ripper.c.
References e_option_supplied(), and parser_warn.
Referenced by cond0(), and range_op().
|
static |
Definition at line 15455 of file ripper.c.
References cnt, i, LVAR_USED, vtable::pos, rb_bug(), rb_compile_warn(), rb_id2name(), ruby_sourcefile, vtable::tbl, local_vars::used, v, and local_vars::vars.
Referenced by dyna_pop_1(), and local_pop_gen().
|
static |
Definition at line 15205 of file ripper.c.
References e_option_supplied(), and parser_warning.
Referenced by cond0().
while | ( | yyssp! | = yyss | ) |
Definition at line 11149 of file ripper.c.
References yydestruct(), and YYPOPSTACK.
yyexhaustedlab YY_ | ( | "memory exhausted" | ) |
YY_REDUCE_PRINT | ( | yyn | ) |
YY_SYMBOL_PRINT | ( | "Shifting" | , |
yytoken | , | ||
& | yylval, | ||
& | yylloc | ||
) |
YY_SYMBOL_PRINT | ( | ) |
|
static |
Definition at line 11528 of file ripper.c.
References ruby_sourcefile, ruby_sourceline, ruby_strdup(), ruby_suppress_tracing(), TRUE, and yycompile0().
Referenced by parser_compile_string(), and rb_parser_compile_file().
Definition at line 11480 of file ripper.c.
References compile_for_eval, coverage(), debug_lines(), deferred_nodes, e_option_supplied(), lex_lastline, lex_nextline, lex_p, lex_pbeg, lex_pend, lex_strterm, n, parser_params::nerr, NEW_NIL, NEW_PRELUDE, parser_prepare(), parser_params::parser_token_info_enabled, rb_ary_push(), rb_safe_level, RTEST, ruby_coverage, ruby_debug_lines, ruby_eval_tree, ruby_eval_tree_begin, ruby_sourcefile, ruby_sourceline, ruby_verbose, STR_NEW0, and yyparse.
Referenced by yycompile().
YYDPRINTF | ( | (stderr,"Starting parse\n") | ) |
YYFPRINTF | ( | yyoutput | , |
" | |||
) |
YYFPRINTF | ( | stderr | , |
"\n" | |||
) |
int yyparse | ( | ) |
YYPOPSTACK | ( | yylen | ) |
YYSTACK_FREE | ( | yyss | ) |
YYSTACK_FREE | ( | yymsg | ) |
|
static |
Definition at line 4579 of file ripper.c.
References YY_, YYCASE_, YYEMPTY, YYLAST, yymsg, yyn, YYNTOKENS, yypact_value_is_default, YYSIZE_T, yyssp, YYSTACK_ALLOC_MAXIMUM, yytable_value_is_error, YYTERROR, yytnamerr(), and yytoken.
YYUSE | ( | parser | ) |
YYUSE | ( | yyoutput | ) |
yynewstate __pad0__ |
yysetstate __pad1__ |
continue |
else |
Referenced by Init_sym(), rb_gc_mark_symbols(), rb_id2str(), rb_intern3(), rb_sym_all_symbols(), and register_symid().
|
static |
|
static |
Definition at line 12765 of file ripper.c.
Referenced by parser_magic_comment().
struct { ... } op_tbl[] |
Referenced by rb_id2str(), and rb_intern3().
int struct parser_params * parser |
Definition at line 4323 of file ripper.c.
Referenced by allocate(), dealloc(), initialize_params(), iseq_s_compile_file(), load_file(), load_file_internal(), mark(), parse(), parse_string(), parser_compile_string(), process_options(), rb_parser_append_print(), rb_parser_compile_file(), rb_parser_encoding(), rb_parser_end_seen_p(), rb_parser_get_yydebug(), rb_parser_set_yydebug(), rb_parser_while_loop(), rb_syck_compile(), reg_named_capture_assign_gen(), syck_parser_bufsize_get(), syck_parser_bufsize_set(), syck_parser_load(), syck_parser_load_documents(), syck_parser_s_alloc(), syck_set_model(), syck_yaml2byte(), sycklex_bytecode_utf8(), sycklex_yaml_utf8(), and yyparse().
|
static |
|
static |
return t = parser_yylex(parser) |
Definition at line 14285 of file ripper.c.
Referenced by bigmul0(), bigmul1_toom3(), bm_search(), bm_search_backward(), bm_search_notrev(), console_echo_p(), console_set_cooked(), console_set_echo(), console_set_raw(), d_lite_plus(), d_lite_rshift(), date_s_today(), datetime_to_time(), decode_year(), dt_new_by_frags(), encode_year(), f_muldiv(), fnmatch_helper(), for(), getrusage_time(), gmtime_with_leapsecond(), gmtimew(), guess_local_offset(), i_gcd(), if(), join_argv(), localtimew(), md5_process(), mmrot3_(), mmswap_(), name_add(), nrv_alloc(), num_exact(), nurat_rationalize_internal(), obj_to_asn1gtime(), obj_to_asn1utime(), old_to_new(), onig_names_free(), ossl_ssl_session_get_time(), ossl_ssl_session_get_timeout(), ossl_ssl_session_set_time(), ossl_ssl_session_set_timeout(), ossl_x509stctx_initialize(), ossl_x509stctx_set_time(), ossl_x509stctx_set_trust(), ossl_x509store_set_trust(), pack_pack(), pack_unpack(), parser_here_document(), parser_parse_string(), power_cache_get_power(), rb_ary_compact_bang(), rb_ary_times(), rb_big_lshift(), rb_big_rshift(), rb_check_backtrace(), rb_file_ftype(), rb_file_s_rename(), rb_gc_unregister_address(), rb_gmtime_r(), rb_localtime_r(), rb_mutex_wait_for(), rb_proc_exec(), rb_reg_quote(), rb_str_delete_bang(), rb_str_format(), rb_str_index(), rb_str_lstrip_bang(), rb_str_rindex(), rb_str_rstrip_bang(), rb_str_split_m(), rb_str_squeeze_bang(), rb_time_timespec(), rb_time_timeval(), rb_vmdebug_stack_dump_raw(), rb_w32_free_environ(), rbtime2vtdate(), remove_backslashes(), remove_sign_bits(), remove_trace(), rotl64_swap(), ruby_brace_expand(), ruby_qsort(), search_nonascii(), set_ttymode(), slow_search(), slow_search_backward(), sock_initialize(), st_hash(), str_strlen(), string_to_c_internal(), syck_genericresolver_node_import(), syck_node_transform(), sycklex_bytecode_utf8(), sycklex_yaml_utf8(), time_s_at(), time_timespec(), timegmw(), timelocalw(), timew_out_of_timet_range(), and window_subwin().
ID token |
Definition at line 15905 of file ripper.c.
Referenced by parser_yylex(), rb_id2str(), and token_info_push().
Definition at line 14289 of file ripper.c.
Referenced by alt_merge_opt_map_info(), array2fdset(), ary_join_0(), ary_join_1(), ary_len_of_dim(), atomic_size_exchange(), autoload_delete(), autoload_node(), autoload_node_id(), BigDecimal_mode(), BSD__ultoa(), bsock_do_not_rev_lookup_set(), bsock_setsockopt(), char_to_option(), check_exec_env_i(), check_exec_fds(), check_exec_options_i(), check_exec_redirect(), decode_bool(), e2s_conv(), enum_member(), env_aset(), env_delete(), env_delete_m(), env_reject_bang(), env_select_bang(), env_shift(), fdbm_delete_if(), fdbm_each_pair(), fdbm_each_value(), fdbm_has_key(), fdbm_has_value(), fdbm_invert(), fdbm_key(), fdbm_select(), fdbm_shift(), fdbm_store(), fdbm_to_a(), fdbm_to_hash(), fdbm_values(), fgdbm_set_cachesize(), fgdbm_set_fastmode(), fgdbm_set_syncmode(), fgdbm_store(), fix_and(), fix_or(), fix_to_f(), fix_xor(), fixup_nodes(), flo_abs(), flo_ceil(), flo_floor(), flo_truncate(), folevariant_ary_aref(), folevariant_initialize(), folevariant_value(), force_chain_object(), fsdbm_delete_if(), fsdbm_each_pair(), fsdbm_each_value(), fsdbm_has_key(), fsdbm_has_value(), fsdbm_invert(), fsdbm_key(), fsdbm_select(), fsdbm_shift(), fsdbm_store(), fsdbm_to_a(), fsdbm_to_hash(), fsdbm_values(), generic_ivar_get(), get_iconv_opt_i(), get_pat(), get_transcoder_entry(), getpair(), hash2ptr_dispparams(), if(), init_env(), insn_data_to_s_detail(), iseq_compile_each(), iseq_data_to_ary(), ivar_get(), lexer_i(), lfp_svar_set(), limited_big_rand(), limited_rand(), make_transcoder_entry(), map_charset(), memfill(), NIL_P(), nkf_unicode_to_utf8(), obj_ivar_each(), obj_ivar_i(), ole_ary_m_entry(), ole_const_load(), ole_variable_value(), ole_variant2val(), onig_scan_unsigned_number(), ossl_asn1_decode_all(), ossl_asn1obj_get_ln(), ossl_asn1obj_get_oid(), ossl_asn1obj_get_sn(), ossl_debug_set(), ossl_sslctx_setup(), parse(), parser_magic_comment(), r_ivar(), rb_ary_index(), rb_ary_initialize(), rb_ary_join(), rb_ary_rindex(), rb_ary_store(), rb_callcc(), rb_catch_obj(), rb_check_convert_type(), rb_check_to_float(), rb_check_to_integer(), rb_const_remove(), rb_const_set(), rb_convert_to_integer(), rb_convert_type(), rb_cstr_to_inum(), rb_dlcfunc_inspect(), rb_dlcfunc_new(), rb_dlptr_new2(), rb_dlptr_s_to_ptr(), rb_dlptr_to_s(), rb_dlptr_to_str(), rb_env_clear(), rb_eval_cmd(), rb_eval_string_wrap(), rb_fix2str(), rb_fix_lshift(), rb_fix_rshift(), rb_Float(), rb_gdbm_fetch(), rb_gvar_set(), rb_gzfile_set_mtime(), rb_hash_aref(), rb_hash_aset(), rb_hash_delete(), rb_hash_delete_key(), rb_hash_fetch_m(), rb_hash_has_value(), rb_hash_lookup2(), rb_hash_s_create(), rb_iseq_eval(), rb_iseq_eval_main(), rb_ivar_defined(), rb_ivar_set(), rb_mod_cvar_set(), rb_mod_remove_cvar(), rb_num2fix(), rb_num_to_uint(), rb_obj_remove_instance_variable(), rb_reg_regsub(), rb_remove_history(), rb_run_exec_options_err(), rb_stdio_set_default_encoding(), rb_str_aset(), rb_str_format(), rb_str_setter(), rb_struct_aset(), rb_struct_aset_id(), rb_struct_set(), rb_thread_abort_exc_set(), rb_thread_blocking_region(), rb_thread_io_blocking_region(), rb_thread_local_aref(), rb_thread_local_aset(), rb_thread_s_abort_exc_set(), rb_to_float(), rb_to_integer(), rb_vm_call_cfunc(), rb_vm_invoke_proc(), rb_vmdebug_proc_dump_raw(), rb_w32_asynchronize(), reg_get_val(), reg_get_val2(), rsock_sockaddr_string_value(), ruby_atomic_exchange(), s2e_conv(), scan_unsigned_hexadecimal_number(), scan_unsigned_octal_number(), set_const_visibility(), splpage(), st_foreach(), stdout_setter(), str_end_hash(), str_gsub(), strio_sysread(), strip_glibc_option(), switch(), syck_badalias_cmp(), syck_get_hash_aref(), syck_map_value_set(), syck_resolver_tagurize(), syck_resolver_transfer(), syck_scalar_value_set(), syck_seq_value_set(), transcode_search_path(), transcode_search_path_i(), type_cclass_hash(), unicode_to_jis_common2(), val2dispatch(), verbose_setter(), vm_call0(), vm_call_bmethod(), vm_call_cfunc(), vm_call_method(), vm_get_ev_const(), vm_getivar(), vm_getspecial(), vm_invoke_block(), vm_setivar(), vm_yield_with_cfunc(), VpComp(), VpDtoV(), VpSqrt(), w16e_conv(), w_oconv(), w_oconv16(), when_vals(), and window_attron().
|
static |
|
static |
|
static |
|
static |
int yyi |
YYSTYPE yylval |
|
static |
Definition at line 4719 of file ripper.c.
Referenced by if(), yyparse(), and yysyntax_error().
yyn = yytoken |
Definition at line 4815 of file ripper.c.
Referenced by for(), if(), yyparse(), yysyntax_error(), and yytnamerr().
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
yytype_int16 yyssa[YYINITDEPTH] |
yyssp = yyss |
Definition at line 4806 of file ripper.c.
Referenced by for(), yyparse(), and yysyntax_error().
yystacksize = YYINITDEPTH |
|
static |
Definition at line 4483 of file ripper.c.
Referenced by yytnamerr().
|
static |
yytoken = 0 |
Definition at line 4818 of file ripper.c.
Referenced by yyparse(), and yysyntax_error().
yytype_int16* yytop |
|
static |
YYSTYPE yyvsa[YYINITDEPTH] |