Data Structures |
| struct | kw_assoc |
| struct | ripper_args |
Defines |
| #define | YYDEBUG 1 |
| #define | YYERROR_VERBOSE 1 |
| #define | YYSTACK_USE_ALLOCA 0 |
| #define | numberof(array) (int)(sizeof(array) / sizeof((array)[0])) |
| #define | YYMALLOC(size) rb_parser_malloc(parser, (size)) |
| #define | YYREALLOC(ptr, size) rb_parser_realloc(parser, (ptr), (size)) |
| #define | YYCALLOC(nelem, size) rb_parser_calloc(parser, (nelem), (size)) |
| #define | YYFREE(ptr) rb_parser_free(parser, (ptr)) |
| #define | malloc YYMALLOC |
| #define | realloc YYREALLOC |
| #define | calloc YYCALLOC |
| #define | free YYFREE |
| #define | is_notop_id(id) ((id)>tLAST_TOKEN) |
| #define | is_local_id(id) (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_LOCAL) |
| #define | is_global_id(id) (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_GLOBAL) |
| #define | is_instance_id(id) (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_INSTANCE) |
| #define | is_attrset_id(id) (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_ATTRSET) |
| #define | is_const_id(id) (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_CONST) |
| #define | is_class_id(id) (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_CLASS) |
| #define | is_junk_id(id) (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_JUNK) |
| #define | is_asgn_or_id(id) |
| #define | BITSTACK_PUSH(stack, n) ((stack) = ((stack)<<1)|((n)&1)) |
| #define | BITSTACK_POP(stack) ((stack) = (stack) >> 1) |
| #define | BITSTACK_LEXPOP(stack) ((stack) = ((stack) >> 1) | ((stack) & 1)) |
| #define | BITSTACK_SET_P(stack) ((stack)&1) |
| #define | COND_PUSH(n) BITSTACK_PUSH(cond_stack, (n)) |
| #define | COND_POP() BITSTACK_POP(cond_stack) |
| #define | COND_LEXPOP() BITSTACK_LEXPOP(cond_stack) |
| #define | COND_P() BITSTACK_SET_P(cond_stack) |
| #define | CMDARG_PUSH(n) BITSTACK_PUSH(cmdarg_stack, (n)) |
| #define | CMDARG_POP() BITSTACK_POP(cmdarg_stack) |
| #define | CMDARG_LEXPOP() BITSTACK_LEXPOP(cmdarg_stack) |
| #define | CMDARG_P() BITSTACK_SET_P(cmdarg_stack) |
| #define | DVARS_INHERIT ((void*)1) |
| #define | DVARS_TOPSCOPE NULL |
| #define | DVARS_SPECIAL_P(tbl) (!POINTER_P(tbl)) |
| #define | POINTER_P(val) ((VALUE)(val) & ~(VALUE)3) |
| #define | VTBL_DEBUG 0 |
| #define | UTF8_ENC() |
| #define | STR_NEW(p, n) rb_enc_str_new((p),(n),parser->enc) |
| #define | STR_NEW0() rb_enc_str_new(0,0,parser->enc) |
| #define | STR_NEW2(p) rb_enc_str_new((p),strlen(p),parser->enc) |
| #define | STR_NEW3(p, n, e, func) parser_str_new((p),(n),(e),(func),parser->enc) |
| #define | ENC_SINGLE(cr) ((cr)==ENC_CODERANGE_7BIT) |
| #define | TOK_INTERN(mb) rb_intern3(tok(), toklen(), parser->enc) |
| #define | yyerror(msg) parser_yyerror(parser, (msg)) |
| #define | lex_strterm (parser->parser_lex_strterm) |
| #define | lex_state (parser->parser_lex_state) |
| #define | cond_stack (parser->parser_cond_stack) |
| #define | cmdarg_stack (parser->parser_cmdarg_stack) |
| #define | class_nest (parser->parser_class_nest) |
| #define | paren_nest (parser->parser_paren_nest) |
| #define | lpar_beg (parser->parser_lpar_beg) |
| #define | in_single (parser->parser_in_single) |
| #define | in_def (parser->parser_in_def) |
| #define | compile_for_eval (parser->parser_compile_for_eval) |
| #define | cur_mid (parser->parser_cur_mid) |
| #define | in_defined (parser->parser_in_defined) |
| #define | tokenbuf (parser->parser_tokenbuf) |
| #define | tokidx (parser->parser_tokidx) |
| #define | toksiz (parser->parser_toksiz) |
| #define | lex_input (parser->parser_lex_input) |
| #define | lex_lastline (parser->parser_lex_lastline) |
| #define | lex_nextline (parser->parser_lex_nextline) |
| #define | lex_pbeg (parser->parser_lex_pbeg) |
| #define | lex_p (parser->parser_lex_p) |
| #define | lex_pend (parser->parser_lex_pend) |
| #define | heredoc_end (parser->parser_heredoc_end) |
| #define | command_start (parser->parser_command_start) |
| #define | deferred_nodes (parser->parser_deferred_nodes) |
| #define | lex_gets_ptr (parser->parser_lex_gets_ptr) |
| #define | lex_gets (parser->parser_lex_gets) |
| #define | lvtbl (parser->parser_lvtbl) |
| #define | ruby__end__seen (parser->parser_ruby__end__seen) |
| #define | ruby_sourceline (parser->parser_ruby_sourceline) |
| #define | ruby_sourcefile (parser->parser_ruby_sourcefile) |
| #define | current_enc (parser->enc) |
| #define | yydebug (parser->parser_yydebug) |
| #define | remove_begin(node) (node) |
| #define | rb_dvar_defined(id) 0 |
| #define | rb_local_defined(id) 0 |
| #define | get_id(id) ripper_get_id(id) |
| #define | get_value(val) ripper_get_value(val) |
| #define | assignable(lhs, node) assignable_gen(parser, (lhs)) |
| #define | id_is_var(id) id_is_var_gen(parser, (id)) |
| #define | formal_argument(id) formal_argument_gen(parser, (id)) |
| #define | shadowing_lvar(name) shadowing_lvar_gen(parser, (name)) |
| #define | new_bv(id) new_bv_gen(parser, (id)) |
| #define | local_push(top) local_push_gen(parser,(top)) |
| #define | local_pop() local_pop_gen(parser) |
| #define | local_var(id) local_var_gen(parser, (id)); |
| #define | arg_var(id) arg_var_gen(parser, (id)) |
| #define | local_id(id) local_id_gen(parser, (id)) |
| #define | internal_id() internal_id_gen(parser) |
| #define | dyna_push() dyna_push_gen(parser) |
| #define | dyna_pop(node) dyna_pop_gen(parser, (node)) |
| #define | dyna_in_block() dyna_in_block_gen(parser) |
| #define | dyna_var(id) local_var(id) |
| #define | dvar_defined(id) dvar_defined_gen(parser, (id), 0) |
| #define | dvar_defined_get(id) dvar_defined_gen(parser, (id), 1) |
| #define | dvar_curr(id) dvar_curr_gen(parser, (id)) |
| #define | lvar_defined(id) lvar_defined_gen(parser, (id)) |
| #define | RE_OPTION_ONCE (1<<16) |
| #define | RE_OPTION_ENCODING_SHIFT 8 |
| #define | RE_OPTION_ENCODING(e) (((e)&0xff)<<RE_OPTION_ENCODING_SHIFT) |
| #define | RE_OPTION_ENCODING_IDX(o) (((o)>>RE_OPTION_ENCODING_SHIFT)&0xff) |
| #define | RE_OPTION_ENCODING_NONE(o) ((o)&RE_OPTION_ARG_ENCODING_NONE) |
| #define | RE_OPTION_MASK 0xff |
| #define | RE_OPTION_ARG_ENCODING_NONE 32 |
| #define | NODE_STRTERM NODE_ZARRAY |
| #define | NODE_HEREDOC NODE_ARRAY |
| #define | SIGN_EXTEND(x, n) (((1<<(n)-1)^((x)&~(~0<<(n))))-(1<<(n)-1)) |
| #define | nd_func u1.id |
| #define | nd_term(node) SIGN_EXTEND((node)->u2.id, CHAR_BIT*2) |
| #define | nd_paren(node) (char)((node)->u2.id >> CHAR_BIT*2) |
| #define | nd_nest u3.cnt |
| #define | RIPPER_VERSION "0.1.0" |
| #define | dispatch0(n) ripper_dispatch0(parser, TOKEN_PASTE(ripper_id_, n)) |
| #define | dispatch1(n, a) ripper_dispatch1(parser, TOKEN_PASTE(ripper_id_, n), (a)) |
| #define | dispatch2(n, a, b) ripper_dispatch2(parser, TOKEN_PASTE(ripper_id_, n), (a), (b)) |
| #define | dispatch3(n, a, b, c) ripper_dispatch3(parser, TOKEN_PASTE(ripper_id_, n), (a), (b), (c)) |
| #define | dispatch4(n, a, b, c, d) ripper_dispatch4(parser, TOKEN_PASTE(ripper_id_, n), (a), (b), (c), (d)) |
| #define | dispatch5(n, a, b, c, d, e) ripper_dispatch5(parser, TOKEN_PASTE(ripper_id_, n), (a), (b), (c), (d), (e)) |
| #define | yyparse ripper_yyparse |
| #define | ripper_intern(s) ID2SYM(rb_intern(s)) |
| #define | arg_new() dispatch0(args_new) |
| #define | arg_add(l, a) dispatch2(args_add, (l), (a)) |
| #define | arg_add_star(l, a) dispatch2(args_add_star, (l), (a)) |
| #define | arg_add_block(l, b) dispatch2(args_add_block, (l), (b)) |
| #define | arg_add_optblock(l, b) ((b)==Qundef? (l) : dispatch2(args_add_block, (l), (b))) |
| #define | bare_assoc(v) dispatch1(bare_assoc_hash, (v)) |
| #define | arg_add_assocs(l, b) arg_add((l), bare_assoc(b)) |
| #define | args2mrhs(a) dispatch1(mrhs_new_from_args, (a)) |
| #define | mrhs_new() dispatch0(mrhs_new) |
| #define | mrhs_add(l, a) dispatch2(mrhs_add, (l), (a)) |
| #define | mrhs_add_star(l, a) dispatch2(mrhs_add_star, (l), (a)) |
| #define | mlhs_new() dispatch0(mlhs_new) |
| #define | mlhs_add(l, a) dispatch2(mlhs_add, (l), (a)) |
| #define | mlhs_add_star(l, a) dispatch2(mlhs_add_star, (l), (a)) |
| #define | params_new(pars, opts, rest, pars2, blk) dispatch5(params, (pars), (opts), (rest), (pars2), (blk)) |
| #define | blockvar_new(p, v) dispatch2(block_var, (p), (v)) |
| #define | blockvar_add_star(l, a) dispatch2(block_var_add_star, (l), (a)) |
| #define | blockvar_add_block(l, a) dispatch2(block_var_add_block, (l), (a)) |
| #define | method_optarg(m, a) ((a)==Qundef ? (m) : dispatch2(method_add_arg,(m),(a))) |
| #define | method_arg(m, a) dispatch2(method_add_arg,(m),(a)) |
| #define | method_add_block(m, b) dispatch2(method_add_block, (m), (b)) |
| #define | escape_Qundef(x) ((x)==Qundef ? Qnil : (x)) |
| #define | FIXME 0 |
| #define | ifndef_ripper(x) |
| #define | rb_warn0(fmt) ripper_warn0(parser, (fmt)) |
| #define | rb_warnI(fmt, a) ripper_warnI(parser, (fmt), (a)) |
| #define | rb_warnS(fmt, a) ripper_warnS(parser, (fmt), (a)) |
| #define | rb_warning0(fmt) ripper_warning0(parser, (fmt)) |
| #define | rb_warningS(fmt, a) ripper_warningS(parser, (fmt), (a)) |
| #define | rb_compile_error ripper_compile_error |
| #define | compile_error ripper_compile_error |
| #define | PARSER_ARG parser, |
| #define | token_info_push(token) |
| #define | token_info_pop(token) |
| #define | yylval (*((YYSTYPE*)(parser->parser_yylval))) |
| #define | nextc() parser_nextc(parser) |
| #define | pushback(c) parser_pushback(parser, (c)) |
| #define | newtok() parser_newtok(parser) |
| #define | tokspace(n) parser_tokspace(parser, (n)) |
| #define | tokadd(c) parser_tokadd(parser, (c)) |
| #define | tok_hex(numlen) parser_tok_hex(parser, (numlen)) |
| #define | read_escape(flags, e) parser_read_escape(parser, (flags), (e)) |
| #define | tokadd_escape(e) parser_tokadd_escape(parser, (e)) |
| #define | regx_options() parser_regx_options(parser) |
| #define | tokadd_string(f, t, p, n, e) parser_tokadd_string(parser,(f),(t),(p),(n),(e)) |
| #define | parse_string(n) parser_parse_string(parser,(n)) |
| #define | tokaddmbc(c, enc) parser_tokaddmbc(parser, (c), (enc)) |
| #define | here_document(n) parser_here_document(parser,(n)) |
| #define | heredoc_identifier() parser_heredoc_identifier(parser) |
| #define | heredoc_restore(n) parser_heredoc_restore(parser,(n)) |
| #define | whole_match_p(e, l, i) parser_whole_match_p(parser,(e),(l),(i)) |
| #define | set_yylval_str(x) (void)(x) |
| #define | set_yylval_num(x) (void)(x) |
| #define | set_yylval_id(x) (void)(x) |
| #define | set_yylval_name(x) (void)(yylval.val = ripper_yylval_id(x)) |
| #define | set_yylval_literal(x) (void)(x) |
| #define | set_yylval_node(x) (void)(x) |
| #define | yylval_id() yylval.id |
| #define | ripper_flush(p) ((p)->tokp = (p)->parser_lex_p) |
| #define | yylval_rval (*(RB_TYPE_P(yylval.val, T_NODE) ? &yylval.node->nd_rval : &yylval.val)) |
| #define | SIGN_EXTEND_CHAR(c) ((((unsigned char)(c)) ^ 128) - 128) |
| #define | parser_encoding_name() (parser->enc->name) |
| #define | parser_mbclen() mbclen((lex_p-1),lex_pend,parser->enc) |
| #define | parser_precise_mbclen() rb_enc_precise_mbclen((lex_p-1),lex_pend,parser->enc) |
| #define | is_identchar(p, e, enc) (rb_enc_isalnum(*(p),(enc)) || (*(p)) == '_' || !ISASCII(*(p))) |
| #define | parser_is_identchar() (!parser->eofp && is_identchar((lex_p-1),lex_pend,parser->enc)) |
| #define | parser_isascii() ISASCII(*(lex_p-1)) |
| #define | STR_FUNC_ESCAPE 0x01 |
| #define | STR_FUNC_EXPAND 0x02 |
| #define | STR_FUNC_REGEXP 0x04 |
| #define | STR_FUNC_QWORDS 0x08 |
| #define | STR_FUNC_SYMBOL 0x10 |
| #define | STR_FUNC_INDENT 0x20 |
| #define | lex_goto_eol(parser) ((parser)->parser_lex_p = (parser)->parser_lex_pend) |
| #define | lex_eol_p() (lex_p >= lex_pend) |
| #define | peek(c) peek_n((c), 0) |
| #define | peek_n(c, n) (lex_p+(n) < lex_pend && (c) == (unsigned char)lex_p[n]) |
| #define | was_bol() (lex_p == lex_pbeg + 1) |
| #define | tokfix() (tokenbuf[tokidx]='\0') |
| #define | tok() tokenbuf |
| #define | toklen() tokidx |
| #define | toklast() (tokidx>0?tokenbuf[tokidx-1]:0) |
| #define | tokcopy(n) memcpy(tokspace(n), lex_p - (n), (n)) |
| #define | ESCAPE_CONTROL 1 |
| #define | ESCAPE_META 2 |
| #define | tokadd_mbchar(c) parser_tokadd_mbchar(parser, (c)) |
| #define | mixed_error(enc1, enc2) |
| #define | mixed_escape(beg, enc1, enc2) |
| #define | NEW_STRTERM(func, term, paren) rb_node_newnode(NODE_STRTERM, (func), (term) | ((paren) << (CHAR_BIT * 2)), 0) |
| #define | flush_string_content(enc) ripper_flush_string_content(parser, (enc)) |
| #define | dispatch_heredoc_end() ripper_dispatch_heredoc_end(parser) |
| #define | arg_ambiguous() (arg_ambiguous_gen(parser), 1) |
| #define | str_copy(_s, _p, _n) |
| #define | IS_ARG() (lex_state == EXPR_ARG || lex_state == EXPR_CMDARG) |
| #define | IS_END() (lex_state == EXPR_END || lex_state == EXPR_ENDARG || lex_state == EXPR_ENDFN) |
| #define | IS_BEG() (lex_state == EXPR_BEG || lex_state == EXPR_MID || lex_state == EXPR_VALUE || lex_state == EXPR_CLASS) |
| #define | IS_SPCARG(c) (IS_ARG() && space_seen && !ISSPACE(c)) |
| #define | IS_LABEL_POSSIBLE() ((lex_state == EXPR_BEG && !cmd_state) || IS_ARG()) |
| #define | IS_LABEL_SUFFIX(n) (peek_n(':',(n)) && !peek_n(':', (n)+1)) |
| #define | ambiguous_operator(op, syn) dispatch2(operator_ambiguous, ripper_intern(op), rb_str_new_cstr(syn)) |
| #define | warn_balanced(op, syn) |
| #define | no_digits() do {yyerror("numeric literal without digits"); return 0;} while (0) |
| #define | assignable_result(x) get_value(lhs) |
| #define | parser_yyerror(parser, x) dispatch1(assign_error, lhs) |
| #define | LVAR_USED ((int)1 << (sizeof(int) * CHAR_BIT - 1)) |
| #define | parser_mark ripper_parser_mark |
| #define | parser_free ripper_parser_free |
| #define | validate(x) ((x) = get_value(x)) |
| #define | ripper_initialized_p(r) ((r)->parser_lex_input != 0) |
Enumerations |
| enum | string_type {
str_squote = (0),
str_dquote = (STR_FUNC_EXPAND),
str_xquote = (STR_FUNC_EXPAND),
str_regexp = (STR_FUNC_REGEXP|STR_FUNC_ESCAPE|STR_FUNC_EXPAND),
str_sword = (STR_FUNC_QWORDS),
str_dword = (STR_FUNC_QWORDS|STR_FUNC_EXPAND),
str_ssym = (STR_FUNC_SYMBOL),
str_dsym = (STR_FUNC_SYMBOL|STR_FUNC_EXPAND),
str_squote = (0),
str_dquote = (STR_FUNC_EXPAND),
str_xquote = (STR_FUNC_EXPAND),
str_regexp = (STR_FUNC_REGEXP|STR_FUNC_ESCAPE|STR_FUNC_EXPAND),
str_sword = (STR_FUNC_QWORDS),
str_dword = (STR_FUNC_QWORDS|STR_FUNC_EXPAND),
str_ssym = (STR_FUNC_SYMBOL),
str_dsym = (STR_FUNC_SYMBOL|STR_FUNC_EXPAND),
str_squote = (0),
str_dquote = (STR_FUNC_EXPAND),
str_xquote = (STR_FUNC_EXPAND),
str_regexp = (STR_FUNC_REGEXP|STR_FUNC_ESCAPE|STR_FUNC_EXPAND),
str_sword = (STR_FUNC_QWORDS),
str_dword = (STR_FUNC_QWORDS|STR_FUNC_EXPAND),
str_ssym = (STR_FUNC_SYMBOL),
str_dsym = (STR_FUNC_SYMBOL|STR_FUNC_EXPAND),
str_squote = (0),
str_dquote = (STR_FUNC_EXPAND),
str_xquote = (STR_FUNC_EXPAND),
str_regexp = (STR_FUNC_REGEXP|STR_FUNC_ESCAPE|STR_FUNC_EXPAND),
str_sword = (STR_FUNC_QWORDS),
str_dword = (STR_FUNC_QWORDS|STR_FUNC_EXPAND),
str_ssym = (STR_FUNC_SYMBOL),
str_dsym = (STR_FUNC_SYMBOL|STR_FUNC_EXPAND)
} |
Functions |
| | if ($2) |
| | fixpos ($$, $1) = $2 |
| | if (!$$)$$ = NEW_BEGIN(0) |
| | CMDARG_PUSH (1) |
| opt_rescue | NEW_ERRINFO ()) |
| | fixpos ($$, $2?$2:$5) |
| | if (!node) |
| else | switch (nd_type(node)) |
| | if (!($$=$2)) |
| | arg_var (shadowing_lvar(get_id($2))) |
| else | if (!dyna_in_block()&&local_id($2)) yyerror("duplicated block argument name") |
| static int | parser_regx_options (struct parser_params *) |
| static int | parser_tokadd_string (struct parser_params *, int, int, int, long *, rb_encoding **) |
| static void | parser_tokaddmbc (struct parser_params *parser, int c, rb_encoding *enc) |
| static int | parser_parse_string (struct parser_params *, NODE *) |
| static int | parser_here_document (struct parser_params *, NODE *) |
| static VALUE | ripper_yylval_id (ID x) |
| static int | ripper_has_scan_event (struct parser_params *parser) |
| static VALUE | ripper_scan_event_val (struct parser_params *parser, int t) |
| static void | ripper_dispatch_scan_event (struct parser_params *parser, int t) |
| static void | ripper_dispatch_ignored_scan_event (struct parser_params *parser, int t) |
| static void | ripper_dispatch_delayed_token (struct parser_params *parser, int t) |
| static int | parser_yyerror (struct parser_params *parser, const char *msg) |
| static void | parser_prepare (struct parser_params *parser) |
| static rb_encoding * | must_be_ascii_compatible (VALUE s) |
| static VALUE | lex_get_str (struct parser_params *parser, VALUE s) |
| static VALUE | lex_getline (struct parser_params *parser) |
| static VALUE | parser_str_new (const char *p, long n, rb_encoding *enc, int func, rb_encoding *enc0) |
| static int | parser_nextc (struct parser_params *parser) |
| static void | parser_pushback (struct parser_params *parser, int c) |
| static char * | parser_newtok (struct parser_params *parser) |
| static char * | parser_tokspace (struct parser_params *parser, int n) |
| static void | parser_tokadd (struct parser_params *parser, int c) |
| static int | parser_tok_hex (struct parser_params *parser, size_t *numlen) |
| static int | parser_tokadd_utf8 (struct parser_params *parser, rb_encoding **encp, int string_literal, int symbol_literal, int regexp_literal) |
| static int | parser_read_escape (struct parser_params *parser, int flags, rb_encoding **encp) |
| static int | parser_tokadd_escape (struct parser_params *parser, rb_encoding **encp) |
| static void | dispose_string (VALUE str) |
| static int | parser_tokadd_mbchar (struct parser_params *parser, int c) |
| static void | ripper_flush_string_content (struct parser_params *parser, rb_encoding *enc) |
| static int | is_global_name_punct (const char c) |
| static int | parser_peek_variable_name (struct parser_params *parser) |
| static int | parser_heredoc_identifier (struct parser_params *parser) |
| static void | parser_heredoc_restore (struct parser_params *parser, NODE *here) |
| static int | parser_whole_match_p (struct parser_params *parser, const char *eos, long len, int indent) |
| static void | ripper_dispatch_heredoc_end (struct parser_params *parser) |
| static void | arg_ambiguous_gen (struct parser_params *parser) |
| static ID | formal_argument_gen (struct parser_params *parser, ID lhs) |
| static int | lvar_defined_gen (struct parser_params *parser, ID id) |
| static long | parser_encode_length (struct parser_params *parser, const char *name, long len) |
| static void | parser_set_encode (struct parser_params *parser, const char *name) |
| static int | comment_at_top (struct parser_params *parser) |
| static const char * | magic_comment_marker (const char *str, long len) |
| static int | parser_magic_comment (struct parser_params *parser, const char *str, long len) |
| static void | set_file_encoding (struct parser_params *parser, const char *str, const char *send) |
| static int | parser_yylex (struct parser_params *parser) |
| static int | yylex (void *lval, void *p) |
| static int | id_is_var_gen (struct parser_params *parser, ID id) |
| static VALUE | assignable_gen (struct parser_params *parser, VALUE lhs) |
| static ID | shadowing_lvar_gen (struct parser_params *parser, ID name) |
| static void | new_bv_gen (struct parser_params *parser, ID name) |
| static void | warn_unused_var (struct parser_params *parser, struct local_vars *local) |
| static void | local_push_gen (struct parser_params *parser, int inherit_dvars) |
| static void | local_pop_gen (struct parser_params *parser) |
| static int | arg_var_gen (struct parser_params *parser, ID id) |
| static int | local_var_gen (struct parser_params *parser, ID id) |
| static int | local_id_gen (struct parser_params *parser, ID id) |
| static struct vtable * | dyna_push_gen (struct parser_params *parser) |
| static void | dyna_pop_1 (struct parser_params *parser) |
| static void | dyna_pop_gen (struct parser_params *parser, const struct vtable *lvargs) |
| static int | dyna_in_block_gen (struct parser_params *parser) |
| static int | dvar_defined_gen (struct parser_params *parser, ID id, int get) |
| static int | dvar_curr_gen (struct parser_params *parser, ID id) |
| static ID | internal_id_gen (struct parser_params *parser) |
| static void | parser_initialize (struct parser_params *parser) |
| static void | parser_mark (void *ptr) |
| static void | parser_free (void *ptr) |
| static size_t | parser_memsize (const void *ptr) |
| static VALUE | ripper_dispatch0 (struct parser_params *parser, ID mid) |
| static VALUE | ripper_dispatch1 (struct parser_params *parser, ID mid, VALUE a) |
| static VALUE | ripper_dispatch2 (struct parser_params *parser, ID mid, VALUE a, VALUE b) |
| static VALUE | ripper_dispatch3 (struct parser_params *parser, ID mid, VALUE a, VALUE b, VALUE c) |
| static VALUE | ripper_dispatch4 (struct parser_params *parser, ID mid, VALUE a, VALUE b, VALUE c, VALUE d) |
| static VALUE | ripper_dispatch5 (struct parser_params *parser, ID mid, VALUE a, VALUE b, VALUE c, VALUE d, VALUE e) |
| static const char * | keyword_id_to_str (ID id) |
| static VALUE | ripper_id2sym (ID id) |
| static ID | ripper_get_id (VALUE v) |
| static VALUE | ripper_get_value (VALUE v) |
| static void | ripper_compile_error (struct parser_params *parser, const char *fmt,...) |
| static void | ripper_warn0 (struct parser_params *parser, const char *fmt) |
| static void | ripper_warnI (struct parser_params *parser, const char *fmt, int a) |
| static void | ripper_warning0 (struct parser_params *parser, const char *fmt) |
| static void | ripper_warningS (struct parser_params *parser, const char *fmt, const char *str) |
| static VALUE | ripper_lex_get_generic (struct parser_params *parser, VALUE src) |
| static VALUE | ripper_s_allocate (VALUE klass) |
| static VALUE | ripper_initialize (int argc, VALUE *argv, VALUE self) |
| static VALUE | ripper_parse0 (VALUE parser_v) |
| static VALUE | ripper_ensure (VALUE parser_v) |
| static VALUE | ripper_parse (VALUE self) |
| static VALUE | ripper_column (VALUE self) |
| static VALUE | ripper_filename (VALUE self) |
| static VALUE | ripper_lineno (VALUE self) |
| void | InitVM_ripper (void) |
| void | Init_ripper (void) |
Variables |
| top_compstmt | __pad0__ |
| fixup_nodes & | deferred_nodes |
| top_stmts | __pad1__ = $1 |
| top_stmt | __pad2__ |
| bodystmt | __pad3__ |
| compstmt | __pad4__ |
| stmts | __pad5__ = $1 |
| stmt | __pad6__ |
| command_asgn | __pad7__ |
| | lhs |
| expr | __pad8__ |
| expr_value | __pad9__ |
| command_call | __pad10__ |
| block_command | __pad11__ |
| cmd_brace_block | __pad12__ |
| command | __pad13__ = ruby_sourceline |
| mlhs | __pad14__ |
| mlhs_inner | __pad15__ |
| mlhs_inner | mlhs_basic |
| mlhs_item | __pad16__ |
| mlhs_head | __pad17__ |
| mlhs_post | __pad18__ |
| | mlhs_post |
| mlhs_node | __pad19__ |
| lhs | __pad20__ |
| cname | __pad21__ |
| | tCONSTANT |
| cpath | __pad22__ |
| fname | __pad23__ |
| fsym | __pad24__ = $1 |
| fitem | __pad25__ |
| | dsym |
| undef_list | __pad26__ |
| | undef_list |
| op | __pad27__ |
| reswords | __pad28__ |
| arg | __pad29__ |
| arg_value | __pad30__ |
| aref_args | __pad31__ |
| | args |
| paren_args | __pad32__ |
| opt_paren_args | __pad33__ |
| opt_call_args | __pad34__ |
| call_args | __pad35__ |
| command_args | __pad36__ = NEW_LIST($1) |
| block_arg | __pad37__ |
| opt_block_arg | __pad38__ |
| args | __pad39__ |
| mrhs | __pad40__ |
| primary | __pad41__ |
| primary_value | __pad42__ |
| k_begin | __pad43__ |
| k_if | __pad44__ |
| k_unless | __pad45__ |
| k_while | __pad46__ |
| k_until | __pad47__ |
| k_case | __pad48__ |
| k_for | __pad49__ |
| k_class | __pad50__ |
| k_module | __pad51__ |
| k_def | __pad52__ |
| < num > | k_end = ruby_sourceline |
| then | __pad53__ |
| do | __pad54__ |
| if_tail | __pad55__ |
| opt_else | __pad56__ |
| for_var | __pad57__ |
| f_marg | __pad58__ |
| f_marg_list | __pad59__ |
| | f_marg_list |
| f_margs | __pad60__ |
| block_param | __pad61__ |
| block_param | f_block_optarg |
| opt_block_param | __pad62__ |
| block_param_def | __pad63__ |
| opt_bv_decl | __pad64__ |
| bv_decls | __pad65__ |
| bv_decls | bvar |
| bvar | __pad66__ |
| lambda | __pad67__ |
| f_larglist | __pad68__ |
| lambda_body | __pad69__ |
| do_block | __pad70__ |
| block_call | __pad71__ = ruby_sourceline |
| method_call | __pad72__ |
| brace_block | __pad73__ |
| case_body | __pad74__ = ruby_sourceline |
| case_body | cases |
| opt_rescue | __pad75__ |
| | none |
| exc_list | __pad76__ |
| exc_var | __pad77__ |
| opt_ensure | __pad78__ |
| literal | __pad79__ |
| strings | __pad80__ |
| string | __pad81__ |
| string | string1 |
| xstring | __pad82__ |
| regexp | __pad83__ |
| NODE * | node = $2 |
| NODE * | list |
| NODE * | prev |
| words | __pad84__ = node |
| word_list | __pad85__ |
| word | __pad86__ |
| word | qwords |
| qword_list | __pad87__ |
| string_contents | __pad88__ |
| xstring_contents | __pad89__ |
| regexp_contents | __pad90__ |
| string_content | __pad91__ |
| | lex_strterm = 0 |
| | lex_state = EXPR_BEG |
| string_dvar | __pad92__ |
| symbol | __pad93__ |
| sym | __pad94__ = $2 |
| dsym | __pad95__ |
| numeric | __pad96__ |
| user_variable | __pad97__ |
| keyword_variable | __pad98__ |
| var_ref | __pad99__ |
| var_lhs | __pad100__ |
| backref | __pad101__ |
| superclass | __pad102__ |
<'{lex_state=EXPR_BEG;}expr_valueterm{$$=$3;}|errorterm{yyerrok;$$=0;};f_arglist:'('f_argsrparen{$$=$2;lex_state=EXPR_BEG;command_start=TRUE;}|f_argsterm{$$=$1;lex_state=EXPR_BEG;command_start=TRUE;};f_args:f_arg','f_optarg','f_rest_argopt_f_block_arg{$$=new_args($1,
$3, $5, 0, $6);}|f_arg','f_optarg','f_rest_arg','f_argopt_f_block_arg{$$=new_args($1,
$3, $5, $7, $8);}|f_arg','f_optargopt_f_block_arg{$$=new_args($1,
$3, 0, 0, $4);}|f_arg','f_optarg','f_argopt_f_block_arg{$$=new_args($1,
$3, 0, $5, $6);}|f_arg','f_rest_argopt_f_block_arg{$$=new_args($1,
0, $3, 0, $4);}|f_arg','f_rest_arg','f_argopt_f_block_arg{$$=new_args($1,
0, $3, $5, $6);}|f_argopt_f_block_arg{$$=new_args($1,
0, 0, 0, $2);}|f_optarg','f_rest_argopt_f_block_arg{$$=new_args(0,
$1, $3, 0, $4);}|f_optarg','f_rest_arg','f_argopt_f_block_arg{$$=new_args(0,
$1, $3, $5, $6);}|f_optargopt_f_block_arg{$$=new_args(0,
$1, 0, 0, $2);}|f_optarg','f_argopt_f_block_arg{$$=new_args(0,
$1, 0, $3, $4);}|f_rest_argopt_f_block_arg{$$=new_args(0,
0, $1, 0, $2);}|f_rest_arg','f_argopt_f_block_arg{$$=new_args(0,
0, $1, $3, $4);}|f_block_arg{$$=new_args(0,
0, 0, 0, $1);}|{$$=new_args(0,
0, 0, 0, 0);};f_bad_arg:tCONSTANT{yyerror("formalargumentcannotbeaconstant");$$=0;}|tIVAR{yyerror("formalargumentcannotbeaninstancevariable");$$=0;}|tGVAR{yyerror("formalargumentcannotbeaglobalvariable");$$=0;}|tCVAR{yyerror("formalargumentcannotbeaclassvariable");$$=0;};f_norm_arg:f_bad_arg|tIDENTIFIER{formal_argument(get_id($1));$$=$1;};f_arg_item:f_norm_arg{arg_var(get_id($1));$$=NEW_ARGS_AUX($1,
1);}|tLPARENf_margsrparen{IDtid=internal_id();arg_var(tid);if(dyna_in_block()){$2-> | nd_value = NEW_DVAR(tid) |
| | nd_next = $2 |
| f_arg | __pad103__ |
| f_opt | __pad104__ |
| f_block_opt | __pad105__ = assignable($1, $3) NEW_OPT_ARG(0, $$) |
| f_block_optarg | __pad106__ = assignable($1, $3) NEW_OPT_ARG(0, $$) |
| f_optarg | __pad107__ |
| | f_optarg |
| restarg_mark | __pad108__ |
| f_rest_arg | __pad109__ |
| blkarg_mark | __pad110__ = $2 |
| f_block_arg | __pad111__ |
| opt_f_block_arg | __pad112__ = $2 |
| singleton | __pad113__ |
| assoc_list | __pad114__ |
| assocs | __pad115__ |
| assoc | __pad116__ |
| operation | __pad117__ |
| operation2 | __pad118__ |
| operation3 | __pad119__ |
| dot_or_colon | __pad120__ |
| opt_terms | __pad121__ |
| opt_nl | __pad122__ |
| rparen | __pad123__ |
| rbracket | __pad124__ |
| trailer | __pad125__ |
| trailer | term |
| terms | __pad126__ |
| none | __pad127__ |
| static rb_data_type_t | parser_data_type |
RUBY_FUNC_EXPORTED const
unsigned int | ruby_global_name_punct_bits [(0x7e-0x20+31)/32] |
| static struct kw_assoc | keyword_to_name [] |