Ruby 2.0.0p247(2013-06-27revision41674)

- Main Page
- Modules
- Data Structures
- Files

- File List
- Globals

Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
ripper.y File Reference
`#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 "probes.h"`
`#include "id.c"`
`#include "ruby/regex.h"`
`#include "ruby/util.h"`
`#include "lex.c"`
Include dependency graph for ripper.y:

Go to the source code of this file.

## Data Structures
struct | RBasic
struct | RObject
struct | RClass
struct | RFloat
struct | RString
struct | RArray
struct | RRegexp
struct | RHash
struct | RFile
struct | RRational
struct | RComplex
struct | RData
struct | rb_data_type_struct
struct | RTypedData
struct | RStruct
struct | RBignum
struct | timeval
struct | timespec
struct | timezone
struct | st_hash_type
struct | st_table
struct | rb_exec_arg
struct | OnigCaseFoldCodeItem
struct | OnigMetaCharTableType
struct | OnigEncodingTypeST
struct | OnigSyntaxType
struct | OnigCaptureTreeNodeStruct
struct | re_registers
struct | OnigErrorInfo
struct | OnigRepeatRange
struct | re_pattern_buffer
struct | OnigCompileInfo
struct | rb_deprecated_classext_struct
struct | rb_classext_struct
struct | rb_execarg
struct | RNode
struct | rb_global_entry
struct | rb_args_info
struct | OnigPairCaseFoldCodes
struct | PosixBracketEntryType
struct | vtable
struct | local_vars
struct | token_info
struct | parser_params

## Macros
#define | PARSER_DEBUG 0
#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 | REGISTER_SYMID(id, name) register_symid((id), (name), strlen(name), enc)
#define | is_notop_id(id) ((id)>tLAST_OP_ID)
#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 | id_type(id) (is_notop_id(id) ? (int)((id)&ID_SCOPE_MASK) : -1)
#define | is_asgn_or_id(id)
#define | DEF_EXPR(n) EXPR_##n = (1 << EXPR_##n##_bit)
#define | IS_lex_state_for(x, ls) ((x) & (ls))
#define | IS_lex_state(ls) IS_lex_state_for(lex_state, (ls))
#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 | STR_NEW(p, n) rb_enc_str_new((p),(n),current_enc)
#define | STR_NEW0() rb_enc_str_new(0,0,current_enc)
#define | STR_NEW2(p) rb_enc_str_new((p),strlen(p),current_enc)
#define | STR_NEW3(p, n, e, func) parser_str_new((p),(n),(e),(func),current_enc)
#define | ENC_SINGLE(cr) ((cr)==ENC_CODERANGE_7BIT)
#define | TOK_INTERN(mb) rb_intern3(tok(), toklen(), current_enc)
#define | yyerror(msg) parser_yyerror(parser, (msg))
#define | YYLEX_PARAM parser
#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 | brace_nest (parser->parser_brace_nest)
#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 | tokline (parser->parser_tokline)
#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 | ruby_eval_tree (parser->parser_eval_tree)
#define | ruby_eval_tree_begin (parser->parser_eval_tree_begin)
#define | ruby_debug_lines (parser->debug_lines)
#define | ruby_coverage (parser->coverage)
#define | yyparse ruby_yyparse
#define | rb_node_newnode(type, a1, a2, a3) node_newnode(parser, (type), (a1), (a2), (a3))
#define | cond(node) cond_gen(parser, (node))
#define | logop(type, node1, node2) logop_gen(parser, (type), (node1), (node2))
#define | value_expr(node) value_expr_gen(parser, (node) = remove_begin(node))
#define | void_expr0(node) void_expr_gen(parser, (node))
#define | void_expr(node) void_expr0((node) = remove_begin(node))
#define | void_stmts(node) void_stmts_gen(parser, (node))
#define | reduce_nodes(n) reduce_nodes_gen(parser,(n))
#define | block_dup_check(n1, n2) block_dup_check_gen(parser,(n1),(n2))
#define | block_append(h, t) block_append_gen(parser,(h),(t))
#define | list_append(l, i) list_append_gen(parser,(l),(i))
#define | list_concat(h, t) list_concat_gen(parser,(h),(t))
#define | arg_append(h, t) arg_append_gen(parser,(h),(t))
#define | arg_concat(h, t) arg_concat_gen(parser,(h),(t))
#define | literal_concat(h, t) literal_concat_gen(parser,(h),(t))
#define | new_evstr(n) new_evstr_gen(parser,(n))
#define | evstr2dstr(n) evstr2dstr_gen(parser,(n))
#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 | new_args(f, o, r, p, t) new_args_gen(parser, (f),(o),(r),(p),(t))
#define | new_args_tail(k, kr, b) new_args_tail_gen(parser, (k),(kr),(b))
#define | ret_args(node) ret_args_gen(parser, (node))
#define | new_yield(node) new_yield_gen(parser, (node))
#define | dsym_node(node) dsym_node_gen(parser, (node))
#define | gettable(id) gettable_gen(parser,(id))
#define | assignable(id, node) assignable_gen(parser, (id), (node))
#define | aryset(node1, node2) aryset_gen(parser, (node1), (node2))
#define | attrset(node, id) attrset_gen(parser, (node), (id))
#define | rb_backref_error(n) rb_backref_error_gen(parser,(n))
#define | node_assign(node1, node2) node_assign_gen(parser, (node1), (node2))
#define | new_attr_op_assign(lhs, type, attr, op, rhs) new_attr_op_assign_gen(parser, (lhs), (attr), (op), (rhs))
#define | new_const_op_assign(lhs, op, rhs) new_const_op_assign_gen(parser, (lhs), (op), (rhs))
#define | match_op(node1, node2) match_op_gen(parser, (node1), (node2))
#define | local_tbl() local_tbl_gen(parser)
#define | reg_compile(str, options) reg_compile_gen(parser, (str), (options))
#define | reg_fragment_setenc(str, options) reg_fragment_setenc_gen(parser, (str), (options))
#define | reg_fragment_check(str, options) reg_fragment_check_gen(parser, (str), (options))
#define | reg_named_capture_assign(regexp, match) reg_named_capture_assign_gen(parser,(regexp),(match))
#define | get_id(id) (id)
#define | get_value(val) (val)
#define | new_op_assign(lhs, op, rhs) new_op_assign_gen(parser, (lhs), (op), (rhs))
#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 /* nothing to gc */
#define | NODE_HEREDOC NODE_ARRAY /* 1, 3 to gc */
#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 | Qnone 0
#define | ifndef_ripper(x) (x)
#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))
#define | rb_warnS(fmt, a) rb_compile_warn(ruby_sourcefile, ruby_sourceline, (fmt), (a))
#define | rb_warn4S(file, line, fmt, a) rb_compile_warn((file), (line), (fmt), (a))
#define | rb_warning0(fmt) rb_compile_warning(ruby_sourcefile, ruby_sourceline, (fmt))
#define | rb_warningS(fmt, a) rb_compile_warning(ruby_sourcefile, ruby_sourceline, (fmt), (a))
#define | rb_compile_error rb_compile_error_with_enc
#define | compile_error parser->nerr++,rb_compile_error_with_enc
#define | PARSER_ARG ruby_sourcefile, ruby_sourceline, current_enc,
#define | token_info_push(token) (RTEST(ruby_verbose) ? token_info_push(parser, (token)) : (void)0)
#define | token_info_pop(token) (RTEST(ruby_verbose) ? token_info_pop(parser, (token)) : (void)0)
#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) (yylval.node = NEW_STR(x))
#define | set_yylval_num(x) (yylval.num = (x))
#define | set_yylval_id(x) (yylval.id = (x))
#define | set_yylval_name(x) (yylval.id = (x))
#define | set_yylval_literal(x) (yylval.node = NEW_LIT(x))
#define | set_yylval_node(x) (yylval.node = (x))
#define | yylval_id() (yylval.id)
#define | ripper_flush(p) (void)(p)
#define | SIGN_EXTEND_CHAR(c) ((((unsigned char)(c)) ^ 128) - 128)
#define | parser_encoding_name() (current_enc->name)
#define | parser_mbclen() mbclen((lex_p-1),lex_pend,current_enc)
#define | parser_precise_mbclen() rb_enc_precise_mbclen((lex_p-1),lex_pend,current_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,current_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) ((void)(enc))
#define | BIT(c, idx) (((c) / 32 - 1 == idx) ? (1U << ((c) % 32)) : 0)
#define | SPECIAL_PUNCT(idx)
#define | dispatch_heredoc_end() ((void)0)
#define | arg_ambiguous() (arg_ambiguous_gen(parser), 1)
#define | str_copy(_s, _p, _n)
#define | IS_ARG() IS_lex_state(EXPR_ARG_ANY)
#define | IS_END() IS_lex_state(EXPR_END_ANY)
#define | IS_BEG() IS_lex_state(EXPR_BEG_ANY)
#define | IS_SPCARG(c) (IS_ARG() && space_seen && !ISSPACE(c))
#define | IS_LABEL_POSSIBLE() ((IS_lex_state(EXPR_BEG | EXPR_ENDFN) && !cmd_state) || IS_ARG())
#define | IS_LABEL_SUFFIX(n) (peek_n(':',(n)) && !peek_n(':', (n)+1))
#define | IS_AFTER_OPERATOR() IS_lex_state(EXPR_FNAME | EXPR_DOT)
#define | ambiguous_operator(op, syn)
#define | warn_balanced(op, syn)
#define | no_digits() do {yyerror("numeric literal without digits"); return 0;} while (0)
#define | parser_warning(node, mesg) parser_warning(parser, (node), (mesg))
#define | parser_warn(node, mesg) parser_warn(parser, (node), (mesg))
#define | assignable_result(x) (x)
#define | LVAR_USED ((ID)1 << (sizeof(ID) * CHAR_BIT - 1))
#define | subnodes(n1, n2)
#define | op_tbl_count numberof(op_tbl)
#define | ENABLE_SELECTOR_NAMESPACE 0
#define | HEAPCNT(n, size) ((n) * (size) / sizeof(YYSTYPE))
#define | NEWHEAP() rb_node_newnode(NODE_ALLOCA, 0, (VALUE)parser->heap, 0)
#define | ADD2HEAP(n, c, p)

## Typedefs
typedef unsigned long | VALUE
typedef unsigned long | ID
typedef char | ruby_check_sizeof_int [SIZEOF_INT==sizeof(int)?1:-1]
typedef char | ruby_check_sizeof_long [SIZEOF_LONG==sizeof(long)?1:-1]
typedef char | ruby_check_sizeof_voidp [SIZEOF_VOIDP==sizeof(void *)?1:-1]
typedef struct rb_classext_struct | rb_classext_t
typedef struct rb_data_type_struct | rb_data_type_t
typedef void(* | RUBY_DATA_FUNC )(void *)
typedef int | ruby_glob_func (const char *, VALUE, void *)
typedef VALUE | rb_gvar_getter_t (ID id, void *data, struct rb_global_variable *gvar)
typedef void | rb_gvar_setter_t (VALUE val, ID id, void *data, struct rb_global_variable *gvar)
typedef void | rb_gvar_marker_t (VALUE *var)
typedef VALUE | rb_block_call_func (VALUE, VALUE, int, VALUE *)
typedef unsigned long | st_data_t
typedef struct st_table | st_table
typedef st_data_t | st_index_t
typedef int | st_compare_func (st_data_t, st_data_t)
typedef st_index_t | st_hash_func (st_data_t)
typedef char | st_check_for_sizeof_st_index_t [SIZEOF_VOIDP==(int) sizeof(st_index_t)?1:-1]
typedef int | st_update_callback_func (st_data_t *key, st_data_t *value, st_data_t arg, int existing)
typedef fd_set | rb_fdset_t
typedef VALUE(* | rb_alloc_func_t )(VALUE)
typedef VALUE | rb_hash_update_func (VALUE newkey, VALUE oldkey, VALUE value)
typedef void | rb_unblock_function_t (void *)
typedef VALUE | rb_blocking_function_t (void *)
typedef unsigned long | rb_event_flag_t
typedef void(* | rb_event_hook_func_t )(rb_event_flag_t evflag, VALUE data, VALUE self, ID mid, VALUE klass)
typedef unsigned char | OnigUChar
typedef unsigned int | OnigCodePoint
typedef unsigned int | OnigCtype
typedef size_t | OnigDistance
typedef ptrdiff_t | OnigPosition
typedef unsigned int | OnigCaseFoldType
typedef int(* | OnigApplyAllCaseFoldFunc )(OnigCodePoint from, OnigCodePoint *to, int to_len, void *arg)
typedef struct OnigEncodingTypeST | OnigEncodingType
typedef OnigEncodingType * | OnigEncoding
typedef unsigned int | OnigOptionType
typedef struct OnigCaptureTreeNodeStruct | OnigCaptureTreeNode
typedef struct re_registers | OnigRegion
typedef void OnigWarnFunc | P_ ((const char *s))
typedef struct re_pattern_buffer | OnigRegexType
typedef OnigRegexType * | OnigRegex
typedef OnigRegexType | regex_t
typedef OnigEncodingType | rb_encoding
typedef struct rb_econv_t | rb_econv_t
typedef void | rb_check_funcall_hook (int, VALUE, ID, int, VALUE *, VALUE)
typedef struct RNode | NODE
typedef VALUE | stack_type
typedef struct token_info | token_info

## Enumerations
enum | ruby_special_consts { RUBY_Qfalse = 0x00, RUBY_Qtrue = 0x14, RUBY_Qnil = 0x08, RUBY_Qundef = 0x34, RUBY_IMMEDIATE_MASK = 0x07, RUBY_FIXNUM_FLAG = 0x01, RUBY_FLONUM_MASK = 0x03, RUBY_FLONUM_FLAG = 0x02, RUBY_SYMBOL_FLAG = 0x0c, RUBY_SPECIAL_SHIFT = 8, RUBY_Qfalse = 0x00, RUBY_Qtrue = 0x14, RUBY_Qnil = 0x08, RUBY_Qundef = 0x34, RUBY_IMMEDIATE_MASK = 0x07, RUBY_FIXNUM_FLAG = 0x01, RUBY_FLONUM_MASK = 0x03, RUBY_FLONUM_FLAG = 0x02, RUBY_SYMBOL_FLAG = 0x0c, RUBY_SPECIAL_SHIFT = 8 }
enum | ruby_value_type { RUBY_T_NONE = 0x00, RUBY_T_OBJECT = 0x01, RUBY_T_CLASS = 0x02, RUBY_T_MODULE = 0x03, RUBY_T_FLOAT = 0x04, RUBY_T_STRING = 0x05, RUBY_T_REGEXP = 0x06, RUBY_T_ARRAY = 0x07, RUBY_T_HASH = 0x08, RUBY_T_STRUCT = 0x09, RUBY_T_BIGNUM = 0x0a, RUBY_T_FILE = 0x0b, RUBY_T_DATA = 0x0c, RUBY_T_MATCH = 0x0d, RUBY_T_COMPLEX = 0x0e, RUBY_T_RATIONAL = 0x0f, RUBY_T_NIL = 0x11, RUBY_T_TRUE = 0x12, RUBY_T_FALSE = 0x13, RUBY_T_SYMBOL = 0x14, RUBY_T_FIXNUM = 0x15, RUBY_T_UNDEF = 0x1b, RUBY_T_NODE = 0x1c, RUBY_T_ICLASS = 0x1d, RUBY_T_ZOMBIE = 0x1e, RUBY_T_MASK = 0x1f, RUBY_T_NONE = 0x00, RUBY_T_OBJECT = 0x01, RUBY_T_CLASS = 0x02, RUBY_T_MODULE = 0x03, RUBY_T_FLOAT = 0x04, RUBY_T_STRING = 0x05, RUBY_T_REGEXP = 0x06, RUBY_T_ARRAY = 0x07, RUBY_T_HASH = 0x08, RUBY_T_STRUCT = 0x09, RUBY_T_BIGNUM = 0x0a, RUBY_T_FILE = 0x0b, RUBY_T_DATA = 0x0c, RUBY_T_MATCH = 0x0d, RUBY_T_COMPLEX = 0x0e, RUBY_T_RATIONAL = 0x0f, RUBY_T_NIL = 0x11, RUBY_T_TRUE = 0x12, RUBY_T_FALSE = 0x13, RUBY_T_SYMBOL = 0x14, RUBY_T_FIXNUM = 0x15, RUBY_T_UNDEF = 0x1b, RUBY_T_NODE = 0x1c, RUBY_T_ICLASS = 0x1d, RUBY_T_ZOMBIE = 0x1e, RUBY_T_MASK = 0x1f }
enum | st_retval { ST_CONTINUE, ST_STOP, ST_DELETE, ST_CHECK, ST_CONTINUE, ST_STOP, ST_DELETE, ST_CHECK }
enum | rb_econv_result_t { econv_invalid_byte_sequence, econv_undefined_conversion, econv_destination_buffer_full, econv_source_buffer_empty, econv_finished, econv_after_output, econv_incomplete_input, econv_invalid_byte_sequence, econv_undefined_conversion, econv_destination_buffer_full, econv_source_buffer_empty, econv_finished, econv_after_output, econv_incomplete_input }
enum | node_type { NODE_SCOPE, NODE_SCOPE, NODE_BLOCK, NODE_BLOCK, NODE_IF, NODE_IF, NODE_CASE, NODE_CASE, NODE_WHEN, NODE_WHEN, NODE_OPT_N, NODE_OPT_N, NODE_WHILE, NODE_WHILE, NODE_UNTIL, NODE_UNTIL, NODE_ITER, NODE_ITER, NODE_FOR, NODE_FOR, NODE_BREAK, NODE_BREAK, NODE_NEXT, NODE_NEXT, NODE_REDO, NODE_REDO, NODE_RETRY, NODE_RETRY, NODE_BEGIN, NODE_BEGIN, NODE_RESCUE, NODE_RESCUE, NODE_RESBODY, NODE_RESBODY, NODE_ENSURE, NODE_ENSURE, NODE_AND, NODE_AND, NODE_OR, NODE_OR, NODE_MASGN, NODE_MASGN, NODE_LASGN, NODE_LASGN, NODE_DASGN, NODE_DASGN, NODE_DASGN_CURR, NODE_DASGN_CURR, NODE_GASGN, NODE_GASGN, NODE_IASGN, NODE_IASGN, NODE_IASGN2, NODE_IASGN2, NODE_CDECL, NODE_CDECL, NODE_CVASGN, NODE_CVASGN, NODE_CVDECL, NODE_CVDECL, NODE_OP_ASGN1, NODE_OP_ASGN1, NODE_OP_ASGN2, NODE_OP_ASGN2, NODE_OP_ASGN_AND, NODE_OP_ASGN_AND, NODE_OP_ASGN_OR, NODE_OP_ASGN_OR, NODE_OP_CDECL, NODE_OP_CDECL, NODE_CALL, NODE_CALL, NODE_FCALL, NODE_FCALL, NODE_VCALL, NODE_VCALL, NODE_SUPER, NODE_SUPER, NODE_ZSUPER, NODE_ZSUPER, NODE_ARRAY, NODE_ARRAY, NODE_ZARRAY, NODE_ZARRAY, NODE_VALUES, NODE_VALUES, NODE_HASH, NODE_HASH, NODE_RETURN, NODE_RETURN, NODE_YIELD, NODE_YIELD, NODE_LVAR, NODE_LVAR, NODE_DVAR, NODE_DVAR, NODE_GVAR, NODE_GVAR, NODE_IVAR, NODE_IVAR, NODE_CONST, NODE_CONST, NODE_CVAR, NODE_CVAR, NODE_NTH_REF, NODE_NTH_REF, NODE_BACK_REF, NODE_BACK_REF, NODE_MATCH, NODE_MATCH, NODE_MATCH2, NODE_MATCH2, NODE_MATCH3, NODE_MATCH3, NODE_LIT, NODE_LIT, NODE_STR, NODE_STR, NODE_DSTR, NODE_DSTR, NODE_XSTR, NODE_XSTR, NODE_DXSTR, NODE_DXSTR, NODE_EVSTR, NODE_EVSTR, NODE_DREGX, NODE_DREGX, NODE_DREGX_ONCE, NODE_DREGX_ONCE, NODE_ARGS, NODE_ARGS, NODE_ARGS_AUX, NODE_ARGS_AUX, NODE_OPT_ARG, NODE_OPT_ARG, NODE_KW_ARG, NODE_KW_ARG, NODE_POSTARG, NODE_POSTARG, NODE_ARGSCAT, NODE_ARGSCAT, NODE_ARGSPUSH, NODE_ARGSPUSH, NODE_SPLAT, NODE_SPLAT, NODE_TO_ARY, NODE_TO_ARY, NODE_BLOCK_ARG, NODE_BLOCK_ARG, NODE_BLOCK_PASS, NODE_BLOCK_PASS, NODE_DEFN, NODE_DEFN, NODE_DEFS, NODE_DEFS, NODE_ALIAS, NODE_ALIAS, NODE_VALIAS, NODE_VALIAS, NODE_UNDEF, NODE_UNDEF, NODE_CLASS, NODE_CLASS, NODE_MODULE, NODE_MODULE, NODE_SCLASS, NODE_SCLASS, NODE_COLON2, NODE_COLON2, NODE_COLON3, NODE_COLON3, NODE_CREF, NODE_CREF, NODE_DOT2, NODE_DOT2, NODE_DOT3, NODE_DOT3, NODE_FLIP2, NODE_FLIP2, NODE_FLIP3, NODE_FLIP3, NODE_SELF, NODE_SELF, NODE_NIL, NODE_NIL, NODE_TRUE, NODE_TRUE, NODE_FALSE, NODE_FALSE, NODE_ERRINFO, NODE_ERRINFO, NODE_DEFINED, NODE_DEFINED, NODE_POSTEXE, NODE_POSTEXE, NODE_ALLOCA, NODE_ALLOCA, NODE_BMETHOD, NODE_BMETHOD, NODE_MEMO, NODE_MEMO, NODE_IFUNC, NODE_IFUNC, NODE_DSYM, NODE_DSYM, NODE_ATTRASGN, NODE_ATTRASGN, NODE_PRELUDE, NODE_PRELUDE, NODE_LAMBDA, NODE_LAMBDA, NODE_SCOPE, NODE_SCOPE, NODE_BLOCK, NODE_BLOCK, NODE_IF, NODE_IF, NODE_CASE, NODE_CASE, NODE_WHEN, NODE_WHEN, NODE_OPT_N, NODE_OPT_N, NODE_WHILE, NODE_WHILE, NODE_UNTIL, NODE_UNTIL, NODE_ITER, NODE_ITER, NODE_FOR, NODE_FOR, NODE_BREAK, NODE_BREAK, NODE_NEXT, NODE_NEXT, NODE_REDO, NODE_REDO, NODE_RETRY, NODE_RETRY, NODE_BEGIN, NODE_BEGIN, NODE_RESCUE, NODE_RESCUE, NODE_RESBODY, NODE_RESBODY, NODE_ENSURE, NODE_ENSURE, NODE_AND, NODE_AND, NODE_OR, NODE_OR, NODE_MASGN, NODE_MASGN, NODE_LASGN, NODE_LASGN, NODE_DASGN, NODE_DASGN, NODE_DASGN_CURR, NODE_DASGN_CURR, NODE_GASGN, NODE_GASGN, NODE_IASGN, NODE_IASGN, NODE_IASGN2, NODE_IASGN2, NODE_CDECL, NODE_CDECL, NODE_CVASGN, NODE_CVASGN, NODE_CVDECL, NODE_CVDECL, NODE_OP_ASGN1, NODE_OP_ASGN1, NODE_OP_ASGN2, NODE_OP_ASGN2, NODE_OP_ASGN_AND, NODE_OP_ASGN_AND, NODE_OP_ASGN_OR, NODE_OP_ASGN_OR, NODE_OP_CDECL, NODE_OP_CDECL, NODE_CALL, NODE_CALL, NODE_FCALL, NODE_FCALL, NODE_VCALL, NODE_VCALL, NODE_SUPER, NODE_SUPER, NODE_ZSUPER, NODE_ZSUPER, NODE_ARRAY, NODE_ARRAY, NODE_ZARRAY, NODE_ZARRAY, NODE_VALUES, NODE_VALUES, NODE_HASH, NODE_HASH, NODE_RETURN, NODE_RETURN, NODE_YIELD, NODE_YIELD, NODE_LVAR, NODE_LVAR, NODE_DVAR, NODE_DVAR, NODE_GVAR, NODE_GVAR, NODE_IVAR, NODE_IVAR, NODE_CONST, NODE_CONST, NODE_CVAR, NODE_CVAR, NODE_NTH_REF, NODE_NTH_REF, NODE_BACK_REF, NODE_BACK_REF, NODE_MATCH, NODE_MATCH, NODE_MATCH2, NODE_MATCH2, NODE_MATCH3, NODE_MATCH3, NODE_LIT, NODE_LIT, NODE_STR, NODE_STR, NODE_DSTR, NODE_DSTR, NODE_XSTR, NODE_XSTR, NODE_DXSTR, NODE_DXSTR, NODE_EVSTR, NODE_EVSTR, NODE_DREGX, NODE_DREGX, NODE_DREGX_ONCE, NODE_DREGX_ONCE, NODE_ARGS, NODE_ARGS, NODE_ARGS_AUX, NODE_ARGS_AUX, NODE_OPT_ARG, NODE_OPT_ARG, NODE_KW_ARG, NODE_KW_ARG, NODE_POSTARG, NODE_POSTARG, NODE_ARGSCAT, NODE_ARGSCAT, NODE_ARGSPUSH, NODE_ARGSPUSH, NODE_SPLAT, NODE_SPLAT, NODE_TO_ARY, NODE_TO_ARY, NODE_BLOCK_ARG, NODE_BLOCK_ARG, NODE_BLOCK_PASS, NODE_BLOCK_PASS, NODE_DEFN, NODE_DEFN, NODE_DEFS, NODE_DEFS, NODE_ALIAS, NODE_ALIAS, NODE_VALIAS, NODE_VALIAS, NODE_UNDEF, NODE_UNDEF, NODE_CLASS, NODE_CLASS, NODE_MODULE, NODE_MODULE, NODE_SCLASS, NODE_SCLASS, NODE_COLON2, NODE_COLON2, NODE_COLON3, NODE_COLON3, NODE_CREF, NODE_CREF, NODE_DOT2, NODE_DOT2, NODE_DOT3, NODE_DOT3, NODE_FLIP2, NODE_FLIP2, NODE_FLIP3, NODE_FLIP3, NODE_SELF, NODE_SELF, NODE_NIL, NODE_NIL, NODE_TRUE, NODE_TRUE, NODE_FALSE, NODE_FALSE, NODE_ERRINFO, NODE_ERRINFO, NODE_DEFINED, NODE_DEFINED, NODE_POSTEXE, NODE_POSTEXE, NODE_ALLOCA, NODE_ALLOCA, NODE_BMETHOD, NODE_BMETHOD, NODE_MEMO, NODE_MEMO, NODE_IFUNC, NODE_IFUNC, NODE_DSYM, NODE_DSYM, NODE_ATTRASGN, NODE_ATTRASGN, NODE_PRELUDE, NODE_PRELUDE, NODE_LAMBDA, NODE_LAMBDA }
enum | yytokentype { END_OF_INPUT = 0, keyword_class = 258, keyword_module = 259, keyword_def = 260, keyword_undef = 261, keyword_begin = 262, keyword_rescue = 263, keyword_ensure = 264, keyword_end = 265, keyword_if = 266, keyword_unless = 267, keyword_then = 268, keyword_elsif = 269, keyword_else = 270, keyword_case = 271, keyword_when = 272, keyword_while = 273, keyword_until = 274, keyword_for = 275, keyword_break = 276, keyword_next = 277, keyword_redo = 278, keyword_retry = 279, keyword_in = 280, keyword_do = 281, keyword_do_cond = 282, keyword_do_block = 283, keyword_do_LAMBDA = 284, keyword_return = 285, keyword_yield = 286, keyword_super = 287, keyword_self = 288, keyword_nil = 289, keyword_true = 290, keyword_false = 291, keyword_and = 292, keyword_or = 293, keyword_not = 294, modifier_if = 295, modifier_unless = 296, modifier_while = 297, modifier_until = 298, modifier_rescue = 299, keyword_alias = 300, keyword_defined = 301, keyword_BEGIN = 302, keyword_END = 303, keyword__LINE__ = 304, keyword__FILE__ = 305, keyword__ENCODING__ = 306, tIDENTIFIER = 307, tFID = 308, tGVAR = 309, tIVAR = 310, tCONSTANT = 311, tCVAR = 312, tLABEL = 313, tINTEGER = 314, tFLOAT = 315, tSTRING_CONTENT = 316, tCHAR = 317, tNTH_REF = 318, tBACK_REF = 319, tREGEXP_END = 320, tUPLUS = 130, tUMINUS = 131, tPOW = 132, tCMP = 134, tEQ = 139, tEQQ = 140, tNEQ = 141, tGEQ = 138, tLEQ = 137, tANDOP = 321, tOROP = 322, tMATCH = 142, tNMATCH = 143, tDOT2 = 128, tDOT3 = 129, tAREF = 144, tASET = 145, tLSHFT = 135, tRSHFT = 136, tCOLON2 = 323, tCOLON3 = 324, tOP_ASGN = 325, tASSOC = 326, tLPAREN = 327, tLPAREN_ARG = 328, tRPAREN = 329, tLBRACK = 330, tLBRACE = 331, tLBRACE_ARG = 332, tSTAR = 333, tDSTAR = 334, tAMPER = 335, tLAMBDA = 336, tSYMBEG = 337, tSTRING_BEG = 338, tXSTRING_BEG = 339, tREGEXP_BEG = 340, tWORDS_BEG = 341, tQWORDS_BEG = 342, tSYMBOLS_BEG = 343, tQSYMBOLS_BEG = 344, tSTRING_DBEG = 345, tSTRING_DEND = 346, tSTRING_DVAR = 347, tSTRING_END = 348, tLAMBEG = 349, tLOWEST = 350, tUMINUS_NUM = 351, tLAST_TOKEN = 352, END_OF_INPUT = 0, keyword_class = 258, keyword_module = 259, keyword_def = 260, keyword_undef = 261, keyword_begin = 262, keyword_rescue = 263, keyword_ensure = 264, keyword_end = 265, keyword_if = 266, keyword_unless = 267, keyword_then = 268, keyword_elsif = 269, keyword_else = 270, keyword_case = 271, keyword_when = 272, keyword_while = 273, keyword_until = 274, keyword_for = 275, keyword_break = 276, keyword_next = 277, keyword_redo = 278, keyword_retry = 279, keyword_in = 280, keyword_do = 281, keyword_do_cond = 282, keyword_do_block = 283, keyword_do_LAMBDA = 284, keyword_return = 285, keyword_yield = 286, keyword_super = 287, keyword_self = 288, keyword_nil = 289, keyword_true = 290, keyword_false = 291, keyword_and = 292, keyword_or = 293, keyword_not = 294, modifier_if = 295, modifier_unless = 296, modifier_while = 297, modifier_until = 298, modifier_rescue = 299, keyword_alias = 300, keyword_defined = 301, keyword_BEGIN = 302, keyword_END = 303, keyword__LINE__ = 304, keyword__FILE__ = 305, keyword__ENCODING__ = 306, tIDENTIFIER = 307, tFID = 308, tGVAR = 309, tIVAR = 310, tCONSTANT = 311, tCVAR = 312, tLABEL = 313, tINTEGER = 314, tFLOAT = 315, tSTRING_CONTENT = 316, tCHAR = 317, tNTH_REF = 318, tBACK_REF = 319, tREGEXP_END = 320, tUPLUS = 130, tUMINUS = 131, tPOW = 132, tCMP = 134, tEQ = 139, tEQQ = 140, tNEQ = 141, tGEQ = 138, tLEQ = 137, tANDOP = 321, tOROP = 322, tMATCH = 142, tNMATCH = 143, tDOT2 = 128, tDOT3 = 129, tAREF = 144, tASET = 145, tLSHFT = 135, tRSHFT = 136, tCOLON2 = 323, tCOLON3 = 324, tOP_ASGN = 325, tASSOC = 326, tLPAREN = 327, tLPAREN_ARG = 328, tRPAREN = 329, tLBRACK = 330, tLBRACE = 331, tLBRACE_ARG = 332, tSTAR = 333, tDSTAR = 334, tAMPER = 335, tLAMBDA = 336, tSYMBEG = 337, tSTRING_BEG = 338, tXSTRING_BEG = 339, tREGEXP_BEG = 340, tWORDS_BEG = 341, tQWORDS_BEG = 342, tSYMBOLS_BEG = 343, tQSYMBOLS_BEG = 344, tSTRING_DBEG = 345, tSTRING_DEND = 346, tSTRING_DVAR = 347, tSTRING_END = 348, tLAMBEG = 349, tLOWEST = 350, tUMINUS_NUM = 351, tLAST_TOKEN = 352, END_OF_INPUT = 0, keyword_class = 258, keyword_module = 259, keyword_def = 260, keyword_undef = 261, keyword_begin = 262, keyword_rescue = 263, keyword_ensure = 264, keyword_end = 265, keyword_if = 266, keyword_unless = 267, keyword_then = 268, keyword_elsif = 269, keyword_else = 270, keyword_case = 271, keyword_when = 272, keyword_while = 273, keyword_until = 274, keyword_for = 275, keyword_break = 276, keyword_next = 277, keyword_redo = 278, keyword_retry = 279, keyword_in = 280, keyword_do = 281, keyword_do_cond = 282, keyword_do_block = 283, keyword_do_LAMBDA = 284, keyword_return = 285, keyword_yield = 286, keyword_super = 287, keyword_self = 288, keyword_nil = 289, keyword_true = 290, keyword_false = 291, keyword_and = 292, keyword_or = 293, keyword_not = 294, modifier_if = 295, modifier_unless = 296, modifier_while = 297, modifier_until = 298, modifier_rescue = 299, keyword_alias = 300, keyword_defined = 301, keyword_BEGIN = 302, keyword_END = 303, keyword__LINE__ = 304, keyword__FILE__ = 305, keyword__ENCODING__ = 306, tIDENTIFIER = 307, tFID = 308, tGVAR = 309, tIVAR = 310, tCONSTANT = 311, tCVAR = 312, tLABEL = 313, tINTEGER = 314, tFLOAT = 315, tSTRING_CONTENT = 316, tCHAR = 317, tNTH_REF = 318, tBACK_REF = 319, tREGEXP_END = 320, tUPLUS = 130, tUMINUS = 131, tPOW = 132, tCMP = 134, tEQ = 139, tEQQ = 140, tNEQ = 141, tGEQ = 138, tLEQ = 137, tANDOP = 321, tOROP = 322, tMATCH = 142, tNMATCH = 143, tDOT2 = 128, tDOT3 = 129, tAREF = 144, tASET = 145, tLSHFT = 135, tRSHFT = 136, tCOLON2 = 323, tCOLON3 = 324, tOP_ASGN = 325, tASSOC = 326, tLPAREN = 327, tLPAREN_ARG = 328, tRPAREN = 329, tLBRACK = 330, tLBRACE = 331, tLBRACE_ARG = 332, tSTAR = 333, tDSTAR = 334, tAMPER = 335, tLAMBDA = 336, tSYMBEG = 337, tSTRING_BEG = 338, tXSTRING_BEG = 339, tREGEXP_BEG = 340, tWORDS_BEG = 341, tQWORDS_BEG = 342, tSYMBOLS_BEG = 343, tQSYMBOLS_BEG = 344, tSTRING_DBEG = 345, tSTRING_DEND = 346, tSTRING_DVAR = 347, tSTRING_END = 348, tLAMBEG = 349, tLOWEST = 350, tUMINUS_NUM = 351, tLAST_TOKEN = 352, END_OF_INPUT = 0, keyword_class = 258, keyword_module = 259, keyword_def = 260, keyword_undef = 261, keyword_begin = 262, keyword_rescue = 263, keyword_ensure = 264, keyword_end = 265, keyword_if = 266, keyword_unless = 267, keyword_then = 268, keyword_elsif = 269, keyword_else = 270, keyword_case = 271, keyword_when = 272, keyword_while = 273, keyword_until = 274, keyword_for = 275, keyword_break = 276, keyword_next = 277, keyword_redo = 278, keyword_retry = 279, keyword_in = 280, keyword_do = 281, keyword_do_cond = 282, keyword_do_block = 283, keyword_do_LAMBDA = 284, keyword_return = 285, keyword_yield = 286, keyword_super = 287, keyword_self = 288, keyword_nil = 289, keyword_true = 290, keyword_false = 291, keyword_and = 292, keyword_or = 293, keyword_not = 294, modifier_if = 295, modifier_unless = 296, modifier_while = 297, modifier_until = 298, modifier_rescue = 299, keyword_alias = 300, keyword_defined = 301, keyword_BEGIN = 302, keyword_END = 303, keyword__LINE__ = 304, keyword__FILE__ = 305, keyword__ENCODING__ = 306, tIDENTIFIER = 307, tFID = 308, tGVAR = 309, tIVAR = 310, tCONSTANT = 311, tCVAR = 312, tLABEL = 313, tINTEGER = 314, tFLOAT = 315, tSTRING_CONTENT = 316, tCHAR = 317, tNTH_REF = 318, tBACK_REF = 319, tREGEXP_END = 320, tUPLUS = 130, tUMINUS = 131, tPOW = 132, tCMP = 134, tEQ = 139, tEQQ = 140, tNEQ = 141, tGEQ = 138, tLEQ = 137, tANDOP = 321, tOROP = 322, tMATCH = 142, tNMATCH = 143, tDOT2 = 128, tDOT3 = 129, tAREF = 144, tASET = 145, tLSHFT = 135, tRSHFT = 136, tCOLON2 = 323, tCOLON3 = 324, tOP_ASGN = 325, tASSOC = 326, tLPAREN = 327, tLPAREN_ARG = 328, tRPAREN = 329, tLBRACK = 330, tLBRACE = 331, tLBRACE_ARG = 332, tSTAR = 333, tDSTAR = 334, tAMPER = 335, tLAMBDA = 336, tSYMBEG = 337, tSTRING_BEG = 338, tXSTRING_BEG = 339, tREGEXP_BEG = 340, tWORDS_BEG = 341, tQWORDS_BEG = 342, tSYMBOLS_BEG = 343, tQSYMBOLS_BEG = 344, tSTRING_DBEG = 345, tSTRING_DEND = 346, tSTRING_DVAR = 347, tSTRING_END = 348, tLAMBEG = 349, tLOWEST = 350, tUMINUS_NUM = 351, tLAST_TOKEN = 352 }
enum | ruby_method_ids { idDot2 = RUBY_TOKEN(DOT2), idDot3 = RUBY_TOKEN(DOT3), idUPlus = RUBY_TOKEN(UPLUS), idUMinus = RUBY_TOKEN(UMINUS), idPow = RUBY_TOKEN(POW), idCmp = RUBY_TOKEN(CMP), idPLUS = '+', idMINUS = '-', idMULT = '*', idDIV = '/', idMOD = '', idLT = '<', idLTLT = RUBY_TOKEN(LSHFT), idLE = RUBY_TOKEN(LEQ), idGT = '>', idGE = RUBY_TOKEN(GEQ), idEq = RUBY_TOKEN(EQ), idEqq = RUBY_TOKEN(EQQ), idNeq = RUBY_TOKEN(NEQ), idNot = '!', idBackquote = '`', idEqTilde = RUBY_TOKEN(MATCH), idNeqTilde = RUBY_TOKEN(NMATCH), idAREF = RUBY_TOKEN(AREF), idASET = RUBY_TOKEN(ASET), tPRESERVED_ID_BEGIN = 147, idNULL, idEmptyP, idRespond_to, idRespond_to_missing, idIFUNC, idCFUNC, id_core_set_method_alias, id_core_set_variable_alias, id_core_undef_method, id_core_define_method, id_core_define_singleton_method, id_core_set_postexe, id_core_hash_from_ary, id_core_hash_merge_ary, id_core_hash_merge_ptr, id_core_hash_merge_kwd, tPRESERVED_ID_END, tIntern, tMethodMissing, tLength, tSize, tGets, tSucc, tEach, tProc, tLambda, tSend, t__send__, tInitialize, tInitialize_copy, tInitialize_clone, tInitialize_dup, tUScore, TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(MethodMissing), TOKEN2LOCALID =(Length), TOKEN2LOCALID =(Size), TOKEN2LOCALID =(Gets), TOKEN2LOCALID =(Succ), TOKEN2LOCALID =(Each), TOKEN2LOCALID =(Proc), TOKEN2LOCALID =(Lambda), TOKEN2LOCALID =(Send), TOKEN2LOCALID =(__send__), TOKEN2LOCALID =(Initialize), TOKEN2LOCALID =(Initialize_copy), TOKEN2LOCALID =(Initialize_clone), TOKEN2LOCALID =(Initialize_dup), TOKEN2LOCALID =(UScore), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(MethodMissing), TOKEN2LOCALID =(Length), TOKEN2LOCALID =(Size), TOKEN2LOCALID =(Gets), TOKEN2LOCALID =(Succ), TOKEN2LOCALID =(Each), TOKEN2LOCALID =(Proc), TOKEN2LOCALID =(Lambda), TOKEN2LOCALID =(Send), TOKEN2LOCALID =(__send__), TOKEN2LOCALID =(Initialize), TOKEN2LOCALID =(Initialize_copy), TOKEN2LOCALID =(Initialize_clone), TOKEN2LOCALID =(Initialize_dup), TOKEN2LOCALID =(UScore), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(MethodMissing), TOKEN2LOCALID =(Length), TOKEN2LOCALID =(Size), TOKEN2LOCALID =(Gets), TOKEN2LOCALID =(Succ), TOKEN2LOCALID =(Each), TOKEN2LOCALID =(Proc), TOKEN2LOCALID =(Lambda), TOKEN2LOCALID =(Send), TOKEN2LOCALID =(__send__), TOKEN2LOCALID =(Initialize), TOKEN2LOCALID =(Initialize_copy), TOKEN2LOCALID =(Initialize_clone), TOKEN2LOCALID =(Initialize_dup), TOKEN2LOCALID =(UScore), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(MethodMissing), TOKEN2LOCALID =(Length), TOKEN2LOCALID =(Size), TOKEN2LOCALID =(Gets), TOKEN2LOCALID =(Succ), TOKEN2LOCALID =(Each), TOKEN2LOCALID =(Proc), TOKEN2LOCALID =(Lambda), TOKEN2LOCALID =(Send), TOKEN2LOCALID =(__send__), TOKEN2LOCALID =(Initialize), TOKEN2LOCALID =(Initialize_copy), TOKEN2LOCALID =(Initialize_clone), TOKEN2LOCALID =(Initialize_dup), TOKEN2LOCALID =(UScore), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(MethodMissing), TOKEN2LOCALID =(Length), TOKEN2LOCALID =(Size), TOKEN2LOCALID =(Gets), TOKEN2LOCALID =(Succ), TOKEN2LOCALID =(Each), TOKEN2LOCALID =(Proc), TOKEN2LOCALID =(Lambda), TOKEN2LOCALID =(Send), TOKEN2LOCALID =(__send__), TOKEN2LOCALID =(Initialize), TOKEN2LOCALID =(Initialize_copy), TOKEN2LOCALID =(Initialize_clone), TOKEN2LOCALID =(Initialize_dup), TOKEN2LOCALID =(UScore), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(MethodMissing), TOKEN2LOCALID =(Length), TOKEN2LOCALID =(Size), TOKEN2LOCALID =(Gets), TOKEN2LOCALID =(Succ), TOKEN2LOCALID =(Each), TOKEN2LOCALID =(Proc), TOKEN2LOCALID =(Lambda), TOKEN2LOCALID =(Send), TOKEN2LOCALID =(__send__), TOKEN2LOCALID =(Initialize), TOKEN2LOCALID =(Initialize_copy), TOKEN2LOCALID =(Initialize_clone), TOKEN2LOCALID =(Initialize_dup), TOKEN2LOCALID =(UScore), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(MethodMissing), TOKEN2LOCALID =(Length), TOKEN2LOCALID =(Size), TOKEN2LOCALID =(Gets), TOKEN2LOCALID =(Succ), TOKEN2LOCALID =(Each), TOKEN2LOCALID =(Proc), TOKEN2LOCALID =(Lambda), TOKEN2LOCALID =(Send), TOKEN2LOCALID =(__send__), TOKEN2LOCALID =(Initialize), TOKEN2LOCALID =(Initialize_copy), TOKEN2LOCALID =(Initialize_clone), TOKEN2LOCALID =(Initialize_dup), TOKEN2LOCALID =(UScore), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(MethodMissing), TOKEN2LOCALID =(Length), TOKEN2LOCALID =(Size), TOKEN2LOCALID =(Gets), TOKEN2LOCALID =(Succ), TOKEN2LOCALID =(Each), TOKEN2LOCALID =(Proc), TOKEN2LOCALID =(Lambda), TOKEN2LOCALID =(Send), TOKEN2LOCALID =(__send__), TOKEN2LOCALID =(Initialize), TOKEN2LOCALID =(Initialize_copy), TOKEN2LOCALID =(Initialize_clone), TOKEN2LOCALID =(Initialize_dup), TOKEN2LOCALID =(UScore), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(MethodMissing), TOKEN2LOCALID =(Length), TOKEN2LOCALID =(Size), TOKEN2LOCALID =(Gets), TOKEN2LOCALID =(Succ), TOKEN2LOCALID =(Each), TOKEN2LOCALID =(Proc), TOKEN2LOCALID =(Lambda), TOKEN2LOCALID =(Send), TOKEN2LOCALID =(__send__), TOKEN2LOCALID =(Initialize), TOKEN2LOCALID =(Initialize_copy), TOKEN2LOCALID =(Initialize_clone), TOKEN2LOCALID =(Initialize_dup), TOKEN2LOCALID =(UScore), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(MethodMissing), TOKEN2LOCALID =(Length), TOKEN2LOCALID =(Size), TOKEN2LOCALID =(Gets), TOKEN2LOCALID =(Succ), TOKEN2LOCALID =(Each), TOKEN2LOCALID =(Proc), TOKEN2LOCALID =(Lambda), TOKEN2LOCALID =(Send), TOKEN2LOCALID =(__send__), TOKEN2LOCALID =(Initialize), TOKEN2LOCALID =(Initialize_copy), TOKEN2LOCALID =(Initialize_clone), TOKEN2LOCALID =(Initialize_dup), TOKEN2LOCALID =(UScore), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(MethodMissing), TOKEN2LOCALID =(Length), TOKEN2LOCALID =(Size), TOKEN2LOCALID =(Gets), TOKEN2LOCALID =(Succ), TOKEN2LOCALID =(Each), TOKEN2LOCALID =(Proc), TOKEN2LOCALID =(Lambda), TOKEN2LOCALID =(Send), TOKEN2LOCALID =(__send__), TOKEN2LOCALID =(Initialize), TOKEN2LOCALID =(Initialize_copy), TOKEN2LOCALID =(Initialize_clone), TOKEN2LOCALID =(Initialize_dup), TOKEN2LOCALID =(UScore), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(MethodMissing), TOKEN2LOCALID =(Length), TOKEN2LOCALID =(Size), TOKEN2LOCALID =(Gets), TOKEN2LOCALID =(Succ), TOKEN2LOCALID =(Each), TOKEN2LOCALID =(Proc), TOKEN2LOCALID =(Lambda), TOKEN2LOCALID =(Send), TOKEN2LOCALID =(__send__), TOKEN2LOCALID =(Initialize), TOKEN2LOCALID =(Initialize_copy), TOKEN2LOCALID =(Initialize_clone), TOKEN2LOCALID =(Initialize_dup), TOKEN2LOCALID =(UScore), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(MethodMissing), TOKEN2LOCALID =(Length), TOKEN2LOCALID =(Size), TOKEN2LOCALID =(Gets), TOKEN2LOCALID =(Succ), TOKEN2LOCALID =(Each), TOKEN2LOCALID =(Proc), TOKEN2LOCALID =(Lambda), TOKEN2LOCALID =(Send), TOKEN2LOCALID =(__send__), TOKEN2LOCALID =(Initialize), TOKEN2LOCALID =(Initialize_copy), TOKEN2LOCALID =(Initialize_clone), TOKEN2LOCALID =(Initialize_dup), TOKEN2LOCALID =(UScore), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(MethodMissing), TOKEN2LOCALID =(Length), TOKEN2LOCALID =(Size), TOKEN2LOCALID =(Gets), TOKEN2LOCALID =(Succ), TOKEN2LOCALID =(Each), TOKEN2LOCALID =(Proc), TOKEN2LOCALID =(Lambda), TOKEN2LOCALID =(Send), TOKEN2LOCALID =(__send__), TOKEN2LOCALID =(Initialize), TOKEN2LOCALID =(Initialize_copy), TOKEN2LOCALID =(Initialize_clone), TOKEN2LOCALID =(Initialize_dup), TOKEN2LOCALID =(UScore), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(MethodMissing), TOKEN2LOCALID =(Length), TOKEN2LOCALID =(Size), TOKEN2LOCALID =(Gets), TOKEN2LOCALID =(Succ), TOKEN2LOCALID =(Each), TOKEN2LOCALID =(Proc), TOKEN2LOCALID =(Lambda), TOKEN2LOCALID =(Send), TOKEN2LOCALID =(__send__), TOKEN2LOCALID =(Initialize), TOKEN2LOCALID =(Initialize_copy), TOKEN2LOCALID =(Initialize_clone), TOKEN2LOCALID =(Initialize_dup), TOKEN2LOCALID =(UScore), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(MethodMissing), TOKEN2LOCALID =(Length), TOKEN2LOCALID =(Size), TOKEN2LOCALID =(Gets), TOKEN2LOCALID =(Succ), TOKEN2LOCALID =(Each), TOKEN2LOCALID =(Proc), TOKEN2LOCALID =(Lambda), TOKEN2LOCALID =(Send), TOKEN2LOCALID =(__send__), TOKEN2LOCALID =(Initialize), TOKEN2LOCALID =(Initialize_copy), TOKEN2LOCALID =(Initialize_clone), TOKEN2LOCALID =(Initialize_dup), TOKEN2LOCALID =(UScore), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(MethodMissing), TOKEN2LOCALID =(Length), TOKEN2LOCALID =(Size), TOKEN2LOCALID =(Gets), TOKEN2LOCALID =(Succ), TOKEN2LOCALID =(Each), TOKEN2LOCALID =(Proc), TOKEN2LOCALID =(Lambda), TOKEN2LOCALID =(Send), TOKEN2LOCALID =(__send__), TOKEN2LOCALID =(Initialize), TOKEN2LOCALID =(Initialize_copy), TOKEN2LOCALID =(Initialize_clone), TOKEN2LOCALID =(Initialize_dup), TOKEN2LOCALID =(UScore), tLAST_OP_ID = tPRESERVED_ID_END-1, idLAST_OP_ID = tLAST_OP_ID >> ID_SCOPE_SHIFT, idDot2 = RUBY_TOKEN(DOT2), idDot3 = RUBY_TOKEN(DOT3), idUPlus = RUBY_TOKEN(UPLUS), idUMinus = RUBY_TOKEN(UMINUS), idPow = RUBY_TOKEN(POW), idCmp = RUBY_TOKEN(CMP), idPLUS = '+', idMINUS = '-', idMULT = '*', idDIV = '/', idMOD = '', idLT = '<', idLTLT = RUBY_TOKEN(LSHFT), idLE = RUBY_TOKEN(LEQ), idGT = '>', idGE = RUBY_TOKEN(GEQ), idEq = RUBY_TOKEN(EQ), idEqq = RUBY_TOKEN(EQQ), idNeq = RUBY_TOKEN(NEQ), idNot = '!', idBackquote = '`', idEqTilde = RUBY_TOKEN(MATCH), idNeqTilde = RUBY_TOKEN(NMATCH), idAREF = RUBY_TOKEN(AREF), idASET = RUBY_TOKEN(ASET), tPRESERVED_ID_BEGIN = 147, idNULL, idEmptyP, idRespond_to, idRespond_to_missing, idIFUNC, idCFUNC, id_core_set_method_alias, id_core_set_variable_alias, id_core_undef_method, id_core_define_method, id_core_define_singleton_method, id_core_set_postexe, id_core_hash_from_ary, id_core_hash_merge_ary, id_core_hash_merge_ptr, id_core_hash_merge_kwd, tPRESERVED_ID_END, tIntern, tMethodMissing, tLength, tSize, tGets, tSucc, tEach, tProc, tLambda, tSend, t__send__, tInitialize, tInitialize_copy, tInitialize_clone, tInitialize_dup, tUScore, TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(Intern), TOKEN2LOCALID =(Intern), tLAST_OP_ID = tPRESERVED_ID_END-1, idLAST_OP_ID = tLAST_OP_ID >> ID_SCOPE_SHIFT }
enum | lex_state_bits { EXPR_BEG_bit, EXPR_END_bit, EXPR_ENDARG_bit, EXPR_ENDFN_bit, EXPR_ARG_bit, EXPR_CMDARG_bit, EXPR_MID_bit, EXPR_FNAME_bit, EXPR_DOT_bit, EXPR_CLASS_bit, EXPR_VALUE_bit, EXPR_MAX_STATE, EXPR_BEG_bit, EXPR_END_bit, EXPR_ENDARG_bit, EXPR_ENDFN_bit, EXPR_ARG_bit, EXPR_CMDARG_bit, EXPR_MID_bit, EXPR_FNAME_bit, EXPR_DOT_bit, EXPR_CLASS_bit, EXPR_VALUE_bit, EXPR_MAX_STATE, EXPR_BEG_bit, EXPR_END_bit, EXPR_ENDARG_bit, EXPR_ENDFN_bit, EXPR_ARG_bit, EXPR_CMDARG_bit, EXPR_MID_bit, EXPR_FNAME_bit, EXPR_DOT_bit, EXPR_CLASS_bit, EXPR_VALUE_bit, EXPR_MAX_STATE, EXPR_BEG_bit, EXPR_END_bit, EXPR_ENDARG_bit, EXPR_ENDFN_bit, EXPR_ARG_bit, EXPR_CMDARG_bit, EXPR_MID_bit, EXPR_FNAME_bit, EXPR_DOT_bit, EXPR_CLASS_bit, EXPR_VALUE_bit, EXPR_MAX_STATE }
enum | lex_state_e { DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), EXPR_BEG_ANY = (EXPR_BEG | EXPR_VALUE | EXPR_MID | EXPR_CLASS), EXPR_ARG_ANY = (EXPR_ARG | EXPR_CMDARG), EXPR_END_ANY = (EXPR_END | EXPR_ENDARG | EXPR_ENDFN), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), EXPR_BEG_ANY = (EXPR_BEG | EXPR_VALUE | EXPR_MID | EXPR_CLASS), EXPR_ARG_ANY = (EXPR_ARG | EXPR_CMDARG), EXPR_END_ANY = (EXPR_END | EXPR_ENDARG | EXPR_ENDFN), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), EXPR_BEG_ANY = (EXPR_BEG | EXPR_VALUE | EXPR_MID | EXPR_CLASS), EXPR_ARG_ANY = (EXPR_ARG | EXPR_CMDARG), EXPR_END_ANY = (EXPR_END | EXPR_ENDARG | EXPR_ENDFN), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), DEF_EXPR =(BEG), EXPR_BEG_ANY = (EXPR_BEG | EXPR_VALUE | EXPR_MID | EXPR_CLASS), EXPR_ARG_ANY = (EXPR_ARG | EXPR_CMDARG), EXPR_END_ANY = (EXPR_END | EXPR_ENDARG | EXPR_ENDFN) }

## Functions
void * | xmalloc2 (size_t, size_t)
void * | xcalloc (size_t, size_t)
void * | xrealloc (void *, size_t)
void * | xrealloc2 (void *, size_t, size_t)
void | xfree (void *)
void * | alloca ()
VALUE | rb_int2inum (SIGNED_VALUE)
VALUE | rb_uint2inum (VALUE)
static int | rb_type (VALUE obj)
static volatile VALUE * | rb_gc_guarded_ptr (volatile VALUE *ptr)
void | rb_check_type (VALUE, int)
VALUE | rb_str_to_str (VALUE)
VALUE | rb_string_value (volatile VALUE *)
char * | rb_string_value_ptr (volatile VALUE *)
char * | rb_string_value_cstr (volatile VALUE *)
void | rb_check_safe_obj (VALUE)
| DEPRECATED (void rb_check_safe_str(VALUE))
VALUE | rb_str_export (VALUE)
VALUE | rb_str_export_locale (VALUE)
VALUE | rb_get_path (VALUE)
VALUE | rb_get_path_no_checksafe (VALUE)
void | rb_secure (int)
int | rb_safe_level (void)
void | rb_set_safe_level (int)
void | rb_set_safe_level_force (int)
void | rb_secure_update (VALUE)
| NORETURN (void rb_insecure_operation(void))
VALUE | rb_errinfo (void)
void | rb_set_errinfo (VALUE)
SIGNED_VALUE | rb_num2long (VALUE)
VALUE | rb_num2ulong (VALUE)
static long | rb_num2long_inline (VALUE x)
static unsigned long | rb_num2ulong_inline (VALUE x)
short | rb_num2short (VALUE)
unsigned short | rb_num2ushort (VALUE)
short | rb_fix2short (VALUE)
unsigned short | rb_fix2ushort (VALUE)
static short | rb_num2short_inline (VALUE x)
double | rb_num2dbl (VALUE)
VALUE | rb_uint2big (VALUE)
VALUE | rb_int2big (SIGNED_VALUE)
VALUE | rb_newobj (void)
VALUE | rb_newobj_of (VALUE, VALUE)
VALUE | rb_float_new_in_heap (double)
static double | rb_float_value (VALUE v)
static VALUE | rb_float_new (double d)
VALUE | rb_data_object_alloc (VALUE, void *, RUBY_DATA_FUNC, RUBY_DATA_FUNC)
VALUE | rb_data_typed_object_alloc (VALUE klass, void *datap, const rb_data_type_t *)
int | rb_typeddata_inherited_p (const rb_data_type_t *child, const rb_data_type_t *parent)
int | rb_typeddata_is_kind_of (VALUE, const rb_data_type_t *)
void * | rb_check_typeddata (VALUE, const rb_data_type_t *)
static VALUE | rb_int2num_inline (int v)
static VALUE | rb_uint2num_inline (unsigned int v)
static VALUE | rb_long2num_inline (long v)
static VALUE | rb_ulong2num_inline (unsigned long v)
static char | rb_num2char_inline (VALUE x)
void * | rb_alloc_tmp_buffer (volatile VALUE *store, long len)
void | rb_free_tmp_buffer (volatile VALUE *store)
void | rb_obj_infect (VALUE, VALUE)
void | rb_glob (const char *, void(*)(const char *, VALUE, void *), VALUE)
int | ruby_glob (const char *, int, ruby_glob_func *, VALUE)
int | ruby_brace_glob (const char *, int, ruby_glob_func *, VALUE)
VALUE | rb_define_class (const char *, VALUE)
| Defines a top-level class. More...
VALUE | rb_define_module (const char *)
VALUE | rb_define_class_under (VALUE, const char *, VALUE)
| Defines a class under the namespace of outer. More...
VALUE | rb_define_module_under (VALUE, const char *)
void | rb_include_module (VALUE, VALUE)
void | rb_extend_object (VALUE, VALUE)
void | rb_prepend_module (VALUE, VALUE)
VALUE | rb_gvar_undef_getter (ID id, void *data, struct rb_global_variable *gvar)
void | rb_gvar_undef_setter (VALUE val, ID id, void *data, struct rb_global_variable *gvar)
void | rb_gvar_undef_marker (VALUE *var)
VALUE | rb_gvar_val_getter (ID id, void *data, struct rb_global_variable *gvar)
void | rb_gvar_val_setter (VALUE val, ID id, void *data, struct rb_global_variable *gvar)
void | rb_gvar_val_marker (VALUE *var)
VALUE | rb_gvar_var_getter (ID id, void *data, struct rb_global_variable *gvar)
void | rb_gvar_var_setter (VALUE val, ID id, void *data, struct rb_global_variable *gvar)
void | rb_gvar_var_marker (VALUE *var)
void | rb_gvar_readonly_setter (VALUE val, ID id, void *data, struct rb_global_variable *gvar)
void | rb_define_variable (const char *, VALUE *)
void | rb_define_virtual_variable (const char *, VALUE(*)(ANYARGS), void(*)(ANYARGS))
void | rb_define_hooked_variable (const char *, VALUE *, VALUE(*)(ANYARGS), void(*)(ANYARGS))
void | rb_define_readonly_variable (const char *, VALUE *)
void | rb_define_const (VALUE, const char *, VALUE)
void | rb_define_global_const (const char *, VALUE)
void | rb_define_method (VALUE, const char *, VALUE(*)(ANYARGS), int)
void | rb_define_module_function (VALUE, const char *, VALUE(*)(ANYARGS), int)
| Defines a module function for module. More...
void | rb_define_global_function (const char *, VALUE(*)(ANYARGS), int)
| Defines a global function. More...
void | rb_undef_method (VALUE, const char *)
void | rb_define_alias (VALUE, const char *, const char *)
| Defines an alias of a method. More...
void | rb_define_attr (VALUE, const char *, int, int)
| Defines (a) public accessor method(s) for an attribute. More...
void | rb_global_variable (VALUE *)
void | rb_gc_register_mark_object (VALUE)
void | rb_gc_register_address (VALUE *)
void | rb_gc_unregister_address (VALUE *)
ID | rb_intern (const char *)
ID | rb_intern2 (const char *, long)
ID | rb_intern_str (VALUE str)
const char * | rb_id2name (ID)
ID | rb_check_id (volatile VALUE *)
| Returns ID for the given name if it is interned already, or 0. More...
ID | rb_to_id (VALUE)
VALUE | rb_id2str (ID)
const char * | rb_class2name (VALUE)
const char * | rb_obj_classname (VALUE)
void | rb_p (VALUE)
VALUE | rb_eval_string (const char *)
| Evaluates the given string in an isolated binding. More...
VALUE | rb_eval_string_protect (const char *, int *)
| Evaluates the given string in an isolated binding. More...
VALUE | rb_eval_string_wrap (const char *, int *)
| Evaluates the given string under a module binding in an isolated binding. More...
VALUE | rb_funcall (VALUE, ID, int,...)
| Calls a method. More...
VALUE | rb_funcall2 (VALUE, ID, int, const VALUE *)
| Calls a method. More...
VALUE | rb_funcall3 (VALUE, ID, int, const VALUE *)
| Calls a method. More...
VALUE | rb_funcall_passing_block (VALUE, ID, int, const VALUE *)
VALUE | rb_funcall_with_block (VALUE, ID, int, const VALUE *, VALUE)
int | rb_scan_args (int, const VALUE *, const char *,...)
VALUE | rb_call_super (int, const VALUE *)
VALUE | rb_gv_set (const char *, VALUE)
VALUE | rb_gv_get (const char *)
VALUE | rb_iv_get (VALUE, const char *)
VALUE | rb_iv_set (VALUE, const char *, VALUE)
VALUE | rb_equal (VALUE, VALUE)
VALUE * | rb_ruby_verbose_ptr (void)
VALUE * | rb_ruby_debug_ptr (void)
| PRINTF_ARGS (NORETURN(void rb_raise(VALUE, const char *,...)), 2, 3)
| PRINTF_ARGS (NORETURN(void rb_fatal(const char *,...)), 1, 2)
| PRINTF_ARGS (NORETURN(void rb_bug(const char *,...)), 1, 2)
| NORETURN (void rb_bug_errno(const char *, int))
| NORETURN (void rb_sys_fail(const char *))
| NORETURN (void rb_sys_fail_str(VALUE))
| NORETURN (void rb_mod_sys_fail(VALUE, const char *))
| NORETURN (void rb_mod_sys_fail_str(VALUE, VALUE))
| NORETURN (void rb_iter_break(void))
| NORETURN (void rb_iter_break_value(VALUE))
| NORETURN (void rb_exit(int))
| NORETURN (void rb_notimplement(void))
VALUE | rb_syserr_new (int, const char *)
VALUE | rb_syserr_new_str (int n, VALUE arg)
| NORETURN (void rb_syserr_fail(int, const char *))
| NORETURN (void rb_syserr_fail_str(int, VALUE))
| NORETURN (void rb_mod_syserr_fail(VALUE, int, const char *))
| NORETURN (void rb_mod_syserr_fail_str(VALUE, int, VALUE))
| PRINTF_ARGS (void rb_warning(const char *,...), 1, 2)
| PRINTF_ARGS (void rb_compile_warning(const char *, int, const char *,...), 3, 4)
| PRINTF_ARGS (void rb_sys_warning(const char *,...), 1, 2)
| PRINTF_ARGS (void rb_warn(const char *,...), 1, 2)
| PRINTF_ARGS (void rb_compile_warn(const char *, int, const char *,...), 3, 4)
VALUE | rb_each (VALUE)
VALUE | rb_yield (VALUE)
VALUE | rb_yield_values (int n,...)
VALUE | rb_yield_values2 (int n, const VALUE *argv)
VALUE | rb_yield_splat (VALUE)
int | rb_block_given_p (void)
void | rb_need_block (void)
VALUE | rb_iterate (VALUE(*)(VALUE), VALUE, VALUE(*)(ANYARGS), VALUE)
VALUE | rb_block_call (VALUE, ID, int, VALUE *, VALUE(*)(ANYARGS), VALUE)
VALUE | rb_rescue (VALUE(*)(ANYARGS), VALUE, VALUE(*)(ANYARGS), VALUE)
VALUE | rb_rescue2 (VALUE(*)(ANYARGS), VALUE, VALUE(*)(ANYARGS), VALUE,...)
VALUE | rb_ensure (VALUE(*)(ANYARGS), VALUE, VALUE(*)(ANYARGS), VALUE)
VALUE | rb_catch (const char *, VALUE(*)(ANYARGS), VALUE)
VALUE | rb_catch_obj (VALUE, VALUE(*)(ANYARGS), VALUE)
| NORETURN (void rb_throw(const char *, VALUE))
| NORETURN (void rb_throw_obj(VALUE, VALUE))
VALUE | rb_require (const char *)
static VALUE | rb_class_of (VALUE obj)
static int | rb_type (VALUE obj)
static int | rb_special_const_p (VALUE obj)
RUBY_EXTERN double | acosh (double)
RUBY_EXTERN double | asinh (double)
RUBY_EXTERN double | atanh (double)
RUBY_EXTERN char * | crypt (const char *, const char *)
RUBY_EXTERN int | dup2 (int, int)
RUBY_EXTERN int | eaccess (const char *, int)
RUBY_EXTERN double | round (double)
RUBY_EXTERN int | finite (double)
RUBY_EXTERN int | flock (int, int)
RUBY_EXTERN double | hypot (double, double)
RUBY_EXTERN double | erf (double)
RUBY_EXTERN double | erfc (double)
RUBY_EXTERN double | tgamma (double)
RUBY_EXTERN double | lgamma_r (double, int *)
RUBY_EXTERN double | cbrt (double)
RUBY_EXTERN int | isinf (double)
RUBY_EXTERN int | isnan (double)
RUBY_EXTERN void * | memmove (void *, const void *, size_t)
RUBY_EXTERN char * | strchr (const char *, int)
RUBY_EXTERN char * | strrchr (const char *, int)
RUBY_EXTERN char * | strerror (int)
RUBY_EXTERN char * | strstr (const char *, const char *)
RUBY_EXTERN size_t | strlcpy (char *, const char *, size_t)
RUBY_EXTERN size_t | strlcat (char *, const char *, size_t)
RUBY_EXTERN int | signbit (double x)
RUBY_EXTERN int | ffs (int)
RUBY_EXTERN void | setproctitle (const char *fmt,...)
st_table * | st_init_table (const struct st_hash_type *)
st_table * | st_init_table_with_size (const struct st_hash_type *, st_index_t)
st_table * | st_init_numtable (void)
st_table * | st_init_numtable_with_size (st_index_t)
st_table * | st_init_strtable (void)
st_table * | st_init_strtable_with_size (st_index_t)
st_table * | st_init_strcasetable (void)
st_table * | st_init_strcasetable_with_size (st_index_t)
int | st_delete (st_table *, st_data_t *, st_data_t *)
int | st_delete_safe (st_table *, st_data_t *, st_data_t *, st_data_t)
int | st_insert (st_table *, st_data_t, st_data_t)
int | st_insert2 (st_table *, st_data_t, st_data_t, st_data_t(*)(st_data_t))
int | st_lookup (st_table *, st_data_t, st_data_t *)
int | st_get_key (st_table *, st_data_t, st_data_t *)
int | st_update (st_table *table, st_data_t key, st_update_callback_func *func, st_data_t arg)
int | st_foreach (st_table *, int(*)(ANYARGS), st_data_t)
int | st_foreach_check (st_table *, int(*)(ANYARGS), st_data_t, st_data_t)
int | st_reverse_foreach (st_table *, int(*)(ANYARGS), st_data_t)
void | st_add_direct (st_table *, st_data_t, st_data_t)
void | st_free_table (st_table *)
void | st_cleanup_safe (st_table *, st_data_t)
void | st_clear (st_table *)
st_table * | st_copy (st_table *)
int | st_numcmp (st_data_t, st_data_t)
st_index_t | st_numhash (st_data_t)
int | st_strcasecmp (const char *s1, const char *s2)
int | st_strncasecmp (const char *s1, const char *s2, size_t n)
size_t | st_memsize (const st_table *)
st_index_t | st_hash (const void *ptr, size_t len, st_index_t h)
st_index_t | st_hash_uint32 (st_index_t h, uint32_t i)
st_index_t | st_hash_uint (st_index_t h, st_index_t i)
st_index_t | st_hash_end (st_index_t h)
st_index_t | st_hash_start (st_index_t h)
void | rb_mem_clear (register VALUE *, register long)
VALUE | rb_assoc_new (VALUE, VALUE)
VALUE | rb_check_array_type (VALUE)
VALUE | rb_ary_new (void)
VALUE | rb_ary_new2 (long)
VALUE | rb_ary_new3 (long,...)
VALUE | rb_ary_new4 (long, const VALUE *)
VALUE | rb_ary_tmp_new (long)
void | rb_ary_free (VALUE)
void | rb_ary_modify (VALUE)
VALUE | rb_ary_freeze (VALUE)
VALUE | rb_ary_shared_with_p (VALUE, VALUE)
VALUE | rb_ary_aref (int, VALUE *, VALUE)
VALUE | rb_ary_subseq (VALUE, long, long)
void | rb_ary_store (VALUE, long, VALUE)
VALUE | rb_ary_dup (VALUE)
VALUE | rb_ary_resurrect (VALUE ary)
VALUE | rb_ary_to_ary (VALUE)
VALUE | rb_ary_to_s (VALUE)
VALUE | rb_ary_push (VALUE, VALUE)
VALUE | rb_ary_pop (VALUE)
VALUE | rb_ary_shift (VALUE)
VALUE | rb_ary_unshift (VALUE, VALUE)
VALUE | rb_ary_entry (VALUE, long)
VALUE | rb_ary_each (VALUE)
VALUE | rb_ary_join (VALUE, VALUE)
VALUE | rb_ary_reverse (VALUE)
VALUE | rb_ary_rotate (VALUE, long)
VALUE | rb_ary_sort (VALUE)
VALUE | rb_ary_sort_bang (VALUE)
VALUE | rb_ary_delete (VALUE, VALUE)
VALUE | rb_ary_delete_at (VALUE, long)
VALUE | rb_ary_clear (VALUE)
VALUE | rb_ary_plus (VALUE, VALUE)
VALUE | rb_ary_concat (VALUE, VALUE)
VALUE | rb_ary_assoc (VALUE, VALUE)
VALUE | rb_ary_rassoc (VALUE, VALUE)
VALUE | rb_ary_includes (VALUE, VALUE)
VALUE | rb_ary_cmp (VALUE, VALUE)
VALUE | rb_ary_replace (VALUE copy, VALUE orig)
VALUE | rb_get_values_at (VALUE, long, int, VALUE *, VALUE(*)(VALUE, long))
VALUE | rb_ary_resize (VALUE ary, long len)
| expands or shrinks ary to len elements. More...
VALUE | rb_big_new (long, int)
int | rb_bigzero_p (VALUE x)
VALUE | rb_big_clone (VALUE)
void | rb_big_2comp (VALUE)
VALUE | rb_big_norm (VALUE)
void | rb_big_resize (VALUE big, long len)
VALUE | rb_uint2big (VALUE)
VALUE | rb_int2big (SIGNED_VALUE)
VALUE | rb_uint2inum (VALUE)
VALUE | rb_int2inum (SIGNED_VALUE)
VALUE | rb_cstr_to_inum (const char *, int, int)
VALUE | rb_str_to_inum (VALUE, int, int)
VALUE | rb_cstr2inum (const char *, int)
VALUE | rb_str2inum (VALUE, int)
VALUE | rb_big2str (VALUE, int)
VALUE | rb_big2str0 (VALUE, int, int)
SIGNED_VALUE | rb_big2long (VALUE)
VALUE | rb_big2ulong (VALUE)
VALUE | rb_big2ulong_pack (VALUE x)
| DEPRECATED (void rb_quad_pack(char *, VALUE))
| DEPRECATED (VALUE rb_quad_unpack(const char *, int))
void | rb_big_pack (VALUE val, unsigned long *buf, long num_longs)
VALUE | rb_big_unpack (unsigned long *buf, long num_longs)
int | rb_uv_to_utf8 (char[6], unsigned long)
VALUE | rb_dbl2big (double)
double | rb_big2dbl (VALUE)
VALUE | rb_big_cmp (VALUE, VALUE)
VALUE | rb_big_eq (VALUE, VALUE)
VALUE | rb_big_eql (VALUE, VALUE)
VALUE | rb_big_plus (VALUE, VALUE)
VALUE | rb_big_minus (VALUE, VALUE)
VALUE | rb_big_mul (VALUE, VALUE)
VALUE | rb_big_div (VALUE, VALUE)
VALUE | rb_big_idiv (VALUE, VALUE)
VALUE | rb_big_modulo (VALUE, VALUE)
VALUE | rb_big_divmod (VALUE, VALUE)
VALUE | rb_big_pow (VALUE, VALUE)
VALUE | rb_big_and (VALUE, VALUE)
VALUE | rb_big_or (VALUE, VALUE)
VALUE | rb_big_xor (VALUE, VALUE)
VALUE | rb_big_lshift (VALUE, VALUE)
VALUE | rb_big_rshift (VALUE, VALUE)
VALUE | rb_rational_raw (VALUE, VALUE)
VALUE | rb_rational_new (VALUE, VALUE)
VALUE | rb_Rational (VALUE, VALUE)
VALUE | rb_complex_raw (VALUE, VALUE)
VALUE | rb_complex_new (VALUE, VALUE)
VALUE | rb_complex_polar (VALUE, VALUE)
VALUE | rb_Complex (VALUE, VALUE)
VALUE | rb_class_boot (VALUE)
| A utility function that wraps class_alloc. More...
VALUE | rb_class_new (VALUE)
| Creates a new class. More...
VALUE | rb_mod_init_copy (VALUE, VALUE)
VALUE | rb_singleton_class_clone (VALUE)
void | rb_singleton_class_attached (VALUE, VALUE)
| Attach a object to a singleton class. More...
VALUE | rb_make_metaclass (VALUE, VALUE)
void | rb_check_inheritable (VALUE)
| Ensures a class can be derived from super. More...
VALUE | rb_class_inherited (VALUE, VALUE)
| Calls Class::inherited. More...
VALUE | rb_define_class_id (ID, VALUE)
| Defines a new class. More...
VALUE | rb_define_class_id_under (VALUE, ID, VALUE)
| Defines a class under the namespace of outer. More...
VALUE | rb_module_new (void)
VALUE | rb_define_module_id (ID)
VALUE | rb_define_module_id_under (VALUE, ID)
VALUE | rb_include_class_new (VALUE, VALUE)
VALUE | rb_mod_included_modules (VALUE)
VALUE | rb_mod_include_p (VALUE, VALUE)
VALUE | rb_mod_ancestors (VALUE)
VALUE | rb_class_instance_methods (int, VALUE *, VALUE)
VALUE | rb_class_public_instance_methods (int, VALUE *, VALUE)
VALUE | rb_class_protected_instance_methods (int, VALUE *, VALUE)
VALUE | rb_class_private_instance_methods (int, VALUE *, VALUE)
VALUE | rb_obj_singleton_methods (int, VALUE *, VALUE)
void | rb_define_method_id (VALUE, ID, VALUE(*)(ANYARGS), int)
void | rb_frozen_class_p (VALUE)
void | rb_undef (VALUE, ID)
void | rb_define_protected_method (VALUE, const char *, VALUE(*)(ANYARGS), int)
void | rb_define_private_method (VALUE, const char *, VALUE(*)(ANYARGS), int)
void | rb_define_singleton_method (VALUE, const char *, VALUE(*)(ANYARGS), int)
| Defines a singleton method for obj. More...
VALUE | rb_singleton_class (VALUE)
| Returns the singleton class of obj. More...
int | rb_cmpint (VALUE, VALUE, VALUE)
| NORETURN (void rb_cmperr(VALUE, VALUE))
VALUE | rb_fiber_new (VALUE(*)(ANYARGS), VALUE)
VALUE | rb_fiber_resume (VALUE fib, int argc, VALUE *args)
VALUE | rb_fiber_yield (int argc, VALUE *args)
VALUE | rb_fiber_current (void)
VALUE | rb_fiber_alive_p (VALUE)
VALUE | rb_enum_values_pack (int, VALUE *)
VALUE | rb_enumeratorize (VALUE, VALUE, int, VALUE *)
VALUE | rb_enumeratorize_with_size (VALUE, VALUE, int, VALUE *, VALUE(*)(ANYARGS))
VALUE | rb_exc_new (VALUE, const char *, long)
VALUE | rb_exc_new2 (VALUE, const char *)
VALUE | rb_exc_new3 (VALUE, VALUE)
| PRINTF_ARGS (NORETURN(void rb_loaderror(const char *,...)), 1, 2)
| PRINTF_ARGS (NORETURN(void rb_loaderror_with_path(VALUE path, const char *,...)), 2, 3)
| PRINTF_ARGS (NORETURN(void rb_name_error(ID, const char *,...)), 2, 3)
| PRINTF_ARGS (NORETURN(void rb_name_error_str(VALUE, const char *,...)), 2, 3)
| NORETURN (void rb_invalid_str(const char *, const char *))
| PRINTF_ARGS (void rb_compile_error(const char *, int, const char *,...), 3, 4)
| PRINTF_ARGS (void rb_compile_error_with_enc(const char *, int, void *, const char *,...), 4, 5)
| PRINTF_ARGS (void rb_compile_error_append(const char *,...), 1, 2)
| NORETURN (void rb_error_frozen(const char *))
void | rb_error_untrusted (VALUE)
void | rb_check_frozen (VALUE)
void | rb_check_trusted (VALUE)
static void | rb_check_frozen_inline (VALUE obj)
static void | rb_check_trusted_inline (VALUE obj)
void | rb_check_copyable (VALUE obj, VALUE orig)
int | rb_sourceline (void)
const char * | rb_sourcefile (void)
VALUE | rb_check_funcall (VALUE, ID, int, VALUE *)
| NORETURN (void rb_error_arity(int, int, int))
| NORETURN (void rb_exc_raise(VALUE))
| NORETURN (void rb_exc_fatal(VALUE))
VALUE | rb_f_exit (int, VALUE *)
VALUE | rb_f_abort (int, VALUE *)
void | rb_remove_method (VALUE, const char *)
void | rb_remove_method_id (VALUE, ID)
void | rb_define_alloc_func (VALUE, rb_alloc_func_t)
void | rb_undef_alloc_func (VALUE)
rb_alloc_func_t | rb_get_alloc_func (VALUE)
void | rb_clear_cache (void)
void | rb_clear_cache_by_class (VALUE)
void | rb_alias (VALUE, ID, ID)
void | rb_attr (VALUE, ID, int, int, int)
int | rb_method_boundp (VALUE, ID, int)
int | rb_method_basic_definition_p (VALUE, ID)
VALUE | rb_eval_cmd (VALUE, VALUE, int)
int | rb_obj_respond_to (VALUE, ID, int)
int | rb_respond_to (VALUE, ID)
VALUE | rb_f_notimplement (int argc, VALUE *argv, VALUE obj)
void | rb_interrupt (void)
VALUE | rb_apply (VALUE, ID, VALUE)
| Calls a method. More...
void | rb_backtrace (void)
ID | rb_frame_this_func (void)
VALUE | rb_obj_instance_eval (int, VALUE *, VALUE)
VALUE | rb_obj_instance_exec (int, VALUE *, VALUE)
VALUE | rb_mod_module_eval (int, VALUE *, VALUE)
VALUE | rb_mod_module_exec (int, VALUE *, VALUE)
void | rb_load (VALUE, int)
void | rb_load_protect (VALUE, int, int *)
| NORETURN (void rb_jump_tag(int))
int | rb_provided (const char *)
int | rb_feature_provided (const char *, const char **)
void | rb_provide (const char *)
VALUE | rb_f_require (VALUE, VALUE)
VALUE | rb_require_safe (VALUE, int)
void | rb_obj_call_init (VALUE, int, VALUE *)
VALUE | rb_class_new_instance (int, VALUE *, VALUE)
VALUE | rb_block_proc (void)
VALUE | rb_block_lambda (void)
VALUE | rb_proc_new (VALUE(*)(ANYARGS), VALUE)
VALUE | rb_obj_is_proc (VALUE)
VALUE | rb_proc_call (VALUE, VALUE)
VALUE | rb_proc_call_with_block (VALUE, int argc, VALUE *argv, VALUE)
int | rb_proc_arity (VALUE)
VALUE | rb_proc_lambda_p (VALUE)
VALUE | rb_binding_new (void)
VALUE | rb_obj_method (VALUE, VALUE)
VALUE | rb_obj_is_method (VALUE)
VALUE | rb_method_call (int, VALUE *, VALUE)
VALUE | rb_method_call_with_block (int, VALUE *, VALUE, VALUE)
int | rb_mod_method_arity (VALUE, ID)
int | rb_obj_method_arity (VALUE, ID)
VALUE | rb_protect (VALUE(*)(VALUE), VALUE, int *)
void | rb_set_end_proc (void(*)(VALUE), VALUE)
void | rb_exec_end_proc (void)
void | rb_thread_schedule (void)
void | rb_thread_wait_fd (int)
int | rb_thread_fd_writable (int)
void | rb_thread_fd_close (int)
int | rb_thread_alone (void)
| DEPRECATED (void rb_thread_polling(void))
void | rb_thread_sleep (int)
void | rb_thread_sleep_forever (void)
VALUE | rb_thread_stop (void)
VALUE | rb_thread_wakeup (VALUE)
VALUE | rb_thread_wakeup_alive (VALUE)
VALUE | rb_thread_run (VALUE)
VALUE | rb_thread_kill (VALUE)
VALUE | rb_thread_create (VALUE(*)(ANYARGS), void *)
| DEPRECATED (int rb_thread_select(int, fd_set *, fd_set *, fd_set *, struct timeval *))
int | rb_thread_fd_select (int, rb_fdset_t *, rb_fdset_t *, rb_fdset_t *, struct timeval *)
void | rb_thread_wait_for (struct timeval)
VALUE | rb_thread_current (void)
VALUE | rb_thread_main (void)
VALUE | rb_thread_local_aref (VALUE, ID)
VALUE | rb_thread_local_aset (VALUE, ID, VALUE)
void | rb_thread_atfork (void)
void | rb_thread_atfork_before_exec (void)
VALUE | rb_exec_recursive (VALUE(*)(VALUE, VALUE, int), VALUE, VALUE)
VALUE | rb_exec_recursive_paired (VALUE(*)(VALUE, VALUE, int), VALUE, VALUE, VALUE)
VALUE | rb_exec_recursive_outer (VALUE(*)(VALUE, VALUE, int), VALUE, VALUE)
VALUE | rb_dir_getwd (void)
VALUE | rb_file_s_expand_path (int, VALUE *)
VALUE | rb_file_expand_path (VALUE, VALUE)
VALUE | rb_file_s_absolute_path (int, VALUE *)
VALUE | rb_file_absolute_path (VALUE, VALUE)
VALUE | rb_file_dirname (VALUE fname)
int | rb_find_file_ext_safe (VALUE *, const char *const *, int)
VALUE | rb_find_file_safe (VALUE, int)
int | rb_find_file_ext (VALUE *, const char *const *)
VALUE | rb_find_file (VALUE)
VALUE | rb_file_directory_p (VALUE, VALUE)
VALUE | rb_str_encode_ospath (VALUE)
int | rb_is_absolute_path (const char *)
| NORETURN (void rb_memerror(void))
int | rb_during_gc (void)
void | rb_gc_mark_locations (VALUE *, VALUE *)
void | rb_mark_tbl (struct st_table *)
void | rb_mark_set (struct st_table *)
void | rb_mark_hash (struct st_table *)
void | rb_gc_mark_maybe (VALUE)
void | rb_gc_mark (VALUE)
void | rb_gc_force_recycle (VALUE)
void | rb_gc (void)
void | rb_gc_copy_finalizer (VALUE, VALUE)
void | rb_gc_finalize_deferred (void)
void | rb_gc_call_finalizer_at_exit (void)
VALUE | rb_gc_enable (void)
VALUE | rb_gc_disable (void)
VALUE | rb_gc_start (void)
void | rb_gc_set_params (void)
void | st_foreach_safe (struct st_table *, int(*)(ANYARGS), st_data_t)
VALUE | rb_check_hash_type (VALUE)
void | rb_hash_foreach (VALUE, int(*)(ANYARGS), VALUE)
VALUE | rb_hash (VALUE)
VALUE | rb_hash_new (void)
VALUE | rb_hash_dup (VALUE)
VALUE | rb_hash_freeze (VALUE)
VALUE | rb_hash_aref (VALUE, VALUE)
VALUE | rb_hash_lookup (VALUE, VALUE)
VALUE | rb_hash_lookup2 (VALUE, VALUE, VALUE)
VALUE | rb_hash_fetch (VALUE, VALUE)
VALUE | rb_hash_aset (VALUE, VALUE, VALUE)
VALUE | rb_hash_clear (VALUE)
VALUE | rb_hash_delete_if (VALUE)
VALUE | rb_hash_delete (VALUE, VALUE)
VALUE | rb_hash_update_by (VALUE hash1, VALUE hash2, rb_hash_update_func *func)
struct st_table * | rb_hash_tbl (VALUE)
int | rb_path_check (const char *)
int | rb_env_path_tainted (void)
VALUE | rb_env_clear (void)
VALUE | rb_io_write (VALUE, VALUE)
VALUE | rb_io_gets (VALUE)
VALUE | rb_io_getbyte (VALUE)
VALUE | rb_io_ungetc (VALUE, VALUE)
VALUE | rb_io_ungetbyte (VALUE, VALUE)
VALUE | rb_io_close (VALUE)
VALUE | rb_io_flush (VALUE)
VALUE | rb_io_eof (VALUE)
VALUE | rb_io_binmode (VALUE)
VALUE | rb_io_ascii8bit_binmode (VALUE)
VALUE | rb_io_addstr (VALUE, VALUE)
VALUE | rb_io_printf (int, VALUE *, VALUE)
VALUE | rb_io_print (int, VALUE *, VALUE)
VALUE | rb_io_puts (int, VALUE *, VALUE)
VALUE | rb_io_fdopen (int, int, const char *)
VALUE | rb_io_get_io (VALUE)
VALUE | rb_file_open (const char *, const char *)
VALUE | rb_file_open_str (VALUE, const char *)
VALUE | rb_gets (void)
void | rb_write_error (const char *)
void | rb_write_error2 (const char *, long)
void | rb_close_before_exec (int lowfd, int maxhint, VALUE noclose_fds)
int | rb_pipe (int *pipes)
int | rb_reserved_fd_p (int fd)
int | rb_cloexec_open (const char *pathname, int flags, mode_t mode)
int | rb_cloexec_dup (int oldfd)
int | rb_cloexec_dup2 (int oldfd, int newfd)
int | rb_cloexec_pipe (int fildes[2])
int | rb_cloexec_fcntl_dupfd (int fd, int minfd)
void | rb_update_max_fd (int fd)
void | rb_fd_fix_cloexec (int fd)
VALUE | rb_marshal_dump (VALUE, VALUE)
VALUE | rb_marshal_load (VALUE)
void | rb_marshal_define_compat (VALUE newclass, VALUE oldclass, VALUE(*dumper)(VALUE), VALUE(*loader)(VALUE, VALUE))
| NORETURN (void rb_num_zerodiv(void))
VALUE | rb_num_coerce_bin (VALUE, VALUE, ID)
VALUE | rb_num_coerce_cmp (VALUE, VALUE, ID)
VALUE | rb_num_coerce_relop (VALUE, VALUE, ID)
VALUE | rb_num_coerce_bit (VALUE, VALUE, ID)
VALUE | rb_num2fix (VALUE)
VALUE | rb_fix2str (VALUE, int)
VALUE | rb_dbl_cmp (double, double)
int | rb_eql (VALUE, VALUE)
VALUE | rb_any_to_s (VALUE)
VALUE | rb_inspect (VALUE)
VALUE | rb_obj_is_instance_of (VALUE, VALUE)
VALUE | rb_obj_is_kind_of (VALUE, VALUE)
VALUE | rb_obj_alloc (VALUE)
VALUE | rb_obj_clone (VALUE)
VALUE | rb_obj_dup (VALUE)
VALUE | rb_obj_init_copy (VALUE, VALUE)
VALUE | rb_obj_taint (VALUE)
VALUE | rb_obj_tainted (VALUE)
VALUE | rb_obj_untaint (VALUE)
VALUE | rb_obj_untrust (VALUE)
VALUE | rb_obj_untrusted (VALUE)
VALUE | rb_obj_trust (VALUE)
VALUE | rb_obj_freeze (VALUE)
VALUE | rb_obj_frozen_p (VALUE)
VALUE | rb_obj_id (VALUE)
VALUE | rb_obj_class (VALUE)
VALUE | rb_class_real (VALUE)
VALUE | rb_class_inherited_p (VALUE, VALUE)
VALUE | rb_class_superclass (VALUE)
VALUE | rb_class_get_superclass (VALUE)
VALUE | rb_convert_type (VALUE, int, const char *, const char *)
VALUE | rb_check_convert_type (VALUE, int, const char *, const char *)
VALUE | rb_check_to_integer (VALUE, const char *)
VALUE | rb_check_to_float (VALUE)
VALUE | rb_to_int (VALUE)
VALUE | rb_check_to_int (VALUE)
VALUE | rb_Integer (VALUE)
VALUE | rb_to_float (VALUE)
VALUE | rb_Float (VALUE)
VALUE | rb_String (VALUE)
VALUE | rb_Array (VALUE)
VALUE | rb_Hash (VALUE)
double | rb_cstr_to_dbl (const char *, int)
double | rb_str_to_dbl (VALUE, int)
ID | rb_id_attrset (ID)
int | rb_is_const_id (ID)
int | rb_is_global_id (ID)
int | rb_is_instance_id (ID)
int | rb_is_attrset_id (ID)
int | rb_is_class_id (ID)
int | rb_is_local_id (ID)
int | rb_is_junk_id (ID)
int | rb_symname_p (const char *)
int | rb_sym_interned_p (VALUE)
VALUE | rb_backref_get (void)
void | rb_backref_set (VALUE)
VALUE | rb_lastline_get (void)
void | rb_lastline_set (VALUE)
VALUE | rb_sym_all_symbols (void)
void | rb_last_status_set (int status, rb_pid_t pid)
VALUE | rb_last_status_get (void)
| DEPRECATED (int rb_proc_exec_n(int, VALUE *, const char *))
int | rb_proc_exec (const char *)
| DEPRECATED (VALUE rb_exec_arg_init(int argc, VALUE *argv, int accept_shell, struct rb_exec_arg *e))
| DEPRECATED (int rb_exec_arg_addopt(struct rb_exec_arg *e, VALUE key, VALUE val))
| DEPRECATED (void rb_exec_arg_fixup(struct rb_exec_arg *e))
| DEPRECATED (int rb_run_exec_options(const struct rb_exec_arg *e, struct rb_exec_arg *s))
| DEPRECATED (int rb_run_exec_options_err(const struct rb_exec_arg *e, struct rb_exec_arg *s, char *, size_t))
| DEPRECATED (int rb_exec(const struct rb_exec_arg *))
| DEPRECATED (int rb_exec_err(const struct rb_exec_arg *, char *, size_t))
| DEPRECATED (rb_pid_t rb_fork(int *, int(*)(void *), void *, VALUE))
| DEPRECATED (rb_pid_t rb_fork_err(int *, int(*)(void *, char *, size_t), void *, VALUE, char *, size_t))
VALUE | rb_f_exec (int, VALUE *)
rb_pid_t | rb_waitpid (rb_pid_t pid, int *status, int flags)
void | rb_syswait (rb_pid_t pid)
rb_pid_t | rb_spawn (int, VALUE *)
rb_pid_t | rb_spawn_err (int, VALUE *, char *, size_t)
VALUE | rb_proc_times (VALUE)
VALUE | rb_detach_process (rb_pid_t pid)
VALUE | rb_range_new (VALUE, VALUE, int)
VALUE | rb_range_beg_len (VALUE, long *, long *, long, int)
int | rb_range_values (VALUE range, VALUE *begp, VALUE *endp, int *exclp)
unsigned int | rb_genrand_int32 (void)
double | rb_genrand_real (void)
void | rb_reset_random_seed (void)
VALUE | rb_random_bytes (VALUE rnd, long n)
VALUE | rb_random_int (VALUE rnd, VALUE max)
unsigned int | rb_random_int32 (VALUE rnd)
double | rb_random_real (VALUE rnd)
unsigned long | rb_random_ulong_limited (VALUE rnd, unsigned long limit)
unsigned long | rb_genrand_ulong_limited (unsigned long i)
int | rb_memcicmp (const void *, const void *, long)
void | rb_match_busy (VALUE)
VALUE | rb_reg_nth_defined (int, VALUE)
VALUE | rb_reg_nth_match (int, VALUE)
int | rb_reg_backref_number (VALUE match, VALUE backref)
VALUE | rb_reg_last_match (VALUE)
VALUE | rb_reg_match_pre (VALUE)
VALUE | rb_reg_match_post (VALUE)
VALUE | rb_reg_match_last (VALUE)
VALUE | rb_reg_new_str (VALUE, int)
VALUE | rb_reg_new (const char *, long, int)
VALUE | rb_reg_alloc (void)
VALUE | rb_reg_init_str (VALUE re, VALUE s, int options)
VALUE | rb_reg_match (VALUE, VALUE)
VALUE | rb_reg_match2 (VALUE)
int | rb_reg_options (VALUE)
VALUE | rb_get_argv (void)
void * | rb_load_file (const char *)
VALUE | rb_f_kill (int, VALUE *)
void | rb_trap_exit (void)
void | rb_trap_exec (void)
const char * | ruby_signal_name (int)
void | ruby_default_signal (int)
VALUE | rb_f_sprintf (int, const VALUE *)
| PRINTF_ARGS (VALUE rb_sprintf(const char *,...), 1, 2)
VALUE | rb_vsprintf (const char *, va_list)
| PRINTF_ARGS (VALUE rb_str_catf(VALUE, const char *,...), 2, 3)
VALUE | rb_str_vcatf (VALUE, const char *, va_list)
VALUE | rb_str_format (int, const VALUE *, VALUE)
VALUE | rb_str_new (const char *, long)
VALUE | rb_str_new_cstr (const char *)
VALUE | rb_str_new2 (const char *)
VALUE | rb_str_new_shared (VALUE)
VALUE | rb_str_new3 (VALUE)
VALUE | rb_str_new_frozen (VALUE)
VALUE | rb_str_new4 (VALUE)
VALUE | rb_str_new_with_class (VALUE, const char *, long)
VALUE | rb_str_new5 (VALUE, const char *, long)
VALUE | rb_tainted_str_new_cstr (const char *)
VALUE | rb_tainted_str_new (const char *, long)
VALUE | rb_tainted_str_new2 (const char *)
VALUE | rb_external_str_new (const char *, long)
VALUE | rb_external_str_new_cstr (const char *)
VALUE | rb_locale_str_new (const char *, long)
VALUE | rb_locale_str_new_cstr (const char *)
VALUE | rb_filesystem_str_new (const char *, long)
VALUE | rb_filesystem_str_new_cstr (const char *)
VALUE | rb_str_buf_new (long)
VALUE | rb_str_buf_new_cstr (const char *)
VALUE | rb_str_buf_new2 (const char *)
VALUE | rb_str_tmp_new (long)
VALUE | rb_usascii_str_new (const char *, long)
VALUE | rb_usascii_str_new_cstr (const char *)
VALUE | rb_usascii_str_new2 (const char *)
void | rb_str_free (VALUE)
void | rb_str_shared_replace (VALUE, VALUE)
VALUE | rb_str_buf_append (VALUE, VALUE)
VALUE | rb_str_buf_cat (VALUE, const char *, long)
VALUE | rb_str_buf_cat2 (VALUE, const char *)
VALUE | rb_str_buf_cat_ascii (VALUE, const char *)
VALUE | rb_obj_as_string (VALUE)
VALUE | rb_check_string_type (VALUE)
void | rb_must_asciicompat (VALUE)
VALUE | rb_str_dup (VALUE)
VALUE | rb_str_resurrect (VALUE str)
VALUE | rb_str_locktmp (VALUE)
VALUE | rb_str_unlocktmp (VALUE)
VALUE | rb_str_dup_frozen (VALUE)
VALUE | rb_str_plus (VALUE, VALUE)
VALUE | rb_str_times (VALUE, VALUE)
long | rb_str_sublen (VALUE, long)
VALUE | rb_str_substr (VALUE, long, long)
VALUE | rb_str_subseq (VALUE, long, long)
void | rb_str_modify (VALUE)
void | rb_str_modify_expand (VALUE, long)
VALUE | rb_str_freeze (VALUE)
void | rb_str_set_len (VALUE, long)
VALUE | rb_str_resize (VALUE, long)
VALUE | rb_str_cat (VALUE, const char *, long)
VALUE | rb_str_cat2 (VALUE, const char *)
VALUE | rb_str_append (VALUE, VALUE)
VALUE | rb_str_concat (VALUE, VALUE)
st_index_t | rb_memhash (const void *ptr, long len)
st_index_t | rb_hash_start (st_index_t)
st_index_t | rb_hash_uint32 (st_index_t, uint32_t)
st_index_t | rb_hash_uint (st_index_t, st_index_t)
st_index_t | rb_hash_end (st_index_t)
st_index_t | rb_str_hash (VALUE)
int | rb_str_hash_cmp (VALUE, VALUE)
int | rb_str_comparable (VALUE, VALUE)
int | rb_str_cmp (VALUE, VALUE)
VALUE | rb_str_equal (VALUE str1, VALUE str2)
VALUE | rb_str_drop_bytes (VALUE, long)
void | rb_str_update (VALUE, long, long, VALUE)
VALUE | rb_str_replace (VALUE, VALUE)
VALUE | rb_str_inspect (VALUE)
VALUE | rb_str_dump (VALUE)
VALUE | rb_str_split (VALUE, const char *)
void | rb_str_associate (VALUE, VALUE)
VALUE | rb_str_associated (VALUE)
void | rb_str_setter (VALUE, ID, VALUE *)
VALUE | rb_str_intern (VALUE)
VALUE | rb_sym_to_s (VALUE)
long | rb_str_strlen (VALUE)
VALUE | rb_str_length (VALUE)
long | rb_str_offset (VALUE, long)
size_t | rb_str_capacity (VALUE)
VALUE | rb_str_ellipsize (VALUE, long)
| Shortens str and adds three dots, an ellipsis, if it is longer than len characters. More...
VALUE | rb_struct_new (VALUE,...)
VALUE | rb_struct_define (const char *,...)
VALUE | rb_struct_alloc (VALUE, VALUE)
VALUE | rb_struct_initialize (VALUE, VALUE)
VALUE | rb_struct_aref (VALUE, VALUE)
VALUE | rb_struct_aset (VALUE, VALUE, VALUE)
VALUE | rb_struct_getmember (VALUE, ID)
| DEPRECATED (VALUE rb_struct_iv_get(VALUE, const char *))
VALUE | rb_struct_s_members (VALUE)
VALUE | rb_struct_members (VALUE)
VALUE | rb_struct_alloc_noinit (VALUE)
VALUE | rb_struct_define_without_accessor (const char *, VALUE, rb_alloc_func_t,...)
void | rb_thread_check_ints (void)
int | rb_thread_interrupted (VALUE thval)
| DEPRECATED (VALUE rb_thread_blocking_region(rb_blocking_function_t *func, void *data1, rb_unblock_function_t *ubf, void *data2))
VALUE | rb_mutex_new (void)
VALUE | rb_mutex_locked_p (VALUE mutex)
VALUE | rb_mutex_trylock (VALUE mutex)
VALUE | rb_mutex_lock (VALUE mutex)
VALUE | rb_mutex_unlock (VALUE mutex)
VALUE | rb_mutex_sleep (VALUE self, VALUE timeout)
VALUE | rb_mutex_synchronize (VALUE mutex, VALUE(*func)(VALUE arg), VALUE arg)
VALUE | rb_time_new (time_t, long)
VALUE | rb_time_nano_new (time_t, long)
VALUE | rb_time_num_new (VALUE, VALUE)
struct timeval | rb_time_interval (VALUE num)
struct timeval | rb_time_timeval (VALUE time)
struct timespec | rb_time_timespec (VALUE time)
VALUE | rb_mod_name (VALUE)
VALUE | rb_class_path (VALUE)
void | rb_set_class_path (VALUE, VALUE, const char *)
void | rb_set_class_path_string (VALUE, VALUE, VALUE)
VALUE | rb_path_to_class (VALUE)
VALUE | rb_path2class (const char *)
void | rb_name_class (VALUE, ID)
VALUE | rb_class_name (VALUE)
void | rb_autoload (VALUE, ID, const char *)
VALUE | rb_autoload_load (VALUE, ID)
VALUE | rb_autoload_p (VALUE, ID)
VALUE | rb_f_trace_var (int, VALUE *)
VALUE | rb_f_untrace_var (int, VALUE *)
VALUE | rb_f_global_variables (void)
void | rb_alias_variable (ID, ID)
struct st_table * | rb_generic_ivar_table (VALUE)
void | rb_copy_generic_ivar (VALUE, VALUE)
void | rb_free_generic_ivar (VALUE)
VALUE | rb_ivar_get (VALUE, ID)
VALUE | rb_ivar_set (VALUE, ID, VALUE)
VALUE | rb_ivar_defined (VALUE, ID)
void | rb_ivar_foreach (VALUE, int(*)(ANYARGS), st_data_t)
st_index_t | rb_ivar_count (VALUE)
VALUE | rb_iv_set (VALUE, const char *, VALUE)
VALUE | rb_iv_get (VALUE, const char *)
VALUE | rb_attr_get (VALUE, ID)
VALUE | rb_obj_instance_variables (VALUE)
VALUE | rb_obj_remove_instance_variable (VALUE, VALUE)
void * | rb_mod_const_at (VALUE, void *)
void * | rb_mod_const_of (VALUE, void *)
VALUE | rb_const_list (void *)
VALUE | rb_mod_constants (int, VALUE *, VALUE)
VALUE | rb_mod_remove_const (VALUE, VALUE)
int | rb_const_defined (VALUE, ID)
int | rb_const_defined_at (VALUE, ID)
int | rb_const_defined_from (VALUE, ID)
VALUE | rb_const_get (VALUE, ID)
VALUE | rb_const_get_at (VALUE, ID)
VALUE | rb_const_get_from (VALUE, ID)
void | rb_const_set (VALUE, ID, VALUE)
VALUE | rb_const_remove (VALUE, ID)
VALUE | rb_mod_const_missing (VALUE, VALUE)
VALUE | rb_cvar_defined (VALUE, ID)
void | rb_cvar_set (VALUE, ID, VALUE)
VALUE | rb_cvar_get (VALUE, ID)
void | rb_cv_set (VALUE, const char *, VALUE)
VALUE | rb_cv_get (VALUE, const char *)
void | rb_define_class_variable (VALUE, const char *, VALUE)
VALUE | rb_mod_class_variables (int, VALUE *, VALUE)
VALUE | rb_mod_remove_cvar (VALUE, VALUE)
ID | rb_frame_callee (void)
VALUE | rb_str_succ (VALUE)
VALUE | rb_time_succ (VALUE)
void | rb_frame_pop (void)
int | rb_frame_method_id_and_class (ID *idp, VALUE *klassp)
VALUE | rb_make_backtrace (void)
VALUE | rb_make_exception (int, VALUE *)
int | ruby_native_thread_p (void)
void | rb_add_event_hook (rb_event_hook_func_t func, rb_event_flag_t events, VALUE data)
int | rb_remove_event_hook (rb_event_hook_func_t func)
int | rb_isalnum (int c)
int | rb_isalpha (int c)
int | rb_isblank (int c)
int | rb_iscntrl (int c)
int | rb_isdigit (int c)
int | rb_isgraph (int c)
int | rb_islower (int c)
int | rb_isprint (int c)
int | rb_ispunct (int c)
int | rb_isspace (int c)
int | rb_isupper (int c)
int | rb_isxdigit (int c)
int | rb_tolower (int c)
int | rb_toupper (int c)
int | st_strcasecmp (const char *s1, const char *s2)
int | st_strncasecmp (const char *s1, const char *s2, size_t n)
unsigned long | ruby_strtoul (const char *str, char **endptr, int base)
| PRINTF_ARGS (int ruby_snprintf(char *str, size_t n, char const *fmt,...), 3, 4)
int | ruby_vsnprintf (char *str, size_t n, char const *fmt, va_list ap)
void | ruby_sysinit (int *argc, char ***argv)
| Initializes the process for ruby(1). More...
void | ruby_init (void)
void * | ruby_options (int argc, char **argv)
| Processes command line arguments and compiles the Ruby source to execute. More...
int | ruby_executable_node (void *n, int *status)
| Checks the return value of ruby_options(). More...
int | ruby_run_node (void *n)
| Runs the given compiled source and exits this process. More...
void | ruby_show_version (void)
| Prints the version information of the CRuby interpreter to stdout. More...
void | ruby_show_copyright (void)
| Prints the copyright notice of the CRuby interpreter to stdout and exits this process successfully. More...
void | ruby_init_stack (volatile VALUE *)
int | ruby_setup (void)
int | ruby_cleanup (volatile int)
| Destructs the VM. More...
void | ruby_finalize (void)
| Runs the VM finalization processes. More...
| NORETURN (void ruby_stop(int))
void | ruby_set_stack_size (size_t)
int | ruby_stack_check (void)
size_t | ruby_stack_length (VALUE **)
int | ruby_exec_node (void *n)
| Runs the given compiled source. More...
void | ruby_script (const char *name)
| Sets the current script name to this value. More...
void | ruby_set_script_name (VALUE name)
| Sets the current script name to this value. More...
void | ruby_prog_init (void)
| Defines built-in variables. More...
void | ruby_set_argv (int, char **)
void * | ruby_process_options (int, char **)
void | ruby_init_loadpath (void)
void | ruby_incpush (const char *)
void | ruby_sig_finalize (void)
ONIG_EXTERN int onigenc_mbclen_approximate | P_ ((const OnigUChar *p, const OnigUChar *e, struct OnigEncodingTypeST *enc))
ONIG_EXTERN OnigUChar *onigenc_step_back | P_ ((OnigEncoding enc, const OnigUChar *start, const OnigUChar *s, const OnigUChar *end, int n))
ONIG_EXTERN int onigenc_init | P_ ((void))
ONIG_EXTERN int onigenc_set_default_encoding | P_ ((OnigEncoding enc))
ONIG_EXTERN OnigEncoding onigenc_get_default_encoding | P_ ((void))
ONIG_EXTERN void onigenc_set_default_caseconv_table | P_ ((const OnigUChar *table))
ONIG_EXTERN OnigUChar *onigenc_get_right_adjust_char_head_with_prev | P_ ((OnigEncoding enc, const OnigUChar *start, const OnigUChar *s, const OnigUChar *end, const OnigUChar **prev))
ONIG_EXTERN OnigUChar *onigenc_get_prev_char_head | P_ ((OnigEncoding enc, const OnigUChar *start, const OnigUChar *s, const OnigUChar *end))
ONIG_EXTERN OnigUChar *onigenc_get_left_adjust_char_head | P_ ((OnigEncoding enc, const OnigUChar *start, const OnigUChar *s, const OnigUChar *end))
ONIG_EXTERN OnigUChar *onigenc_get_right_adjust_char_head | P_ ((OnigEncoding enc, const OnigUChar *start, const OnigUChar *s, const OnigUChar *end))
ONIG_EXTERN int onigenc_strlen | P_ ((OnigEncoding enc, const OnigUChar *p, const OnigUChar *end))
ONIG_EXTERN int onigenc_strlen_null | P_ ((OnigEncoding enc, const OnigUChar *p))
ONIG_EXTERN int onigenc_str_bytelen_null | P_ ((OnigEncoding enc, const OnigUChar *p))
void onig_null_warn | P_ ((const char *s))
ONIG_EXTERN int onig_init | P_ ((void))
ONIG_EXTERN int onig_error_code_to_str | PV_ ((OnigUChar *s, OnigPosition err_code,...))
ONIG_EXTERN void onig_set_warn_func | P_ ((OnigWarnFunc f))
ONIG_EXTERN void onig_set_verb_warn_func | P_ ((OnigWarnFunc f))
ONIG_EXTERN int onig_new | P_ ((OnigRegex *, const OnigUChar *pattern, const OnigUChar *pattern_end, OnigOptionType option, OnigEncoding enc, const OnigSyntaxType *syntax, OnigErrorInfo *einfo))
ONIG_EXTERN int onig_reg_init | P_ ((OnigRegex reg, OnigOptionType option, OnigCaseFoldType case_fold_flag, OnigEncoding enc, const OnigSyntaxType *syntax))
ONIG_EXTERN int onig_new_without_alloc | P_ ((OnigRegex, const OnigUChar *pattern, const OnigUChar *pattern_end, OnigOptionType option, OnigEncoding enc, OnigSyntaxType *syntax, OnigErrorInfo *einfo))
ONIG_EXTERN int onig_new_deluxe | P_ ((OnigRegex *reg, const OnigUChar *pattern, const OnigUChar *pattern_end, OnigCompileInfo *ci, OnigErrorInfo *einfo))
ONIG_EXTERN void onig_free | P_ ((OnigRegex))
ONIG_EXTERN void onig_free_body | P_ ((OnigRegex))
ONIG_EXTERN int onig_recompile | P_ ((OnigRegex, const OnigUChar *pattern, const OnigUChar *pattern_end, OnigOptionType option, OnigEncoding enc, OnigSyntaxType *syntax, OnigErrorInfo *einfo))
ONIG_EXTERN int onig_recompile_deluxe | P_ ((OnigRegex reg, const OnigUChar *pattern, const OnigUChar *pattern_end, OnigCompileInfo *ci, OnigErrorInfo *einfo))
ONIG_EXTERN OnigPosition onig_search | P_ ((OnigRegex, const OnigUChar *str, const OnigUChar *end, const OnigUChar *start, const OnigUChar *range, OnigRegion *region, OnigOptionType option))
ONIG_EXTERN OnigPosition onig_search_gpos | P_ ((OnigRegex, const OnigUChar *str, const OnigUChar *end, const OnigUChar *global_pos, const OnigUChar *start, const OnigUChar *range, OnigRegion *region, OnigOptionType option))
ONIG_EXTERN OnigPosition onig_match | P_ ((OnigRegex, const OnigUChar *str, const OnigUChar *end, const OnigUChar *at, OnigRegion *region, OnigOptionType option))
ONIG_EXTERN OnigRegion *onig_region_new | P_ ((void))
ONIG_EXTERN void onig_region_init | P_ ((OnigRegion *region))
ONIG_EXTERN void onig_region_free | P_ ((OnigRegion *region, int free_self))
ONIG_EXTERN void onig_region_copy | P_ ((OnigRegion *to, OnigRegion *from))
ONIG_EXTERN void onig_region_clear | P_ ((OnigRegion *region))
ONIG_EXTERN int onig_region_resize | P_ ((OnigRegion *region, int n))
ONIG_EXTERN int onig_region_set | P_ ((OnigRegion *region, int at, int beg, int end))
ONIG_EXTERN int onig_name_to_group_numbers | P_ ((OnigRegex reg, const OnigUChar *name, const OnigUChar *name_end, int **nums))
ONIG_EXTERN int onig_name_to_backref_number | P_ ((OnigRegex reg, const OnigUChar *name, const OnigUChar *name_end, OnigRegion *region))
ONIG_EXTERN int onig_foreach_name | P_ ((OnigRegex reg, int(*func)(const OnigUChar *, const OnigUChar *, int, int *, OnigRegex, void *), void *arg))
ONIG_EXTERN int onig_number_of_names | P_ ((OnigRegex reg))
ONIG_EXTERN int onig_number_of_captures | P_ ((OnigRegex reg))
ONIG_EXTERN int onig_number_of_capture_histories | P_ ((OnigRegex reg))
ONIG_EXTERN OnigCaptureTreeNode *onig_get_capture_tree | P_ ((OnigRegion *region))
ONIG_EXTERN int onig_capture_tree_traverse | P_ ((OnigRegion *region, int at, int(*callback_func)(int, OnigPosition, OnigPosition, int, int, void *), void *arg))
ONIG_EXTERN int onig_noname_group_capture_is_active | P_ ((OnigRegex reg))
ONIG_EXTERN OnigEncoding onig_get_encoding | P_ ((OnigRegex reg))
ONIG_EXTERN OnigOptionType onig_get_options | P_ ((OnigRegex reg))
ONIG_EXTERN OnigCaseFoldType onig_get_case_fold_flag | P_ ((OnigRegex reg))
ONIG_EXTERN const OnigSyntaxType *onig_get_syntax | P_ ((OnigRegex reg))
ONIG_EXTERN int onig_set_default_syntax | P_ ((const OnigSyntaxType *syntax))
ONIG_EXTERN void onig_copy_syntax | P_ ((OnigSyntaxType *to, const OnigSyntaxType *from))
ONIG_EXTERN unsigned int onig_get_syntax_op | P_ ((OnigSyntaxType *syntax))
ONIG_EXTERN unsigned int onig_get_syntax_op2 | P_ ((OnigSyntaxType *syntax))
ONIG_EXTERN unsigned int onig_get_syntax_behavior | P_ ((OnigSyntaxType *syntax))
ONIG_EXTERN OnigOptionType onig_get_syntax_options | P_ ((OnigSyntaxType *syntax))
ONIG_EXTERN void onig_set_syntax_op | P_ ((OnigSyntaxType *syntax, unsigned int op))
ONIG_EXTERN void onig_set_syntax_op2 | P_ ((OnigSyntaxType *syntax, unsigned int op2))
ONIG_EXTERN void onig_set_syntax_behavior | P_ ((OnigSyntaxType *syntax, unsigned int behavior))
ONIG_EXTERN void onig_set_syntax_options | P_ ((OnigSyntaxType *syntax, OnigOptionType options))
ONIG_EXTERN int onig_set_meta_char | P_ ((OnigSyntaxType *syntax, unsigned int what, OnigCodePoint code))
ONIG_EXTERN void onig_copy_encoding | P_ ((OnigEncoding to, OnigEncoding from))
ONIG_EXTERN OnigCaseFoldType onig_get_default_case_fold_flag | P_ ((void))
ONIG_EXTERN int onig_set_default_case_fold_flag | P_ ((OnigCaseFoldType case_fold_flag))
ONIG_EXTERN unsigned int onig_get_match_stack_limit_size | P_ ((void))
ONIG_EXTERN int onig_set_match_stack_limit_size | P_ ((unsigned int size))
ONIG_EXTERN int onig_end | P_ ((void))
ONIG_EXTERN const char *onig_version | P_ ((void))
ONIG_EXTERN const char *onig_copyright | P_ ((void))
int | rb_char_to_option_kcode (int c, int *option, int *kcode)
int | rb_enc_replicate (const char *, rb_encoding *)
int | rb_define_dummy_encoding (const char *)
int | rb_enc_get_index (VALUE obj)
void | rb_enc_set_index (VALUE obj, int encindex)
int | rb_enc_find_index (const char *name)
int | rb_to_encoding_index (VALUE)
rb_encoding * | rb_to_encoding (VALUE)
rb_encoding * | rb_find_encoding (VALUE)
rb_encoding * | rb_enc_get (VALUE)
rb_encoding * | rb_enc_compatible (VALUE, VALUE)
rb_encoding * | rb_enc_check (VALUE, VALUE)
VALUE | rb_enc_associate_index (VALUE, int)
VALUE | rb_enc_associate (VALUE, rb_encoding *)
void | rb_enc_copy (VALUE dst, VALUE src)
VALUE | rb_enc_str_new (const char *, long, rb_encoding *)
VALUE | rb_enc_reg_new (const char *, long, rb_encoding *, int)
| PRINTF_ARGS (VALUE rb_enc_sprintf(rb_encoding *, const char *,...), 2, 3)
VALUE | rb_enc_vsprintf (rb_encoding *, const char *, va_list)
long | rb_enc_strlen (const char *, const char *, rb_encoding *)
char * | rb_enc_nth (const char *, const char *, long, rb_encoding *)
VALUE | rb_obj_encoding (VALUE)
VALUE | rb_enc_str_buf_cat (VALUE str, const char *ptr, long len, rb_encoding *enc)
VALUE | rb_enc_uint_chr (unsigned int code, rb_encoding *enc)
VALUE | rb_external_str_new_with_enc (const char *ptr, long len, rb_encoding *)
VALUE | rb_str_export_to_enc (VALUE, rb_encoding *)
VALUE | rb_str_conv_enc (VALUE str, rb_encoding *from, rb_encoding *to)
VALUE | rb_str_conv_enc_opts (VALUE str, rb_encoding *from, rb_encoding *to, int ecflags, VALUE ecopts)
| PRINTF_ARGS (NORETURN(void rb_enc_raise(rb_encoding *, VALUE, const char *,...)), 3, 4)
rb_encoding * | rb_enc_from_index (int idx)
rb_encoding * | rb_enc_find (const char *name)
int | rb_enc_mbclen (const char *p, const char *e, rb_encoding *enc)
int | rb_enc_fast_mbclen (const char *p, const char *e, rb_encoding *enc)
int | rb_enc_precise_mbclen (const char *p, const char *e, rb_encoding *enc)
int | rb_enc_ascget (const char *p, const char *e, int *len, rb_encoding *enc)
unsigned int | rb_enc_codepoint_len (const char *p, const char *e, int *len, rb_encoding *enc)
unsigned int | rb_enc_codepoint (const char *p, const char *e, rb_encoding *enc)
int | rb_enc_codelen (int code, rb_encoding *enc)
int | rb_enc_casefold (char *to, const char *p, const char *e, rb_encoding *enc)
int | rb_enc_toupper (int c, rb_encoding *enc)
int | rb_enc_tolower (int c, rb_encoding *enc)
ID | rb_intern3 (const char *, long, rb_encoding *)
ID | rb_interned_id_p (const char *, long, rb_encoding *)
int | rb_enc_symname_p (const char *, rb_encoding *)
int | rb_enc_symname2_p (const char *, long, rb_encoding *)
int | rb_enc_str_coderange (VALUE)
long | rb_str_coderange_scan_restartable (const char *, const char *, rb_encoding *, int *)
int | rb_enc_str_asciionly_p (VALUE)
VALUE | rb_enc_from_encoding (rb_encoding *enc)
int | rb_enc_unicode_p (rb_encoding *enc)
rb_encoding * | rb_ascii8bit_encoding (void)
rb_encoding * | rb_utf8_encoding (void)
rb_encoding * | rb_usascii_encoding (void)
rb_encoding * | rb_locale_encoding (void)
rb_encoding * | rb_filesystem_encoding (void)
rb_encoding * | rb_default_external_encoding (void)
rb_encoding * | rb_default_internal_encoding (void)
int | rb_ascii8bit_encindex (void)
int | rb_utf8_encindex (void)
int | rb_usascii_encindex (void)
int | rb_locale_encindex (void)
int | rb_filesystem_encindex (void)
VALUE | rb_enc_default_external (void)
VALUE | rb_enc_default_internal (void)
void | rb_enc_set_default_external (VALUE encoding)
void | rb_enc_set_default_internal (VALUE encoding)
VALUE | rb_locale_charmap (VALUE klass)
long | rb_memsearch (const void *, long, const void *, long, rb_encoding *)
char * | rb_enc_path_next (const char *, const char *, rb_encoding *)
char * | rb_enc_path_skip_prefix (const char *, const char *, rb_encoding *)
char * | rb_enc_path_last_separator (const char *, const char *, rb_encoding *)
char * | rb_enc_path_end (const char *, const char *, rb_encoding *)
const char * | ruby_enc_find_basename (const char *name, long *baselen, long *alllen, rb_encoding *enc)
const char * | ruby_enc_find_extname (const char *name, long *len, rb_encoding *enc)
ID | rb_check_id_cstr (const char *ptr, long len, rb_encoding *enc)
static int | rb_enc_dummy_p (rb_encoding *enc)
VALUE | rb_str_encode (VALUE str, VALUE to, int ecflags, VALUE ecopts)
int | rb_econv_has_convpath_p (const char *from_encoding, const char *to_encoding)
int | rb_econv_prepare_options (VALUE opthash, VALUE *ecopts, int ecflags)
int | rb_econv_prepare_opts (VALUE opthash, VALUE *ecopts)
rb_econv_t * | rb_econv_open (const char *source_encoding, const char *destination_encoding, int ecflags)
rb_econv_t * | rb_econv_open_opts (const char *source_encoding, const char *destination_encoding, int ecflags, VALUE ecopts)
rb_econv_result_t | rb_econv_convert (rb_econv_t *ec, const unsigned char **source_buffer_ptr, const unsigned char *source_buffer_end, unsigned char **destination_buffer_ptr, unsigned char *destination_buffer_end, int flags)
void | rb_econv_close (rb_econv_t *ec)
int | rb_econv_set_replacement (rb_econv_t *ec, const unsigned char *str, size_t len, const char *encname)
int | rb_econv_decorate_at_first (rb_econv_t *ec, const char *decorator_name)
int | rb_econv_decorate_at_last (rb_econv_t *ec, const char *decorator_name)
VALUE | rb_econv_open_exc (const char *senc, const char *denc, int ecflags)
int | rb_econv_insert_output (rb_econv_t *ec, const unsigned char *str, size_t len, const char *str_encoding)
const char * | rb_econv_encoding_to_insert_output (rb_econv_t *ec)
void | rb_econv_check_error (rb_econv_t *ec)
VALUE | rb_econv_make_exception (rb_econv_t *ec)
int | rb_econv_putbackable (rb_econv_t *ec)
void | rb_econv_putback (rb_econv_t *ec, unsigned char *p, int n)
const char * | rb_econv_asciicompat_encoding (const char *encname)
VALUE | rb_econv_str_convert (rb_econv_t *ec, VALUE src, int flags)
VALUE | rb_econv_substr_convert (rb_econv_t *ec, VALUE src, long byteoff, long bytesize, int flags)
VALUE | rb_econv_str_append (rb_econv_t *ec, VALUE src, VALUE dst, int flags)
VALUE | rb_econv_substr_append (rb_econv_t *ec, VALUE src, long byteoff, long bytesize, VALUE dst, int flags)
void | rb_econv_binmode (rb_econv_t *ec)
VALUE | rb_ary_last (int, VALUE *, VALUE)
void | rb_ary_set_len (VALUE, long)
VALUE | rb_ary_cat (VALUE, const VALUE *, long)
void | rb_ary_delete_same (VALUE, VALUE)
VALUE | rb_big_fdiv (VALUE x, VALUE y)
VALUE | rb_big_uminus (VALUE x)
VALUE | rb_integer_float_cmp (VALUE x, VALUE y)
VALUE | rb_integer_float_eq (VALUE x, VALUE y)
VALUE | rb_obj_methods (int argc, VALUE *argv, VALUE obj)
VALUE | rb_obj_protected_methods (int argc, VALUE *argv, VALUE obj)
VALUE | rb_obj_private_methods (int argc, VALUE *argv, VALUE obj)
VALUE | rb_obj_public_methods (int argc, VALUE *argv, VALUE obj)
int | rb_obj_basic_to_s_p (VALUE)
VALUE | rb_special_singleton_class (VALUE)
VALUE | rb_singleton_class_clone_and_attach (VALUE obj, VALUE attach)
void | Init_class_hierarchy (void)
VALUE | rb_invcmp (VALUE, VALUE)
int | rb_dvar_defined (ID)
int | rb_local_defined (ID)
int | rb_parse_in_eval (void)
int | rb_parse_in_main (void)
const char * | rb_insns_name (int i)
VALUE | rb_insns_name_array (void)
VALUE | rb_obj_is_fiber (VALUE)
void | rb_fiber_reset_root_local_storage (VALUE)
| PRINTF_ARGS (void ruby_debug_printf(const char *,...), 1, 2)
void | Init_ext (void)
ID | rb_id_encoding (void)
void | rb_gc_mark_encodings (void)
| NORETURN (PRINTF_ARGS(void rb_compile_bug(const char *, int, const char *,...), 3, 4))
VALUE | rb_check_backtrace (VALUE)
| NORETURN (void rb_async_bug_errno(const char *, int))
const char * | rb_builtin_type_name (int t)
const char * | rb_builtin_class_name (VALUE x)
VALUE | rb_refinement_module_get_refined_class (VALUE module)
void | ruby_error_print (void)
VALUE | rb_get_backtrace (VALUE info)
void | rb_call_end_proc (VALUE data)
void | rb_mark_end_proc (void)
VALUE | rb_home_dir (const char *user, VALUE result)
VALUE | rb_realpath_internal (VALUE basedir, VALUE path, int strict)
void | rb_file_const (const char *, VALUE)
int | rb_file_load_ok (const char *)
VALUE | rb_file_expand_path_fast (VALUE, VALUE)
VALUE | rb_file_expand_path_internal (VALUE, VALUE, int, int, VALUE)
VALUE | rb_get_path_check_to_string (VALUE, int)
VALUE | rb_get_path_check_convert (VALUE, VALUE, int)
void | Init_File (void)
void | Init_heap (void)
void * | ruby_mimmalloc (size_t size)
void | rb_call_inits (void)
const char * | ruby_get_inplace_mode (void)
void | ruby_set_inplace_mode (const char *)
ssize_t | rb_io_bufread (VALUE io, void *buf, size_t size)
void | rb_stdio_set_default_encoding (void)
void | rb_write_error_str (VALUE mesg)
VALUE | rb_iseq_clone (VALUE iseqval, VALUE newcbase)
VALUE | rb_get_load_path (void)
VALUE | rb_get_expanded_load_path (void)
| NORETURN (void rb_load_fail(VALUE, const char *))
VALUE | rb_math_atan2 (VALUE, VALUE)
VALUE | rb_math_cos (VALUE)
VALUE | rb_math_cosh (VALUE)
VALUE | rb_math_exp (VALUE)
VALUE | rb_math_hypot (VALUE, VALUE)
VALUE | rb_math_log (int argc, VALUE *argv)
VALUE | rb_math_sin (VALUE)
VALUE | rb_math_sinh (VALUE)
VALUE | rb_math_sqrt (VALUE)
void | Init_newline (void)
int | rb_num_to_uint (VALUE val, unsigned int *ret)
VALUE | num_interval_step_size (VALUE from, VALUE to, VALUE step, int excl)
int | ruby_float_step (VALUE from, VALUE to, VALUE step, int excl)
double | ruby_float_mod (double x, double y)
int | rb_num_negative_p (VALUE)
VALUE | rb_obj_equal (VALUE obj1, VALUE obj2)
VALUE | rb_parser_get_yydebug (VALUE)
VALUE | rb_parser_set_yydebug (VALUE, VALUE)
int | rb_is_const_name (VALUE name)
int | rb_is_class_name (VALUE name)
int | rb_is_global_name (VALUE name)
int | rb_is_instance_name (VALUE name)
int | rb_is_attrset_name (VALUE name)
int | rb_is_local_name (VALUE name)
int | rb_is_method_name (VALUE name)
int | rb_is_junk_name (VALUE name)
void | rb_gc_mark_parser (void)
void | rb_gc_mark_symbols (void)
VALUE | rb_proc_location (VALUE self)
st_index_t | rb_hash_proc (st_index_t hash, VALUE proc)
rb_pid_t | rb_fork_ruby (int *status)
void | rb_last_status_clear (void)
VALUE | rb_lcm (VALUE x, VALUE y)
VALUE | rb_rational_reciprocal (VALUE x)
VALUE | rb_reg_compile (VALUE str, int options, const char *sourcefile, int sourceline)
VALUE | rb_reg_check_preprocess (VALUE)
int | rb_get_next_signal (void)
int | rb_sigaltstack_size (void)
size_t | rb_strftime_timespec (char *s, size_t maxsize, const char *format, rb_encoding *enc, const struct vtm *vtm, struct timespec *ts, int gmt)
size_t | rb_strftime (char *s, size_t maxsize, const char *format, rb_encoding *enc, const struct vtm *vtm, VALUE timev, int gmt)
int | rb_str_buf_cat_escaped_char (VALUE result, unsigned int c, int unicode_p)
int | rb_str_symname_p (VALUE)
VALUE | rb_str_quote_unprintable (VALUE)
VALUE | rb_id_quote_unprintable (ID)
VALUE | rb_struct_init_copy (VALUE copy, VALUE s)
struct timeval | rb_time_timeval (VALUE)
VALUE | rb_obj_is_mutex (VALUE obj)
VALUE | rb_suppress_tracing (VALUE(*func)(VALUE), VALUE arg)
void | rb_thread_execute_interrupts (VALUE th)
void | rb_clear_trace_func (void)
VALUE | rb_get_coverages (void)
VALUE | rb_thread_shield_new (void)
VALUE | rb_thread_shield_wait (VALUE self)
VALUE | rb_thread_shield_release (VALUE self)
VALUE | rb_thread_shield_destroy (VALUE self)
void | rb_mutex_allow_trap (VALUE self, int val)
VALUE | rb_uninterruptible (VALUE(*b_proc)(ANYARGS), VALUE data)
VALUE | rb_mutex_owned_p (VALUE self)
void | Init_native_thread (void)
VALUE | rb_obj_is_thread (VALUE obj)
void | rb_vm_mark (void *ptr)
void | Init_BareVM (void)
VALUE | rb_vm_top_self (void)
void | rb_thread_recycle_stack_release (VALUE *)
void | rb_vm_change_state (void)
void | rb_vm_inc_const_missing_count (void)
void | rb_thread_mark (void *th)
const void ** | rb_vm_get_insns_address_table (void)
VALUE | rb_sourcefilename (void)
void | rb_vm_bugreport (void)
void | Init_vm_eval (void)
VALUE | rb_current_realfilepath (void)
VALUE | rb_check_block_call (VALUE, ID, int, VALUE *, VALUE(*)(ANYARGS), VALUE)
VALUE | rb_check_funcall_with_hook (VALUE recv, ID mid, int argc, VALUE *argv, rb_check_funcall_hook *hook, VALUE arg)
void | Init_eval_method (void)
int | rb_method_defined_by (VALUE obj, ID mid, VALUE(*cfunc)(ANYARGS))
void | Init_prelude (void)
void | Init_vm_backtrace (void)
VALUE | vm_thread_backtrace (int argc, VALUE *argv, VALUE thval)
VALUE | vm_thread_backtrace_locations (int argc, VALUE *argv, VALUE thval)
VALUE | rb_make_backtrace (void)
void | rb_backtrace_print_as_bugreport (void)
int | rb_backtrace_p (VALUE obj)
VALUE | rb_backtrace_to_str_ary (VALUE obj)
VALUE | rb_vm_backtrace_object ()
const char * | rb_objspace_data_type_name (VALUE obj)
VALUE | rb_thread_io_blocking_region (rb_blocking_function_t *func, void *data1, int fd)
void | rb_maygvl_fd_fix_cloexec (int fd)
int | rb_exec_async_signal_safe (const struct rb_execarg *e, char *errmsg, size_t errmsg_buflen)
rb_pid_t | rb_fork_async_signal_safe (int *status, int(*chfunc)(void *, char *, size_t), void *charg, VALUE fds, char *errmsg, size_t errmsg_buflen)
VALUE | rb_execarg_new (int argc, VALUE *argv, int accept_shell)
struct rb_execarg * | rb_execarg_get (VALUE execarg_obj)
VALUE | rb_execarg_init (int argc, VALUE *argv, int accept_shell, VALUE execarg_obj)
int | rb_execarg_addopt (VALUE execarg_obj, VALUE key, VALUE val)
void | rb_execarg_fixup (VALUE execarg_obj)
int | rb_execarg_run_options (const struct rb_execarg *e, struct rb_execarg *s, char *errmsg, size_t errmsg_buflen)
VALUE | rb_execarg_extract_options (VALUE execarg_obj, VALUE opthash)
void | rb_execarg_setenv (VALUE execarg_obj, VALUE env)
void | rb_gc_mark_global_tbl (void)
void | rb_mark_generic_ivar (VALUE)
void | rb_mark_generic_ivar_tbl (void)
VALUE | rb_parser_new (void)
VALUE | rb_parser_end_seen_p (VALUE)
VALUE | rb_parser_encoding (VALUE)
VALUE | rb_parser_get_yydebug (VALUE)
VALUE | rb_parser_set_yydebug (VALUE, VALUE)
VALUE | rb_parser_dump_tree (NODE *node, int comment)
NODE * | rb_parser_append_print (VALUE, NODE *)
NODE * | rb_parser_while_loop (VALUE, NODE *, int, int)
NODE * | rb_parser_compile_cstr (volatile VALUE, const char *, const char *, int, int)
NODE * | rb_parser_compile_string (volatile VALUE, const char *, VALUE, int)
NODE * | rb_parser_compile_file (volatile VALUE, const char *, VALUE, int)
NODE * | rb_compile_cstr (const char *, const char *, int, int)
NODE * | rb_compile_string (const char *, VALUE, int)
NODE * | rb_compile_file (const char *, VALUE, int)
NODE * | rb_node_newnode (enum node_type, VALUE, VALUE, VALUE)
NODE * | rb_node_newnode_longlife (enum node_type, VALUE, VALUE, VALUE)
struct rb_global_entry * | rb_global_entry (ID)
VALUE | rb_gvar_get (struct rb_global_entry *)
VALUE | rb_gvar_set (struct rb_global_entry *, VALUE)
VALUE | rb_gvar_defined (struct rb_global_entry *)
struct kwtable * | rb_reserved_word (const char *, unsigned int)
void * | rb_parser_malloc (struct parser_params *, size_t)
void * | rb_parser_realloc (struct parser_params *, void *, size_t)
void * | rb_parser_calloc (struct parser_params *, size_t, size_t)
void | rb_parser_free (struct parser_params *, void *)
ONIG_EXTERN int onigenc_ascii_apply_all_case_fold | P_ ((OnigCaseFoldType flag, OnigApplyAllCaseFoldFunc f, void *arg, OnigEncoding enc))
ONIG_EXTERN int onigenc_ascii_get_case_fold_codes_by_str | P_ ((OnigCaseFoldType flag, const OnigUChar *p, const OnigUChar *end, OnigCaseFoldCodeItem items[], OnigEncoding enc))
ONIG_EXTERN int onigenc_apply_all_case_fold_with_map | P_ ((int map_size, const OnigPairCaseFoldCodes map[], int ess_tsett_flag, OnigCaseFoldType flag, OnigApplyAllCaseFoldFunc f, void *arg))
ONIG_EXTERN int onigenc_get_case_fold_codes_by_str_with_map | P_ ((int map_size, const OnigPairCaseFoldCodes map[], int ess_tsett_flag, OnigCaseFoldType flag, const OnigUChar *p, const OnigUChar *end, OnigCaseFoldCodeItem items[]))
ONIG_EXTERN int onigenc_not_support_get_ctype_code_range | P_ ((OnigCtype ctype, OnigCodePoint *sb_out, const OnigCodePoint *ranges[], OnigEncoding enc))
ONIG_EXTERN int onigenc_is_mbc_newline_0x0a | P_ ((const UChar *p, const UChar *end, OnigEncoding enc))
ONIG_EXTERN int onigenc_ascii_mbc_case_fold | P_ ((OnigCaseFoldType flag, const UChar **p, const UChar *end, UChar *lower, OnigEncoding enc))
ONIG_EXTERN int onigenc_single_byte_mbc_enc_len | P_ ((const UChar *p, const UChar *e, OnigEncoding enc))
ONIG_EXTERN OnigCodePoint onigenc_single_byte_mbc_to_code | P_ ((const UChar *p, const UChar *end, OnigEncoding enc))
ONIG_EXTERN int onigenc_single_byte_code_to_mbclen | P_ ((OnigCodePoint code, OnigEncoding enc))
ONIG_EXTERN int onigenc_single_byte_code_to_mbc | P_ ((OnigCodePoint code, UChar *buf, OnigEncoding enc))
ONIG_EXTERN UChar *onigenc_single_byte_left_adjust_char_head | P_ ((const UChar *start, const UChar *s, const OnigUChar *end, OnigEncoding enc))
ONIG_EXTERN int onigenc_always_true_is_allowed_reverse_match | P_ ((const UChar *s, const UChar *end, OnigEncoding enc))
ONIG_EXTERN int onigenc_always_false_is_allowed_reverse_match | P_ ((const UChar *s, const UChar *end, OnigEncoding enc))
ONIG_EXTERN int onigenc_ascii_is_code_ctype | P_ ((OnigCodePoint code, unsigned int ctype, OnigEncoding enc))
ONIG_EXTERN OnigCodePoint onigenc_mbn_mbc_to_code | P_ ((OnigEncoding enc, const UChar *p, const UChar *end))
ONIG_EXTERN int onigenc_mbn_mbc_case_fold | P_ ((OnigEncoding enc, OnigCaseFoldType flag, const UChar **p, const UChar *end, UChar *lower))
ONIG_EXTERN int onigenc_mb2_code_to_mbclen | P_ ((OnigCodePoint code, OnigEncoding enc))
ONIG_EXTERN int onigenc_mb2_code_to_mbc | P_ ((OnigEncoding enc, OnigCodePoint code, UChar *buf))
ONIG_EXTERN int onigenc_minimum_property_name_to_ctype | P_ ((OnigEncoding enc, UChar *p, UChar *end))
ONIG_EXTERN int onigenc_unicode_property_name_to_ctype | P_ ((OnigEncoding enc, UChar *p, UChar *end))
ONIG_EXTERN int onigenc_mb2_is_code_ctype | P_ ((OnigEncoding enc, OnigCodePoint code, unsigned int ctype))
ONIG_EXTERN int onigenc_mb4_code_to_mbclen | P_ ((OnigCodePoint code, OnigEncoding enc))
ONIG_EXTERN int onigenc_mb4_code_to_mbc | P_ ((OnigEncoding enc, OnigCodePoint code, UChar *buf))
ONIG_EXTERN int onigenc_mb4_is_code_ctype | P_ ((OnigEncoding enc, OnigCodePoint code, unsigned int ctype))
ONIG_EXTERN int onigenc_unicode_is_code_ctype | P_ ((OnigCodePoint code, unsigned int ctype, OnigEncoding enc))
ONIG_EXTERN int onigenc_utf16_32_get_ctype_code_range | P_ ((OnigCtype ctype, OnigCodePoint *sb_out, const OnigCodePoint *ranges[], OnigEncoding enc))
ONIG_EXTERN int onigenc_unicode_ctype_code_range | P_ ((int ctype, const OnigCodePoint *ranges[]))
ONIG_EXTERN int onigenc_unicode_get_case_fold_codes_by_str | P_ ((OnigEncoding enc, OnigCaseFoldType flag, const OnigUChar *p, const OnigUChar *end, OnigCaseFoldCodeItem items[]))
ONIG_EXTERN int onigenc_unicode_mbc_case_fold | P_ ((OnigEncoding enc, OnigCaseFoldType flag, const UChar **pp, const UChar *end, UChar *fold))
ONIG_EXTERN int onigenc_unicode_apply_all_case_fold | P_ ((OnigCaseFoldType flag, OnigApplyAllCaseFoldFunc f, void *arg, OnigEncoding enc))
ONIG_EXTERN int onigenc_with_ascii_strncmp | P_ ((OnigEncoding enc, const UChar *p, const UChar *end, const UChar *sascii, int n))
ONIG_EXTERN int onigenc_with_ascii_strnicmp | P_ ((OnigEncoding enc, const UChar *p, const UChar *end, const UChar *sascii, int n))
ONIG_EXTERN UChar *onigenc_step | P_ ((OnigEncoding enc, const UChar *p, const UChar *end, int n))
int onig_is_in_code_range | P_ ((const UChar *p, OnigCodePoint code))
static ID | register_symid (ID, const char *, long, rb_encoding *)
static ID | register_symid_str (ID, VALUE)
static void | Init_id (void)
static int | vtable_size (const struct vtable *tbl)
static struct vtable * | vtable_alloc (struct vtable *prev)
static void | vtable_free (struct vtable *tbl)
static void | vtable_add (struct vtable *tbl, ID id)
static int | vtable_included (const struct vtable *tbl, ID id)
static int | parser_yyerror (struct parser_params *, const char *)
static int | yylex (void *, void *)
static NODE * | node_newnode (struct parser_params *, enum node_type, VALUE, VALUE, VALUE)
static NODE * | cond_gen (struct parser_params *, NODE *)
static NODE * | logop_gen (struct parser_params *, enum node_type, NODE *, NODE *)
static NODE * | newline_node (NODE *)
static void | fixpos (NODE *, NODE *)
static int | value_expr_gen (struct parser_params *, NODE *)
static void | void_expr_gen (struct parser_params *, NODE *)
static NODE * | remove_begin (NODE *)
static void | void_stmts_gen (struct parser_params *, NODE *)
static void | reduce_nodes_gen (struct parser_params *, NODE **)
static void | block_dup_check_gen (struct parser_params *, NODE *, NODE *)
static NODE * | block_append_gen (struct parser_params *, NODE *, NODE *)
static NODE * | list_append_gen (struct parser_params *, NODE *, NODE *)
static NODE * | list_concat_gen (struct parser_params *, NODE *, NODE *)
static NODE * | arg_append_gen (struct parser_params *, NODE *, NODE *)
static NODE * | arg_concat_gen (struct parser_params *, NODE *, NODE *)
static NODE * | literal_concat_gen (struct parser_params *, NODE *, NODE *)
static int | literal_concat0 (struct parser_params *, VALUE, VALUE)
static NODE * | new_evstr_gen (struct parser_params *, NODE *)
static NODE * | evstr2dstr_gen (struct parser_params *, NODE *)
static NODE * | splat_array (NODE *)
static NODE * | call_bin_op_gen (struct parser_params *, NODE *, ID, NODE *)
static NODE * | call_uni_op_gen (struct parser_params *, NODE *, ID)
static NODE * | new_args_gen (struct parser_params *, NODE *, NODE *, ID, NODE *, NODE *)
static NODE * | new_args_tail_gen (struct parser_params *, NODE *, ID, ID)
static NODE * | negate_lit (NODE *)
static NODE * | ret_args_gen (struct parser_params *, NODE *)
static NODE * | arg_blk_pass (NODE *, NODE *)
static NODE * | new_yield_gen (struct parser_params *, NODE *)
static NODE * | dsym_node_gen (struct parser_params *, NODE *)
static NODE * | gettable_gen (struct parser_params *, ID)
static NODE * | assignable_gen (struct parser_params *, ID, NODE *)
static NODE * | aryset_gen (struct parser_params *, NODE *, NODE *)
static NODE * | attrset_gen (struct parser_params *, NODE *, ID)
static void | rb_backref_error_gen (struct parser_params *, NODE *)
static NODE * | node_assign_gen (struct parser_params *, NODE *, NODE *)
static NODE * | new_op_assign_gen (struct parser_params *parser, NODE *lhs, ID op, NODE *rhs)
static NODE * | new_attr_op_assign_gen (struct parser_params *parser, NODE *lhs, ID attr, ID op, NODE *rhs)
static NODE * | new_const_op_assign_gen (struct parser_params *parser, NODE *lhs, ID op, NODE *rhs)
static NODE * | match_op_gen (struct parser_params *, NODE *, NODE *)
static ID * | local_tbl_gen (struct parser_params *)
static void | fixup_nodes (NODE **)
static VALUE | reg_compile_gen (struct parser_params *, VALUE, int)
static void | reg_fragment_setenc_gen (struct parser_params *, VALUE, int)
static int | reg_fragment_check_gen (struct parser_params *, VALUE, int)
static NODE * | reg_named_capture_assign_gen (struct parser_params *parser, VALUE regexp, NODE *match)
static ID | formal_argument_gen (struct parser_params *, ID)
static ID | shadowing_lvar_gen (struct parser_params *, ID)
static void | new_bv_gen (struct parser_params *, ID)
static void | local_push_gen (struct parser_params *, int)
static void | local_pop_gen (struct parser_params *)
static int | local_var_gen (struct parser_params *, ID)
static int | arg_var_gen (struct parser_params *, ID)
static int | local_id_gen (struct parser_params *, ID)
static ID | internal_id_gen (struct parser_params *)
static struct vtable * | dyna_push_gen (struct parser_params *)
static void | dyna_pop_gen (struct parser_params *, const struct vtable *)
static int | dyna_in_block_gen (struct parser_params *)
static int | dvar_defined_gen (struct parser_params *, ID, int)
static int | dvar_curr_gen (struct parser_params *, ID)
static int | lvar_defined_gen (struct parser_params *, ID)
static void | token_info_push (struct parser_params *, const char *token)
static void | token_info_pop (struct parser_params *, const char *token)
top_stmts | dispatch0 (stmts_new)
top_stmts | dispatch0 (void_stmt))
top_stmt | escape_Qundef ($1)
expr | ripper_intern ("and")
| dyna_pop ($< vars >1)
| if (c== ')') lex_state
| if (IS_END()||ISSPACE(c))
| switch (c)
| if ((c=nextc())== '=')
| if (IS_SPCARG(c))
| warn_balanced ("/","regexp literal")

## Variables
primary_value['opt_call_args rbracket{$$=dispatch2(aref_field, $1, escape_Qundef($3));}|primary_value '.'tIDENTIFIER{$$=dispatch3(field, $1, ripper_id2sym('.'), $3);}|primary_value tCOLON2 tIDENTIFIER{$$=dispatch2(const_path_field, $1, $3);}|primary_value '.'tCONSTANT{$$=dispatch3(field, $1, ripper_id2sym('.'), $3);}|primary_value tCOLON2 tCONSTANT{if(in_def||in_single) yyerror("dynamic constant assignment");$$=dispatch2(const_path_field, $1, $3);}|tCOLON3 tCONSTANT{$$=dispatch1(top_const_field, $2);}|backref{$$=dispatch1(var_field, $1);$$=dispatch1(assign_error,$$);};lhs:user_variable{$$=assignable($1, 0);$$=dispatch1(var_field,$$);}|keyword_variable{$$=assignable($1, 0);$$=dispatch1(var_field,$$);}|primary_value '['opt_call_args rbracket{$$=dispatch2(aref_field, $1, escape_Qundef($3));}|primary_value '.'tIDENTIFIER{$$=dispatch3(field, $1, ripper_id2sym('.'), $3);}|primary_value tCOLON2 tIDENTIFIER{$$=dispatch3(field, $1, ripper_intern("::"), $3);}|primary_value '.'tCONSTANT{$$=dispatch3(field, $1, ripper_id2sym('.'), $3);}|primary_value tCOLON2 tCONSTANT{$$=dispatch2(const_path_field, $1, $3);if(in_def||in_single){$$=dispatch1(assign_error,$$);}}|tCOLON3 tCONSTANT{$$=dispatch1(top_const_field, $2);if(in_def||in_single){$$=dispatch1(assign_error,$$);}}|backref{$$=dispatch1(assign_error, $1);};cname:tIDENTIFIER{$$=dispatch1(class_name_error, $1);}|tCONSTANT;cpath:tCOLON3 cname{$$=dispatch1(top_const_ref, $2);}|cname{$$=dispatch1(const_ref, $1);}|primary_value tCOLON2 cname{$$=dispatch2(const_path_ref, $1, $3);};fname:tIDENTIFIER|tCONSTANT|tFID|op{lex_state=EXPR_ENDFN;$$=$1;}|reswords{lex_state=EXPR_ENDFN;$$=$1;};fsym:fname|symbol;fitem:fsym{$$=dispatch1(symbol_literal, $1);}|dsym;undef_list:fitem{$$=rb_ary_new3(1, $1);}|undef_list ','{lex_state=EXPR_FNAME;}fitem{rb_ary_push($1, $4);};op: '|'{ifndef_ripper($$= '|');}| '^'{ifndef_ripper($$= '^');}| '&'{ifndef_ripper($$= '&');}|tCMP{ifndef_ripper($$=tCMP);}|tEQ{ifndef_ripper($$=tEQ);}|tEQQ{ifndef_ripper($$=tEQQ);}|tMATCH{ifndef_ripper($$=tMATCH);}|tNMATCH{ifndef_ripper($$=tNMATCH);}| '> '{ifndef_ripper($$= '> ');}|tGEQ{ifndef_ripper($$=tGEQ);}| ' <'{ifndef_ripper($$= ' <');}|tLEQ{ifndef_ripper($$=tLEQ);}|tNEQ{ifndef_ripper($$=tNEQ);}|tLSHFT{ifndef_ripper($$=tLSHFT);}|tRSHFT{ifndef_ripper($$=tRSHFT);}| '+'{ifndef_ripper($$= '+');}| '-'{ifndef_ripper($$= '-');}| '*'{ifndef_ripper($$= '*');}|tSTAR{ifndef_ripper($$= '*');}| '/'{ifndef_ripper($$= '/');}| '%'{ifndef_ripper($$= '%');}|tPOW{ifndef_ripper($$=tPOW);}|tDSTAR{ifndef_ripper($$=tDSTAR);}| '!'{ifndef_ripper($$= '!');}| '~'{ifndef_ripper($$= '~');}|tUPLUS{ifndef_ripper($$=tUPLUS);}|tUMINUS{ifndef_ripper($$=tUMINUS);}|tAREF{ifndef_ripper($$=tAREF);}|tASET{ifndef_ripper($$=tASET);}| '`'{ifndef_ripper($$= '`');};reswords:keyword__LINE__|keyword__FILE__|keyword__ENCODING__|keyword_BEGIN|keyword_END|keyword_alias|keyword_and|keyword_begin|keyword_break|keyword_case|keyword_class|keyword_def|keyword_defined|keyword_do|keyword_else|keyword_elsif|keyword_end|keyword_ensure|keyword_false|keyword_for|keyword_in|keyword_module|keyword_next|keyword_nil|keyword_not|keyword_or|keyword_redo|keyword_rescue|keyword_retry|keyword_return|keyword_self|keyword_super|keyword_then|keyword_true|keyword_undef|keyword_when|keyword_yield|keyword_if|keyword_unless|keyword_while|keyword_until;arg:lhs '='arg{$$=dispatch2(assign, $1, $3);}|lhs '='arg modifier_rescue arg{$$=dispatch2(assign, $1, dispatch2(rescue_mod, $3, $5));}|var_lhs tOP_ASGN arg{value_expr($3);$$=new_op_assign($1, $2, $3);}|var_lhs tOP_ASGN arg modifier_rescue arg{$3=dispatch2(rescue_mod, $3, $5);$$=new_op_assign($1, $2, $3);}|primary_value '['opt_call_args rbracket tOP_ASGN arg{$1=dispatch2(aref_field, $1, escape_Qundef($3));$$=dispatch3(opassign, $1, $5, $6);}|primary_value '.'tIDENTIFIER tOP_ASGN arg{value_expr($5);$$=new_attr_op_assign($1, ripper_id2sym('.'), $3, $4, $5);}|primary_value '.'tCONSTANT tOP_ASGN arg{value_expr($5);$$=new_attr_op_assign($1, ripper_id2sym('.'), $3, $4, $5);}|primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg{value_expr($5);$$=new_attr_op_assign($1, ripper_intern("::"), $3, $4, $5);}|primary_value tCOLON2 tCONSTANT tOP_ASGN arg{$$=dispatch2(const_path_field, $1, $3);$$=dispatch3(opassign,$$, $4, $5);}|tCOLON3 tCONSTANT tOP_ASGN arg{$$=dispatch1(top_const_field, $2);$$=dispatch3(opassign,$$, $3, $4);}|backref tOP_ASGN arg{$$=dispatch1(var_field, $1);$$=dispatch3(opassign,$$, $2, $3);$$=dispatch1(assign_error,$$);}|arg tDOT2 arg{$$=dispatch2(dot2, $1, $3);}|arg tDOT3 arg{$$=dispatch2(dot3, $1, $3);}|arg '+'arg{$$=dispatch3(binary, $1, ID2SYM('+'), $3);}|arg '-'arg{$$=dispatch3(binary, $1, ID2SYM('-'), $3);}|arg '*'arg{$$=dispatch3(binary, $1, ID2SYM('*'), $3);}|arg '/'arg{$$=dispatch3(binary, $1, ID2SYM('/'), $3);}|arg '%'arg{$$=dispatch3(binary, $1, ID2SYM('%'), $3);}|arg tPOW arg{$$=dispatch3(binary, $1, ripper_intern("**"), $3);}|tUMINUS_NUM tINTEGER tPOW arg{$$=dispatch3(binary, $2, ripper_intern("**"), $4);$$=dispatch2(unary, ripper_intern("-@"),$$);}|tUMINUS_NUM tFLOAT tPOW arg{$$=dispatch3(binary, $2, ripper_intern("**"), $4);$$=dispatch2(unary, ripper_intern("-@"),$$);}|tUPLUS arg{$$=dispatch2(unary, ripper_intern("+@"), $2);}|tUMINUS arg{$$=dispatch2(unary, ripper_intern("-@"), $2);}|arg '|'arg{$$=dispatch3(binary, $1, ID2SYM('|'), $3);}|arg '^'arg{$$=dispatch3(binary, $1, ID2SYM('^'), $3);}|arg '&'arg{$$=dispatch3(binary, $1, ID2SYM('&'), $3);}|arg tCMP arg{$$=dispatch3(binary, $1, ripper_intern(" <=>"), $3);}|arg '>'arg{$$=dispatch3(binary, $1, ID2SYM('>'), $3);}|arg tGEQ arg{$$=dispatch3(binary, $1, ripper_intern("> ="), $3);}|arg '<'arg{$$=dispatch3(binary, $1, ID2SYM('<'), $3);}|arg tLEQ arg{$$=dispatch3(binary, $1, ripper_intern(" <="), $3);}|arg tEQ arg{$$=dispatch3(binary, $1, ripper_intern("=="), $3);}|arg tEQQ arg{$$=dispatch3(binary, $1, ripper_intern("==="), $3);}|arg tNEQ arg{$$=dispatch3(binary, $1, ripper_intern("!="), $3);}|arg tMATCH arg{$$=dispatch3(binary, $1, ripper_intern("=~"), $3);}|arg tNMATCH arg{$$=dispatch3(binary, $1, ripper_intern("!~"), $3);}| '!'arg{$$=dispatch2(unary, ID2SYM('!'), $2);}| '~'arg{$$=dispatch2(unary, ID2SYM('~'), $2);}|arg tLSHFT arg{$$=dispatch3(binary, $1, ripper_intern(" <<"), $3);}|arg tRSHFT arg{$$=dispatch3(binary, $1, ripper_intern("> >"), $3);}|arg tANDOP arg{$$=dispatch3(binary, $1, ripper_intern("&&"), $3);}|arg tOROP arg{$$=dispatch3(binary, $1, ripper_intern("||"), $3);}|keyword_defined opt_nl{in_defined=1;}arg{in_defined=0;$$=dispatch1(defined, $4);}|arg '?'arg opt_nl ':'arg{$$=dispatch3(ifop, $1, $3, $6);}|primary{$$=$1;};arg_value:arg{$$=$1;};aref_args:none|args trailer{$$=$1;}|args ','assocs trailer{$$=arg_add_assocs($1, $3);}|assocs trailer{$$=arg_add_assocs(arg_new(), $1);};paren_args: '('opt_call_args rparen{$$=dispatch1(arg_paren, escape_Qundef($2));};opt_paren_args:none|paren_args;opt_call_args:none|call_args|args ','{$$=$1;}|args ','assocs ','{$$=arg_add_assocs($1, $3);}|assocs ','{$$=arg_add_assocs(arg_new(), $1);};call_args:command{$$=arg_add(arg_new(), $1);}|args opt_block_arg{$$=arg_add_optblock($1, $2);}|assocs opt_block_arg{$$=arg_add_assocs(arg_new(), $1);$$=arg_add_optblock($$, $2);}|args ','assocs opt_block_arg{$$=arg_add_optblock(arg_add_assocs($1, $3), $4);}|block_arg{$$=arg_add_block(arg_new(), $1);};command_args:{$< val > $=cmdarg_stack;CMDARG_PUSH(1);}call_args{cmdarg_stack=$ < val > 1;$$=$2;};block_arg:tAMPER arg_value{$$=$2;};opt_block_arg: ','block_arg{$$=$2;}|none{$$=0;};args:arg_value{$$=arg_add(arg_new(), $1);}|tSTAR arg_value{$$=arg_add_star(arg_new(), $2);}|args ','arg_value{$$=arg_add($1, $3);}|args ','tSTAR arg_value{$$=arg_add_star($1, $4);};mrhs:args ','arg_value{$$=mrhs_add(args2mrhs($1), $3);}|args ','tSTAR arg_value{$$=mrhs_add_star(args2mrhs($1), $4);}|tSTAR arg_value{$$=mrhs_add_star(mrhs_new(), $2);};primary:literal|strings|xstring|regexp|words|qwords|symbols|qsymbols|var_ref|backref|tFID{$$=method_arg(dispatch1(fcall, $1), arg_new());}|k_begin{$ < val >1=cmdarg_stack;cmdarg_stack=0;}bodystmt k_end{cmdarg_stack=$< val > 1;$$=dispatch1(begin, $3);}|tLPAREN_ARG{lex_state=EXPR_ENDARG;}rparen{$$=dispatch1(paren, 0);}|tLPAREN_ARG expr{lex_state=EXPR_ENDARG;}rparen{$$=dispatch1(paren, $2);}|tLPAREN compstmt ')'{$$=dispatch1(paren, $2);}|primary_value tCOLON2 tCONSTANT{$$=dispatch2(const_path_ref, $1, $3);}|tCOLON3 tCONSTANT{$$=dispatch1(top_const_ref, $2);}|tLBRACK aref_args ']'{$$=dispatch1(array, escape_Qundef($2));}|tLBRACE assoc_list '}'{$$=dispatch1(hash, escape_Qundef($2));}|keyword_return{$$=dispatch0(return0);}|keyword_yield '('call_args rparen{$$=dispatch1(yield, dispatch1(paren, $3));}|keyword_yield '('rparen{$$=dispatch1(yield, dispatch1(paren, arg_new()));}|keyword_yield{$$=dispatch0(yield0);}|keyword_defined opt_nl '('{in_defined=1;}expr rparen{in_defined=0;$$=dispatch1(defined, $5);}|keyword_not '('expr rparen{$$=dispatch2(unary, ripper_intern("not"), $3);}|keyword_not '('rparen{$$=dispatch2(unary, ripper_intern("not"), Qnil);}|fcall brace_block{$$=method_arg(dispatch1(fcall, $1), arg_new());$$=method_add_block($$, $2);}|method_call|method_call brace_block{$$=method_add_block($1, $2);}|tLAMBDA lambda{$$=$2;}|k_if expr_value then compstmt if_tail k_end{$$=dispatch3(if, $2, $4, escape_Qundef($5));}|k_unless expr_value then compstmt opt_else k_end{$$=dispatch3(unless, $2, $4, escape_Qundef($5));}|k_while{COND_PUSH(1);}expr_value do{COND_POP();}compstmt k_end{$$=dispatch2(while, $3, $6);}|k_until{COND_PUSH(1);}expr_value do{COND_POP();}compstmt k_end{$$=dispatch2(until, $3, $6);}|k_case expr_value opt_terms case_body k_end{$$=dispatch2(case, $2, $4);}|k_case opt_terms case_body k_end{$$=dispatch2(case, Qnil, $3);}|k_for for_var keyword_in{COND_PUSH(1);}expr_value do{COND_POP();}compstmt k_end{$$=dispatch3(for, $2, $5, $8);}|k_class cpath superclass{if(in_def||in_single) yyerror("class definition in method body");local_push(0);}bodystmt k_end{$$=dispatch3(class, $2, $3, $5);local_pop();}|k_class tLSHFT expr{$< num > $=in_def;in_def=0;}term{$ < num > $=in_single;in_single=0;local_push(0);}bodystmt k_end{$$=dispatch2(sclass, $3, $7);local_pop();in_def=$ < num >4;in_single=$< num > 6;}|k_module cpath{if(in_def||in_single) yyerror("module definition in method body");local_push(0);}bodystmt k_end{$$=dispatch2(module, $2, $4);local_pop();}|k_def fname{$< id > $=cur_mid;cur_mid=$2;in_def++;local_push(0);}f_arglist bodystmt k_end{$$=dispatch3(def, $2, $4, $5);local_pop();in_def--;cur_mid=$ < id >3;}|k_def singleton dot_or_colon{lex_state=EXPR_FNAME;}fname{in_single++;lex_state=EXPR_ENDFN;local_push(0);}f_arglist bodystmt k_end{$$=dispatch5(defs, $2, $3, $5, $7, $8);local_pop();in_single--;}|keyword_break{$$=dispatch1(break, arg_new());}|keyword_next{$$=dispatch1(next, arg_new());}|keyword_redo{$$=dispatch0(redo);}|keyword_retry{$$=dispatch0(retry);};primary_value:primary{$$=$1;};k_begin:keyword_begin{token_info_push("begin");};k_if:keyword_if{token_info_push("if");};k_unless:keyword_unless{token_info_push("unless");};k_while:keyword_while{token_info_push("while");};k_until:keyword_until{token_info_push("until");};k_case:keyword_case{token_info_push("case");};k_for:keyword_for{token_info_push("for");};k_class:keyword_class{token_info_push("class");};k_module:keyword_module{token_info_push("module");};k_def:keyword_def{token_info_push("def");};k_end:keyword_end{token_info_pop("end");};then:term{$$=Qnil;}|keyword_then|term keyword_then{$$=$2;};do:term{$$=Qnil;}|keyword_do_cond;if_tail:opt_else|keyword_elsif expr_value then compstmt if_tail{$$=dispatch3(elsif, $2, $4, escape_Qundef($5));};opt_else:none|keyword_else compstmt{$$=dispatch1(else, $2);};for_var:lhs|mlhs;f_marg:f_norm_arg{$$=assignable($1, 0);$$=dispatch1(mlhs_paren,$$);}|tLPAREN f_margs rparen{$$=dispatch1(mlhs_paren, $2);};f_marg_list:f_marg{$$=mlhs_add(mlhs_new(), $1);}|f_marg_list ','f_marg{$$=mlhs_add($1, $3);};f_margs:f_marg_list{$$=$1;}|f_marg_list ','tSTAR f_norm_arg{$$=assignable($4, 0);$$=mlhs_add_star($1,$$);}|f_marg_list ','tSTAR f_norm_arg ','f_marg_list{$$=assignable($4, 0);$$=mlhs_add_star($1,$$);}|f_marg_list ','tSTAR{$$=mlhs_add_star($1, Qnil);}|f_marg_list ','tSTAR ','f_marg_list{$$=mlhs_add_star($1, $5);}|tSTAR f_norm_arg{$$=assignable($2, 0);$$=mlhs_add_star(mlhs_new(),$$);}|tSTAR f_norm_arg ','f_marg_list{$$=assignable($2, 0);$$=mlhs_add_star($$, $4);}|tSTAR{$$=mlhs_add_star(mlhs_new(), Qnil);}|tSTAR ','f_marg_list{$$=mlhs_add_star(mlhs_new(), Qnil);};block_args_tail:f_block_kwarg ','f_kwrest opt_f_block_arg{$$=new_args_tail($1, $3, $4);}|f_block_kwarg opt_f_block_arg{$$=new_args_tail($1, Qnone, $2);}|f_kwrest opt_f_block_arg{$$=new_args_tail(Qnone, $1, $2);}|f_block_arg{$$=new_args_tail(Qnone, Qnone, $1);};opt_block_args_tail: ','block_args_tail{$$=$2;}|{$$=new_args_tail(Qnone, Qnone, Qnone);};block_param:f_arg ','f_block_optarg ','f_rest_arg opt_block_args_tail{$$=new_args($1, $3, $5, Qnone, $6);}|f_arg ','f_block_optarg ','f_rest_arg ','f_arg opt_block_args_tail{$$=new_args($1, $3, $5, $7, $8);}|f_arg ','f_block_optarg opt_block_args_tail{$$=new_args($1, $3, Qnone, Qnone, $4);}|f_arg ','f_block_optarg ','f_arg opt_block_args_tail{$$=new_args($1, $3, Qnone, $5, $6);}|f_arg ','f_rest_arg opt_block_args_tail{$$=new_args($1, Qnone, $3, Qnone, $4);}|f_arg ','{$$=new_args($1, Qnone, 1, Qnone, new_args_tail(Qnone, Qnone, Qnone));dispatch1(excessed_comma,$$);}|f_arg ','f_rest_arg ','f_arg opt_block_args_tail{$$=new_args($1, Qnone, $3, $5, $6);}|f_arg opt_block_args_tail{$$=new_args($1, Qnone, Qnone, Qnone, $2);}|f_block_optarg ','f_rest_arg opt_block_args_tail{$$=new_args(Qnone, $1, $3, Qnone, $4);}|f_block_optarg ','f_rest_arg ','f_arg opt_block_args_tail{$$=new_args(Qnone, $1, $3, $5, $6);}|f_block_optarg opt_block_args_tail{$$=new_args(Qnone, $1, Qnone, Qnone, $2);}|f_block_optarg ','f_arg opt_block_args_tail{$$=new_args(Qnone, $1, Qnone, $3, $4);}|f_rest_arg opt_block_args_tail{$$=new_args(Qnone, Qnone, $1, Qnone, $2);}|f_rest_arg ','f_arg opt_block_args_tail{$$=new_args(Qnone, Qnone, $1, $3, $4);}|block_args_tail{$$=new_args(Qnone, Qnone, Qnone, Qnone, $1);};opt_block_param:none|block_param_def{command_start=TRUE;};block_param_def: '|'opt_bv_decl '|'{$$=blockvar_new(params_new(Qnil, Qnil, Qnil, Qnil, Qnil, Qnil, Qnil), escape_Qundef($2));}|tOROP{$$=blockvar_new(params_new(Qnil, Qnil, Qnil, Qnil, Qnil, Qnil, Qnil), Qnil);}| '|'block_param opt_bv_decl '|'{$$=blockvar_new(escape_Qundef($2), escape_Qundef($3));};opt_bv_decl:opt_nl{$$=0;}|opt_nl ';'bv_decls opt_nl{$$=$3;};bv_decls:bvar{$$=rb_ary_new3(1, $1);}|bv_decls ','bvar{rb_ary_push($1, $3);};bvar:tIDENTIFIER{new_bv(get_id($1));$$=get_value($1);}|f_bad_arg{$$=0;};lambda:{$ < vars > $=dyna_push();}{$ < num > $=lpar_beg;lpar_beg=++paren_nest;}f_larglist lambda_body{lpar_beg=$< num > 2;$$=dispatch2(lambda, $3, $4);dyna_pop($< vars > 1);};f_larglist: '('f_args opt_bv_decl ')'{$$=dispatch1(paren, $2);}|f_args{$$=$1;};lambda_body:tLAMBEG compstmt '}'{$$=$2;}|keyword_do_LAMBDA compstmt keyword_end{$$=$2;};do_block:keyword_do_block{$ < vars >1=dyna_push();}opt_block_param compstmt keyword_end{$$=dispatch2(do_block, escape_Qundef($3), $4);dyna_pop($< vars > 1);};block_call:command do_block{$$=method_add_block($1, $2);}|block_call dot_or_colon operation2 opt_paren_args{$$=dispatch3(call, $1, $2, $3);$$=method_optarg($$, $4);}|block_call dot_or_colon operation2 opt_paren_args brace_block{$$=dispatch4(command_call, $1, $2, $3, $4);$$=method_add_block($$, $5);}|block_call dot_or_colon operation2 command_args do_block{$$=dispatch4(command_call, $1, $2, $3, $4);$$=method_add_block($$, $5);};method_call:fcall paren_args{$$=method_arg(dispatch1(fcall, $1), $2);}|primary_value '.'operation2{}opt_paren_args{$$=dispatch3(call, $1, ripper_id2sym('.'), $3);$$=method_optarg($$, $5);}|primary_value tCOLON2 operation2{}paren_args{$$=dispatch3(call, $1, ripper_id2sym('.'), $3);$$=method_optarg($$, $5);}|primary_value tCOLON2 operation3{$$=dispatch3(call, $1, ripper_intern("::"), $3);}|primary_value '.'{}paren_args{$$=dispatch3(call, $1, ripper_id2sym('.'), ripper_intern("call"));$$=method_optarg($$, $4);}|primary_value tCOLON2{}paren_args{$$=dispatch3(call, $1, ripper_intern("::"), ripper_intern("call"));$$=method_optarg($$, $4);}|keyword_super paren_args{$$=dispatch1(super, $2);}|keyword_super{$$=dispatch0(zsuper);}|primary_value '['opt_call_args rbracket{$$=dispatch2(aref, $1, escape_Qundef($3));};brace_block: '{'{$ < vars >1=dyna_push();}opt_block_param compstmt '}'{$$=dispatch2(brace_block, escape_Qundef($3), $4);dyna_pop($< vars > 1);}|keyword_do{$< vars > 1=dyna_push();}opt_block_param compstmt keyword_end{$$=dispatch2(do_block, escape_Qundef($3), $4);dyna_pop($< vars > 1);};case_body:keyword_when args then compstmt cases{$$=dispatch3(when, $2, $4, escape_Qundef($5));};cases:opt_else|case_body;opt_rescue:keyword_rescue exc_list exc_var then compstmt opt_rescue{$$=dispatch4(rescue, escape_Qundef($2), escape_Qundef($3), escape_Qundef($5), escape_Qundef($6));}|none;exc_list:arg_value{$$=rb_ary_new3(1, $1);}|mrhs{$$=$1;}|none;exc_var:tASSOC lhs{$$=$2;}|none;opt_ensure:keyword_ensure compstmt{$$=dispatch1(ensure, $2);}|none;literal:numeric|symbol{$$=dispatch1(symbol_literal, $1);}|dsym;strings:string{$$=$1;};string:tCHAR|string1|string string1{$$=dispatch2(string_concat, $1, $2);};string1:tSTRING_BEG string_contents tSTRING_END{$$=dispatch1(string_literal, $2);};xstring:tXSTRING_BEG xstring_contents tSTRING_END{$$=dispatch1(xstring_literal, $2);};regexp:tREGEXP_BEG regexp_contents tREGEXP_END{$$=dispatch2(regexp_literal, $2, $3);};words:tWORDS_BEG ' 'tSTRING_END{$$=dispatch0(words_new);$$=dispatch1(array,$$);}|tWORDS_BEG word_list tSTRING_END{$$=dispatch1(array, $2);};word_list:{$$=dispatch0(words_new);}|word_list word ' '{$$=dispatch2(words_add, $1, $2);};word:string_content{$$=dispatch0(word_new);$$=dispatch2(word_add,$$, $1);}|word string_content{$$=dispatch2(word_add, $1, $2);};symbols:tSYMBOLS_BEG ' 'tSTRING_END{$$=dispatch0(symbols_new);$$=dispatch1(array,$$);}|tSYMBOLS_BEG symbol_list tSTRING_END{$$=dispatch1(array, $2);};symbol_list:{$$=dispatch0(symbols_new);}|symbol_list word ' '{$$=dispatch2(symbols_add, $1, $2);};qwords:tQWORDS_BEG ' 'tSTRING_END{$$=dispatch0(qwords_new);$$=dispatch1(array,$$);}|tQWORDS_BEG qword_list tSTRING_END{$$=dispatch1(array, $2);};qsymbols:tQSYMBOLS_BEG ' 'tSTRING_END{$$=dispatch0(qsymbols_new);$$=dispatch1(array,$$);}|tQSYMBOLS_BEG qsym_list tSTRING_END{$$=dispatch1(array, $2);};qword_list:{$$=dispatch0(qwords_new);}|qword_list tSTRING_CONTENT ' '{$$=dispatch2(qwords_add, $1, $2);};qsym_list:{$$=dispatch0(qsymbols_new);}|qsym_list tSTRING_CONTENT ' '{$$=dispatch2(qsymbols_add, $1, $2);};string_contents:{$$=dispatch0(string_content);}|string_contents string_content{$$=dispatch2(string_add, $1, $2);};xstring_contents:{$$=dispatch0(xstring_new);}|xstring_contents string_content{$$=dispatch2(xstring_add, $1, $2);};regexp_contents:{$$=dispatch0(regexp_new);}|regexp_contents string_content{$$=dispatch2(regexp_add, $1, $2);};string_content:tSTRING_CONTENT|tSTRING_DVAR{$ < node > $=lex_strterm;lex_strterm=0;lex_state=EXPR_BEG;}string_dvar{lex_strterm=$ < node >2;$$=dispatch1(string_dvar, $3);}|tSTRING_DBEG{$< val > 1=cond_stack;$< val > $=cmdarg_stack;cond_stack=0;cmdarg_stack=0;}{$ < node > $=lex_strterm;lex_strterm=0;lex_state=EXPR_BEG;}{$ < num > $=brace_nest;brace_nest=0;}compstmt tSTRING_DEND{cond_stack=$< val > 1;cmdarg_stack=$< val > 2;lex_strterm=$< node > 3;brace_nest=$< num > 4;$$=dispatch1(string_embexpr, $5);};string_dvar:tGVAR{$$=dispatch1(var_ref, $1);}|tIVAR{$$=dispatch1(var_ref, $1);}|tCVAR{$$=dispatch1(var_ref, $1);}|backref;symbol:tSYMBEG sym{lex_state=EXPR_END;$$=dispatch1(symbol, $2);};sym:fname|tIVAR|tGVAR|tCVAR;dsym:tSYMBEG xstring_contents tSTRING_END{lex_state=EXPR_END;$$=dispatch1(dyna_symbol, $2);};numeric:tINTEGER|tFLOAT|tUMINUS_NUM tINTEGER%prec tLOWEST{$$=dispatch2(unary, ripper_intern("-@"), $2);}|tUMINUS_NUM tFLOAT%prec tLOWEST{$$=dispatch2(unary, ripper_intern("-@"), $2);};user_variable:tIDENTIFIER|tIVAR|tGVAR|tCONSTANT|tCVAR;keyword_variable:keyword_nil{ifndef_ripper($$=keyword_nil);}|keyword_self{ifndef_ripper($$=keyword_self);}|keyword_true{ifndef_ripper($$=keyword_true);}|keyword_false{ifndef_ripper($$=keyword_false);}|keyword__FILE__{ifndef_ripper($$=keyword__FILE__);}|keyword__LINE__{ifndef_ripper($$=keyword__LINE__);}|keyword__ENCODING__{ifndef_ripper($$=keyword__ENCODING__);};var_ref:user_variable{if(id_is_var(get_id($1))){$$=dispatch1(var_ref, $1);}else{$$=dispatch1(vcall, $1);}}|keyword_variable{$$=dispatch1(var_ref, $1);};var_lhs:user_variable{$$=assignable($1, 0);$$=dispatch1(var_field,$$);}|keyword_variable{$$=assignable($1, 0);$$=dispatch1(var_field,$$);};backref:tNTH_REF|tBACK_REF;superclass:term{$$=Qnil;}| ' <'{lex_state=EXPR_BEG;command_start=TRUE;}expr_value term{$$=$3;}|error term{yyerrok;$$=Qnil;};f_arglist: '('f_args rparen{$$=dispatch1(paren, $2);lex_state=EXPR_BEG;command_start=TRUE;}|f_args term{$$=$1;lex_state=EXPR_BEG;command_start=TRUE;};args_tail:f_kwarg ','f_kwrest opt_f_block_arg{$$=new_args_tail($1, $3, $4);}|f_kwarg opt_f_block_arg{$$=new_args_tail($1, Qnone, $2);}|f_kwrest opt_f_block_arg{$$=new_args_tail(Qnone, $1, $2);}|f_block_arg{$$=new_args_tail(Qnone, Qnone, $1);};opt_args_tail: ','args_tail{$$=$2;}|{$$=new_args_tail(Qnone, Qnone, Qnone);};f_args:f_arg ','f_optarg ','f_rest_arg opt_args_tail{$$=new_args($1, $3, $5, Qnone, $6);}|f_arg ','f_optarg ','f_rest_arg ','f_arg opt_args_tail{$$=new_args($1, $3, $5, $7, $8);}|f_arg ','f_optarg opt_args_tail{$$=new_args($1, $3, Qnone, Qnone, $4);}|f_arg ','f_optarg ','f_arg opt_args_tail{$$=new_args($1, $3, Qnone, $5, $6);}|f_arg ','f_rest_arg opt_args_tail{$$=new_args($1, Qnone, $3, Qnone, $4);}|f_arg ','f_rest_arg ','f_arg opt_args_tail{$$=new_args($1, Qnone, $3, $5, $6);}|f_arg opt_args_tail{$$=new_args($1, Qnone, Qnone, Qnone, $2);}|f_optarg ','f_rest_arg opt_args_tail{$$=new_args(Qnone, $1, $3, Qnone, $4);}|f_optarg ','f_rest_arg ','f_arg opt_args_tail{$$=new_args(Qnone, $1, $3, $5, $6);}|f_optarg opt_args_tail{$$=new_args(Qnone, $1, Qnone, Qnone, $2);}|f_optarg ','f_arg opt_args_tail{$$=new_args(Qnone, $1, Qnone, $3, $4);}|f_rest_arg opt_args_tail{$$=new_args(Qnone, Qnone, $1, Qnone, $2);}|f_rest_arg ','f_arg opt_args_tail{$$=new_args(Qnone, Qnone, $1, $3, $4);}|args_tail{$$=new_args(Qnone, Qnone, Qnone, Qnone, $1);}|{$$=new_args_tail(Qnone, Qnone, Qnone);$$=new_args(Qnone, Qnone, Qnone, Qnone,$$);};f_bad_arg:tCONSTANT{$$=dispatch1(param_error, $1);}|tIVAR{$$=dispatch1(param_error, $1);}|tGVAR{$$=dispatch1(param_error, $1);}|tCVAR{$$=dispatch1(param_error, $1);};f_norm_arg:f_bad_arg|tIDENTIFIER{formal_argument(get_id($1));$$=$1;};f_arg_item:f_norm_arg{arg_var(get_id($1));$$=get_value($1);}|tLPAREN f_margs rparen{ID tid=internal_id();arg_var(tid);$$=dispatch1(mlhs_paren, $2);};f_arg:f_arg_item{$$=rb_ary_new3(1, $1);}|f_arg ','f_arg_item{$$=rb_ary_push($1, $3);};f_kw:tLABEL arg_value{arg_var(formal_argument(get_id($1)));$$=assignable($1, $2);$$=rb_assoc_new($$, $2);};f_block_kw:tLABEL primary_value{arg_var(formal_argument(get_id($1)));$$=assignable($1, $2);$$=rb_assoc_new($$, $2);};f_block_kwarg:f_block_kw{$$=rb_ary_new3(1, $1);}|f_block_kwarg ','f_block_kw{$$=rb_ary_push($1, $3);};f_kwarg:f_kw{$$=rb_ary_new3(1, $1);}|f_kwarg ','f_kw{$$=rb_ary_push($1, $3);};kwrest_mark:tPOW|tDSTAR;f_kwrest:kwrest_mark tIDENTIFIER{shadowing_lvar(get_id($2));$$=$2;}|kwrest_mark{$$=internal_id();};f_opt:tIDENTIFIER '='arg_value{arg_var(formal_argument(get_id($1)));$$=assignable($1, $3);$$=rb_assoc_new($$, $3);};f_block_opt:tIDENTIFIER '='primary_value{arg_var(formal_argument(get_id($1)));$$=assignable($1, $3);$$=rb_assoc_new($$, $3);};f_block_optarg:f_block_opt{$$=rb_ary_new3(1, $1);}|f_block_optarg ','f_block_opt{$$=rb_ary_push($1, $3);};f_optarg:f_opt{$$=rb_ary_new3(1, $1);}|f_optarg ','f_opt{$$=rb_ary_push($1, $3);};restarg_mark: '*'|tSTAR;f_rest_arg:restarg_mark tIDENTIFIER{arg_var(shadowing_lvar(get_id($2)));$$=dispatch1(rest_param, $2);}|restarg_mark{$$=dispatch1(rest_param, Qnil);};blkarg_mark: '&'|tAMPER;f_block_arg:blkarg_mark tIDENTIFIER{arg_var(shadowing_lvar(get_id($2)));$$=dispatch1(blockarg, $2);};opt_f_block_arg: ','f_block_arg{$$=$2;}|none{$$=Qundef;};singleton:var_ref{$$=$1;}| '('{lex_state=EXPR_BEG;}expr rparen{$$=dispatch1(paren, $3);};assoc_list:none|assocs trailer{$$=dispatch1(assoclist_from_args, $1);};assocs:assoc{$$=rb_ary_new3(1, $1);}|assocs ','assoc{$$=rb_ary_push($1, $3);};assoc:arg_value tASSOC arg_value{$$=dispatch2(assoc_new, $1, $3);}|tLABEL arg_value{$$=dispatch2(assoc_new, $1, $2);}|tDSTAR arg_value{$$=dispatch1(assoc_splat, $2);};;operation:tIDENTIFIER|tCONSTANT|tFID;operation2:tIDENTIFIER|tCONSTANT|tFID|op;operation3:tIDENTIFIER|tFID|op;dot_or_colon: '.'{$$=$ < val >1;}|tCOLON2{$$=$< val > 1;};opt_terms:|terms;opt_nl:| '\n';rparen:opt_nl ')';rbracket:opt_nl ']';trailer:| '\n'| ',';term: ';'{yyerrok;}| '\n';terms:term|terms ';'{yyerrok;};none:{$$=Qundef;};%%#define yylvalstatic 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 *);#define nextc()#define pushback(c)#define newtok()#define tokspace(n)#define tokadd(c)#define tok_hex(numlen)#define read_escape(flags, e)#define tokadd_escape(e)#define regx_options()#define tokadd_string(f, t, p, n, e)#define parse_string(n)#define tokaddmbc(c, enc)#define here_document(n)#define heredoc_identifier()#define heredoc_restore(n)#define whole_match_p(e, l, i)#define set_yylval_str(x)#define set_yylval_num(x)#define set_yylval_id(x)#define set_yylval_name(x)#define set_yylval_literal(x)#define set_yylval_node(x)#define yylval_id()#define ripper_flush(p)#define SIGN_EXTEND_CHAR(c)#define parser_encoding_name()#define parser_mbclen()#define parser_precise_mbclen()#define is_identchar(p, e, enc)#define parser_is_identchar()#define parser_isascii() static inttoken_info_get_column(struct parser_params *parser, const char *token){int column=1;const char *p,*pend=lex_p-strlen(token);for(p=lex_pbeg;p < pend;p++){if(*p== '\t'){column=(((column-1)/8)+1)*8;}column++;}return column;}static inttoken_info_has_nonspaces(struct parser_params *parser, const char *token){const char *p,*pend=lex_p-strlen(token);for(p=lex_pbeg;p < pend;p++){if(*p!= ' '&&*p!= '\t'){return 1;}}return 0;}static voidtoken_info_push(struct parser_params *parser, const char *token){token_info *ptinfo;if(!parser-> parser_token_info_enabled) return;ptinfo=ALLOC(token_info);ptinfo-> token=token;ptinfo->linenum=ruby_sourceline;ptinfo-> column=token_info_get_column(parser, token);ptinfo->nonspc=token_info_has_nonspaces(parser, token);ptinfo->next=parser-> parser_token_info;parser-> parser_token_info=ptinfo;}static voidtoken_info_pop(struct parser_params *parser, const char *token){int linenum;token_info *ptinfo=parser-> parser_token_info;if(!ptinfo) return;parser-> parser_token_info=ptinfo->next;if(token_info_get_column(parser, token)==ptinfo->column){goto finish;}linenum=ruby_sourceline;if(linenum==ptinfo-> linenum){goto finish;}if(token_info_has_nonspaces(parser, token)||ptinfo->nonspc){goto finish;}if(parser-> parser_token_info_enabled){rb_compile_warn(ruby_sourcefile, linenum,"mismatched indentations at '%s' with '%s' at %d", token, ptinfo->token, ptinfo->linenum);}finish:xfree(ptinfo);}static intparser_yyerror(struct parser_params *parser, const char *msg){const int max_line_margin=30;const char *p,*pe;char *buf;long len;int i;compile_error(PARSER_ARG"%s", msg);p=lex_p;while(lex_pbeg<=p){if(*p== '\n') break;p--;}p++;pe=lex_p;while(pe < lex_pend){if(*pe== '\n') break;pe++;}len=pe-p;if(len > 4){char *p2;const char *pre="",*post="";if(len > max_line_margin *2+10){if(lex_p-p > max_line_margin){p=rb_enc_prev_char(p, lex_p-max_line_margin, pe, rb_enc_get(lex_lastline));pre="...";}if(pe-lex_p > max_line_margin){pe=rb_enc_prev_char(lex_p, lex_p+max_line_margin, pe, rb_enc_get(lex_lastline));post="...";}len=pe-p;}buf=ALLOCA_N(char, len+2);MEMCPY(buf, p, char, len);buf[len]= '\0';rb_compile_error_append("%s%s%s", pre, buf, post);i=(int)(lex_p-p);p2=buf;pe=buf+len;while(p2 < pe){if(*p2!= '\t')*p2= ' ';p2++;}buf[i]= '^';buf[i+1]= '\0';rb_compile_error_append("%s%s", pre, buf);}return 0;}static void parser_prepare(struct parser_params *parser);static VALUEdebug_lines(const char *f){ID script_lines;CONST_ID(script_lines,"SCRIPT_LINES__");if(rb_const_defined_at(rb_cObject, script_lines)){VALUE hash=rb_const_get_at(rb_cObject, script_lines);if(RB_TYPE_P(hash, T_HASH)){VALUE fname=rb_external_str_new_with_enc(f, strlen(f), rb_filesystem_encoding());VALUE lines=rb_ary_new();rb_hash_aset(hash, fname, lines);return lines;}}return 0;}static VALUEcoverage(const char *f, int n){VALUE coverages=rb_get_coverages();if(RTEST(coverages)&&RBASIC(coverages) -> klass==0){VALUE fname=rb_external_str_new_with_enc(f, strlen(f), rb_filesystem_encoding());VALUE lines=rb_ary_new2(n);int i;RBASIC(lines) -> klass=0;for(i=0;i< n;i++) RARRAY_PTR(lines)[i]=Qnil;RARRAY(lines) -> as.heap.len=n;rb_hash_aset(coverages, fname, lines);return lines;}return 0;}static inte_option_supplied(struct parser_params *parser){return strcmp(ruby_sourcefile,"-e")==0;}static VALUEyycompile0(VALUE arg){int n;NODE *tree;struct parser_params *parser=(struct parser_params *) arg;if(!compile_for_eval &&rb_safe_level()==0){ruby_debug_lines=debug_lines(ruby_sourcefile);if(ruby_debug_lines &&ruby_sourceline > 0){VALUE str=STR_NEW0();n=ruby_sourceline;do{rb_ary_push(ruby_debug_lines, str);}while(--n);}if(!e_option_supplied(parser)){ruby_coverage=coverage(ruby_sourcefile, ruby_sourceline);}}parser_prepare(parser);deferred_nodes=0;parser-> parser_token_info_enabled=!compile_for_eval &&RTEST(ruby_verbose);if(RUBY_DTRACE_PARSE_BEGIN_ENABLED()){RUBY_DTRACE_PARSE_BEGIN(parser-> parser_ruby_sourcefile, parser-> parser_ruby_sourceline);}n=yyparse((void *) parser);if(RUBY_DTRACE_PARSE_END_ENABLED()){RUBY_DTRACE_PARSE_END(parser-> parser_ruby_sourcefile, parser-> parser_ruby_sourceline);}ruby_debug_lines=0;ruby_coverage=0;compile_for_eval=0;lex_strterm=0;lex_p=lex_pbeg=lex_pend=0;lex_lastline=lex_nextline=0;if(parser-> nerr){return 0;}tree=ruby_eval_tree;if(!tree){tree=NEW_NIL();}else if(ruby_eval_tree_begin){tree-> nd_body=NEW_PRELUDE(ruby_eval_tree_begin, tree->nd_body);}return(VALUE) tree;}static NODE *yycompile(struct parser_params *parser, const char *f, int line){ruby_sourcefile=ruby_strdup(f);ruby_sourceline=line-1;return(NODE *) rb_suppress_tracing(yycompile0,(VALUE) parser);}static rb_encoding *must_be_ascii_compatible(VALUE s){rb_encoding *enc=rb_enc_get(s);if(!rb_enc_asciicompat(enc)){rb_raise(rb_eArgError,"invalid source encoding");}return enc;}static VALUElex_get_str(struct parser_params *parser, VALUE s){char *beg,*end,*pend;rb_encoding *enc=must_be_ascii_compatible(s);beg=RSTRING_PTR(s);if(lex_gets_ptr){if(RSTRING_LEN(s)==lex_gets_ptr) return Qnil;beg+=lex_gets_ptr;}pend=RSTRING_PTR(s)+RSTRING_LEN(s);end=beg;while(end < pend){if(*end++== '\n') break;}lex_gets_ptr=end-RSTRING_PTR(s);return rb_enc_str_new(beg, end-beg, enc);}static VALUElex_getline(struct parser_params *parser){VALUE line=(*parser->parser_lex_gets)(parser, parser->parser_lex_input);if(NIL_P(line)) return line;must_be_ascii_compatible(line);if(ruby_debug_lines){rb_enc_associate(line, current_enc);rb_ary_push(ruby_debug_lines, line);}if(ruby_coverage){rb_ary_push(ruby_coverage, Qnil);}return line;}static const rb_data_type_t parser_data_type;static NODE *parser_compile_string(volatile VALUE vparser, const char *f, VALUE s, int line){struct parser_params *parser;NODE *node;TypedData_Get_Struct(vparser, struct parser_params,&parser_data_type, parser);lex_gets=lex_get_str;lex_gets_ptr=0;lex_input=s;lex_pbeg=lex_p=lex_pend=0;compile_for_eval=rb_parse_in_eval();node=yycompile(parser, f, line);RB_GC_GUARD(vparser);return node;}NODE *rb_compile_string(const char *f, VALUE s, int line){must_be_ascii_compatible(s);return parser_compile_string(rb_parser_new(), f, s, line);}NODE *rb_parser_compile_string(volatile VALUE vparser, const char *f, VALUE s, int line){must_be_ascii_compatible(s);return parser_compile_string(vparser, f, s, line);}NODE *rb_compile_cstr(const char *f, const char *s, int len, int line){VALUE str=rb_str_new(s, len);return parser_compile_string(rb_parser_new(), f, str, line);}NODE *rb_parser_compile_cstr(volatile VALUE vparser, const char *f, const char *s, int len, int line){VALUE str=rb_str_new(s, len);return parser_compile_string(vparser, f, str, line);}static VALUElex_io_gets(struct parser_params *parser, VALUE io){return rb_io_gets(io);}NODE *rb_compile_file(const char *f, VALUE file, int start){VALUE volatile vparser=rb_parser_new();return rb_parser_compile_file(vparser, f, file, start);}NODE *rb_parser_compile_file(volatile VALUE vparser, const char *f, VALUE file, int start){struct parser_params *parser;NODE *node;TypedData_Get_Struct(vparser, struct parser_params,&parser_data_type, parser);lex_gets=lex_io_gets;lex_input=file;lex_pbeg=lex_p=lex_pend=0;compile_for_eval=rb_parse_in_eval();node=yycompile(parser, f, start);RB_GC_GUARD(vparser);return node;}#define STR_FUNC_ESCAPE#define STR_FUNC_EXPAND#define STR_FUNC_REGEXP#define STR_FUNC_QWORDS#define STR_FUNC_SYMBOL#define STR_FUNC_INDENTenum 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)};static VALUEparser_str_new(const char *p, long n, rb_encoding *enc, int func, rb_encoding *enc0){VALUE str;str=rb_enc_str_new(p, n, enc);if(!(func &STR_FUNC_REGEXP)&&rb_enc_asciicompat(enc)){if(rb_enc_str_coderange(str)==ENC_CODERANGE_7BIT){}else if(enc0==rb_usascii_encoding()&&enc!=rb_utf8_encoding()){rb_enc_associate(str, rb_ascii8bit_encoding());}}return str;}#define lex_goto_eol(parser)#define lex_eol_p()#define peek(c)#define peek_n(c, n) static inline intparser_nextc(struct parser_params *parser){int c;if(lex_p==lex_pend){VALUE v=lex_nextline;lex_nextline=0;if(!v){if(parser-> eofp) return-1;if(!lex_input||NIL_P(v=lex_getline(parser))){parser-> eofp=Qtrue;lex_goto_eol(parser);return-1;}}{if(heredoc_end > 0){ruby_sourceline=heredoc_end;heredoc_end=0;}ruby_sourceline++;parser-> line_count++;lex_pbeg=lex_p=RSTRING_PTR(v);lex_pend=lex_p+RSTRING_LEN(v);ripper_flush(parser);lex_lastline=v;}}c=(unsigned char)*lex_p++;if(c== '\r'&&peek('\n')){lex_p++;c= '\n';}return c;}static voidparser_pushback(struct parser_params *parser, int c){if(c==-1) return;lex_p--;if(lex_p > lex_pbeg &&lex_p[0]== '\n'&&lex_p[-1]== '\r'){lex_p--;}}#define was_bol()#define tokfix()#define tok()#define toklen()#define toklast() static char *parser_newtok(struct parser_params *parser){tokidx=0;tokline=ruby_sourceline;if(!tokenbuf){toksiz=60;tokenbuf=ALLOC_N(char, 60);}if(toksiz > 4096){toksiz=60;REALLOC_N(tokenbuf, char, 60);}return tokenbuf;}static char *parser_tokspace(struct parser_params *parser, int n){tokidx+=n;if(tokidx > =toksiz){do{toksiz *=2;}while(toksiz < tokidx);REALLOC_N(tokenbuf, char, toksiz);}return &tokenbuf[tokidx-n];}static voidparser_tokadd(struct parser_params *parser, int c){tokenbuf[tokidx++]=(char) c;if(tokidx >=toksiz){toksiz *=2;REALLOC_N(tokenbuf, char, toksiz);}}static intparser_tok_hex(struct parser_params *parser, size_t *numlen){int c;c=scan_hex(lex_p, 2, numlen);if(!*numlen){yyerror("invalid hex escape");return 0;}lex_p+=*numlen;return c;}#define tokcopy(n) static intparser_tokadd_utf8(struct parser_params *parser, rb_encoding **encp, int string_literal, int symbol_literal, int regexp_literal){int codepoint;size_t numlen;if(regexp_literal){tokadd('\\');tokadd('u');}if(peek('{')){do{if(regexp_literal){tokadd(*lex_p);}nextc();codepoint=scan_hex(lex_p, 6,&numlen);if(numlen==0){yyerror("invalid Unicode escape");return 0;}if(codepoint > 0x10ffff){yyerror("invalid Unicode codepoint (too large)");return 0;}lex_p+=numlen;if(regexp_literal){tokcopy((int) numlen);}else if(codepoint >=0x80){*encp=rb_utf8_encoding();if(string_literal) tokaddmbc(codepoint,*encp);}else if(string_literal){tokadd(codepoint);}}while(string_literal &&(peek(' ')||peek('\t')));if(!peek('}')){yyerror("unterminated Unicode escape");return 0;}if(regexp_literal){tokadd('}');}nextc();}else{codepoint=scan_hex(lex_p, 4,&numlen);if(numlen< 4){yyerror("invalid Unicode escape");return 0;}lex_p+=4;if(regexp_literal){tokcopy(4);}else if(codepoint >=0x80){*encp=rb_utf8_encoding();if(string_literal) tokaddmbc(codepoint,*encp);}else if(string_literal){tokadd(codepoint);}}return codepoint;}#define ESCAPE_CONTROL#define ESCAPE_METAstatic intparser_read_escape(struct parser_params *parser, int flags, rb_encoding **encp){int c;size_t numlen;switch(c=nextc()){case '\\':return c;case 'n':return '\n';case 't':return '\t';case 'r':return '\r';case 'f':return '\f';case 'v':return '\13';case 'a':return '\007';case 'e':return 033;case '0':case '1':case '2':case '3':case '4':case '5':case '6':case '7':pushback(c);c=scan_oct(lex_p, 3,&numlen);lex_p+=numlen;return c;case 'x':c=tok_hex(&numlen);if(numlen==0) return 0;return c;case 'b':return '\010';case 's':return ' ';case 'M':if(flags &ESCAPE_META) goto eof;if((c=nextc())!= '-'){pushback(c);goto eof;}if((c=nextc())== '\\'){if(peek('u')) goto eof;return read_escape(flags|ESCAPE_META, encp)|0x80;}else if(c==-1||!ISASCII(c)) goto eof;else{return((c &0xff)|0x80);}case 'C':if((c=nextc())!= '-'){pushback(c);goto eof;}case 'c':if(flags &ESCAPE_CONTROL) goto eof;if((c=nextc())== '\\'){if(peek('u')) goto eof;c=read_escape(flags|ESCAPE_CONTROL, encp);}else if(c== '?') return 0177;else if(c==-1||!ISASCII(c)) goto eof;return c &0x9f;eof:case-1:yyerror("Invalid escape character syntax");return '\0';default:return c;}}static voidparser_tokaddmbc(struct parser_params *parser, int c, rb_encoding *enc){int len=rb_enc_codelen(c, enc);rb_enc_mbcput(c, tokspace(len), enc);}static intparser_tokadd_escape(struct parser_params *parser, rb_encoding **encp){int c;int flags=0;size_t numlen;first:switch(c=nextc()){case '\n':return 0;case '0':case '1':case '2':case '3':case '4':case '5':case '6':case '7':{ruby_scan_oct(--lex_p, 3,&numlen);if(numlen==0) goto eof;lex_p+=numlen;tokcopy((int) numlen+1);}return 0;case 'x':{tok_hex(&numlen);if(numlen==0) return-1;tokcopy((int) numlen+2);}return 0;case 'M':if(flags &ESCAPE_META) goto eof;if((c=nextc())!= '-'){pushback(c);goto eof;}tokcopy(3);flags|=ESCAPE_META;goto escaped;case 'C':if(flags &ESCAPE_CONTROL) goto eof;if((c=nextc())!= '-'){pushback(c);goto eof;}tokcopy(3);goto escaped;case 'c':if(flags &ESCAPE_CONTROL) goto eof;tokcopy(2);flags|=ESCAPE_CONTROL;escaped:if((c=nextc())== '\\'){goto first;}else if(c==-1) goto eof;tokadd(c);return 0;eof:case-1:yyerror("Invalid escape character syntax");return-1;default:tokadd('\\');tokadd(c);}return 0;}static intparser_regx_options(struct parser_params *parser){int kcode=0;int kopt=0;int options=0;int c, opt, kc;newtok();while(c=nextc(), ISALPHA(c)){if(c== 'o'){options|=RE_OPTION_ONCE;}else if(rb_char_to_option_kcode(c,&opt,&kc)){if(kc >=0){if(kc!=rb_ascii8bit_encindex()) kcode=c;kopt=opt;}else{options|=opt;}}else{tokadd(c);}}options|=kopt;pushback(c);if(toklen()){tokfix();compile_error(PARSER_ARG"unknown regexp option%s - %s", toklen() > 1?"s":"", tok());}return options|RE_OPTION_ENCODING(kcode);}static voiddispose_string(VALUE str){rb_str_free(str);rb_gc_force_recycle(str);}static intparser_tokadd_mbchar(struct parser_params *parser, int c){int len=parser_precise_mbclen();if(!MBCLEN_CHARFOUND_P(len)){compile_error(PARSER_ARG"invalid multibyte char (%s)", parser_encoding_name());return-1;}tokadd(c);lex_p+=--len;if(len > 0) tokcopy(len);return c;}#define tokadd_mbchar(c) static inline intsimple_re_meta(int c){switch(c){case '$':case '*':case '+':case '.':case '?':case '^':case '|':case ')':case ']':case '}':case '>':return TRUE;default:return FALSE;}}static intparser_tokadd_string(struct parser_params *parser, int func, int term, int paren, long *nest, rb_encoding **encp){int c;int has_nonascii=0;rb_encoding *enc=*encp;char *errbuf=0;static const char mixed_msg[]="%s mixed within %s source";#define mixed_error(enc1, enc2)#define mixed_escape(beg, enc1, enc2) while((c=nextc())!=-1){if(paren &&c==paren){++*nest;}else if(c==term){if(!nest||!*nest){pushback(c);break;}--*nest;}else if((func &STR_FUNC_EXPAND)&&c== '#'&&lex_p< lex_pend){int c2=*lex_p;if(c2== '$'||c2== '@'||c2== '{'){pushback(c);break;}}else if(c== '\\'){const char *beg=lex_p-1;c=nextc();switch(c){case '\n':if(func &STR_FUNC_QWORDS) break;if(func &STR_FUNC_EXPAND) continue;tokadd('\\');break;case '\\':if(func &STR_FUNC_ESCAPE) tokadd(c);break;case 'u':if((func &STR_FUNC_EXPAND)==0){tokadd('\\');break;}parser_tokadd_utf8(parser,&enc, 1, func &STR_FUNC_SYMBOL, func &STR_FUNC_REGEXP);if(has_nonascii &&enc!=*encp){mixed_escape(beg, enc,*encp);}continue;default:if(c==-1) return-1;if(!ISASCII(c)){if((func &STR_FUNC_EXPAND)==0) tokadd('\\');goto non_ascii;}if(func &STR_FUNC_REGEXP){if(c==term &&!simple_re_meta(c)){tokadd(c);continue;}pushback(c);if((c=tokadd_escape(&enc))< 0) return-1;if(has_nonascii &&enc!=*encp){mixed_escape(beg, enc,*encp);}continue;}else if(func &STR_FUNC_EXPAND){pushback(c);if(func &STR_FUNC_ESCAPE) tokadd('\\');c=read_escape(0,&enc);}else if((func &STR_FUNC_QWORDS)&&ISSPACE(c)){}else if(c!=term &&!(paren &&c==paren)){tokadd('\\');pushback(c);continue;}}}else if(!parser_isascii()){non_ascii:has_nonascii=1;if(enc!=*encp){mixed_error(enc,*encp);continue;}if(tokadd_mbchar(c)==-1) return-1;continue;}else if((func &STR_FUNC_QWORDS)&&ISSPACE(c)){pushback(c);break;}if(c &0x80){has_nonascii=1;if(enc!=*encp){mixed_error(enc,*encp);continue;}}tokadd(c);}*encp=enc;return c;}#define NEW_STRTERM(func, term, paren)#define flush_string_content(enc) RUBY_FUNC_EXPORTED const unsigned int ruby_global_name_punct_bits[(0x7e-0x20+31)/32];#define BIT(c, idx)#define SPECIAL_PUNCT(idx) const unsigned int ruby_global_name_punct_bits[]={SPECIAL_PUNCT(0), SPECIAL_PUNCT(1), SPECIAL_PUNCT(2),};static inline intis_global_name_punct(const char c){if(c<=0x20||0x7e< c) return 0;return(ruby_global_name_punct_bits[(c-0x20)/32] >>(c%32))&1;}static intparser_peek_variable_name(struct parser_params *parser){int c;const char *p=lex_p;if(p+1 >=lex_pend) return 0;c=*p++;switch(c){case '$':if((c=*p)== '-'){if(++p >=lex_pend) return 0;c=*p;}else if(is_global_name_punct(c)||ISDIGIT(c)){return tSTRING_DVAR;}break;case '@':if((c=*p)== '@'){if(++p >=lex_pend) return 0;c=*p;}break;case '{':lex_p=p;command_start=TRUE;return tSTRING_DBEG;default:return 0;}if(!ISASCII(c)||c== '_'||ISALPHA(c)) return tSTRING_DVAR;return 0;}static intparser_parse_string(struct parser_params *parser, NODE *quote){int func=(int) quote->nd_func;int term=nd_term(quote);int paren=nd_paren(quote);int c, space=0;rb_encoding *enc=current_enc;if(func==-1) return tSTRING_END;c=nextc();if((func &STR_FUNC_QWORDS)&&ISSPACE(c)){do{c=nextc();}while(ISSPACE(c));space=1;}if(c==term &&!quote->nd_nest){if(func &STR_FUNC_QWORDS){quote->nd_func=-1;return ' ';}if(!(func &STR_FUNC_REGEXP)) return tSTRING_END;set_yylval_num(regx_options());return tREGEXP_END;}if(space){pushback(c);return ' ';}newtok();if((func &STR_FUNC_EXPAND)&&c== '#'){int t=parser_peek_variable_name(parser);if(t) return t;tokadd('#');c=nextc();}pushback(c);if(tokadd_string(func, term, paren,&quote->nd_nest,&enc)==-1){ruby_sourceline=nd_line(quote);if(func &STR_FUNC_REGEXP){if(parser->eofp) compile_error(PARSER_ARG"unterminated regexp meets end of file");return tREGEXP_END;}else{if(parser->eofp) compile_error(PARSER_ARG"unterminated string meets end of file");return tSTRING_END;}}tokfix();set_yylval_str(STR_NEW3(tok(), toklen(), enc, func));flush_string_content(enc);return tSTRING_CONTENT;}static intparser_heredoc_identifier(struct parser_params *parser){int c=nextc(), term, func=0;long len;if(c== '-'){c=nextc();func=STR_FUNC_INDENT;}switch(c){case '\'':func|=str_squote;goto quoted;case '"': func |= str_dquote; goto quoted; case '`': func |= str_xquote; quoted: newtok(); tokadd(func); term = c; while ((c = nextc()) != -1 && c != term) { if (tokadd_mbchar(c) == -1) return 0; } if (c == -1) { compile_error(PARSER_ARG "unterminated here document identifier"); return 0; } break; default: if (!parser_is_identchar()) { pushback(c); if (func & STR_FUNC_INDENT) { pushback('-'); } return 0; } newtok(); term = '"';tokadd(func|=str_dquote);do{if(tokadd_mbchar(c)==-1) return 0;}while((c=nextc())!=-1 &&parser_is_identchar());pushback(c);break;}tokfix();len=lex_p-lex_pbeg;lex_goto_eol(parser);lex_strterm=rb_node_newnode(NODE_HEREDOC, STR_NEW(tok(), toklen()), len, lex_lastline);nd_set_line(lex_strterm, ruby_sourceline);ripper_flush(parser);return term== '`'?tXSTRING_BEG:tSTRING_BEG;}static voidparser_heredoc_restore(struct parser_params *parser, NODE *here){VALUE line;line=here->nd_orig;lex_lastline=line;lex_pbeg=RSTRING_PTR(line);lex_pend=lex_pbeg+RSTRING_LEN(line);lex_p=lex_pbeg+here->nd_nth;heredoc_end=ruby_sourceline;ruby_sourceline=nd_line(here);dispose_string(here->nd_lit);rb_gc_force_recycle((VALUE) here);ripper_flush(parser);}static intparser_whole_match_p(struct parser_params *parser, const char *eos, long len, int indent){const char *p=lex_pbeg;long n;if(indent){while(*p &&ISSPACE(*p)) p++;}n=lex_pend-(p+len);if(n< 0||(n > 0 &&p[len]!= '\n'&&p[len]!= '\r')) return FALSE;return strncmp(eos, p, len)==0;}#define dispatch_heredoc_end() static intparser_here_document(struct parser_params *parser, NODE *here){int c, func, indent=0;const char *eos,*p,*pend;long len;VALUE str=0;rb_encoding *enc=current_enc;eos=RSTRING_PTR(here->nd_lit);len=RSTRING_LEN(here->nd_lit)-1;indent=(func=*eos++)&STR_FUNC_INDENT;if((c=nextc())==-1){error:compile_error(PARSER_ARG"can't find string \"%s\" anywhere before EOF", eos);restore:heredoc_restore(lex_strterm);lex_strterm=0;return 0;}if(was_bol()&&whole_match_p(eos, len, indent)){dispatch_heredoc_end();heredoc_restore(lex_strterm);return tSTRING_END;}if(!(func &STR_FUNC_EXPAND)){do{p=RSTRING_PTR(lex_lastline);pend=lex_pend;if(pend > p){switch(pend[-1]){case '\n':if(--pend==p||pend[-1]!= '\r'){pend++;break;}case '\r':--pend;}}if(str) rb_str_cat(str, p, pend-p);else str=STR_NEW(p, pend-p);if(pend< lex_pend) rb_str_cat(str,"\n", 1);lex_goto_eol(parser);if(nextc()==-1){if(str) dispose_string(str);goto error;}}while(!whole_match_p(eos, len, indent));}else{newtok();if(c== '#'){int t=parser_peek_variable_name(parser);if(t) return t;tokadd('#');c=nextc();}do{pushback(c);if((c=tokadd_string(func, '\n', 0, NULL,&enc))==-1){if(parser->eofp) goto error;goto restore;}if(c!= '\n'){set_yylval_str(STR_NEW3(tok(), toklen(), enc, func));flush_string_content(enc);return tSTRING_CONTENT;}tokadd(nextc());if((c=nextc())==-1) goto error;}while(!whole_match_p(eos, len, indent));str=STR_NEW3(tok(), toklen(), enc, func);}dispatch_heredoc_end();heredoc_restore(lex_strterm);lex_strterm=NEW_STRTERM(-1, 0, 0);set_yylval_str(str);return tSTRING_CONTENT;}static voidarg_ambiguous_gen(struct parser_params *parser){rb_warning0("ambiguous first argument; put parentheses or even spaces");}#define arg_ambiguous() static IDformal_argument_gen(struct parser_params *parser, ID lhs){if(!is_local_id(lhs)) yyerror("formal argument must be local variable");shadowing_lvar(lhs);return lhs;}static intlvar_defined_gen(struct parser_params *parser, ID id){return(dyna_in_block()&&dvar_defined_get(id))||local_id(id);}static longparser_encode_length(struct parser_params *parser, const char *name, long len){long nlen;if(len > 5 &&name[nlen=len-5]== '-'){if(rb_memcicmp(name+nlen+1,"unix", 4)==0) return nlen;}if(len > 4 &&name[nlen=len-4]== '-'){if(rb_memcicmp(name+nlen+1,"dos", 3)==0) return nlen;if(rb_memcicmp(name+nlen+1,"mac", 3)==0 &&!(len==8 &&rb_memcicmp(name,"utf8-mac", len)==0)) return nlen;}return len;}static voidparser_set_encode(struct parser_params *parser, const char *name){int idx=rb_enc_find_index(name);rb_encoding *enc;VALUE excargs[3];if(idx< 0){excargs[1]=rb_sprintf("unknown encoding name: %s", name);error:excargs[0]=rb_eArgError;excargs[2]=rb_make_backtrace();rb_ary_unshift(excargs[2], rb_sprintf("%s:%d", ruby_sourcefile, ruby_sourceline));rb_exc_raise(rb_make_exception(3, excargs));}enc=rb_enc_from_index(idx);if(!rb_enc_asciicompat(enc)){excargs[1]=rb_sprintf("%s is not ASCII compatible", rb_enc_name(enc));goto error;}parser->enc=enc;if(ruby_debug_lines){long i, n=RARRAY_LEN(ruby_debug_lines);const VALUE *p=RARRAY_PTR(ruby_debug_lines);for(i=0;i< n;++i){rb_enc_associate_index(*p, idx);}}}static intcomment_at_top(struct parser_params *parser){const char *p=lex_pbeg,*pend=lex_p-1;if(parser->line_count!=(parser->has_shebang?2:1)) return 0;while(p< pend){if(!ISSPACE(*p)) return 0;p++;}return 1;}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);static voidmagic_comment_encoding(struct parser_params *parser, const char *name, const char *val){if(!comment_at_top(parser)){return;}parser_set_encode(parser, val);}static voidparser_set_token_info(struct parser_params *parser, const char *name, const char *val){int *p=&parser->parser_token_info_enabled;switch(*val){case 't':case 'T':if(strcasecmp(val,"true")==0){*p=TRUE;return;}break;case 'f':case 'F':if(strcasecmp(val,"false")==0){*p=FALSE;return;}break;}rb_compile_warning(ruby_sourcefile, ruby_sourceline,"invalid value for %s: %s", name, val);}struct magic_comment{const char *name;rb_magic_comment_setter_t func;rb_magic_comment_length_t length;};static const struct magic_comment magic_comments[]={{"coding", magic_comment_encoding, parser_encode_length},{"encoding", magic_comment_encoding, parser_encode_length},{"warn_indent", parser_set_token_info},};static const char *magic_comment_marker(const char *str, long len){long i=2;while(i< len){switch(str[i]){case '-':if(str[i-1]== '*'&&str[i-2]== '-'){return str+i+1;}i+=2;break;case '*':if(i+1 >=len) return 0;if(str[i+1]!= '-'){i+=4;}else if(str[i-1]!= '-'){i+=2;}else{return str+i+2;}break;default:i+=3;break;}}return 0;}static intparser_magic_comment(struct parser_params *parser, const char *str, long len){VALUE name=0, val=0;const char *beg,*end,*vbeg,*vend;#define str_copy(_s, _p, _n) if(len<=7) return FALSE;if(!(beg=magic_comment_marker(str, len))) return FALSE;if(!(end=magic_comment_marker(beg, str+len-beg))) return FALSE;str=beg;len=end-beg-3;while(len > 0){const struct magic_comment *p=magic_comments;char *s;int i;long n=0;for(;len > 0 &&*str;str++,--len){switch(*str){case '\'':case '"': case ':': case ';': continue; } if (!ISSPACE(*str)) break; } for (beg = str; len > 0; str++, --len) { switch (*str) { case '\'': case '"':case ':':case ';':break;default:if(ISSPACE(*str)) break;continue;}break;}for(end=str;len > 0 &&ISSPACE(*str);str++,--len);if(!len) break;if(*str!= ':') continue;do str++;while(--len > 0 &&ISSPACE(*str));if(!len) break;if(*str== '"') { for (vbeg = ++str; --len > 0 && *str != '"';str++){if(*str== '\\'){--len;++str;}}vend=str;if(len){--len;++str;}}else{for(vbeg=str;len > 0 &&*str!= '"' && *str != ';' && !ISSPACE(*str); --len, str++); vend = str; } while (len > 0 && (*str == ';' || ISSPACE(*str))) --len, str++; n = end - beg; str_copy(name, beg, n); s = RSTRING_PTR(name); for (i = 0; i < n; ++i) { if (s[i] == '-') s[i] = '_'; } do { if (STRNCASECMP(p->name, s, n) == 0) { n = vend - vbeg; if (p->length) { n = (*p->length)(parser, vbeg, n); } str_copy(val, vbeg, n); (*p->func)(parser, s, RSTRING_PTR(val)); break; } } while (++p < magic_comments + numberof(magic_comments)); } return TRUE;}static voidset_file_encoding(struct parser_params *parser, const char *str, const char *send){ int sep = 0; const char *beg = str; VALUE s; for (;;) { if (send - str <= 6) return; switch (str[6]) { case 'C': case 'c': str += 6; continue; case 'O': case 'o': str += 5; continue; case 'D': case 'd': str += 4; continue; case 'I': case 'i': str += 3; continue; case 'N': case 'n': str += 2; continue; case 'G': case 'g': str += 1; continue; case '=': case ':': sep = 1; str += 6; break; default: str += 6; if (ISSPACE(*str)) break; continue; } if (STRNCASECMP(str-6, "coding", 6) == 0) break; } for (;;) { do { if (++str >= send) return; } while (ISSPACE(*str)); if (sep) break; if (*str != '=' && *str != ':') return; sep = 1; str++; } beg = str; while ((*str == '-' || *str == '_' || ISALNUM(*str)) && ++str < send); s = rb_str_new(beg, parser_encode_length(parser, beg, str - beg)); parser_set_encode(parser, RSTRING_PTR(s)); rb_str_resize(s, 0);}static voidparser_prepare(struct parser_params *parser){ int c = nextc(); switch (c) { case '#': if (peek('!')) parser->has_shebang = 1; break; case 0xef: if (lex_pend - lex_p >= 2 && (unsigned char)lex_p[0] == 0xbb && (unsigned char)lex_p[1] == 0xbf) { parser->enc = rb_utf8_encoding(); lex_p += 2; lex_pbeg = lex_p; return; } break; case EOF: return; } pushback(c); parser->enc = rb_enc_get(lex_lastline);}#define IS_ARG() #define IS_END() #define IS_BEG() #define IS_SPCARG(c) #define IS_LABEL_POSSIBLE() #define IS_LABEL_SUFFIX(n) #define IS_AFTER_OPERATOR() #define ambiguous_operator(op, syn) #define warn_balanced(op, syn) static intparser_yylex(struct parser_params *parser){ register int c; int space_seen = 0; int cmd_state; enum lex_state_e last_state; rb_encoding *enc; int mb; if (lex_strterm) { int token; if (nd_type(lex_strterm) == NODE_HEREDOC) { token = here_document(lex_strterm); if (token == tSTRING_END) { lex_strterm = 0; lex_state = EXPR_END; } } else { token = parse_string(lex_strterm); if (token == tSTRING_END || token == tREGEXP_END) { rb_gc_force_recycle((VALUE)lex_strterm); lex_strterm = 0; lex_state = EXPR_END; } } return token; } cmd_state = command_start; command_start = FALSE; retry: last_state = lex_state; switch (c = nextc()) { case '\0': case '\004': case '\032': case -1: return 0; case ' ': case '\t': case '\f': case '\r': case '\13': space_seen = 1; goto retry; case '#': if (!parser_magic_comment(parser, lex_p, lex_pend - lex_p)) { if (comment_at_top(parser)) { set_file_encoding(parser, lex_p, lex_pend); } } lex_p = lex_pend; case '\n': if (IS_lex_state(EXPR_BEG | EXPR_VALUE | EXPR_CLASS | EXPR_FNAME | EXPR_DOT)) { goto retry; } while ((c = nextc())) { switch (c) { case ' ': case '\t': case '\f': case '\r': case '\13': space_seen = 1; break; case '.': { if ((c = nextc()) != '.') { pushback(c); pushback('.'); goto retry; } } default: --ruby_sourceline; lex_nextline = lex_lastline; case -1: lex_goto_eol(parser); goto normal_newline; } } normal_newline: command_start = TRUE; lex_state = EXPR_BEG; return '\n'; case '*': if ((c = nextc()) == '*') { if ((c = nextc()) == '=') { set_yylval_id(tPOW); lex_state = EXPR_BEG; return tOP_ASGN; } pushback(c); if (IS_SPCARG(c)) { rb_warning0("`**'interpreted as argument prefix"); c = tDSTAR; } else if (IS_BEG()) { c = tDSTAR; } else { warn_balanced("**", "argument prefix"); c = tPOW; } } else { if (c == '=') { set_yylval_id('*'); lex_state = EXPR_BEG; return tOP_ASGN; } pushback(c); if (IS_SPCARG(c)) { rb_warning0("`*'interpreted as argument prefix"); c = tSTAR; } else if (IS_BEG()) { c = tSTAR; } else { warn_balanced("*", "argument prefix"); c = '*'; } } lex_state = IS_AFTER_OPERATOR() ? EXPR_ARG : EXPR_BEG; return c; case '!': c = nextc(); if (IS_AFTER_OPERATOR()) { lex_state = EXPR_ARG; if (c == '@') { return '!'; } } else { lex_state = EXPR_BEG; } if (c == '=') { return tNEQ; } if (c == '~') { return tNMATCH; } pushback(c); return '!'; case '=': if (was_bol()) { if (strncmp(lex_p, "begin", 5) == 0 && ISSPACE(lex_p[5])) { for (;;) { lex_goto_eol(parser); c = nextc(); if (c == -1) { compile_error(PARSER_ARG "embedded document meets end of file"); return 0; } if (c != '=') continue; if (strncmp(lex_p, "end", 3) == 0 && (lex_p + 3 == lex_pend || ISSPACE(lex_p[3]))) { break; } } lex_goto_eol(parser); goto retry; } } lex_state = IS_AFTER_OPERATOR() ? EXPR_ARG : EXPR_BEG; if ((c = nextc()) == '=') { if ((c = nextc()) == '=') { return tEQQ; } pushback(c); return tEQ; } if (c == '~') { return tMATCH; } else if (c == '>') { return tASSOC; } pushback(c); return '='; case '<': last_state = lex_state; c = nextc(); if (c == '<' && !IS_lex_state(EXPR_DOT | EXPR_CLASS) && !IS_END() && (!IS_ARG() || space_seen)) { int token = heredoc_identifier(); if (token) return token; } if (IS_AFTER_OPERATOR()) { lex_state = EXPR_ARG; } else { if (IS_lex_state(EXPR_CLASS)) command_start = TRUE; lex_state = EXPR_BEG; } if (c == '=') { if ((c = nextc()) == '>') { return tCMP; } pushback(c); return tLEQ; } if (c == '<') { if ((c = nextc()) == '=') { set_yylval_id(tLSHFT); lex_state = EXPR_BEG; return tOP_ASGN; } pushback(c); warn_balanced("<<", "here document"); return tLSHFT; } pushback(c); return '<'; case '>': lex_state = IS_AFTER_OPERATOR() ? EXPR_ARG : EXPR_BEG; if ((c = nextc()) == '=') { return tGEQ; } if (c == '>') { if ((c = nextc()) == '=') { set_yylval_id(tRSHFT); lex_state = EXPR_BEG; return tOP_ASGN; } pushback(c); return tRSHFT; } pushback(c); return '>'; case '"':lex_strterm=NEW_STRTERM(str_dquote, '"', 0); return tSTRING_BEG; case '`': if (IS_lex_state(EXPR_FNAME)) { lex_state = EXPR_ENDFN; return c; } if (IS_lex_state(EXPR_DOT)) { if (cmd_state) lex_state = EXPR_CMDARG; else lex_state = EXPR_ARG; return c; } lex_strterm = NEW_STRTERM(str_xquote, '`', 0); return tXSTRING_BEG; case '\'': lex_strterm = NEW_STRTERM(str_squote, '\'', 0); return tSTRING_BEG; case '?': if (IS_END()) { lex_state = EXPR_VALUE; return '?'; } c = nextc(); if (c == -1) { compile_error(PARSER_ARG "incomplete character syntax"); return 0; } if (rb_enc_isspace(c, current_enc)) { if (!IS_ARG()) { int c2 = 0; switch (c) { case ' ': c2 = 's'; break; case '\n': c2 = 'n'; break; case '\t': c2 = 't'; break; case '\v': c2 = 'v'; break; case '\r': c2 = 'r'; break; case '\f': c2 = 'f'; break; } if (c2) { rb_warnI("invalid character syntax;use?\\%c", c2); } } ternary: pushback(c); lex_state = EXPR_VALUE; return '?'; } newtok(); enc = current_enc; if (!parser_isascii()) { if (tokadd_mbchar(c) == -1) return 0; } else if ((rb_enc_isalnum(c, current_enc) || c == '_') && lex_p < lex_pend && is_identchar(lex_p, lex_pend, current_enc)) { goto ternary; } else if (c == '\\') { if (peek('u')) { nextc(); c = parser_tokadd_utf8(parser, &enc, 0, 0, 0); if (0x80 <= c) { tokaddmbc(c, enc); } else { tokadd(c); } } else if (!lex_eol_p() && !(c = *lex_p, ISASCII(c))) { nextc(); if (tokadd_mbchar(c) == -1) return 0; } else { c = read_escape(0, &enc); tokadd(c); } } else { tokadd(c); } tokfix(); set_yylval_str(STR_NEW3(tok(), toklen(), enc, 0)); lex_state = EXPR_END; return tCHAR; case '&': if ((c = nextc()) == '&') { lex_state = EXPR_BEG; if ((c = nextc()) == '=') { set_yylval_id(tANDOP); lex_state = EXPR_BEG; return tOP_ASGN; } pushback(c); return tANDOP; } else if (c == '=') { set_yylval_id('&'); lex_state = EXPR_BEG; return tOP_ASGN; } pushback(c); if (IS_SPCARG(c)) { rb_warning0("`&'interpreted as argument prefix"); c = tAMPER; } else if (IS_BEG()) { c = tAMPER; } else { warn_balanced("&", "argument prefix"); c = '&'; } lex_state = IS_AFTER_OPERATOR() ? EXPR_ARG : EXPR_BEG; return c; case '|': if ((c = nextc()) == '|') { lex_state = EXPR_BEG; if ((c = nextc()) == '=') { set_yylval_id(tOROP); lex_state = EXPR_BEG; return tOP_ASGN; } pushback(c); return tOROP; } if (c == '=') { set_yylval_id('|'); lex_state = EXPR_BEG; return tOP_ASGN; } lex_state = IS_AFTER_OPERATOR() ? EXPR_ARG : EXPR_BEG; pushback(c); return '|'; case '+': c = nextc(); if (IS_AFTER_OPERATOR()) { lex_state = EXPR_ARG; if (c == '@') { return tUPLUS; } pushback(c); return '+'; } if (c == '=') { set_yylval_id('+'); lex_state = EXPR_BEG; return tOP_ASGN; } if (IS_BEG() || (IS_SPCARG(c) && arg_ambiguous())) { lex_state = EXPR_BEG; pushback(c); if (c != -1 && ISDIGIT(c)) { c = '+'; goto start_num; } return tUPLUS; } lex_state = EXPR_BEG; pushback(c); warn_balanced("+", "unary operator"); return '+'; case '-': c = nextc(); if (IS_AFTER_OPERATOR()) { lex_state = EXPR_ARG; if (c == '@') { return tUMINUS; } pushback(c); return '-'; } if (c == '=') { set_yylval_id('-'); lex_state = EXPR_BEG; return tOP_ASGN; } if (c == '>') { lex_state = EXPR_ENDFN; return tLAMBDA; } if (IS_BEG() || (IS_SPCARG(c) && arg_ambiguous())) { lex_state = EXPR_BEG; pushback(c); if (c != -1 && ISDIGIT(c)) { return tUMINUS_NUM; } return tUMINUS; } lex_state = EXPR_BEG; pushback(c); warn_balanced("-", "unary operator"); return '-'; case '.': lex_state = EXPR_BEG; if ((c = nextc()) == '.') { if ((c = nextc()) == '.') { return tDOT3; } pushback(c); return tDOT2; } pushback(c); if (c != -1 && ISDIGIT(c)) { yyerror("no.< digit > floating literal anymore;put 0 before dot"); } lex_state = EXPR_DOT; return '.'; start_num: case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': { int is_float, seen_point, seen_e, nondigit; is_float = seen_point = seen_e = nondigit = 0; lex_state = EXPR_END; newtok(); if (c == '-' || c == '+') { tokadd(c); c = nextc(); } if (c == '0') {#define no_digits() int start = toklen(); c = nextc(); if (c == 'x' || c == 'X') { c = nextc(); if (c != -1 && ISXDIGIT(c)) { do { if (c == '_') { if (nondigit) break; nondigit = c; continue; } if (!ISXDIGIT(c)) break; nondigit = 0; tokadd(c); } while ((c = nextc()) != -1); } pushback(c); tokfix(); if (toklen() == start) { no_digits(); } else if (nondigit) goto trailing_uc; set_yylval_literal(rb_cstr_to_inum(tok(), 16, FALSE)); return tINTEGER; } if (c == 'b' || c == 'B') { c = nextc(); if (c == '0' || c == '1') { do { if (c == '_') { if (nondigit) break; nondigit = c; continue; } if (c != '0' && c != '1') break; nondigit = 0; tokadd(c); } while ((c = nextc()) != -1); } pushback(c); tokfix(); if (toklen() == start) { no_digits(); } else if (nondigit) goto trailing_uc; set_yylval_literal(rb_cstr_to_inum(tok(), 2, FALSE)); return tINTEGER; } if (c == 'd' || c == 'D') { c = nextc(); if (c != -1 && ISDIGIT(c)) { do { if (c == '_') { if (nondigit) break; nondigit = c; continue; } if (!ISDIGIT(c)) break; nondigit = 0; tokadd(c); } while ((c = nextc()) != -1); } pushback(c); tokfix(); if (toklen() == start) { no_digits(); } else if (nondigit) goto trailing_uc; set_yylval_literal(rb_cstr_to_inum(tok(), 10, FALSE)); return tINTEGER; } if (c == '_') { goto octal_number; } if (c == 'o' || c == 'O') { c = nextc(); if (c == -1 || c == '_' || !ISDIGIT(c)) { no_digits(); } } if (c >= '0' && c <= '7') { octal_number: do { if (c == '_') { if (nondigit) break; nondigit = c; continue; } if (c < '0' || c > '9') break; if (c > '7') goto invalid_octal; nondigit = 0; tokadd(c); } while ((c = nextc()) != -1); if (toklen() > start) { pushback(c); tokfix(); if (nondigit) goto trailing_uc; set_yylval_literal(rb_cstr_to_inum(tok(), 8, FALSE)); return tINTEGER; } if (nondigit) { pushback(c); goto trailing_uc; } } if (c > '7' && c <= '9') { invalid_octal: yyerror("Invalid octal digit"); } else if (c == '.' || c == 'e' || c == 'E') { tokadd('0'); } else { pushback(c); set_yylval_literal(INT2FIX(0)); return tINTEGER; } } for (;;) { switch (c) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': nondigit = 0; tokadd(c); break; case '.': if (nondigit) goto trailing_uc; if (seen_point || seen_e) { goto decode_num; } else { int c0 = nextc(); if (c0 == -1 || !ISDIGIT(c0)) { pushback(c0); goto decode_num; } c = c0; } tokadd('.'); tokadd(c); is_float++; seen_point++; nondigit = 0; break; case 'e': case 'E': if (nondigit) { pushback(c); c = nondigit; goto decode_num; } if (seen_e) { goto decode_num; } tokadd(c); seen_e++; is_float++; nondigit = c; c = nextc(); if (c != '-' && c != '+') continue; tokadd(c); nondigit = c; break; case '_': if (nondigit) goto decode_num; nondigit = c; break; default: goto decode_num; } c = nextc(); } decode_num: pushback(c); if (nondigit) { char tmp[30]; trailing_uc: snprintf(tmp, sizeof(tmp), "trailing`%c'in number", nondigit); yyerror(tmp); } tokfix(); if (is_float) { double d = strtod(tok(), 0); if (errno == ERANGE) { rb_warningS("Float%s out of range", tok()); errno = 0; } set_yylval_literal(DBL2NUM(d)); return tFLOAT; } set_yylval_literal(rb_cstr_to_inum(tok(), 10, FALSE)); return tINTEGER; } case ')': case '] | __pad16__
RUBY_EXTERN VALUE | rb_mKernel
RUBY_EXTERN VALUE | rb_mComparable
RUBY_EXTERN VALUE | rb_mEnumerable
RUBY_EXTERN VALUE | rb_mErrno
RUBY_EXTERN VALUE | rb_mFileTest
RUBY_EXTERN VALUE | rb_mGC
RUBY_EXTERN VALUE | rb_mMath
RUBY_EXTERN VALUE | rb_mProcess
RUBY_EXTERN VALUE | rb_mWaitReadable
RUBY_EXTERN VALUE | rb_mWaitWritable
RUBY_EXTERN VALUE | rb_cBasicObject
RUBY_EXTERN VALUE | rb_cObject
RUBY_EXTERN VALUE | rb_cArray
RUBY_EXTERN VALUE | rb_cBignum
RUBY_EXTERN VALUE | rb_cBinding
RUBY_EXTERN VALUE | rb_cClass
RUBY_EXTERN VALUE | rb_cCont
RUBY_EXTERN VALUE | rb_cDir
RUBY_EXTERN VALUE | rb_cData
RUBY_EXTERN VALUE | rb_cFalseClass
RUBY_EXTERN VALUE | rb_cEncoding
RUBY_EXTERN VALUE | rb_cEnumerator
RUBY_EXTERN VALUE | rb_cFile
RUBY_EXTERN VALUE | rb_cFixnum
RUBY_EXTERN VALUE | rb_cFloat
RUBY_EXTERN VALUE | rb_cHash
RUBY_EXTERN VALUE | rb_cInteger
RUBY_EXTERN VALUE | rb_cIO
RUBY_EXTERN VALUE | rb_cMatch
RUBY_EXTERN VALUE | rb_cMethod
RUBY_EXTERN VALUE | rb_cModule
RUBY_EXTERN VALUE | rb_cNameErrorMesg
RUBY_EXTERN VALUE | rb_cNilClass
RUBY_EXTERN VALUE | rb_cNumeric
RUBY_EXTERN VALUE | rb_cProc
RUBY_EXTERN VALUE | rb_cRandom
RUBY_EXTERN VALUE | rb_cRange
RUBY_EXTERN VALUE | rb_cRational
RUBY_EXTERN VALUE | rb_cComplex
RUBY_EXTERN VALUE | rb_cRegexp
RUBY_EXTERN VALUE | rb_cStat
RUBY_EXTERN VALUE | rb_cString
RUBY_EXTERN VALUE | rb_cStruct
RUBY_EXTERN VALUE | rb_cSymbol
RUBY_EXTERN VALUE | rb_cThread
RUBY_EXTERN VALUE | rb_cTime
RUBY_EXTERN VALUE | rb_cTrueClass
RUBY_EXTERN VALUE | rb_cUnboundMethod
RUBY_EXTERN VALUE | rb_eException
RUBY_EXTERN VALUE | rb_eStandardError
RUBY_EXTERN VALUE | rb_eSystemExit
RUBY_EXTERN VALUE | rb_eInterrupt
RUBY_EXTERN VALUE | rb_eSignal
RUBY_EXTERN VALUE | rb_eFatal
RUBY_EXTERN VALUE | rb_eArgError
RUBY_EXTERN VALUE | rb_eEOFError
RUBY_EXTERN VALUE | rb_eIndexError
RUBY_EXTERN VALUE | rb_eStopIteration
RUBY_EXTERN VALUE | rb_eKeyError
RUBY_EXTERN VALUE | rb_eRangeError
RUBY_EXTERN VALUE | rb_eIOError
RUBY_EXTERN VALUE | rb_eRuntimeError
RUBY_EXTERN VALUE | rb_eSecurityError
RUBY_EXTERN VALUE | rb_eSystemCallError
RUBY_EXTERN VALUE | rb_eThreadError
RUBY_EXTERN VALUE | rb_eTypeError
RUBY_EXTERN VALUE | rb_eZeroDivError
RUBY_EXTERN VALUE | rb_eNotImpError
RUBY_EXTERN VALUE | rb_eNoMemError
RUBY_EXTERN VALUE | rb_eNoMethodError
RUBY_EXTERN VALUE | rb_eFloatDomainError
RUBY_EXTERN VALUE | rb_eLocalJumpError
RUBY_EXTERN VALUE | rb_eSysStackError
RUBY_EXTERN VALUE | rb_eRegexpError
RUBY_EXTERN VALUE | rb_eEncodingError
RUBY_EXTERN VALUE | rb_eEncCompatError
RUBY_EXTERN VALUE | rb_eScriptError
RUBY_EXTERN VALUE | rb_eNameError
RUBY_EXTERN VALUE | rb_eSyntaxError
RUBY_EXTERN VALUE | rb_eLoadError
RUBY_EXTERN VALUE | rb_eMathDomainError
RUBY_EXTERN VALUE | rb_stdin
RUBY_EXTERN VALUE | rb_stdout
RUBY_EXTERN VALUE | rb_stderr
RUBY_EXTERN VALUE | rb_fs
RUBY_EXTERN VALUE | rb_output_fs
RUBY_EXTERN VALUE | rb_rs
RUBY_EXTERN VALUE | rb_default_rs
RUBY_EXTERN VALUE | rb_output_rs
RUBY_EXTERN int | ruby_sourceline
RUBY_EXTERN char * | ruby_sourcefile
RUBY_EXTERN VALUE | rb_argv0
ONIG_EXTERN OnigCaseFoldType | OnigDefaultCaseFoldFlag
ONIG_EXTERN OnigEncodingType | OnigEncodingASCII
ONIG_EXTERN const OnigSyntaxType | OnigSyntaxASIS
ONIG_EXTERN const OnigSyntaxType | OnigSyntaxPosixBasic
ONIG_EXTERN const OnigSyntaxType | OnigSyntaxPosixExtended
ONIG_EXTERN const OnigSyntaxType | OnigSyntaxEmacs
ONIG_EXTERN const OnigSyntaxType | OnigSyntaxGrep
ONIG_EXTERN const OnigSyntaxType | OnigSyntaxGnuRegex
ONIG_EXTERN const OnigSyntaxType | OnigSyntaxJava
ONIG_EXTERN const OnigSyntaxType | OnigSyntaxPerl58
ONIG_EXTERN const OnigSyntaxType | OnigSyntaxPerl58_NG
ONIG_EXTERN const OnigSyntaxType | OnigSyntaxPerl
ONIG_EXTERN const OnigSyntaxType | OnigSyntaxRuby
ONIG_EXTERN const OnigSyntaxType | OnigSyntaxPython
ONIG_EXTERN const OnigSyntaxType * | OnigDefaultSyntax
RUBY_EXTERN VALUE | rb_cEncoding
ONIG_EXTERN const UChar | OnigEncISO_8859_1_ToLowerCaseTable []
ONIG_EXTERN const UChar | OnigEncISO_8859_1_ToUpperCaseTable []
ONIG_EXTERN OnigEncoding | OnigEncDefaultCharEncoding
ONIG_EXTERN const UChar | OnigEncAsciiToLowerCaseTable []
ONIG_EXTERN const UChar | OnigEncAsciiToUpperCaseTable []
ONIG_EXTERN const unsigned short | OnigEncAsciiCtypeTable []
pure_parser parse | param
top_compstmt | __pad0__
top_stmts | __pad1__
| top_stmt
top_stmt | __pad2__
top_stmt | bodystmt
compstmt | __pad3__
stmts | __pad4__
| stmt_or_begin
error | stmt
stmt_or_begin | __pad5__
| keyword_BEGIN
command_asgn | __pad6__
command_asgn | lhs
expr | __pad7__
expr expr keyword_or | expr
| command_call
| arg
expr_value | __pad8__
command_call | __pad9__
block_command | __pad10__
block_command | cmd_brace_block = method_arg($$, $4)
opt_block_param | compstmt
fcall | __pad11__
command | __pad12__
primary_value operation2 command_args prec | tLOWEST
keyword_super | command_args
keyword_return | call_args
mlhs | __pad13__
mlhs | mlhs_inner
mlhs | mlhs_basic
mlhs_head | mlhs_item
mlhs_head tSTAR | mlhs_node
mlhs_head tSTAR | mlhs_post
mlhs_head | tSTAR
mlhs_item | __pad14__ = mlhs_add($$, $3)
mlhs_item | mlhs_head
mlhs_node | __pad15__
mlhs_node | keyword_variable
case | __pad17__
else | lex_state = EXPR_ENDARG
return | c
case | __pad18__
return | tSYMBEG
case | __pad19__
case return | tREGEXP_BEG
| return
case | __pad20__
return | tOP_ASGN
| case
| __pad21__
| command_start = TRUE
| __pad22__
case | __pad23__
| else

## Macro Definition Documentation

#define ADD2HEAP | ( |  | n,
|  |  | c,
|  |  | p
| ) |  |

Value:
((parser->heap = (n))->u1.node = (p), \
(n)->u3.cnt = (c), (p))

#define ambiguous_operator | ( |  | op,
|  |  | syn
| ) |  |

Value:
( \
rb_warning0("`"op"' after local variable is interpreted as binary operator"), \
rb_warning0("even though it seems like "syn""))

#define arg_ambiguous | ( | ) |  | (arg_ambiguous_gen(parser), 1)

#define arg_append | ( |  | h,
|  |  | t
| ) |  | arg_append_gen(parser,(h),(t))

Definition at line 389 of file ripper.y.

#define arg_concat | ( |  | h,
|  |  | t
| ) |  | arg_concat_gen(parser,(h),(t))

Definition at line 391 of file ripper.y.

Referenced by rb_int2num_inline().

#define arg_var | ( |  | id) |  | arg_var_gen(parser, (id))

Definition at line 498 of file ripper.y.

#define aryset | ( |  | node1,
|  |  | node2
| ) |  | aryset_gen(parser, (node1), (node2))

Definition at line 426 of file ripper.y.

#define assignable | ( |  | id,
|  |  | node
| ) |  | assignable_gen(parser, (id), (node))

Definition at line 423 of file ripper.y.

#define assignable_result | ( |  | x) |  | (x)

#define attrset | ( |  | node,
|  |  | id
| ) |  | attrset_gen(parser, (node), (id))

Definition at line 428 of file ripper.y.

#define BIT | ( |  | c,
|  |  | idx
| ) |  | (((c) / 32 - 1 == idx) ? (1U << ((c) % 32)) : 0)

#define BITSTACK_LEXPOP | ( |  | stack) |  | ((stack) = ((stack) >> 1) | ((stack) & 1))

Definition at line 110 of file ripper.y.

#define BITSTACK_POP | ( |  | stack) |  | ((stack) = (stack) >> 1)

Definition at line 109 of file ripper.y.

#define BITSTACK_PUSH | ( |  | stack,
|  |  | n
| ) |  | ((stack) = ((stack)<<1)|((n)&1))

Definition at line 108 of file ripper.y.

#define BITSTACK_SET_P | ( |  | stack) |  | ((stack)&1)

Definition at line 111 of file ripper.y.

#define block_append | ( |  | h,
|  |  | t
| ) |  | block_append_gen(parser,(h),(t))

Definition at line 383 of file ripper.y.

#define block_dup_check | ( |  | n1,
|  |  | n2
| ) |  | block_dup_check_gen(parser,(n1),(n2))

Definition at line 380 of file ripper.y.

#define brace_nest (parser->parser_brace_nest)

Definition at line 318 of file ripper.y.

Referenced by if().

#define call_bin_op | ( |  | recv,
|  |  | id,
|  |  | arg1
| ) |  | call_bin_op_gen(parser, (recv),(id),(arg1))

Definition at line 402 of file ripper.y.

#define call_uni_op | ( |  | recv,
|  |  | id
| ) |  | call_uni_op_gen(parser, (recv),(id))

Definition at line 404 of file ripper.y.

#define calloc YYCALLOC

Definition at line 42 of file ripper.y.

#define class_nest (parser->parser_class_nest)

Definition at line 315 of file ripper.y.

#define CMDARG_LEXPOP | ( | ) |  | BITSTACK_LEXPOP(cmdarg_stack)

Definition at line 120 of file ripper.y.

#define CMDARG_P | ( | ) |  | BITSTACK_SET_P(cmdarg_stack)

Definition at line 121 of file ripper.y.

#define CMDARG_POP | ( | ) |  | BITSTACK_POP(cmdarg_stack)

Definition at line 119 of file ripper.y.

#define CMDARG_PUSH | ( |  | n) |  | BITSTACK_PUSH(cmdarg_stack, (n))

Definition at line 118 of file ripper.y.

#define cmdarg_stack (parser->parser_cmdarg_stack)

Definition at line 314 of file ripper.y.

#define command_start (parser->parser_command_start)

Definition at line 335 of file ripper.y.

#define compile_error parser->nerr++,rb_compile_error_with_enc

Definition at line 659 of file ripper.y.

#define compile_for_eval (parser->parser_compile_for_eval)

Definition at line 321 of file ripper.y.

#define cond | ( |  | node) |  | cond_gen(parser, (node))

Definition at line 362 of file ripper.y.

#define COND_LEXPOP | ( | ) |  | BITSTACK_LEXPOP(cond_stack)

Definition at line 115 of file ripper.y.

#define COND_P | ( | ) |  | BITSTACK_SET_P(cond_stack)

Definition at line 116 of file ripper.y.

#define COND_POP | ( | ) |  | BITSTACK_POP(cond_stack)

Definition at line 114 of file ripper.y.

#define COND_PUSH | ( |  | n) |  | BITSTACK_PUSH(cond_stack, (n))

Definition at line 113 of file ripper.y.

#define cond_stack (parser->parser_cond_stack)

Definition at line 313 of file ripper.y.

#define cur_mid (parser->parser_cur_mid)

Definition at line 322 of file ripper.y.

#define current_enc (parser->enc)

Definition at line 343 of file ripper.y.

#define DEF_EXPR | ( |  | n) |  | EXPR_##n = (1 << EXPR_##n##_bit)

Definition at line 83 of file ripper.y.

#define deferred_nodes (parser->parser_deferred_nodes)

Definition at line 336 of file ripper.y.

#define dispatch_heredoc_end | ( | ) |  | ((void)0)

#define dsym_node | ( |  | node) |  | dsym_node_gen(parser, (node))

Definition at line 418 of file ripper.y.

#define dvar_curr | ( |  | id) |  | dvar_curr_gen(parser, (id))

Definition at line 515 of file ripper.y.

#define dvar_defined | ( |  | id) |  | dvar_defined_gen(parser, (id), 0)

Definition at line 512 of file ripper.y.

#define dvar_defined_get | ( |  | id) |  | dvar_defined_gen(parser, (id), 1)

Definition at line 513 of file ripper.y.

#define DVARS_INHERIT ((void*)1)

Definition at line 137 of file ripper.y.

#define DVARS_SPECIAL_P | ( |  | tbl) |  | (!POINTER_P(tbl))

Definition at line 139 of file ripper.y.

#define DVARS_TOPSCOPE NULL

Definition at line 138 of file ripper.y.

#define dyna_in_block | ( | ) |  | dyna_in_block_gen(parser)

Definition at line 509 of file ripper.y.

#define dyna_pop | ( |  | node) |  | dyna_pop_gen(parser, (node))

Definition at line 507 of file ripper.y.

#define dyna_push | ( | ) |  | dyna_push_gen(parser)

Definition at line 505 of file ripper.y.

#define dyna_var | ( |  | id) |  | local_var(id)

Definition at line 510 of file ripper.y.

#define ENABLE_SELECTOR_NAMESPACE 0

#define ENC_SINGLE | ( |  | cr) |  | ((cr)==ENC_CODERANGE_7BIT)

Definition at line 303 of file ripper.y.

#define ESCAPE_CONTROL 1

#define ESCAPE_META 2

#define evstr2dstr | ( |  | n) |  | evstr2dstr_gen(parser,(n))

Definition at line 398 of file ripper.y.

#define flush_string_content | ( |  | enc) |  | ((void)(enc))

#define formal_argument | ( |  | id) |  | formal_argument_gen(parser, (id))

Definition at line 485 of file ripper.y.

#define free YYFREE

Definition at line 43 of file ripper.y.

#define get_id | ( |  | id) |  | (id)

Definition at line 458 of file ripper.y.

#define get_value | ( |  | val) |  | (val)

Definition at line 459 of file ripper.y.

#define gettable | ( |  | id) |  | gettable_gen(parser,(id))

Definition at line 421 of file ripper.y.

#define HEAPCNT | ( |  | n,
|  |  | size
| ) |  | ((n) * (size) / sizeof(YYSTYPE))

#define here_document | ( |  | n) |  | parser_here_document(parser,(n))

#define heredoc_end (parser->parser_heredoc_end)

Definition at line 334 of file ripper.y.

#define heredoc_identifier | ( | ) |  | parser_heredoc_identifier(parser)

#define heredoc_restore | ( |  | n) |  | parser_heredoc_restore(parser,(n))

#define id_type | ( |  | id) |  | (is_notop_id(id) ? (int)((id)&ID_SCOPE_MASK) : -1)

Definition at line 60 of file ripper.y.

#define ifndef_ripper | ( |  | x) |  | (x)

Definition at line 625 of file ripper.y.

#define in_def (parser->parser_in_def)

Definition at line 320 of file ripper.y.

#define in_defined (parser->parser_in_defined)

Definition at line 323 of file ripper.y.

#define in_single (parser->parser_in_single)

Definition at line 319 of file ripper.y.

#define internal_id | ( | ) |  | internal_id_gen(parser)

Definition at line 502 of file ripper.y.

#define IS_AFTER_OPERATOR | ( | ) |  | IS_lex_state(EXPR_FNAME | EXPR_DOT)

#define IS_ARG | ( | ) |  | IS_lex_state(EXPR_ARG_ANY)

#define is_asgn_or_id | ( |  | id) |  |

Value:
((is_notop_id(id)) && \
(((id)&ID_SCOPE_MASK) == ID_GLOBAL || \
((id)&ID_SCOPE_MASK) == ID_INSTANCE || \
((id)&ID_SCOPE_MASK) == ID_CLASS))

Definition at line 62 of file ripper.y.

#define is_attrset_id | ( |  | id) |  | (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_ATTRSET)

Definition at line 56 of file ripper.y.

#define IS_BEG | ( | ) |  | IS_lex_state(EXPR_BEG_ANY)

#define is_class_id | ( |  | id) |  | (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_CLASS)

Definition at line 58 of file ripper.y.

#define is_const_id | ( |  | id) |  | (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_CONST)

Definition at line 57 of file ripper.y.

#define IS_END | ( | ) |  | IS_lex_state(EXPR_END_ANY)

#define is_global_id | ( |  | id) |  | (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_GLOBAL)

Definition at line 54 of file ripper.y.

#define is_identchar | ( |  | p,
|  |  | e,
|  |  | enc
| ) |  | (rb_enc_isalnum(*(p),(enc)) || (*(p)) == '_' || !ISASCII(*(p)))

#define is_instance_id | ( |  | id) |  | (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_INSTANCE)

Definition at line 55 of file ripper.y.

#define is_junk_id | ( |  | id) |  | (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_JUNK)

Definition at line 59 of file ripper.y.

#define IS_LABEL_POSSIBLE | ( | ) |  | ((IS_lex_state(EXPR_BEG | EXPR_ENDFN) && !cmd_state) || IS_ARG())

#define IS_LABEL_SUFFIX | ( |  | n) |  | (peek_n(':',(n)) && !peek_n(':', (n)+1))

#define IS_lex_state | ( |  | ls) |  | IS_lex_state_for(lex_state, (ls))

Definition at line 100 of file ripper.y.

#define IS_lex_state_for | ( |  | x,
|  |  | ls
| ) |  | ((x) & (ls))

Definition at line 99 of file ripper.y.

#define is_local_id | ( |  | id) |  | (is_notop_id(id)&&((id)&ID_SCOPE_MASK)==ID_LOCAL)

Definition at line 53 of file ripper.y.

#define is_notop_id | ( |  | id) |  | ((id)>tLAST_OP_ID)

Definition at line 52 of file ripper.y.

#define IS_SPCARG | ( |  | c) |  | (IS_ARG() && space_seen && !ISSPACE(c))

#define lex_eol_p | ( | ) |  | (lex_p >= lex_pend)

#define lex_gets (parser->parser_lex_gets)

Definition at line 338 of file ripper.y.

#define lex_gets_ptr (parser->parser_lex_gets_ptr)

Definition at line 337 of file ripper.y.

#define lex_goto_eol | ( |  | parser) |  | ((parser)->parser_lex_p = (parser)->parser_lex_pend)

#define lex_input (parser->parser_lex_input)

Definition at line 328 of file ripper.y.

#define lex_lastline (parser->parser_lex_lastline)

Definition at line 329 of file ripper.y.

#define lex_nextline (parser->parser_lex_nextline)

Definition at line 330 of file ripper.y.

#define lex_p (parser->parser_lex_p)

Definition at line 332 of file ripper.y.

#define lex_pbeg (parser->parser_lex_pbeg)

Definition at line 331 of file ripper.y.

#define lex_pend (parser->parser_lex_pend)

Definition at line 333 of file ripper.y.

#define lex_state (parser->parser_lex_state)

Definition at line 312 of file ripper.y.

#define lex_strterm (parser->parser_lex_strterm)

Definition at line 311 of file ripper.y.

Referenced by if(), and switch().

#define list_append | ( |  | l,
|  |  | i
| ) |  | list_append_gen(parser,(l),(i))

Definition at line 385 of file ripper.y.

#define list_concat | ( |  | h,
|  |  | t
| ) |  | list_concat_gen(parser,(h),(t))

Definition at line 387 of file ripper.y.

#define literal_concat | ( |  | h,
|  |  | t
| ) |  | literal_concat_gen(parser,(h),(t))

Definition at line 393 of file ripper.y.

#define local_id | ( |  | id) |  | local_id_gen(parser, (id))

Definition at line 500 of file ripper.y.

#define local_pop | ( | ) |  | local_pop_gen(parser)

Definition at line 494 of file ripper.y.

#define local_push | ( |  | top) |  | local_push_gen(parser,(top))

Definition at line 492 of file ripper.y.

#define local_tbl | ( | ) |  | local_tbl_gen(parser)

Definition at line 445 of file ripper.y.

#define local_var | ( |  | id) |  | local_var_gen(parser, (id))

Definition at line 496 of file ripper.y.

#define logop | ( |  | type,
|  |  | node1,
|  |  | node2
| ) |  | logop_gen(parser, (type), (node1), (node2))

Definition at line 364 of file ripper.y.

#define lpar_beg (parser->parser_lpar_beg)

Definition at line 317 of file ripper.y.

#define lvar_defined | ( |  | id) |  | lvar_defined_gen(parser, (id))

Definition at line 518 of file ripper.y.

#define LVAR_USED ((ID)1 << (sizeof(ID) * CHAR_BIT - 1))

#define lvtbl (parser->parser_lvtbl)

Definition at line 339 of file ripper.y.

#define malloc YYMALLOC

Definition at line 40 of file ripper.y.

#define match_op | ( |  | node1,
|  |  | node2
| ) |  | match_op_gen(parser, (node1), (node2))

Definition at line 442 of file ripper.y.

#define mixed_error | ( |  | enc1,
|  |  | enc2
| ) |  |

Value:
if (!errbuf) { \
size_t len = sizeof(mixed_msg) - 4; \
len += strlen(rb_enc_name(enc1)); \
len += strlen(rb_enc_name(enc2)); \
errbuf = ALLOCA_N(char, len); \
snprintf(errbuf, len, mixed_msg, \
rb_enc_name(enc1), \
rb_enc_name(enc2)); \
yyerror(errbuf); \
}

#define mixed_escape | ( |  | beg,
|  |  | enc1,
|  |  | enc2
| ) |  |

Value:
do { \
const char *pos = lex_p; \
lex_p = (beg); \
mixed_error((enc1), (enc2)); \
lex_p = pos; \
} while (0)

#define nd_func u1.id

Definition at line 531 of file ripper.y.

#define nd_nest u3.cnt

Definition at line 538 of file ripper.y.

#define nd_paren | ( |  | node) |  | (char)((node)->u2.id >> CHAR_BIT*2)

Definition at line 537 of file ripper.y.

#define nd_term | ( |  | node) |  | SIGN_EXTEND((node)->u2.id, CHAR_BIT*2)

Definition at line 535 of file ripper.y.

#define new_args | ( |  | f,
|  |  | o,
|  |  | r,
|  |  | p,
|  |  | t
| ) |  | new_args_gen(parser, (f),(o),(r),(p),(t))

Definition at line 407 of file ripper.y.

#define new_args_tail | ( |  | k,
|  |  | kr,
|  |  | b
| ) |  | new_args_tail_gen(parser, (k),(kr),(b))

Definition at line 409 of file ripper.y.

#define new_attr_op_assign | ( |  | lhs,
|  |  | type,
|  |  | attr,
|  |  | op,
|  |  | rhs
| ) |  | new_attr_op_assign_gen(parser, (lhs), (attr), (op), (rhs))

Definition at line 437 of file ripper.y.

Referenced by rb_long2num_inline(), and rb_num2char_inline().

#define new_bv | ( |  | id) |  | new_bv_gen(parser, (id))

Definition at line 489 of file ripper.y.

#define new_const_op_assign | ( |  | lhs,
|  |  | op,
|  |  | rhs
| ) |  | new_const_op_assign_gen(parser, (lhs), (op), (rhs))

Definition at line 439 of file ripper.y.

Referenced by rb_ulong2num_inline().

#define new_evstr | ( |  | n) |  | new_evstr_gen(parser,(n))

Definition at line 396 of file ripper.y.

#define new_op_assign | ( |  | lhs,
|  |  | op,
|  |  | rhs
| ) |  | new_op_assign_gen(parser, (lhs), (op), (rhs))

Definition at line 482 of file ripper.y.

#define NEW_STRTERM | ( |  | func,
|  |  | term,
|  |  | paren
| ) |  | rb_node_newnode(NODE_STRTERM, (func), (term) | ((paren) << (CHAR_BIT * 2)), 0)

#define new_yield | ( |  | node) |  | new_yield_gen(parser, (node))

Definition at line 416 of file ripper.y.

#define NEWHEAP | ( | ) |  | rb_node_newnode(NODE_ALLOCA, 0, (VALUE)parser->heap, 0)

#define newtok | ( | ) |  | parser_newtok(parser)

#define nextc | ( | ) |  | parser_nextc(parser)

#define no_digits | ( | ) |  | do {yyerror("numeric literal without digits"); return 0;} while (0)

#define node_assign | ( |  | node1,
|  |  | node2
| ) |  | node_assign_gen(parser, (node1), (node2))

Definition at line 433 of file ripper.y.

#define NODE_HEREDOC NODE_ARRAY /* 1, 3 to gc */

Definition at line 529 of file ripper.y.

#define NODE_STRTERM NODE_ZARRAY /* nothing to gc */

Definition at line 528 of file ripper.y.

#define numberof | ( |  | array) |  | (int)(sizeof(array) / sizeof((array)[0]))

Definition at line 34 of file ripper.y.

#define op_tbl_count numberof(op_tbl)

#define paren_nest (parser->parser_paren_nest)

Definition at line 316 of file ripper.y.

#define parse_string | ( |  | n) |  | parser_parse_string(parser,(n))

#define PARSER_ARG ruby_sourcefile, ruby_sourceline, current_enc,

Definition at line 660 of file ripper.y.

#define PARSER_DEBUG 0

#define parser_encoding_name | ( | ) |  | (current_enc->name)

#define parser_is_identchar | ( | ) |  | (!parser->eofp && is_identchar((lex_p-1),lex_pend,current_enc))

#define parser_isascii | ( | ) |  | ISASCII(*(lex_p-1))

#define parser_mbclen | ( | ) |  | mbclen((lex_p-1),lex_pend,current_enc)

#define parser_precise_mbclen | ( | ) |  | rb_enc_precise_mbclen((lex_p-1),lex_pend,current_enc)

#define parser_warn | ( |  | node,
|  |  | mesg
| ) |  | parser_warn(parser, (node), (mesg))

#define parser_warning | ( |  | node,
|  |  | mesg
| ) |  | parser_warning(parser, (node), (mesg))

#define peek | ( |  | c) |  | peek_n((c), 0)

#define peek_n | ( |  | c,
|  |  | n
| ) |  | (lex_p+(n) < lex_pend && (c) == (unsigned char)lex_p[n])

#define POINTER_P | ( |  | val) |  | ((VALUE)(val) & ~(VALUE)3)

Definition at line 140 of file ripper.y.

#define pushback | ( |  | c) |  | parser_pushback(parser, (c))

#define Qnone 0

Definition at line 624 of file ripper.y.

#define rb_backref_error | ( |  | n) |  | rb_backref_error_gen(parser,(n))

Definition at line 431 of file ripper.y.

#define rb_compile_error rb_compile_error_with_enc

Definition at line 658 of file ripper.y.

#define rb_node_newnode | ( |  | type,
|  |  | a1,
|  |  | a2,
|  |  | a3
| ) |  | node_newnode(parser, (type), (a1), (a2), (a3))

Definition at line 359 of file ripper.y.

#define rb_warn0 | ( |  | fmt) |  | rb_compile_warn(ruby_sourcefile, ruby_sourceline, (fmt))

Definition at line 632 of file ripper.y.

#define rb_warn4S | ( |  | file,
|  |  | line,
|  |  | fmt,
|  |  | a
| ) |  | rb_compile_warn((file), (line), (fmt), (a))

Definition at line 635 of file ripper.y.

#define rb_warnI | ( |  | fmt,
|  |  | a
| ) |  | rb_compile_warn(ruby_sourcefile, ruby_sourceline, (fmt), (a))

Definition at line 633 of file ripper.y.

#define rb_warning0 | ( |  | fmt) |  | rb_compile_warning(ruby_sourcefile, ruby_sourceline, (fmt))

Definition at line 636 of file ripper.y.

#define rb_warningS | ( |  | fmt,
|  |  | a
| ) |  | rb_compile_warning(ruby_sourcefile, ruby_sourceline, (fmt), (a))

Definition at line 637 of file ripper.y.

#define rb_warnS | ( |  | fmt,
|  |  | a
| ) |  | rb_compile_warn(ruby_sourcefile, ruby_sourceline, (fmt), (a))

Definition at line 634 of file ripper.y.

#define RE_OPTION_ARG_ENCODING_NONE 32

Definition at line 526 of file ripper.y.

#define RE_OPTION_ENCODING | ( |  | e) |  | (((e)&0xff)<<RE_OPTION_ENCODING_SHIFT)

Definition at line 522 of file ripper.y.

#define RE_OPTION_ENCODING_IDX | ( |  | o) |  | (((o)>>RE_OPTION_ENCODING_SHIFT)&0xff)

Definition at line 523 of file ripper.y.

#define RE_OPTION_ENCODING_NONE | ( |  | o) |  | ((o)&RE_OPTION_ARG_ENCODING_NONE)

Definition at line 524 of file ripper.y.

#define RE_OPTION_ENCODING_SHIFT 8

Definition at line 521 of file ripper.y.

#define RE_OPTION_MASK 0xff

Definition at line 525 of file ripper.y.

#define RE_OPTION_ONCE (1<<16)

Definition at line 520 of file ripper.y.

#define read_escape | ( |  | flags,
|  |  | e
| ) |  | parser_read_escape(parser, (flags), (e))

#define realloc YYREALLOC

Definition at line 41 of file ripper.y.

#define reduce_nodes | ( |  | n) |  | reduce_nodes_gen(parser,(n))

Definition at line 378 of file ripper.y.

#define reg_compile | ( |  | str,
|  |  | options
| ) |  | reg_compile_gen(parser, (str), (options))

Definition at line 450 of file ripper.y.

#define reg_fragment_check | ( |  | str,
|  |  | options
| ) |  | reg_fragment_check_gen(parser, (str), (options))

Definition at line 454 of file ripper.y.

#define reg_fragment_setenc | ( |  | str,
|  |  | options
| ) |  | reg_fragment_setenc_gen(parser, (str), (options))

Definition at line 452 of file ripper.y.

#define reg_named_capture_assign | ( |  | regexp,
|  |  | match
| ) |  | reg_named_capture_assign_gen(parser,(regexp),(match))

Definition at line 456 of file ripper.y.

#define REGISTER_SYMID | ( |  | id,
|  |  | name
| ) |  | register_symid((id), (name), strlen(name), enc)

Definition at line 48 of file ripper.y.

#define regx_options | ( | ) |  | parser_regx_options(parser)

#define ret_args | ( |  | node) |  | ret_args_gen(parser, (node))

Definition at line 413 of file ripper.y.

#define ripper_flush | ( |  | p) |  | (void)(p)

#define ruby__end__seen (parser->parser_ruby__end__seen)

Definition at line 340 of file ripper.y.

#define ruby_coverage (parser->coverage)

Definition at line 350 of file ripper.y.

#define ruby_debug_lines (parser->debug_lines)

Definition at line 349 of file ripper.y.

#define ruby_eval_tree (parser->parser_eval_tree)

Definition at line 347 of file ripper.y.

#define ruby_eval_tree_begin (parser->parser_eval_tree_begin)

Definition at line 348 of file ripper.y.

#define ruby_sourcefile (parser->parser_ruby_sourcefile)

Definition at line 342 of file ripper.y.

#define ruby_sourceline (parser->parser_ruby_sourceline)

Definition at line 341 of file ripper.y.

#define set_yylval_id | ( |  | x) |  | (yylval.id = (x))

#define set_yylval_literal | ( |  | x) |  | (yylval.node = NEW_LIT(x))

#define set_yylval_name | ( |  | x) |  | (yylval.id = (x))

#define set_yylval_node | ( |  | x) |  | (yylval.node = (x))

#define set_yylval_num | ( |  | x) |  | (yylval.num = (x))

#define set_yylval_str | ( |  | x) |  | (yylval.node = NEW_STR(x))

#define shadowing_lvar | ( |  | name) |  | shadowing_lvar_gen(parser, (name))

Definition at line 487 of file ripper.y.

#define SIGN_EXTEND | ( |  | x,
|  |  | n
| ) |  | (((1<<(n)-1)^((x)&~(~0<<(n))))-(1<<(n)-1))

Definition at line 530 of file ripper.y.

#define SIGN_EXTEND_CHAR | ( |  | c) |  | ((((unsigned char)(c)) ^ 128) - 128)

#define SPECIAL_PUNCT | ( |  | idx) |  |

Value:
( \
BIT('~', idx) | BIT('*', idx) | BIT('$', idx) | BIT('?', idx) | \
BIT('!', idx) | BIT('@', idx) | BIT('/', idx) | BIT('\\', idx) | \
BIT(';', idx) | BIT(',', idx) | BIT('.', idx) | BIT('=', idx) | \
BIT(':', idx) | BIT('<', idx) | BIT('>', idx) | BIT('\"', idx) | \
BIT('&', idx) | BIT('`', idx) | BIT('\'', idx) | BIT('+', idx) | \
BIT('0', idx))

#define str_copy | ( |  | _s,
|  |  | _p,
|  |  | _n
| ) |  |

Value:
((_s) \
? (void)(rb_str_resize((_s), (_n)), \
MEMCPY(RSTRING_PTR(_s), (_p), char, (_n)), (_s)) \
: (void)((_s) = STR_NEW((_p), (_n))))

#define STR_FUNC_ESCAPE 0x01

#define STR_FUNC_EXPAND 0x02

#define STR_FUNC_INDENT 0x20

#define STR_FUNC_QWORDS 0x08

#define STR_FUNC_REGEXP 0x04

#define STR_FUNC_SYMBOL 0x10

#define STR_NEW | ( |  | p,
|  |  | n
| ) |  | rb_enc_str_new((p),(n),current_enc)

Definition at line 299 of file ripper.y.

#define STR_NEW0 | ( | ) |  | rb_enc_str_new(0,0,current_enc)

Definition at line 300 of file ripper.y.

#define STR_NEW2 | ( |  | p) |  | rb_enc_str_new((p),strlen(p),current_enc)

Definition at line 301 of file ripper.y.

#define STR_NEW3 | ( |  | p,
|  |  | n,
|  |  | e,
|  |  | func
| ) |  | parser_str_new((p),(n),(e),(func),current_enc)

Definition at line 302 of file ripper.y.

#define subnodes | ( |  | n1,
|  |  | n2
| ) |  |

Value:
((!node->n1) ? (node->n2 ? (body = &node->n2, 1) : 0) : \
(!node->n2) ? (body = &node->n1, 1) : \
(reduce_nodes(&node->n1), body = &node->n2, 1))

#define tok | ( | ) |  | tokenbuf

#define tok_hex | ( |  | numlen) |  | parser_tok_hex(parser, (numlen))

#define TOK_INTERN | ( |  | mb) |  | rb_intern3(tok(), toklen(), current_enc)

Definition at line 304 of file ripper.y.

#define tokadd | ( |  | c) |  | parser_tokadd(parser, (c))

#define tokadd_escape | ( |  | e) |  | parser_tokadd_escape(parser, (e))

#define tokadd_mbchar | ( |  | c) |  | parser_tokadd_mbchar(parser, (c))

#define tokadd_string | ( |  | f,
|  |  | t,
|  |  | p,
|  |  | n,
|  |  | e
| ) |  | parser_tokadd_string(parser,(f),(t),(p),(n),(e))

#define tokaddmbc | ( |  | c,
|  |  | enc
| ) |  | parser_tokaddmbc(parser, (c), (enc))

#define tokcopy | ( |  | n) |  | memcpy(tokspace(n), lex_p - (n), (n))

#define token_info_pop | ( |  | token) |  | (RTEST(ruby_verbose) ? token_info_pop(parser, (token)) : (void)0)

Definition at line 676 of file ripper.y.

#define token_info_push | ( |  | token) |  | (RTEST(ruby_verbose) ? token_info_push(parser, (token)) : (void)0)

Definition at line 675 of file ripper.y.

#define tokenbuf (parser->parser_tokenbuf)

Definition at line 324 of file ripper.y.

#define tokfix | ( | ) |  | (tokenbuf[tokidx]='\0')

#define tokidx (parser->parser_tokidx)

Definition at line 325 of file ripper.y.

#define toklast | ( | ) |  | (tokidx>0?tokenbuf[tokidx-1]:0)

#define toklen | ( | ) |  | tokidx

#define tokline (parser->parser_tokline)

Definition at line 327 of file ripper.y.

#define toksiz (parser->parser_toksiz)

Definition at line 326 of file ripper.y.

#define tokspace | ( |  | n) |  | parser_tokspace(parser, (n))

#define value_expr | ( |  | node) |  | value_expr_gen(parser, (node) = remove_begin(node))

Definition at line 372 of file ripper.y.

Referenced by rb_int2num_inline(), rb_long2num_inline(), and rb_num2char_inline().

#define void_expr | ( |  | node) |  | void_expr0((node) = remove_begin(node))

Definition at line 374 of file ripper.y.

#define void_expr0 | ( |  | node) |  | void_expr_gen(parser, (node))

Definition at line 373 of file ripper.y.

#define void_stmts | ( |  | node) |  | void_stmts_gen(parser, (node))

Definition at line 376 of file ripper.y.

#define VTBL_DEBUG 0

Definition at line 153 of file ripper.y.

#define warn_balanced | ( |  | op,
|  |  | syn
| ) |  |

Value:
((void) \
(!IS_lex_state_for(last_state, EXPR_CLASS|EXPR_DOT|EXPR_FNAME|EXPR_ENDFN|EXPR_ENDARG) && \
space_seen && !ISSPACE(c) && \
(ambiguous_operator(op, syn), 0)))

#define was_bol | ( | ) |  | (lex_p == lex_pbeg + 1)

#define whole_match_p | ( |  | e,
|  |  | l,
|  |  | i
| ) |  | parser_whole_match_p(parser,(e),(l),(i))

#define YYCALLOC | ( |  | nelem,
|  |  | size
| ) |  | rb_parser_calloc(parser, (nelem), (size))

Definition at line 38 of file ripper.y.

#define YYDEBUG 1

#define yydebug (parser->parser_yydebug)

Definition at line 344 of file ripper.y.

#define yyerror | ( |  | msg) |  | parser_yyerror(parser, (msg))

Definition at line 307 of file ripper.y.

#define YYERROR_VERBOSE 1

#define YYFREE | ( |  | ptr) |  | rb_parser_free(parser, (ptr))

Definition at line 39 of file ripper.y.

#define YYLEX_PARAM parser

Definition at line 309 of file ripper.y.

#define yylval (*((YYSTYPE*)(parser->parser_yylval)))

#define yylval_id | ( | ) |  | (yylval.id)

#define YYMALLOC | ( |  | size) |  | rb_parser_malloc(parser, (size))

Definition at line 36 of file ripper.y.

#define yyparse ruby_yyparse

Definition at line 356 of file ripper.y.

#define YYREALLOC | ( |  | ptr,
|  |  | size
| ) |  | rb_parser_realloc(parser, (ptr), (size))

Definition at line 37 of file ripper.y.

#define YYSTACK_USE_ALLOCA 0

## Typedef Documentation

typedef unsigned long ID

Definition at line 105 of file ripper.y.

typedef struct RNode NODE

typedef int(* OnigApplyAllCaseFoldFunc)(OnigCodePoint from, OnigCodePoint *to, int to_len, void *arg)

Definition at line 159 of file ripper.y.

typedef struct OnigCaptureTreeNodeStruct OnigCaptureTreeNode

typedef unsigned int OnigCaseFoldType

Definition at line 122 of file ripper.y.

typedef unsigned int OnigCodePoint

Definition at line 115 of file ripper.y.

typedef unsigned int OnigCtype

Definition at line 116 of file ripper.y.

typedef size_t OnigDistance

Definition at line 117 of file ripper.y.

typedef OnigEncodingType* OnigEncoding

Definition at line 182 of file ripper.y.

typedef struct OnigEncodingTypeST OnigEncodingType

typedef unsigned int OnigOptionType

Definition at line 349 of file ripper.y.

typedef ptrdiff_t OnigPosition

Definition at line 118 of file ripper.y.

typedef OnigRegexType* OnigRegex

Definition at line 703 of file ripper.y.

typedef struct re_pattern_buffer OnigRegexType

typedef struct re_registers OnigRegion

Definition at line 631 of file ripper.y.

typedef unsigned char OnigUChar

Definition at line 114 of file ripper.y.

int onig_free_shared_cclass_table P_ | ( | (const char *s) | ) |  |

Definition at line 644 of file ripper.y.

typedef VALUE(* rb_alloc_func_t)(VALUE)

Definition at line 352 of file ripper.y.

typedef VALUE rb_block_call_func(VALUE, VALUE, int, VALUE *)

Definition at line 1393 of file ripper.y.

typedef VALUE rb_blocking_function_t(void *)

Definition at line 834 of file ripper.y.

typedef void rb_check_funcall_hook(int, VALUE, ID, int, VALUE *, VALUE)

Definition at line 329 of file ripper.y.

typedef struct rb_classext_struct rb_classext_t

Definition at line 735 of file ripper.y.

typedef struct rb_data_type_struct rb_data_type_t

Definition at line 958 of file ripper.y.

typedef struct rb_econv_t rb_econv_t

Definition at line 252 of file ripper.y.

typedef OnigEncodingType rb_encoding

Definition at line 80 of file ripper.y.

typedef unsigned long rb_event_flag_t

Definition at line 1603 of file ripper.y.

typedef void(* rb_event_hook_func_t)(rb_event_flag_t evflag, VALUE data, VALUE self, ID mid, VALUE klass)

Definition at line 1604 of file ripper.y.

typedef fd_set rb_fdset_t

Definition at line 326 of file ripper.y.

typedef VALUE rb_gvar_getter_t(ID id, void *data, struct rb_global_variable *gvar)

Definition at line 1264 of file ripper.y.

typedef void rb_gvar_marker_t(VALUE *var)

Definition at line 1266 of file ripper.y.

typedef void rb_gvar_setter_t(VALUE val, ID id, void *data, struct rb_global_variable *gvar)

Definition at line 1265 of file ripper.y.

typedef VALUE rb_hash_update_func(VALUE newkey, VALUE oldkey, VALUE value)

Definition at line 477 of file ripper.y.

typedef void rb_unblock_function_t(void *)

Definition at line 833 of file ripper.y.

typedef OnigRegexType regex_t

Definition at line 706 of file ripper.y.

typedef char ruby_check_sizeof_int[SIZEOF_INT==sizeof(int)?1:-1]

Definition at line 120 of file ripper.y.

typedef char ruby_check_sizeof_long[SIZEOF_LONG==sizeof(long)?1:-1]

Definition at line 121 of file ripper.y.

typedef char ruby_check_sizeof_voidp[SIZEOF_VOIDP==sizeof(void *)?1:-1]

Definition at line 125 of file ripper.y.

typedef void(* RUBY_DATA_FUNC)(void *)

Definition at line 994 of file ripper.y.

typedef int ruby_glob_func(const char *, VALUE, void *)

Definition at line 1248 of file ripper.y.

typedef char st_check_for_sizeof_st_index_t[SIZEOF_VOIDP==(int) sizeof(st_index_t)?1:-1]

Definition at line 67 of file ripper.y.

typedef int st_compare_func(st_data_t, st_data_t)

Definition at line 64 of file ripper.y.

typedef unsigned long st_data_t

Definition at line 35 of file ripper.y.

typedef st_index_t st_hash_func(st_data_t)

Definition at line 65 of file ripper.y.

typedef st_data_t st_index_t

Definition at line 63 of file ripper.y.

typedef struct st_table st_table

Definition at line 61 of file ripper.y.

typedef int st_update_callback_func(st_data_t *key, st_data_t *value, st_data_t arg, int existing)

Definition at line 124 of file ripper.y.

typedef VALUE stack_type

Definition at line 106 of file ripper.y.

typedef struct token_info token_info

typedef unsigned long VALUE

Definition at line 104 of file ripper.y.

## Enumeration Type Documentation

enum lex_state_bits

Enumerator
EXPR_BEG_bit |
EXPR_END_bit |
EXPR_ENDARG_bit |
EXPR_ENDFN_bit |
EXPR_ARG_bit |
EXPR_CMDARG_bit |
EXPR_MID_bit |
EXPR_FNAME_bit |
EXPR_DOT_bit |
EXPR_CLASS_bit |
EXPR_VALUE_bit |
EXPR_MAX_STATE |
EXPR_BEG_bit |
EXPR_END_bit |
EXPR_ENDARG_bit |
EXPR_ENDFN_bit |
EXPR_ARG_bit |
EXPR_CMDARG_bit |
EXPR_MID_bit |
EXPR_FNAME_bit |
EXPR_DOT_bit |
EXPR_CLASS_bit |
EXPR_VALUE_bit |
EXPR_MAX_STATE |
EXPR_BEG_bit |
EXPR_END_bit |
EXPR_ENDARG_bit |
EXPR_ENDFN_bit |
EXPR_ARG_bit |
EXPR_CMDARG_bit |
EXPR_MID_bit |
EXPR_FNAME_bit |
EXPR_DOT_bit |
EXPR_CLASS_bit |
EXPR_VALUE_bit |
EXPR_MAX_STATE |
EXPR_BEG_bit |
EXPR_END_bit |
EXPR_ENDARG_bit |
EXPR_ENDFN_bit |
EXPR_ARG_bit |
EXPR_CMDARG_bit |
EXPR_MID_bit |
EXPR_FNAME_bit |
EXPR_DOT_bit |
EXPR_CLASS_bit |
EXPR_VALUE_bit |
EXPR_MAX_STATE |

Definition at line 67 of file ripper.y.

enum lex_state_e

Enumerator
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
EXPR_BEG_ANY |
EXPR_ARG_ANY |
EXPR_END_ANY |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
EXPR_BEG_ANY |
EXPR_ARG_ANY |
EXPR_END_ANY |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
EXPR_BEG_ANY |
EXPR_ARG_ANY |
EXPR_END_ANY |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
DEF_EXPR |
EXPR_BEG_ANY |
EXPR_ARG_ANY |
EXPR_END_ANY |

Definition at line 82 of file ripper.y.

enum node_type

Enumerator
NODE_SCOPE |
NODE_SCOPE |
NODE_BLOCK |
NODE_BLOCK |
NODE_IF |
NODE_IF |
NODE_CASE |
NODE_CASE |
NODE_WHEN |
NODE_WHEN |
NODE_OPT_N |
NODE_OPT_N |
NODE_WHILE |
NODE_WHILE |
NODE_UNTIL |
NODE_UNTIL |
NODE_ITER |
NODE_ITER |
NODE_FOR |
NODE_FOR |
NODE_BREAK |
NODE_BREAK |
NODE_NEXT |
NODE_NEXT |
NODE_REDO |
NODE_REDO |
NODE_RETRY |
NODE_RETRY |
NODE_BEGIN |
NODE_BEGIN |
NODE_RESCUE |
NODE_RESCUE |
NODE_RESBODY |
NODE_RESBODY |
NODE_ENSURE |
NODE_ENSURE |
NODE_AND |
NODE_AND |
NODE_OR |
NODE_OR |
NODE_MASGN |
NODE_MASGN |
NODE_LASGN |
NODE_LASGN |
NODE_DASGN |
NODE_DASGN |
NODE_DASGN_CURR |
NODE_DASGN_CURR |
NODE_GASGN |
NODE_GASGN |
NODE_IASGN |
NODE_IASGN |
NODE_IASGN2 |
NODE_IASGN2 |
NODE_CDECL |
NODE_CDECL |
NODE_CVASGN |
NODE_CVASGN |
NODE_CVDECL |
NODE_CVDECL |
NODE_OP_ASGN1 |
NODE_OP_ASGN1 |
NODE_OP_ASGN2 |
NODE_OP_ASGN2 |
NODE_OP_ASGN_AND |
NODE_OP_ASGN_AND |
NODE_OP_ASGN_OR |
NODE_OP_ASGN_OR |
NODE_OP_CDECL |
NODE_OP_CDECL |
NODE_CALL |
NODE_CALL |
NODE_FCALL |
NODE_FCALL |
NODE_VCALL |
NODE_VCALL |
NODE_SUPER |
NODE_SUPER |
NODE_ZSUPER |
NODE_ZSUPER |
NODE_ARRAY |
NODE_ARRAY |
NODE_ZARRAY |
NODE_ZARRAY |
NODE_VALUES |
NODE_VALUES |
NODE_HASH |
NODE_HASH |
NODE_RETURN |
NODE_RETURN |
NODE_YIELD |
NODE_YIELD |
NODE_LVAR |
NODE_LVAR |
NODE_DVAR |
NODE_DVAR |
NODE_GVAR |
NODE_GVAR |
NODE_IVAR |
NODE_IVAR |
NODE_CONST |
NODE_CONST |
NODE_CVAR |
NODE_CVAR |
NODE_NTH_REF |
NODE_NTH_REF |
NODE_BACK_REF |
NODE_BACK_REF |
NODE_MATCH |
NODE_MATCH |
NODE_MATCH2 |
NODE_MATCH2 |
NODE_MATCH3 |
NODE_MATCH3 |
NODE_LIT |
NODE_LIT |
NODE_STR |
NODE_STR |
NODE_DSTR |
NODE_DSTR |
NODE_XSTR |
NODE_XSTR |
NODE_DXSTR |
NODE_DXSTR |
NODE_EVSTR |
NODE_EVSTR |
NODE_DREGX |
NODE_DREGX |
NODE_DREGX_ONCE |
NODE_DREGX_ONCE |
NODE_ARGS |
NODE_ARGS |
NODE_ARGS_AUX |
NODE_ARGS_AUX |
NODE_OPT_ARG |
NODE_OPT_ARG |
NODE_KW_ARG |
NODE_KW_ARG |
NODE_POSTARG |
NODE_POSTARG |
NODE_ARGSCAT |
NODE_ARGSCAT |
NODE_ARGSPUSH |
NODE_ARGSPUSH |
NODE_SPLAT |
NODE_SPLAT |
NODE_TO_ARY |
NODE_TO_ARY |
NODE_BLOCK_ARG |
NODE_BLOCK_ARG |
NODE_BLOCK_PASS |
NODE_BLOCK_PASS |
NODE_DEFN |
NODE_DEFN |
NODE_DEFS |
NODE_DEFS |
NODE_ALIAS |
NODE_ALIAS |
NODE_VALIAS |
NODE_VALIAS |
NODE_UNDEF |
NODE_UNDEF |
NODE_CLASS |
NODE_CLASS |
NODE_MODULE |
NODE_MODULE |
NODE_SCLASS |
NODE_SCLASS |
NODE_COLON2 |
NODE_COLON2 |
NODE_COLON3 |
NODE_COLON3 |
NODE_CREF |
NODE_CREF |
NODE_DOT2 |
NODE_DOT2 |
NODE_DOT3 |
NODE_DOT3 |
NODE_FLIP2 |
NODE_FLIP2 |
NODE_FLIP3 |
NODE_FLIP3 |
NODE_SELF |
NODE_SELF |
NODE_NIL |
NODE_NIL |
NODE_TRUE |
NODE_TRUE |
NODE_FALSE |
NODE_FALSE |
NODE_ERRINFO |
NODE_ERRINFO |
NODE_DEFINED |
NODE_DEFINED |
NODE_POSTEXE |
NODE_POSTEXE |
NODE_ALLOCA |
NODE_ALLOCA |
NODE_BMETHOD |
NODE_BMETHOD |
NODE_MEMO |
NODE_MEMO |
NODE_IFUNC |
NODE_IFUNC |
NODE_DSYM |
NODE_DSYM |
NODE_ATTRASGN |
NODE_ATTRASGN |
NODE_PRELUDE |
NODE_PRELUDE |
NODE_LAMBDA |
NODE_LAMBDA |
NODE_SCOPE |
NODE_SCOPE |
NODE_BLOCK |
NODE_BLOCK |
NODE_IF |
NODE_IF |
NODE_CASE |
NODE_CASE |
NODE_WHEN |
NODE_WHEN |
NODE_OPT_N |
NODE_OPT_N |
NODE_WHILE |
NODE_WHILE |
NODE_UNTIL |
NODE_UNTIL |
NODE_ITER |
NODE_ITER |
NODE_FOR |
NODE_FOR |
NODE_BREAK |
NODE_BREAK |
NODE_NEXT |
NODE_NEXT |
NODE_REDO |
NODE_REDO |
NODE_RETRY |
NODE_RETRY |
NODE_BEGIN |
NODE_BEGIN |
NODE_RESCUE |
NODE_RESCUE |
NODE_RESBODY |
NODE_RESBODY |
NODE_ENSURE |
NODE_ENSURE |
NODE_AND |
NODE_AND |
NODE_OR |
NODE_OR |
NODE_MASGN |
NODE_MASGN |
NODE_LASGN |
NODE_LASGN |
NODE_DASGN |
NODE_DASGN |
NODE_DASGN_CURR |
NODE_DASGN_CURR |
NODE_GASGN |
NODE_GASGN |
NODE_IASGN |
NODE_IASGN |
NODE_IASGN2 |
NODE_IASGN2 |
NODE_CDECL |
NODE_CDECL |
NODE_CVASGN |
NODE_CVASGN |
NODE_CVDECL |
NODE_CVDECL |
NODE_OP_ASGN1 |
NODE_OP_ASGN1 |
NODE_OP_ASGN2 |
NODE_OP_ASGN2 |
NODE_OP_ASGN_AND |
NODE_OP_ASGN_AND |
NODE_OP_ASGN_OR |
NODE_OP_ASGN_OR |
NODE_OP_CDECL |
NODE_OP_CDECL |
NODE_CALL |
NODE_CALL |
NODE_FCALL |
NODE_FCALL |
NODE_VCALL |
NODE_VCALL |
NODE_SUPER |
NODE_SUPER |
NODE_ZSUPER |
NODE_ZSUPER |
NODE_ARRAY |
NODE_ARRAY |
NODE_ZARRAY |
NODE_ZARRAY |
NODE_VALUES |
NODE_VALUES |
NODE_HASH |
NODE_HASH |
NODE_RETURN |
NODE_RETURN |
NODE_YIELD |
NODE_YIELD |
NODE_LVAR |
NODE_LVAR |
NODE_DVAR |
NODE_DVAR |
NODE_GVAR |
NODE_GVAR |
NODE_IVAR |
NODE_IVAR |
NODE_CONST |
NODE_CONST |
NODE_CVAR |
NODE_CVAR |
NODE_NTH_REF |
NODE_NTH_REF |
NODE_BACK_REF |
NODE_BACK_REF |
NODE_MATCH |
NODE_MATCH |
NODE_MATCH2 |
NODE_MATCH2 |
NODE_MATCH3 |
NODE_MATCH3 |
NODE_LIT |
NODE_LIT |
NODE_STR |
NODE_STR |
NODE_DSTR |
NODE_DSTR |
NODE_XSTR |
NODE_XSTR |
NODE_DXSTR |
NODE_DXSTR |
NODE_EVSTR |
NODE_EVSTR |
NODE_DREGX |
NODE_DREGX |
NODE_DREGX_ONCE |
NODE_DREGX_ONCE |
NODE_ARGS |
NODE_ARGS |
NODE_ARGS_AUX |
NODE_ARGS_AUX |
NODE_OPT_ARG |
NODE_OPT_ARG |
NODE_KW_ARG |
NODE_KW_ARG |
NODE_POSTARG |
NODE_POSTARG |
NODE_ARGSCAT |
NODE_ARGSCAT |
NODE_ARGSPUSH |
NODE_ARGSPUSH |
NODE_SPLAT |
NODE_SPLAT |
NODE_TO_ARY |
NODE_TO_ARY |
NODE_BLOCK_ARG |
NODE_BLOCK_ARG |
NODE_BLOCK_PASS |
NODE_BLOCK_PASS |
NODE_DEFN |
NODE_DEFN |
NODE_DEFS |
NODE_DEFS |
NODE_ALIAS |
NODE_ALIAS |
NODE_VALIAS |
NODE_VALIAS |
NODE_UNDEF |
NODE_UNDEF |
NODE_CLASS |
NODE_CLASS |
NODE_MODULE |
NODE_MODULE |
NODE_SCLASS |
NODE_SCLASS |
NODE_COLON2 |
NODE_COLON2 |
NODE_COLON3 |
NODE_COLON3 |
NODE_CREF |
NODE_CREF |
NODE_DOT2 |
NODE_DOT2 |
NODE_DOT3 |
NODE_DOT3 |
NODE_FLIP2 |
NODE_FLIP2 |
NODE_FLIP3 |
NODE_FLIP3 |
NODE_SELF |
NODE_SELF |
NODE_NIL |
NODE_NIL |
NODE_TRUE |
NODE_TRUE |
NODE_FALSE |
NODE_FALSE |
NODE_ERRINFO |
NODE_ERRINFO |
NODE_DEFINED |
NODE_DEFINED |
NODE_POSTEXE |
NODE_POSTEXE |
NODE_ALLOCA |
NODE_ALLOCA |
NODE_BMETHOD |
NODE_BMETHOD |
NODE_MEMO |
NODE_MEMO |
NODE_IFUNC |
NODE_IFUNC |
NODE_DSYM |
NODE_DSYM |
NODE_ATTRASGN |
NODE_ATTRASGN |
NODE_PRELUDE |
NODE_PRELUDE |
NODE_LAMBDA |
NODE_LAMBDA |

Definition at line 23 of file ripper.y.

enum rb_econv_result_t

Enumerator
econv_invalid_byte_sequence |
econv_undefined_conversion |
econv_destination_buffer_full |
econv_source_buffer_empty |
econv_finished |
econv_after_output |
econv_incomplete_input |
econv_invalid_byte_sequence |
econv_undefined_conversion |
econv_destination_buffer_full |
econv_source_buffer_empty |
econv_finished |
econv_after_output |
econv_incomplete_input |

Definition at line 242 of file ripper.y.

enum ruby_method_ids

Enumerator
idDot2 |
idDot3 |
idUPlus |
idUMinus |
idPow |
idCmp |
idPLUS |
idMINUS |
idMULT |
idDIV |
idMOD |
idLT |
idLTLT |
idLE |
idGT |
idGE |
idEq |
idEqq |
idNeq |
idNot |
idBackquote |
idEqTilde |
idNeqTilde |
idAREF |
idASET |
tPRESERVED_ID_BEGIN |
idNULL |
idEmptyP |
idRespond_to |
idRespond_to_missing |
idIFUNC |
idCFUNC |
id_core_set_method_alias |
id_core_set_variable_alias |
id_core_undef_method |
id_core_define_method |
id_core_define_singleton_method |
id_core_set_postexe |
id_core_hash_from_ary |
id_core_hash_merge_ary |
id_core_hash_merge_ptr |
id_core_hash_merge_kwd |
tPRESERVED_ID_END |
tIntern |
tMethodMissing |
tLength |
tSize |
tGets |
tSucc |
tEach |
tProc |
tLambda |
tSend |
t__send__ |
tInitialize |
tInitialize_copy |
tInitialize_clone |
tInitialize_dup |
tUScore |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
tLAST_OP_ID |
idLAST_OP_ID |
idDot2 |
idDot3 |
idUPlus |
idUMinus |
idPow |
idCmp |
idPLUS |
idMINUS |
idMULT |
idDIV |
idMOD |
idLT |
idLTLT |
idLE |
idGT |
idGE |
idEq |
idEqq |
idNeq |
idNot |
idBackquote |
idEqTilde |
idNeqTilde |
idAREF |
idASET |
tPRESERVED_ID_BEGIN |
idNULL |
idEmptyP |
idRespond_to |
idRespond_to_missing |
idIFUNC |
idCFUNC |
id_core_set_method_alias |
id_core_set_variable_alias |
id_core_undef_method |
id_core_define_method |
id_core_define_singleton_method |
id_core_set_postexe |
id_core_hash_from_ary |
id_core_hash_merge_ary |
id_core_hash_merge_ptr |
id_core_hash_merge_kwd |
tPRESERVED_ID_END |
tIntern |
tMethodMissing |
tLength |
tSize |
tGets |
tSucc |
tEach |
tProc |
tLambda |
tSend |
t__send__ |
tInitialize |
tInitialize_copy |
tInitialize_clone |
tInitialize_dup |
tUScore |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
TOKEN2LOCALID |
tLAST_OP_ID |
idLAST_OP_ID |

Definition at line 55 of file ripper.y.

enum ruby_special_consts

Enumerator
RUBY_Qfalse |
RUBY_Qtrue |
RUBY_Qnil |
RUBY_Qundef |
RUBY_IMMEDIATE_MASK |
RUBY_FIXNUM_FLAG |
RUBY_FLONUM_MASK |
RUBY_FLONUM_FLAG |
RUBY_SYMBOL_FLAG |
RUBY_SPECIAL_SHIFT |
RUBY_Qfalse |
RUBY_Qtrue |
RUBY_Qnil |
RUBY_Qundef |
RUBY_IMMEDIATE_MASK |
RUBY_FIXNUM_FLAG |
RUBY_FLONUM_MASK |
RUBY_FLONUM_FLAG |
RUBY_SYMBOL_FLAG |
RUBY_SPECIAL_SHIFT |

Definition at line 405 of file ripper.y.

enum ruby_value_type

Enumerator
RUBY_T_NONE |
RUBY_T_OBJECT |
RUBY_T_CLASS |
RUBY_T_MODULE |
RUBY_T_FLOAT |
RUBY_T_STRING |
RUBY_T_REGEXP |
RUBY_T_ARRAY |
RUBY_T_HASH |
RUBY_T_STRUCT |
RUBY_T_BIGNUM |
RUBY_T_FILE |
RUBY_T_DATA |
RUBY_T_MATCH |
RUBY_T_COMPLEX |
RUBY_T_RATIONAL |
RUBY_T_NIL |
RUBY_T_TRUE |
RUBY_T_FALSE |
RUBY_T_SYMBOL |
RUBY_T_FIXNUM |
RUBY_T_UNDEF |
RUBY_T_NODE |
RUBY_T_ICLASS |
RUBY_T_ZOMBIE |
RUBY_T_MASK |
RUBY_T_NONE |
RUBY_T_OBJECT |
RUBY_T_CLASS |
RUBY_T_MODULE |
RUBY_T_FLOAT |
RUBY_T_STRING |
RUBY_T_REGEXP |
RUBY_T_ARRAY |
RUBY_T_HASH |
RUBY_T_STRUCT |
RUBY_T_BIGNUM |
RUBY_T_FILE |
RUBY_T_DATA |
RUBY_T_MATCH |
RUBY_T_COMPLEX |
RUBY_T_RATIONAL |
RUBY_T_NIL |
RUBY_T_TRUE |
RUBY_T_FALSE |
RUBY_T_SYMBOL |
RUBY_T_FIXNUM |
RUBY_T_UNDEF |
RUBY_T_NODE |
RUBY_T_ICLASS |
RUBY_T_ZOMBIE |
RUBY_T_MASK |

Definition at line 450 of file ripper.y.

enum st_retval

Enumerator
ST_CONTINUE |
ST_STOP |
ST_DELETE |
ST_CHECK |
ST_CONTINUE |
ST_STOP |
ST_DELETE |
ST_CHECK |

Definition at line 108 of file ripper.y.

enum yytokentype

Enumerator
END_OF_INPUT |
keyword_class |
keyword_module |
keyword_def |
keyword_undef |
keyword_begin |
keyword_rescue |
keyword_ensure |
keyword_end |
keyword_if |
keyword_unless |
keyword_then |
keyword_elsif |
keyword_else |
keyword_case |
keyword_when |
keyword_while |
keyword_until |
keyword_for |
keyword_break |
keyword_next |
keyword_redo |
keyword_retry |
keyword_in |
keyword_do |
keyword_do_cond |
keyword_do_block |
keyword_do_LAMBDA |
keyword_return |
keyword_yield |
keyword_super |
keyword_self |
keyword_nil |
keyword_true |
keyword_false |
keyword_and |
keyword_or |
keyword_not |
modifier_if |
modifier_unless |
modifier_while |
modifier_until |
modifier_rescue |
keyword_alias |
keyword_defined |
keyword_BEGIN |
keyword_END |
keyword__LINE__ |
keyword__FILE__ |
keyword__ENCODING__ |
tIDENTIFIER |
tFID |
tGVAR |
tIVAR |
tCONSTANT |
tCVAR |
tLABEL |
tINTEGER |
tFLOAT |
tSTRING_CONTENT |
tCHAR |
tNTH_REF |
tBACK_REF |
tREGEXP_END |
tUPLUS |
tUMINUS |
tPOW |
tCMP |
tEQ |
tEQQ |
tNEQ |
tGEQ |
tLEQ |
tANDOP |
tOROP |
tMATCH |
tNMATCH |
tDOT2 |
tDOT3 |
tAREF |
tASET |
tLSHFT |
tRSHFT |
tCOLON2 |
tCOLON3 |
tOP_ASGN |
tASSOC |
tLPAREN |
tLPAREN_ARG |
tRPAREN |
tLBRACK |
tLBRACE |
tLBRACE_ARG |
tSTAR |
tDSTAR |
tAMPER |
tLAMBDA |
tSYMBEG |
tSTRING_BEG |
tXSTRING_BEG |
tREGEXP_BEG |
tWORDS_BEG |
tQWORDS_BEG |
tSYMBOLS_BEG |
tQSYMBOLS_BEG |
tSTRING_DBEG |
tSTRING_DEND |
tSTRING_DVAR |
tSTRING_END |
tLAMBEG |
tLOWEST |
tUMINUS_NUM |
tLAST_TOKEN |
END_OF_INPUT |
keyword_class |
keyword_module |
keyword_def |
keyword_undef |
keyword_begin |
keyword_rescue |
keyword_ensure |
keyword_end |
keyword_if |
keyword_unless |
keyword_then |
keyword_elsif |
keyword_else |
keyword_case |
keyword_when |
keyword_while |
keyword_until |
keyword_for |
keyword_break |
keyword_next |
keyword_redo |
keyword_retry |
keyword_in |
keyword_do |
keyword_do_cond |
keyword_do_block |
keyword_do_LAMBDA |
keyword_return |
keyword_yield |
keyword_super |
keyword_self |
keyword_nil |
keyword_true |
keyword_false |
keyword_and |
keyword_or |
keyword_not |
modifier_if |
modifier_unless |
modifier_while |
modifier_until |
modifier_rescue |
keyword_alias |
keyword_defined |
keyword_BEGIN |
keyword_END |
keyword__LINE__ |
keyword__FILE__ |
keyword__ENCODING__ |
tIDENTIFIER |
tFID |
tGVAR |
tIVAR |
tCONSTANT |
tCVAR |
tLABEL |
tINTEGER |
tFLOAT |
tSTRING_CONTENT |
tCHAR |
tNTH_REF |
tBACK_REF |
tREGEXP_END |
tUPLUS |
tUMINUS |
tPOW |
tCMP |
tEQ |
tEQQ |
tNEQ |
tGEQ |
tLEQ |
tANDOP |
tOROP |
tMATCH |
tNMATCH |
tDOT2 |
tDOT3 |
tAREF |
tASET |
tLSHFT |
tRSHFT |
tCOLON2 |
tCOLON3 |
tOP_ASGN |
tASSOC |
tLPAREN |
tLPAREN_ARG |
tRPAREN |
tLBRACK |
tLBRACE |
tLBRACE_ARG |
tSTAR |
tDSTAR |
tAMPER |
tLAMBDA |
tSYMBEG |
tSTRING_BEG |
tXSTRING_BEG |
tREGEXP_BEG |
tWORDS_BEG |
tQWORDS_BEG |
tSYMBOLS_BEG |
tQSYMBOLS_BEG |
tSTRING_DBEG |
tSTRING_DEND |
tSTRING_DVAR |
tSTRING_END |
tLAMBEG |
tLOWEST |
tUMINUS_NUM |
tLAST_TOKEN |
END_OF_INPUT |
keyword_class |
keyword_module |
keyword_def |
keyword_undef |
keyword_begin |
keyword_rescue |
keyword_ensure |
keyword_end |
keyword_if |
keyword_unless |
keyword_then |
keyword_elsif |
keyword_else |
keyword_case |
keyword_when |
keyword_while |
keyword_until |
keyword_for |
keyword_break |
keyword_next |
keyword_redo |
keyword_retry |
keyword_in |
keyword_do |
keyword_do_cond |
keyword_do_block |
keyword_do_LAMBDA |
keyword_return |
keyword_yield |
keyword_super |
keyword_self |
keyword_nil |
keyword_true |
keyword_false |
keyword_and |
keyword_or |
keyword_not |
modifier_if |
modifier_unless |
modifier_while |
modifier_until |
modifier_rescue |
keyword_alias |
keyword_defined |
keyword_BEGIN |
keyword_END |
keyword__LINE__ |
keyword__FILE__ |
keyword__ENCODING__ |
tIDENTIFIER |
tFID |
tGVAR |
tIVAR |
tCONSTANT |
tCVAR |
tLABEL |
tINTEGER |
tFLOAT |
tSTRING_CONTENT |
tCHAR |
tNTH_REF |
tBACK_REF |
tREGEXP_END |
tUPLUS |
tUMINUS |
tPOW |
tCMP |
tEQ |
tEQQ |
tNEQ |
tGEQ |
tLEQ |
tANDOP |
tOROP |
tMATCH |
tNMATCH |
tDOT2 |
tDOT3 |
tAREF |
tASET |
tLSHFT |
tRSHFT |
tCOLON2 |
tCOLON3 |
tOP_ASGN |
tASSOC |
tLPAREN |
tLPAREN_ARG |
tRPAREN |
tLBRACK |
tLBRACE |
tLBRACE_ARG |
tSTAR |
tDSTAR |
tAMPER |
tLAMBDA |
tSYMBEG |
tSTRING_BEG |
tXSTRING_BEG |
tREGEXP_BEG |
tWORDS_BEG |
tQWORDS_BEG |
tSYMBOLS_BEG |
tQSYMBOLS_BEG |
tSTRING_DBEG |
tSTRING_DEND |
tSTRING_DVAR |
tSTRING_END |
tLAMBEG |
tLOWEST |
tUMINUS_NUM |
tLAST_TOKEN |
END_OF_INPUT |
keyword_class |
keyword_module |
keyword_def |
keyword_undef |
keyword_begin |
keyword_rescue |
keyword_ensure |
keyword_end |
keyword_if |
keyword_unless |
keyword_then |
keyword_elsif |
keyword_else |
keyword_case |
keyword_when |
keyword_while |
keyword_until |
keyword_for |
keyword_break |
keyword_next |
keyword_redo |
keyword_retry |
keyword_in |
keyword_do |
keyword_do_cond |
keyword_do_block |
keyword_do_LAMBDA |
keyword_return |
keyword_yield |
keyword_super |
keyword_self |
keyword_nil |
keyword_true |
keyword_false |
keyword_and |
keyword_or |
keyword_not |
modifier_if |
modifier_unless |
modifier_while |
modifier_until |
modifier_rescue |
keyword_alias |
keyword_defined |
keyword_BEGIN |
keyword_END |
keyword__LINE__ |
keyword__FILE__ |
keyword__ENCODING__ |
tIDENTIFIER |
tFID |
tGVAR |
tIVAR |
tCONSTANT |
tCVAR |
tLABEL |
tINTEGER |
tFLOAT |
tSTRING_CONTENT |
tCHAR |
tNTH_REF |
tBACK_REF |
tREGEXP_END |
tUPLUS |
tUMINUS |
tPOW |
tCMP |
tEQ |
tEQQ |
tNEQ |
tGEQ |
tLEQ |
tANDOP |
tOROP |
tMATCH |
tNMATCH |
tDOT2 |
tDOT3 |
tAREF |
tASET |
tLSHFT |
tRSHFT |
tCOLON2 |
tCOLON3 |
tOP_ASGN |
tASSOC |
tLPAREN |
tLPAREN_ARG |
tRPAREN |
tLBRACK |
tLBRACE |
tLBRACE_ARG |
tSTAR |
tDSTAR |
tAMPER |
tLAMBDA |
tSYMBEG |
tSTRING_BEG |
tXSTRING_BEG |
tREGEXP_BEG |
tWORDS_BEG |
tQWORDS_BEG |
tSYMBOLS_BEG |
tQSYMBOLS_BEG |
tSTRING_DBEG |
tSTRING_DEND |
tSTRING_DVAR |
tSTRING_END |
tLAMBEG |
tLOWEST |
tUMINUS_NUM |
tLAST_TOKEN |

Definition at line 42 of file ripper.y.

## Function Documentation

RUBY_EXTERN double acosh | ( | double | ) |  |

Definition at line 36 of file acosh.c.

Referenced by math_acosh().

void* alloca | ( | ) |  |

static NODE* arg_append_gen | ( | struct parser_params * | ,
|  | NODE * | ,
|  | NODE * |
| ) |  |
| static

static NODE* arg_blk_pass | ( | NODE * | ,
|  | NODE * |
| ) |  |
| static

static NODE* arg_concat_gen | ( | struct parser_params * | ,
|  | NODE * | ,
|  | NODE * |
| ) |  |
| static

static int arg_var_gen | ( | struct parser_params * | ,
|  | ID |
| ) |  |
| static

static NODE* aryset_gen | ( | struct parser_params * | ,
|  | NODE * | ,
|  | NODE * |
| ) |  |
| static

RUBY_EXTERN double asinh | ( | double | ) |  |

Definition at line 52 of file acosh.c.

Referenced by math_asinh().

static NODE* assignable_gen | ( | struct parser_params * | ,
|  | ID | ,
|  | NODE * |
| ) |  |
| static

RUBY_EXTERN double atanh | ( | double | ) |  |

Definition at line 75 of file acosh.c.

Referenced by math_atanh().

static NODE* attrset_gen | ( | struct parser_params * | ,
|  | NODE * | ,
|  | ID |
| ) |  |
| static

static NODE* block_append_gen | ( | struct parser_params * | ,
|  | NODE * | ,
|  | NODE * |
| ) |  |
| static

static void block_dup_check_gen | ( | struct parser_params * | ,
|  | NODE * | ,
|  | NODE * |
| ) |  |
| static

static NODE* call_bin_op_gen | ( | struct parser_params * | ,
|  | NODE * | ,
|  | ID | ,
|  | NODE * |
| ) |  |
| static

static NODE* call_uni_op_gen | ( | struct parser_params * | ,
|  | NODE * | ,
|  | ID |
| ) |  |
| static

RUBY_EXTERN double cbrt | ( | double | ) |  |

Definition at line 4 of file cbrt.c.

Referenced by math_cbrt().

static NODE* cond_gen | ( | struct parser_params * | ,
|  | NODE * |
| ) |  |
| static

RUBY_EXTERN char* crypt | ( | const char * | ,
|  | const char * |
| ) |  |

Definition at line 500 of file crypt.c.

Referenced by rb_str_crypt().

DEPRECATED | ( | void | rb_quad_packchar *, VALUE) |  |

DEPRECATED | ( | VALUE | rb_quad_unpackconst char *, int) |  |

DEPRECATED | ( | void | rb_thread_pollingvoid) |  |

DEPRECATED | ( | int | rb_thread_selectint, fd_set *, fd_set *, fd_set *, struct timeval *) |  |

DEPRECATED | ( | void | rb_check_safe_strVALUE) |  |

DEPRECATED | ( | int | rb_proc_exec_nint, VALUE *, const char *) |  |

DEPRECATED | ( | VALUE | rb_exec_arg_initint argc, VALUE *argv, int accept_shell, struct rb_exec_arg *e) |  |

DEPRECATED | ( | int | rb_exec_arg_addoptstruct rb_exec_arg *e, VALUE key, VALUE val) |  |

DEPRECATED | ( | void | rb_exec_arg_fixupstruct rb_exec_arg *e) |  |

DEPRECATED | ( | int | rb_run_exec_optionsconst struct rb_exec_arg *e, struct rb_exec_arg *s) |  |

DEPRECATED | ( | int | rb_run_exec_options_errconst struct rb_exec_arg *e, struct rb_exec_arg *s, char *, size_t) |  |

DEPRECATED | ( | int | rb_execconst struct rb_exec_arg *) |  |

DEPRECATED | ( | int | rb_exec_errconst struct rb_exec_arg *, char *, size_t) |  |

DEPRECATED | ( | rb_pid_t | rb_forkint *, int(*)(void *), void *, VALUE) |  |

DEPRECATED | ( | rb_pid_t | rb_fork_errint *, int(*)(void *, char *, size_t), void *, VALUE, char *, size_t) |  |

DEPRECATED | ( | VALUE | rb_struct_iv_getVALUE, const char *) |  |

DEPRECATED | ( | VALUE | rb_thread_blocking_regionrb_blocking_function_t *func, void *data1, rb_unblock_function_t *ubf, void *data2) |  |

stmts dispatch0 | ( | stmts_new | ) |  |

Referenced by arg_ambiguous_gen(), and yyparse().

stmts dispatch0 | ( | void_stmt | ) |  |

static NODE* dsym_node_gen | ( | struct parser_params * | ,
|  | NODE * |
| ) |  |
| static

RUBY_EXTERN int dup2 | ( | int | ,
|  | int |
| ) |  |

Definition at line 27 of file dup2.c.

Referenced by chfunc(), fill_standard_fds(), goruby_options(), main(), and rb_cloexec_dup2().

static int dvar_curr_gen | ( | struct parser_params * | ,
|  | ID |
| ) |  |
| static

static int dvar_defined_gen | ( | struct parser_params * | ,
|  | ID | ,
|  | int |
| ) |  |
| static

static int dyna_in_block_gen | ( | struct parser_params * | ) |  |
| static

dyna_pop | ( |  | $< vars >) |  |

static void dyna_pop_gen | ( | struct parser_params * | ,
|  | const struct vtable * |
| ) |  |
| static

static struct vtable* dyna_push_gen | ( | struct parser_params * | ) |  |
| static

RUBY_EXTERN int eaccess | ( | const char * | ,
|  | int |
| ) |  |

Definition at line 1079 of file file.c.

Referenced by dln_find_1(), rb_file_executable_p(), rb_file_readable_p(), and rb_file_writable_p().

RUBY_EXTERN double erf | ( | double | ) |  |

Definition at line 71 of file erf.c.

Referenced by math_erf().

RUBY_EXTERN double erfc | ( | double | ) |  |

Definition at line 81 of file erf.c.

Referenced by math_erfc().

top_stmt escape_Qundef | ( |  | $1) |  |

Referenced by yyparse().

static NODE* evstr2dstr_gen | ( | struct parser_params * | ,
|  | NODE * |
| ) |  |
| static

RUBY_EXTERN int ffs | ( | int | ) |  |

Definition at line 6 of file ffs.c.

Referenced by rb_big_pow().

RUBY_EXTERN int finite | ( | double | ) |  |

Definition at line 6 of file finite.c.

Referenced by erf(), erfc(), and flo_is_finite_p().

static void fixpos | ( | NODE * | ,
|  | NODE * |
| ) |  |
| static

static void fixup_nodes | ( | NODE ** | ) |  |
| static

RUBY_EXTERN int flock | ( | int | ,
|  | int |
| ) |  |

Definition at line 125 of file flock.c.

Referenced by rb_thread_flock().

static ID formal_argument_gen | ( | struct parser_params * | ,
|  | ID |
| ) |  |
| static

static NODE* gettable_gen | ( | struct parser_params * | ,
|  | ID |
| ) |  |
| static

RUBY_EXTERN double hypot | ( | double | ,
|  | double |
| ) |  |

Definition at line 6 of file hypot.c.

Referenced by math_hypot().

if | ( | c | = `= ')'`) |  |

Definition at line 7580 of file ripper.y.

References brace_nest, and tSTRING_DEND.

Referenced by assign_heap_slot(), concat_left_node_opt_info(), gc_mark_children(), getaddrinfo(), getnameinfo(), io_reopen(), iseq_insns_unification(), iseq_peephole_optimize(), name_add(), names_clear(), onig_foreach_name(), onig_memsize(), onig_names_free(), onig_number_of_names(), onig_renumber_name_table(), parse_char_class(), parse_enclose(), parse_exp(), pruby_eval(), rb_iseq_line_trace_each(), rb_thread_call_with_gvl(), rb_threadptr_execute_interrupts(), rb_w32_select_with_thread(), ruby__sfvextra(), set_optimize_map_info(), vm_callee_setup_arg_complex(), VpSqrt(), yaml_emitter_write_block_scalar_hints(), yaml_emitter_write_indent(), yaml_parser_scan_block_scalar_breaks(), and zstream_detach_buffer().

if | ( | IS_END()||ISSPACE(c) | ) |  |

Definition at line 7595 of file ripper.y.

References IS_END, lex_state, pushback, and warn_balanced.

if | ( | (c=nextc()) | = `= '='`) |  |

Definition at line 7620 of file ripper.y.

References lex_state, nextc, set_yylval_id, and tOP_ASGN.

if | ( | IS_SPCARG(c) | ) |  |

Definition at line 7626 of file ripper.y.

References arg_ambiguous, IS_SPCARG, lex_strterm, NEW_STRTERM, str_regexp, and tREGEXP_BEG.

void Init_BareVM | ( | void | ) |  |

Definition at line 2394 of file vm.c.

Referenced by ruby_setup().

void Init_eval_method | ( | void | ) |  |

Definition at line 1618 of file vm_method.c.

Referenced by Init_eval().

void Init_ext | ( | void | ) |  |

Definition at line 2 of file dmyext.c.

void Init_File | ( | void | ) |  |

Definition at line 5488 of file file.c.

Referenced by Init_IO().

void Init_heap | ( | void | ) |  |

Definition at line 1039 of file gc.c.

Referenced by ruby_setup().

static void Init_id | ( | void | ) |  |
| static

Definition at line 15 of file ripper.y.

Referenced by Init_sym().

void Init_native_thread | ( | void | ) |  |

Referenced by Init_BareVM().

void Init_newline | ( | void | ) |  |

Definition at line 183 of file newline.c.

Referenced by Init_transcode().

void Init_prelude | ( | void | ) |  |

Referenced by ruby_init_prelude().

void Init_vm_backtrace | ( | void | ) |  |

Definition at line 944 of file vm_backtrace.c.

Referenced by Init_VM().

void Init_vm_eval | ( | void | ) |  |

Definition at line 1944 of file vm_eval.c.

Referenced by Init_eval().

static ID internal_id_gen | ( | struct parser_params * | ) |  |
| static

RUBY_EXTERN int isinf | ( | double | ) |  |

Definition at line 56 of file isinf.c.

Referenced by atanh(), BigMath_s_exp(), BigMath_s_log(), BSD_vfprintf(), c_valid_start_p(), c_virtual_sg(), dbl2big(), double2timeval(), finite(), flo_cmp(), flo_is_finite_p(), flo_is_infinite_p(), flo_round(), flo_to_s(), float_denominator(), float_numerator(), float_value(), flodivmod(), generate_json_float(), guess_style(), m_julian_p(), m_proleptic_gregorian_p(), m_proleptic_julian_p(), math_atan2(), math_gamma(), math_lgamma(), num_interval_step_size(), nurat_div(), rand_range(), rb_big2dbl(), rb_big_fdiv(), rb_integer_float_cmp(), rb_integer_float_eq(), rb_str_format(), ruby_float_step(), ruby_float_step_size(), ruby_hdtoa(), s_virtual_sg(), VpDtoV(), and w_float().

RUBY_EXTERN int isnan | ( | double | ) |  |

Definition at line 8 of file isnan.c.

RUBY_EXTERN double lgamma_r | ( | double | ,
|  | int * |
| ) |  |

Definition at line 63 of file lgamma_r.c.

Referenced by math_lgamma().

static NODE* list_append_gen | ( | struct parser_params * | ,
|  | NODE * | ,
|  | NODE * |
| ) |  |
| static

static NODE* list_concat_gen | ( | struct parser_params * | ,
|  | NODE * | ,
|  | NODE * |
| ) |  |
| static

static int literal_concat0 | ( | struct parser_params * | ,
|  | VALUE | ,
|  | VALUE |
| ) |  |
| static

static NODE* literal_concat_gen | ( | struct parser_params * | ,
|  | NODE * | ,
|  | NODE * |
| ) |  |
| static

static int local_id_gen | ( | struct parser_params * | ,
|  | ID |
| ) |  |
| static

static void local_pop_gen | ( | struct parser_params * | ) |  |
| static

static void local_push_gen | ( | struct parser_params * | ,
|  | int |
| ) |  |
| static

static ID* local_tbl_gen | ( | struct parser_params * | ) |  |
| static

static int local_var_gen | ( | struct parser_params * | ,
|  | ID |
| ) |  |
| static

static NODE* logop_gen | ( | struct parser_params * | ,
|  | enum | node_type,
|  | NODE * | ,
|  | NODE * |
| ) |  |
| static

static int lvar_defined_gen | ( | struct parser_params * | ,
|  | ID |
| ) |  |
| static

static NODE* match_op_gen | ( | struct parser_params * | ,
|  | NODE * | ,
|  | NODE * |
| ) |  |
| static

RUBY_EXTERN void* memmove | ( | void * | ,
|  | const void * | ,
|  | size_t |
| ) |  |

Definition at line 7 of file memmove.c.

Referenced by BigDecimal_split(), delpair(), extract_fd(), fill_cbuf(), flo_to_s(), io_shift_cbuf(), rb_ary_sample(), rb_str_drop_bytes(), rb_str_lstrip_bang(), rb_str_splice_0(), rb_str_sub_bang(), rb_str_succ(), rb_w32_fdclr(), rb_w32_strerror(), remove_backslashes(), strio_ungetbyte(), strio_write(), stub_sysinit(), sym_inspect(), VpFormatSt(), VpNmlz(), yaml_parser_update_buffer(), yaml_parser_update_raw_buffer(), yaml_queue_extend(), zstream_buffer_ungetbyte(), zstream_buffer_ungets(), zstream_discard_input(), and zstream_shift_buffer().

static NODE* negate_lit | ( | NODE * | ) |  |
| static

static NODE* new_args_gen | ( | struct parser_params * | ,
|  | NODE * | ,
|  | NODE * | ,
|  | ID | ,
|  | NODE * | ,
|  | NODE * |
| ) |  |
| static

static NODE* new_args_tail_gen | ( | struct parser_params * | ,
|  | NODE * | ,
|  | ID | ,
|  | ID |
| ) |  |
| static

static NODE* new_attr_op_assign_gen | ( | struct parser_params * | parser,
|  | NODE * | lhs,
|  | ID | attr,
|  | ID | op,
|  | NODE * | rhs
| ) |  |
| static

static void new_bv_gen | ( | struct parser_params * | ,
|  | ID |
| ) |  |
| static

static NODE* new_const_op_assign_gen | ( | struct parser_params * | parser,
|  | NODE * | lhs,
|  | ID | op,
|  | NODE * | rhs
| ) |  |
| static

static NODE* new_evstr_gen | ( | struct parser_params * | ,
|  | NODE * |
| ) |  |
| static

static NODE* new_op_assign_gen | ( | struct parser_params * | parser,
|  | NODE * | lhs,
|  | ID | op,
|  | NODE * | rhs
| ) |  |
| static

static NODE* new_yield_gen | ( | struct parser_params * | ,
|  | NODE * |
| ) |  |
| static

static NODE* newline_node | ( | NODE * | ) |  |
| static

static NODE* node_assign_gen | ( | struct parser_params * | ,
|  | NODE * | ,
|  | NODE * |
| ) |  |
| static

static NODE* node_newnode | ( | struct parser_params * | ,
|  | enum | node_type,
|  | VALUE | ,
|  | VALUE | ,
|  | VALUE |
| ) |  |
| static

NORETURN | ( | PRINTF_ARGS(void rb_compile_bug(const char *, int, const char *,...), 3, 4) | ) |  |

NORETURN | ( | void | rb_async_bug_errnoconst char *, int) |  |

NORETURN | ( | void | rb_load_failVALUE, const char *) |  |

NORETURN | ( | void | rb_cmperrVALUE, VALUE) |  |

NORETURN | ( | void | rb_invalid_strconst char *, const char *) |  |

NORETURN | ( | void | rb_error_frozenconst char *) |  |

NORETURN | ( | void | rb_error_arityint, int, int) |  |

NORETURN | ( | void | rb_exc_raiseVALUE) |  |

NORETURN | ( | void | rb_exc_fatalVALUE) |  |

NORETURN | ( | void | rb_jump_tagint) |  |

NORETURN | ( | void | rb_memerrorvoid) |  |

NORETURN | ( | void | rb_num_zerodivvoid) |  |

NORETURN | ( | void | rb_insecure_operationvoid) |  |

NORETURN | ( | void | rb_bug_errnoconst char *, int) |  |

NORETURN | ( | void | rb_sys_failconst char *) |  |

NORETURN | ( | void | rb_sys_fail_strVALUE) |  |

NORETURN | ( | void | rb_mod_sys_failVALUE, const char *) |  |

NORETURN | ( | void | rb_mod_sys_fail_strVALUE, VALUE) |  |

NORETURN | ( | void | rb_iter_breakvoid) |  |

NORETURN | ( | void | rb_iter_break_valueVALUE) |  |

NORETURN | ( | void | rb_exitint) |  |

NORETURN | ( | void | rb_notimplementvoid) |  |

NORETURN | ( | void | rb_syserr_failint, const char *) |  |

NORETURN | ( | void | rb_syserr_fail_strint, VALUE) |  |

NORETURN | ( | void | rb_mod_syserr_failVALUE, int, const char *) |  |

NORETURN | ( | void | rb_mod_syserr_fail_strVALUE, int, VALUE) |  |

NORETURN | ( | void | rb_throwconst char *, VALUE) |  |

NORETURN | ( | void | rb_throw_objVALUE, VALUE) |  |

VALUE num_interval_step_size | ( | VALUE | from,
|  | VALUE | to,
|  | VALUE | step,
|  | int | excl
| ) |  |

Definition at line 1814 of file numeric.c.

Referenced by int_downto_size(), int_upto_size(), num_step_size(), range_size(), and range_step_size().

ONIG_EXTERN int onigenc_ascii_apply_all_case_fold P_ | ( | (OnigCaseFoldType flag, OnigApplyAllCaseFoldFunc f, void *arg, OnigEncoding enc) | ) |  |

ONIG_EXTERN int onigenc_ascii_get_case_fold_codes_by_str P_ | ( | (OnigCaseFoldType flag, const OnigUChar *p, const OnigUChar *end, OnigCaseFoldCodeItem items[], OnigEncoding enc) | ) |  |

ONIG_EXTERN int onigenc_apply_all_case_fold_with_map P_ | ( | (int map_size, const OnigPairCaseFoldCodes map[], int ess_tsett_flag, OnigCaseFoldType flag, OnigApplyAllCaseFoldFunc f, void *arg) | ) |  |

ONIG_EXTERN int onigenc_get_case_fold_codes_by_str_with_map P_ | ( | (int map_size, const OnigPairCaseFoldCodes map[], int ess_tsett_flag, OnigCaseFoldType flag, const OnigUChar *p, const OnigUChar *end, OnigCaseFoldCodeItem items[]) | ) |  |

ONIG_EXTERN int onigenc_not_support_get_ctype_code_range P_ | ( | (OnigCtype ctype, OnigCodePoint *sb_out, const OnigCodePoint *ranges[], OnigEncoding enc) | ) |  |

ONIG_EXTERN int onigenc_is_mbc_newline_0x0a P_ | ( | (const UChar *p, const UChar *end, OnigEncoding enc) | ) |  |

ONIG_EXTERN int onigenc_ascii_mbc_case_fold P_ | ( | (OnigCaseFoldType flag, const UChar **p, const UChar *end, UChar *lower, OnigEncoding enc) | ) |  |

ONIG_EXTERN int onigenc_single_byte_mbc_enc_len P_ | ( | (const UChar *p, const UChar *e, OnigEncoding enc) | ) |  |

ONIG_EXTERN OnigCodePoint onigenc_single_byte_mbc_to_code P_ | ( | (const UChar *p, const UChar *end, OnigEncoding enc) | ) |  |

ONIG_EXTERN int onigenc_single_byte_code_to_mbclen P_ | ( | (OnigCodePoint code, OnigEncoding enc) | ) |  |

ONIG_EXTERN int onigenc_single_byte_code_to_mbc P_ | ( | (OnigCodePoint code, UChar *buf, OnigEncoding enc) | ) |  |

ONIG_EXTERN UChar* onigenc_single_byte_left_adjust_char_head P_ | ( | (const UChar *start, const UChar *s, const OnigUChar *end, OnigEncoding enc) | ) |  |

ONIG_EXTERN int onigenc_always_true_is_allowed_reverse_match P_ | ( | (const UChar *s, const UChar *end, OnigEncoding enc) | ) |  |

ONIG_EXTERN int onigenc_always_false_is_allowed_reverse_match P_ | ( | (const UChar *s, const UChar *end, OnigEncoding enc) | ) |  |

ONIG_EXTERN int onigenc_ascii_is_code_ctype P_ | ( | (OnigCodePoint code, unsigned int ctype, OnigEncoding enc) | ) |  |

ONIG_EXTERN OnigCodePoint onigenc_mbn_mbc_to_code P_ | ( | (OnigEncoding enc, const UChar *p, const UChar *end) | ) |  |

ONIG_EXTERN int onigenc_mbn_mbc_case_fold P_ | ( | (OnigEncoding enc, OnigCaseFoldType flag, const UChar **p, const UChar *end, UChar *lower) | ) |  |

ONIG_EXTERN int onigenc_mb2_code_to_mbclen P_ | ( | (OnigCodePoint code, OnigEncoding enc) | ) |  |

ONIG_EXTERN int onigenc_mb2_code_to_mbc P_ | ( | (OnigEncoding enc, OnigCodePoint code, UChar *buf) | ) |  |

ONIG_EXTERN int onigenc_minimum_property_name_to_ctype P_ | ( | (OnigEncoding enc, UChar *p, UChar *end) | ) |  |

ONIG_EXTERN int onigenc_unicode_property_name_to_ctype P_ | ( | (OnigEncoding enc, UChar *p, UChar *end) | ) |  |

ONIG_EXTERN int onigenc_mb2_is_code_ctype P_ | ( | (OnigEncoding enc, OnigCodePoint code, unsigned int ctype) | ) |  |

ONIG_EXTERN int onigenc_mb4_code_to_mbclen P_ | ( | (OnigCodePoint code, OnigEncoding enc) | ) |  |

ONIG_EXTERN int onigenc_mb4_code_to_mbc P_ | ( | (OnigEncoding enc, OnigCodePoint code, UChar *buf) | ) |  |

ONIG_EXTERN int onigenc_mb4_is_code_ctype P_ | ( | (OnigEncoding enc, OnigCodePoint code, unsigned int ctype) | ) |  |

ONIG_EXTERN int onigenc_unicode_is_code_ctype P_ | ( | (OnigCodePoint code, unsigned int ctype, OnigEncoding enc) | ) |  |

ONIG_EXTERN int onigenc_utf16_32_get_ctype_code_range P_ | ( | (OnigCtype ctype, OnigCodePoint *sb_out, const OnigCodePoint *ranges[], OnigEncoding enc) | ) |  |

ONIG_EXTERN int onigenc_unicode_ctype_code_range P_ | ( | (int ctype, const OnigCodePoint *ranges[]) | ) |  |

ONIG_EXTERN int onigenc_unicode_get_case_fold_codes_by_str P_ | ( | (OnigEncoding enc, OnigCaseFoldType flag, const OnigUChar *p, const OnigUChar *end, OnigCaseFoldCodeItem items[]) | ) |  |

ONIG_EXTERN int onigenc_unicode_mbc_case_fold P_ | ( | (OnigEncoding enc, OnigCaseFoldType flag, const UChar **pp, const UChar *end, UChar *fold) | ) |  |

ONIG_EXTERN int onigenc_unicode_apply_all_case_fold P_ | ( | (OnigCaseFoldType flag, OnigApplyAllCaseFoldFunc f, void *arg, OnigEncoding enc) | ) |  |

ONIG_EXTERN int onigenc_with_ascii_strncmp P_ | ( | (OnigEncoding enc, const UChar *p, const UChar *end, const UChar *sascii, int n) | ) |  |

ONIG_EXTERN int onigenc_with_ascii_strnicmp P_ | ( | (OnigEncoding enc, const UChar *p, const UChar *end, const UChar *sascii, int n) | ) |  |

ONIG_EXTERN UChar* onigenc_step P_ | ( | (OnigEncoding enc, const UChar *p, const UChar *end, int n) | ) |  |

int onig_is_in_code_range P_ | ( | (const UChar *p, OnigCodePoint code) | ) |  |

ONIG_EXTERN int onigenc_mbclen_approximate P_ | ( | (const OnigUChar *p, const OnigUChar *e, struct OnigEncodingTypeST *enc) | ) |  |

ONIG_EXTERN OnigUChar* onigenc_step_back P_ | ( | (OnigEncoding enc, const OnigUChar *start, const OnigUChar *s, const OnigUChar *end, int n) | ) |  |

ONIG_EXTERN int onigenc_init P_ | ( | (void) | ) |  |

ONIG_EXTERN int onigenc_set_default_encoding P_ | ( | (OnigEncoding enc) | ) |  |

ONIG_EXTERN OnigEncoding onigenc_get_default_encoding P_ | ( | (void) | ) |  |

ONIG_EXTERN void onigenc_set_default_caseconv_table P_ | ( | (const OnigUChar *table) | ) |  |

ONIG_EXTERN OnigUChar* onigenc_get_right_adjust_char_head_with_prev P_ | ( | (OnigEncoding enc, const OnigUChar *start, const OnigUChar *s, const OnigUChar *end, const OnigUChar **prev) | ) |  |

ONIG_EXTERN OnigUChar* onigenc_get_prev_char_head P_ | ( | (OnigEncoding enc, const OnigUChar *start, const OnigUChar *s, const OnigUChar *end) | ) |  |

ONIG_EXTERN OnigUChar* onigenc_get_left_adjust_char_head P_ | ( | (OnigEncoding enc, const OnigUChar *start, const OnigUChar *s, const OnigUChar *end) | ) |  |

ONIG_EXTERN OnigUChar* onigenc_get_right_adjust_char_head P_ | ( | (OnigEncoding enc, const OnigUChar *start, const OnigUChar *s, const OnigUChar *end) | ) |  |

ONIG_EXTERN int onigenc_strlen P_ | ( | (OnigEncoding enc, const OnigUChar *p, const OnigUChar *end) | ) |  |

ONIG_EXTERN int onigenc_strlen_null P_ | ( | (OnigEncoding enc, const OnigUChar *p) | ) |  |

ONIG_EXTERN int onigenc_str_bytelen_null P_ | ( | (OnigEncoding enc, const OnigUChar *p) | ) |  |

void onig_null_warn P_ | ( | (const char *s) | ) |  |

ONIG_EXTERN int onig_init P_ | ( | (void) | ) |  |

ONIG_EXTERN void onig_set_warn_func P_ | ( | (OnigWarnFunc f) | ) |  |

ONIG_EXTERN void onig_set_verb_warn_func P_ | ( | (OnigWarnFunc f) | ) |  |

ONIG_EXTERN int onig_new P_ | ( | (OnigRegex *, const OnigUChar *pattern, const OnigUChar *pattern_end, OnigOptionType option, OnigEncoding enc, const OnigSyntaxType *syntax, OnigErrorInfo *einfo) | ) |  |

ONIG_EXTERN int onig_reg_init P_ | ( | (OnigRegex reg, OnigOptionType option, OnigCaseFoldType case_fold_flag, OnigEncoding enc, const OnigSyntaxType *syntax) | ) |  |

ONIG_EXTERN int onig_new_without_alloc P_ | ( | (OnigRegex, const OnigUChar *pattern, const OnigUChar *pattern_end, OnigOptionType option, OnigEncoding enc, OnigSyntaxType *syntax, OnigErrorInfo *einfo) | ) |  |

ONIG_EXTERN int onig_new_deluxe P_ | ( | (OnigRegex *reg, const OnigUChar *pattern, const OnigUChar *pattern_end, OnigCompileInfo *ci, OnigErrorInfo *einfo) | ) |  |

ONIG_EXTERN void onig_free P_ | ( | (OnigRegex) | ) |  |

ONIG_EXTERN void onig_free_body P_ | ( | (OnigRegex) | ) |  |

ONIG_EXTERN int onig_recompile P_ | ( | (OnigRegex, const OnigUChar *pattern, const OnigUChar *pattern_end, OnigOptionType option, OnigEncoding enc, OnigSyntaxType *syntax, OnigErrorInfo *einfo) | ) |  |

ONIG_EXTERN int onig_recompile_deluxe P_ | ( | (OnigRegex reg, const OnigUChar *pattern, const OnigUChar *pattern_end, OnigCompileInfo *ci, OnigErrorInfo *einfo) | ) |  |

ONIG_EXTERN OnigPosition onig_search P_ | ( | (OnigRegex, const OnigUChar *str, const OnigUChar *end, const OnigUChar *start, const OnigUChar *range, OnigRegion *region, OnigOptionType option) | ) |  |

ONIG_EXTERN OnigPosition onig_search_gpos P_ | ( | (OnigRegex, const OnigUChar *str, const OnigUChar *end, const OnigUChar *global_pos, const OnigUChar *start, const OnigUChar *range, OnigRegion *region, OnigOptionType option) | ) |  |

ONIG_EXTERN OnigPosition onig_match P_ | ( | (OnigRegex, const OnigUChar *str, const OnigUChar *end, const OnigUChar *at, OnigRegion *region, OnigOptionType option) | ) |  |

ONIG_EXTERN OnigRegion* onig_region_new P_ | ( | (void) | ) |  |

ONIG_EXTERN void onig_region_init P_ | ( | (OnigRegion *region) | ) |  |

ONIG_EXTERN void onig_region_free P_ | ( | (OnigRegion *region, int free_self) | ) |  |

ONIG_EXTERN void onig_region_copy P_ | ( | (OnigRegion *to, OnigRegion *from) | ) |  |

ONIG_EXTERN void onig_region_clear P_ | ( | (OnigRegion *region) | ) |  |

ONIG_EXTERN int onig_region_resize P_ | ( | (OnigRegion *region, int n) | ) |  |

ONIG_EXTERN int onig_region_set P_ | ( | (OnigRegion *region, int at, int beg, int end) | ) |  |

ONIG_EXTERN int onig_name_to_group_numbers P_ | ( | (OnigRegex reg, const OnigUChar *name, const OnigUChar *name_end, int **nums) | ) |  |

ONIG_EXTERN int onig_name_to_backref_number P_ | ( | (OnigRegex reg, const OnigUChar *name, const OnigUChar *name_end, OnigRegion *region) | ) |  |

ONIG_EXTERN int onig_foreach_name P_ | ( | (OnigRegex reg, int(*func)(const OnigUChar *, const OnigUChar *, int, int *, OnigRegex, void *), void *arg) | ) |  |

ONIG_EXTERN int onig_number_of_names P_ | ( | (OnigRegex reg) | ) |  |

ONIG_EXTERN int onig_number_of_captures P_ | ( | (OnigRegex reg) | ) |  |

ONIG_EXTERN int onig_number_of_capture_histories P_ | ( | (OnigRegex reg) | ) |  |

ONIG_EXTERN OnigCaptureTreeNode* onig_get_capture_tree P_ | ( | (OnigRegion *region) | ) |  |

ONIG_EXTERN int onig_capture_tree_traverse P_ | ( | (OnigRegion *region, int at, int(*callback_func)(int, OnigPosition, OnigPosition, int, int, void *), void *arg) | ) |  |

ONIG_EXTERN int onig_noname_group_capture_is_active P_ | ( | (OnigRegex reg) | ) |  |

ONIG_EXTERN OnigEncoding onig_get_encoding P_ | ( | (OnigRegex reg) | ) |  |

ONIG_EXTERN OnigOptionType onig_get_options P_ | ( | (OnigRegex reg) | ) |  |

ONIG_EXTERN OnigCaseFoldType onig_get_case_fold_flag P_ | ( | (OnigRegex reg) | ) |  |

ONIG_EXTERN const OnigSyntaxType* onig_get_syntax P_ | ( | (OnigRegex reg) | ) |  |

ONIG_EXTERN int onig_set_default_syntax P_ | ( | (const OnigSyntaxType *syntax) | ) |  |

ONIG_EXTERN void onig_copy_syntax P_ | ( | (OnigSyntaxType *to, const OnigSyntaxType *from) | ) |  |

ONIG_EXTERN unsigned int onig_get_syntax_op P_ | ( | (OnigSyntaxType *syntax) | ) |  |

ONIG_EXTERN unsigned int onig_get_syntax_op2 P_ | ( | (OnigSyntaxType *syntax) | ) |  |

ONIG_EXTERN unsigned int onig_get_syntax_behavior P_ | ( | (OnigSyntaxType *syntax) | ) |  |

ONIG_EXTERN OnigOptionType onig_get_syntax_options P_ | ( | (OnigSyntaxType *syntax) | ) |  |

ONIG_EXTERN void onig_set_syntax_op P_ | ( | (OnigSyntaxType *syntax, unsigned int op) | ) |  |

ONIG_EXTERN void onig_set_syntax_op2 P_ | ( | (OnigSyntaxType *syntax, unsigned int op2) | ) |  |

ONIG_EXTERN void onig_set_syntax_behavior P_ | ( | (OnigSyntaxType *syntax, unsigned int behavior) | ) |  |

ONIG_EXTERN void onig_set_syntax_options P_ | ( | (OnigSyntaxType *syntax, OnigOptionType options) | ) |  |

ONIG_EXTERN int onig_set_meta_char P_ | ( | (OnigSyntaxType *syntax, unsigned int what, OnigCodePoint code) | ) |  |

ONIG_EXTERN void onig_copy_encoding P_ | ( | (OnigEncoding to, OnigEncoding from) | ) |  |

ONIG_EXTERN OnigCaseFoldType onig_get_default_case_fold_flag P_ | ( | (void) | ) |  |

ONIG_EXTERN int onig_set_default_case_fold_flag P_ | ( | (OnigCaseFoldType case_fold_flag) | ) |  |

ONIG_EXTERN unsigned int onig_get_match_stack_limit_size P_ | ( | (void) | ) |  |

ONIG_EXTERN int onig_set_match_stack_limit_size P_ | ( | (unsigned int size) | ) |  |

ONIG_EXTERN int onig_end P_ | ( | (void) | ) |  |

ONIG_EXTERN const char* onig_version P_ | ( | (void) | ) |  |

ONIG_EXTERN const char* onig_copyright P_ | ( | (void) | ) |  |

static int parser_yyerror | ( | struct parser_params * | ,
|  | const char * |
| ) |  |
| static

PRINTF_ARGS | ( | void | ruby_debug_printfconst char *,...,
|  | 1 | ,
|  | 2 |
| ) |  |

PRINTF_ARGS | ( | VALUE | rb_enc_sprintfrb_encoding *, const char *,...,
|  | 2 | ,
|  | 3 |
| ) |  |

PRINTF_ARGS | ( | NORETURN(void rb_enc_raise(rb_encoding *, VALUE, const char *,...)) | ,
|  | 3 | ,
|  | 4 |
| ) |  |

PRINTF_ARGS | ( | NORETURN(void rb_loaderror(const char *,...)) | ,
|  | 1 | ,
|  | 2 |
| ) |  |

PRINTF_ARGS | ( | NORETURN(void rb_loaderror_with_path(VALUE path, const char *,...)) | ,
|  | 2 | ,
|  | 3 |
| ) |  |

PRINTF_ARGS | ( | NORETURN(void rb_name_error(ID, const char *,...)) | ,
|  | 2 | ,
|  | 3 |
| ) |  |

PRINTF_ARGS | ( | NORETURN(void rb_name_error_str(VALUE, const char *,...)) | ,
|  | 2 | ,
|  | 3 |
| ) |  |

PRINTF_ARGS | ( | void | rb_compile_errorconst char *, int, const char *,...,
|  | 3 | ,
|  | 4 |
| ) |  |

PRINTF_ARGS | ( | void | rb_compile_error_with_encconst char *, int, void *, const char *,...,
|  | 4 | ,
|  | 5 |
| ) |  |

PRINTF_ARGS | ( | void | rb_compile_error_appendconst char *,...,
|  | 1 | ,
|  | 2 |
| ) |  |

PRINTF_ARGS | ( | VALUE | rb_sprintfconst char *,...,
|  | 1 | ,
|  | 2 |
| ) |  |

PRINTF_ARGS | ( | VALUE | rb_str_catfVALUE, const char *,...,
|  | 2 | ,
|  | 3 |
| ) |  |

PRINTF_ARGS | ( | NORETURN(void rb_raise(VALUE, const char *,...)) | ,
|  | 2 | ,
|  | 3 |
| ) |  |

PRINTF_ARGS | ( | NORETURN(void rb_fatal(const char *,...)) | ,
|  | 1 | ,
|  | 2 |
| ) |  |

PRINTF_ARGS | ( | NORETURN(void rb_bug(const char *,...)) | ,
|  | 1 | ,
|  | 2 |
| ) |  |

PRINTF_ARGS | ( | void | rb_warningconst char *,...,
|  | 1 | ,
|  | 2 |
| ) |  |

PRINTF_ARGS | ( | void | rb_compile_warningconst char *, int, const char *,...,
|  | 3 | ,
|  | 4 |
| ) |  |

PRINTF_ARGS | ( | void | rb_sys_warningconst char *,...,
|  | 1 | ,
|  | 2 |
| ) |  |

PRINTF_ARGS | ( | void | rb_warnconst char *,...,
|  | 1 | ,
|  | 2 |
| ) |  |

PRINTF_ARGS | ( | void | rb_compile_warnconst char *, int, const char *,...,
|  | 3 | ,
|  | 4 |
| ) |  |

PRINTF_ARGS | ( | int | ruby_snprintfchar *str, size_t n, char const *fmt,...,
|  | 3 | ,
|  | 4 |
| ) |  |

ONIG_EXTERN int onig_error_code_to_str PV_ | ( | (OnigUChar *s, OnigPosition err_code,...) | ) |  |

void rb_add_event_hook | ( | rb_event_hook_func_t | func,
|  | rb_event_flag_t | events,
|  | VALUE | data
| ) |  |

Definition at line 135 of file vm_trace.c.

Referenced by ole_initialize(), rb_set_coverages(), and set_trace_func().

void rb_alias | ( | VALUE | ,
|  | ID | ,
|  | ID |
| ) |  |

Definition at line 1175 of file vm_method.c.

Referenced by each_attr_def(), Init_signal(), Init_strscan(), m_core_set_method_alias(), rb_define_alias(), and rb_mod_alias_method().

void rb_alias_variable | ( | ID | ,
|  | ID |
| ) |  |

Definition at line 858 of file variable.c.

Referenced by Init_load(), and m_core_set_variable_alias().

void* rb_alloc_tmp_buffer | ( | volatile VALUE * | store,
|  | long | len
| ) |  |

Definition at line 814 of file string.c.

VALUE rb_any_to_s | ( | VALUE | ) |  |

Definition at line 384 of file object.c.

Referenced by Init_Object(), name_err_mesg_to_str(), rb_hash_fetch_m(), rb_io_inspect(), rb_mod_to_s(), rb_obj_as_string(), rb_obj_basic_to_s_p(), rb_obj_inspect(), and rb_reg_inspect().

VALUE rb_apply | ( | VALUE | recv,
|  | ID | mid,
|  | VALUE | args
| ) |  |

Calls a method.

Parameters

  recv | receiver of the method
  mid | an ID that represents the name of the method
  args | an Array object which contains method arguments

Precondition
  args must refer an Array object.

Definition at line 745 of file vm_eval.c.

Referenced by ary2list(), ary2list2(), exec_callback(), ip_ruby_cmd_core(), and tk_do_callback().

VALUE rb_Array | ( | VALUE | ) |  |

Definition at line 2747 of file object.c.

Referenced by dir_entries(), range_last(), rb_f_array(), and readline_attempted_completion_function().

VALUE rb_ary_aref | ( | int | ,
|  | VALUE * | ,
|  | VALUE |
| ) |  |

Definition at line 1163 of file array.c.

VALUE rb_ary_assoc | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 3477 of file array.c.

VALUE rb_ary_cat | ( | VALUE | ,
|  | const VALUE * | ,
|  | long |
| ) |  |

Definition at line 846 of file array.c.

VALUE rb_ary_clear | ( | VALUE | ) |  |

Definition at line 3220 of file array.c.

VALUE rb_ary_cmp | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 3724 of file array.c.

VALUE rb_ary_concat | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 3382 of file array.c.

VALUE rb_ary_delete | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 2760 of file array.c.

VALUE rb_ary_delete_at | ( | VALUE | ,
|  | long |
| ) |  |

Definition at line 2813 of file array.c.

void rb_ary_delete_same | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 2790 of file array.c.

VALUE rb_ary_dup | ( | VALUE | ) |  |

Definition at line 1778 of file array.c.

VALUE rb_ary_each | ( | VALUE | ) |  |

Definition at line 1670 of file array.c.

VALUE rb_ary_entry | ( | VALUE | ,
|  | long |
| ) |  |

Definition at line 1101 of file array.c.

void rb_ary_free | ( | VALUE | ) |  |

Definition at line 471 of file array.c.

VALUE rb_ary_freeze | ( | VALUE | ) |  |

Definition at line 330 of file array.c.

VALUE rb_ary_includes | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 3666 of file array.c.

VALUE rb_ary_join | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1886 of file array.c.

VALUE rb_ary_last | ( | int | ,
|  | VALUE * | ,
|  | VALUE |
| ) |  |

Definition at line 1258 of file array.c.

void rb_ary_modify | ( | VALUE | ) |  |

Definition at line 254 of file array.c.

VALUE rb_ary_new | ( | void | ) |  |

Definition at line 424 of file array.c.

VALUE rb_ary_new2 | ( | long | ) |  |

Definition at line 417 of file array.c.

VALUE rb_ary_new3 | ( | long | ,
|  |  | ...
| ) |  |

Definition at line 432 of file array.c.

VALUE rb_ary_new4 | ( | long | ,
|  | const VALUE * |
| ) |  |

Definition at line 451 of file array.c.

VALUE rb_ary_plus | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 3353 of file array.c.

VALUE rb_ary_pop | ( | VALUE | ) |  |

Definition at line 879 of file array.c.

VALUE rb_ary_push | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 822 of file array.c.

VALUE rb_ary_rassoc | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 3510 of file array.c.

VALUE rb_ary_replace | ( | VALUE | copy,
|  | VALUE | orig
| ) |  |

Definition at line 3168 of file array.c.

VALUE rb_ary_resize | ( | VALUE | ary,
|  | long | len
| ) |  |

expands or shrinks ary to len elements.

expanded region will be filled with Qnil.

Parameters

  ary | an array
  len | new size

Returns
  ary

Postcondition
  the size of ary is len.

Definition at line 1513 of file array.c.

VALUE rb_ary_resurrect | ( | VALUE | ary) |  |

Definition at line 1787 of file array.c.

VALUE rb_ary_reverse | ( | VALUE | ) |  |

Definition at line 2043 of file array.c.

VALUE rb_ary_rotate | ( | VALUE | ,
|  | long |
| ) |  |

Definition at line 2105 of file array.c.

void rb_ary_set_len | ( | VALUE | ,
|  | long |
| ) |  |

Definition at line 1490 of file array.c.

VALUE rb_ary_shared_with_p | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 358 of file array.c.

VALUE rb_ary_shift | ( | VALUE | ) |  |

Definition at line 929 of file array.c.

VALUE rb_ary_sort | ( | VALUE | ) |  |

Definition at line 2373 of file array.c.

VALUE rb_ary_sort_bang | ( | VALUE | ) |  |

Definition at line 2290 of file array.c.

void rb_ary_store | ( | VALUE | ,
|  | long | ,
|  | VALUE |
| ) |  |

Definition at line 719 of file array.c.

VALUE rb_ary_subseq | ( | VALUE | ,
|  | long | ,
|  | long |
| ) |  |

Definition at line 1110 of file array.c.

VALUE rb_ary_tmp_new | ( | long | ) |  |

Definition at line 465 of file array.c.

VALUE rb_ary_to_ary | ( | VALUE | ) |  |

Definition at line 1425 of file array.c.

VALUE rb_ary_to_s | ( | VALUE | ) |  |

Definition at line 1994 of file array.c.

VALUE rb_ary_unshift | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1084 of file array.c.

int rb_ascii8bit_encindex | ( | void | ) |  |

Definition at line 1160 of file encoding.c.

rb_encoding* rb_ascii8bit_encoding | ( | void | ) |  |

Definition at line 1151 of file encoding.c.

VALUE rb_assoc_new | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 545 of file array.c.

void rb_attr | ( | VALUE | ,
|  | ID | ,
|  | int | ,
|  | int | ,
|  | int |
| ) |  |

Definition at line 791 of file vm_method.c.

Referenced by cbsubst_table_setup(), Init_Exception(), Init_ossl_asn1(), Init_ossl_pkcs12(), Init_ossl_pkcs7(), Init_ossl_ssl(), Init_ossl_x509ext(), Init_ossl_x509store(), rb_define_attr(), rb_mod_attr(), rb_mod_attr_accessor(), rb_mod_attr_reader(), and rb_mod_attr_writer().

VALUE rb_attr_get | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 1117 of file variable.c.

Referenced by ecerr_destination_encoding(), ecerr_destination_encoding_name(), ecerr_error_bytes(), ecerr_error_char(), ecerr_incomplete_input(), ecerr_readagain_bytes(), ecerr_source_encoding(), ecerr_source_encoding_name(), eval_string_with_cref(), exc_backtrace(), exc_equal(), exc_to_s(), exit_status(), exit_success_p(), gzfile_error_inspect(), inspect_enumerator(), ip_set_exc_message(), lazy_drop_func(), lazy_drop_while_func(), lazy_take_func(), lazy_zip_arrays_func(), lazy_zip_func(), lib_fromUTF8_core(), lib_toUTF8_core(), name_err_name(), name_err_to_s(), nometh_err_args(), ossl_asn1_get_asn1type(), private_iv_get(), pst_pid(), rb_mod_refine(), rb_mod_to_s(), rb_refinement_module_get_refined_class(), rb_using_module(), readline_attempted_completion_function(), readline_s_get_completion_case_fold(), readline_s_get_completion_proc(), reg_compile_gen(), slicebefore_i(), sockopt_data(), sockopt_family_m(), sockopt_level(), sockopt_optname(), stop_result(), syserr_eqq(), syserr_errno(), vm_call0_body(), and vm_getivar().

void rb_autoload | ( | VALUE | ,
|  | ID | ,
|  | const char * |
| ) |  |

Definition at line 1599 of file variable.c.

Referenced by rb_dl_init_callbacks(), and rb_mod_autoload().

VALUE rb_autoload_load | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 1760 of file variable.c.

Referenced by rb_const_get_0(), and vm_get_ev_const().

VALUE rb_autoload_p | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 1805 of file variable.c.

Referenced by rb_mod_autoload_p().

static void rb_backref_error_gen | ( | struct parser_params * | ,
|  | NODE * |
| ) |  |
| static

VALUE rb_backref_get | ( | void | ) |  |

Definition at line 762 of file vm.c.

Referenced by date__httpdate(), date__iso8601(), date__jisx0301(), date__parse(), date__rfc2822(), date__rfc3339(), date__strptime_internal(), date__xmlschema(), last_match_getter(), last_paren_match_getter(), match_getter(), nucomp_s_convert(), nurat_s_convert(), postmatch_getter(), prematch_getter(), rb_reg_match_m(), rb_reg_s_last_match(), rb_reg_search(), rb_str_rpartition(), rb_str_split_m(), rb_str_sub_bang(), rb_str_subpat(), rb_str_subpat_set(), scan_once(), and str_gsub().

void rb_backref_set | ( | VALUE | ) |  |

Definition at line 768 of file vm.c.

Referenced by date__httpdate(), date__iso8601(), date__jisx0301(), date__parse(), date__rfc2822(), date__rfc3339(), date__strptime_internal(), date__xmlschema(), match_setter(), nucomp_s_convert(), nurat_s_convert(), rb_reg_eqq(), rb_reg_match2(), rb_reg_match_m(), rb_reg_search(), rb_str_index_m(), rb_str_rindex_m(), and reg_match_pos().

void rb_backtrace | ( | void | ) |  |

Definition at line 766 of file vm_backtrace.c.

Referenced by load_lock(), and rescue_callback().

int rb_backtrace_p | ( | VALUE | obj) |  |

Definition at line 413 of file vm_backtrace.c.

Referenced by exc_backtrace(), rb_check_backtrace(), and set_backtrace().

void rb_backtrace_print_as_bugreport | ( | void | ) |  |

Definition at line 750 of file vm_backtrace.c.

Referenced by rb_vm_bugreport().

VALUE rb_backtrace_to_str_ary | ( | VALUE | obj) |  |

Definition at line 586 of file vm_backtrace.c.

Referenced by backtrace_dump_data(), exc_backtrace(), and set_backtrace().

double rb_big2dbl | ( | VALUE | ) |  |

Definition at line 1429 of file bignum.c.

SIGNED_VALUE rb_big2long | ( | VALUE | ) |  |

Definition at line 1243 of file bignum.c.

VALUE rb_big2str | ( | VALUE | ,
|  | int |
| ) |  |

Definition at line 1159 of file bignum.c.

VALUE rb_big2str0 | ( | VALUE | ,
|  | int | ,
|  | int |
| ) |  |

Definition at line 1113 of file bignum.c.

VALUE rb_big2ulong | ( | VALUE | ) |  |

Definition at line 1225 of file bignum.c.

VALUE rb_big2ulong_pack | ( | VALUE | x) |  |

Definition at line 1215 of file bignum.c.

void rb_big_2comp | ( | VALUE | ) |  |

Definition at line 225 of file bignum.c.

VALUE rb_big_and | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 3279 of file bignum.c.

VALUE rb_big_clone | ( | VALUE | ) |  |

Definition at line 192 of file bignum.c.

VALUE rb_big_cmp | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1553 of file bignum.c.

VALUE rb_big_div | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 2924 of file bignum.c.

VALUE rb_big_divmod | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 3010 of file bignum.c.

VALUE rb_big_eq | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1706 of file bignum.c.

VALUE rb_big_eql | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1737 of file bignum.c.

VALUE rb_big_fdiv | ( | VALUE | x,
|  | VALUE | y
| ) |  |

Definition at line 3123 of file bignum.c.

VALUE rb_big_idiv | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 2937 of file bignum.c.

VALUE rb_big_lshift | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 3544 of file bignum.c.

VALUE rb_big_minus | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 2068 of file bignum.c.

VALUE rb_big_modulo | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 2952 of file bignum.c.

VALUE rb_big_mul | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 2660 of file bignum.c.

VALUE rb_big_new | ( | long | ,
|  | int |
| ) |  |

Definition at line 186 of file bignum.c.

VALUE rb_big_norm | ( | VALUE | ) |  |

Definition at line 282 of file bignum.c.

VALUE rb_big_or | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 3375 of file bignum.c.

void rb_big_pack | ( | VALUE | val,
|  | unsigned long * | buf,
|  | long | num_longs
| ) |  |

Definition at line 369 of file bignum.c.

VALUE rb_big_plus | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 2031 of file bignum.c.

VALUE rb_big_pow | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 3175 of file bignum.c.

void rb_big_resize | ( | VALUE | big,
|  | long | len
| ) |  |

Definition at line 160 of file bignum.c.

VALUE rb_big_rshift | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 3608 of file bignum.c.

VALUE rb_big_uminus | ( | VALUE | x) |  |

Definition at line 1754 of file bignum.c.

VALUE rb_big_unpack | ( | unsigned long * | buf,
|  | long | num_longs
| ) |  |

Definition at line 411 of file bignum.c.

VALUE rb_big_xor | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 3470 of file bignum.c.

int rb_bigzero_p | ( | VALUE | x) |  |

Definition at line 91 of file bignum.c.

VALUE rb_binding_new | ( | void | ) |  |

Definition at line 343 of file proc.c.

Referenced by call_trace_func(), Init_VM(), and rb_f_binding().

VALUE rb_block_call | ( | VALUE | ,
|  | ID | ,
|  | int | ,
|  | VALUE * | ,
|  | VALUE(*)(ANYARGS) | ,
|  | VALUE |
| ) |  |

Definition at line 1131 of file vm_eval.c.

Referenced by argf_each_byte(), argf_each_char(), argf_each_codepoint(), argf_each_line(), chunk_i(), enum_all(), enum_any(), enum_chunk(), enum_collect(), enum_count(), enum_cycle(), enum_drop(), enum_drop_while(), enum_each_cons(), enum_each_entry(), enum_each_slice(), enum_each_with_index(), enum_each_with_object(), enum_find(), enum_find_all(), enum_find_index(), enum_first(), enum_flat_map(), enum_grep(), enum_group_by(), enum_inject(), enum_max(), enum_max_by(), enum_member(), enum_min(), enum_min_by(), enum_minmax(), enum_minmax_by(), enum_none(), enum_one(), enum_partition(), enum_reject(), enum_slice_before(), enum_sort_by(), enum_take(), enum_take_while(), enum_to_a(), enum_zip(), enumerator_block_call(), fdbm_replace(), fdbm_update(), fgdbm_replace(), fgdbm_update(), fsdbm_replace(), fsdbm_update(), join_der(), lazy_drop(), lazy_drop_while(), lazy_flat_map(), lazy_flat_map_each(), lazy_grep(), lazy_init_block_i(), lazy_initialize(), lazy_map(), lazy_reject(), lazy_select(), lazy_take(), lazy_take_while(), lazy_zip(), next_i(), ole_invoke(), ossl_pkcs7_set_certificates(), ossl_pkcs7_set_crls(), ossl_sslctx_setup(), ossl_x509name_initialize(), path_each_entry(), path_each_line(), path_open(), path_opendir(), path_s_glob(), path_sub(), range_each(), range_first(), range_step(), rb_ary_sort_by_bang(), save_env(), and slicebefore_i().

int rb_block_given_p | ( | void | ) |  |

Definition at line 672 of file eval.c.

VALUE rb_block_lambda | ( | void | ) |  |

Definition at line 493 of file proc.c.

Referenced by Init_Proc(), Init_VM(), rb_f_lambda(), and rb_mod_define_method().

VALUE rb_block_proc | ( | void | ) |  |

Definition at line 479 of file proc.c.

Referenced by define_final(), enum_chunk(), enum_slice_before(), enumerator_initialize(), ev_on_event(), generator_initialize(), Init_Proc(), Init_VM(), lazy_to_enum(), lib_thread_callback(), obj_to_enum(), ossl_x509store_verify(), proc_call(), rb_f_at_exit(), rb_f_trace_var(), rb_fiber_init(), rb_hash_initialize(), rb_method_call(), rb_scan_args(), sig_trap(), thread_create_core(), tk_install_cmd(), tracepoint_new_s(), and yielder_initialize().

const char* rb_builtin_class_name | ( | VALUE | x) |  |

Definition at line 414 of file error.c.

const char* rb_builtin_type_name | ( | int | t) |  |

Definition at line 403 of file error.c.

void rb_call_end_proc | ( | VALUE | data) |  |

Definition at line 11 of file eval_jump.c.

void rb_call_inits | ( | void | ) |  |

Definition at line 18 of file inits.c.

Referenced by ruby_setup().

VALUE rb_call_super | ( | int | ,
|  | const VALUE * |
| ) |  |

Definition at line 273 of file vm_eval.c.

Referenced by esignal_init(), exit_initialize(), float_denominator(), float_numerator(), fole_initialize(), gzfile_error_inspect(), interrupt_init(), lazy_super(), lazy_zip(), name_err_initialize(), ossl_ssl_initialize(), path_freeze(), path_taint(), path_untaint(), range_include(), range_max(), range_min(), strio_initialize(), and syserr_initialize().

VALUE rb_catch | ( | const char * | ,
|  | VALUE(*)(ANYARGS) | ,
|  | VALUE |
| ) |  |

Referenced by reduce().

VALUE rb_catch_obj | ( | VALUE | ,
|  | VALUE(*)(ANYARGS) | ,
|  | VALUE |
| ) |  |

Referenced by exec_recursive(), rb_catch(), and rb_f_catch().

int rb_char_to_option_kcode | ( | int | c,
|  | int * | option,
|  | int * | kcode
| ) |  |

Definition at line 301 of file re.c.

Referenced by parser_regx_options(), and reg_fragment_setenc_gen().

VALUE rb_check_array_type | ( | VALUE | ) |  |

Definition at line 557 of file array.c.

VALUE rb_check_backtrace | ( | VALUE | ) |  |

Definition at line 710 of file error.c.

VALUE rb_check_block_call | ( | VALUE | ,
|  | ID | ,
|  | int | ,
|  | VALUE * | ,
|  | VALUE(*)(ANYARGS) | ,
|  | VALUE |
| ) |  |

Definition at line 1153 of file vm_eval.c.

Referenced by take_items().

VALUE rb_check_convert_type | ( | VALUE | ,
|  | int | ,
|  | const char * | ,
|  | const char * |
| ) |  |

Definition at line 2364 of file object.c.

Referenced by ary_join_1(), check_exec_redirect_fd(), rb_Array(), rb_check_array_type(), rb_check_hash_type(), rb_check_regexp_type(), rb_check_string_type(), rb_check_to_float(), rb_file_initialize(), rb_gzwriter_initialize(), rb_hash_set_default_proc(), rb_io_check_io(), rb_stat(), and vm_caller_setup_args().

void rb_check_copyable | ( | VALUE | obj,
|  | VALUE | orig
| ) |  |

Definition at line 2001 of file error.c.

void rb_check_frozen | ( | VALUE | ) |  |

Definition at line 1979 of file error.c.

static void rb_check_frozen_inline | ( | VALUE | obj) |  |
| inline static

Definition at line 254 of file ripper.y.

VALUE rb_check_funcall | ( | VALUE | ,
|  | ID | ,
|  | int | ,
|  | VALUE * |
| ) |  |

Definition at line 408 of file vm_eval.c.

Referenced by convert_type(), enum_size(), enumerator_rewind(), exc_equal(), flo_cmp(), invcmp_recursive(), is_integer_p(), iterate_check_method(), make_exception(), marshal_dump(), marshal_load(), num_exact(), path_initialize(), rb_dlptr_s_to_ptr(), rb_fiddle_ptr_s_to_ptr(), rb_get_path_check_to_string(), rb_str_cmp_m(), time_timespec(), and try_convert_to_exception().

VALUE rb_check_funcall_with_hook | ( | VALUE | recv,
|  | ID | mid,
|  | int | argc,
|  | VALUE * | argv,
|  | rb_check_funcall_hook * | hook,
|  | VALUE | arg
| ) |  |

Definition at line 427 of file vm_eval.c.

VALUE rb_check_hash_type | ( | VALUE | ) |  |

Definition at line 461 of file hash.c.

Referenced by get_hash(), rb_econv_prepare_options(), rb_exec_getargs(), rb_Hash(), rb_hash_s_try_convert(), rb_io_s_popen(), rb_scan_args(), rb_str_sub_bang(), str_gsub(), and vm_callee_setup_keyword_arg().

ID rb_check_id | ( | volatile VALUE * | namep) |  |

Returns ID for the given name if it is interned already, or 0.

Parameters

  namep | the pointer to the name object

Returns
  the ID for *namep

Precondition
  the object referred by `namep` must be a Symbol or a String, or possible to convert with to_str method.

Postcondition
  the object referred by `namep` is a Symbol or a String if non-zero value is returned, or is a String if 0 is returned.

Definition at line 16162 of file ripper.c.

ID rb_check_id_cstr | ( | const char * | ptr,
|  | long | len,
|  | rb_encoding * | enc
| ) |  |

Definition at line 16209 of file ripper.c.

void rb_check_safe_obj | ( | VALUE | ) |  |

Definition at line 113 of file safe.c.

Referenced by constant_arg(), rb_check_safe_str(), and rb_dlcfunc_call().

VALUE rb_check_string_type | ( | VALUE | ) |  |

Definition at line 1508 of file string.c.

Referenced by ary_join_1(), constant_arg(), env_has_value(), env_rassoc(), get_pat(), gzreader_gets(), io_encoding_set(), make_exception(), marshal_load(), month_arg(), prepare_getline_args(), range_each(), range_step(), rb_ary_join(), rb_ary_times(), rb_check_id(), rb_check_sockaddr_string_type(), rb_convert_to_integer(), rb_f_kill(), rb_io_extract_encoding_option(), rb_mod_const_get(), rb_str_format(), rb_str_index_m(), rb_str_partition(), rb_str_rindex_m(), rb_str_rpartition(), rb_str_s_try_convert(), rb_String(), rb_to_encoding_index(), rb_to_id(), reg_operand(), setup_narg(), strio_each(), strio_getline(), strio_readlines(), trap_handler(), and utc_offset_arg().

VALUE rb_check_to_float | ( | VALUE | ) |  |

Definition at line 2687 of file object.c.

Referenced by rand_random(), and rand_range().

VALUE rb_check_to_int | ( | VALUE | ) |  |

Definition at line 2418 of file object.c.

Referenced by exit_initialize().

VALUE rb_check_to_integer | ( | VALUE | ,
|  | const char * |
| ) |  |

Definition at line 2398 of file object.c.

Referenced by esignal_init(), num_exact(), rand_random(), rand_range(), range_include(), range_step(), rb_check_to_int(), rb_io_extract_modeenc(), rb_io_s_sysopen(), and sockopt_s_linger().

void rb_check_trusted | ( | VALUE | ) |  |

Definition at line 1995 of file error.c.

static void rb_check_trusted_inline | ( | VALUE | obj) |  |
| inline static

Definition at line 260 of file ripper.y.

void rb_check_type | ( | VALUE | ,
|  | int |
| ) |  |

Definition at line 440 of file error.c.

void* rb_check_typeddata | ( | VALUE | ,
|  | const rb_data_type_t * |
| ) |  |

Definition at line 483 of file error.c.

const char* rb_class2name | ( | VALUE | ) |  |

Definition at line 384 of file variable.c.

Referenced by BigDecimal_new(), extract_user_token(), method_inspect(), mnew(), mSyslog_inspect(), mSyslog_log(), ossl_asn1_default_tag(), ossl_cipher_init(), ossl_x509_inspect(), pst_inspect(), r_object0(), rb_define_class_id_under(), rb_define_module_id_under(), rb_dlptr_inspect(), rb_fiddle_ptr_inspect(), rb_io_s_new(), rb_mod_define_method(), rb_mod_remove_method(), rb_obj_alloc(), rb_obj_classname(), rb_thread_current_status(), rb_vm_bugreport(), remove_method(), strscan_inspect(), thread_s_new(), umethod_bind(), and vm_search_super_method().

VALUE rb_class_get_superclass | ( | VALUE | ) |  |

Definition at line 1804 of file object.c.

VALUE rb_class_inherited_p | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1461 of file object.c.

Referenced by Init_Object(), r_object0(), rb_mod_cmp(), rb_mod_define_method(), rb_mod_ge(), rb_mod_lt(), and rb_threadptr_pending_interrupt_include_p().

VALUE rb_class_name | ( | VALUE | ) |  |

Definition at line 378 of file variable.c.

Referenced by cannot_be_coerced_into_BigDecimal(), dir_inspect(), error_print(), exc_inspect(), exc_to_s(), inspect_struct(), mString_to_json_raw_object(), name_err_mesg_to_str(), name_err_to_s(), rb_any_to_s(), rb_class2name(), rb_const_get_0(), rb_const_remove(), rb_const_set(), rb_cvar_get(), rb_cvar_set(), rb_io_inspect(), rb_method_entry_make(), rb_method_name_error(), rb_mod_cvar_get(), rb_mod_freeze(), rb_mod_remove_const(), rb_mod_remove_cvar(), rb_mod_to_s(), rb_obj_inspect(), rb_print_undef(), rb_print_undef_str(), rb_undef(), set_const_visibility(), uninitialized_constant(), and w_extended().

VALUE rb_class_new_instance | ( | int | ,
|  | VALUE * | ,
|  | VALUE |
| ) |  |

Definition at line 1756 of file object.c.

Referenced by console_dev(), copy_stream_body(), each_entry_i(), float_value(), glob_i(), gzfile_wrap(), Init_Exception(), Init_IO(), Init_Object(), Init_Regexp(), io_new_instance(), JSON_parse_array(), JSON_parse_object(), make_no_method_exception(), make_struct(), mark(), new_wrap(), path_basename(), path_dirname(), path_entries(), path_expand_path(), path_f_pathname(), path_readlink(), path_realdirpath(), path_realpath(), path_s_getwd(), path_s_glob(), path_split(), path_sub(), path_sub_ext(), process_sflag(), rb_dl_dlopen(), rb_exit(), rb_f_abort(), rb_fiddle_new_function(), rb_io_initialize(), rb_io_s_new(), rb_io_s_open(), rb_name_error(), rb_name_error_str(), rb_reg_s_union(), rb_struct_alloc(), rb_struct_new(), rb_syserr_new_str(), strio_s_open(), time_s_now(), and tk_s_new().

static VALUE rb_class_of | ( | VALUE | obj) |  |
| inline static

Definition at line 1503 of file ripper.y.

References NEW_MASGN.

Referenced by flatten().

VALUE rb_class_path | ( | VALUE | ) |  |

Definition at line 256 of file variable.c.

Referenced by class2path(), and rb_class_name().

VALUE rb_class_real | ( | VALUE | ) |  |

Definition at line 171 of file object.c.

Referenced by class2path(), make_singleton_class(), rb_class_name(), rb_define_class(), rb_define_class_id_under(), rb_f_autoload(), rb_obj_alloc(), rb_obj_class(), uninitialized_constant(), w_class(), and w_uclass().

VALUE rb_class_superclass | ( | VALUE | ) |  |

Definition at line 1786 of file object.c.

Referenced by get_digest_base_metadata(), Init_Object(), and ossl_asn1_default_tag().

void rb_clear_cache | ( | void | ) |  |

Definition at line 46 of file vm_method.c.

Referenced by rb_include_module(), rb_prepend_module(), and top_using().

void rb_clear_cache_by_class | ( | VALUE | ) |  |

Definition at line 64 of file vm_method.c.

Referenced by obj_free(), set_const_visibility(), and set_method_visibility().

void rb_clear_trace_func | ( | void | ) |  |

Definition at line 215 of file vm_trace.c.

Referenced by ruby_finalize_0(), and ruby_options().

int rb_cloexec_dup | ( | int | oldfd) |  |

Definition at line 225 of file io.c.

Referenced by ossl_obj2bio(), pty_getpty(), and ruby_dup().

int rb_cloexec_dup2 | ( | int | oldfd,
|  | int | newfd
| ) |  |

Definition at line 232 of file io.c.

Referenced by io_reopen().

int rb_cloexec_fcntl_dupfd | ( | int | fd,
|  | int | minfd
| ) |  |

Definition at line 308 of file io.c.

Referenced by rb_cloexec_dup(), and rb_cloexec_fcntl_dupfd().

int rb_cloexec_open | ( | const char * | pathname,
|  | int | flags,
|  | mode_t | mode
| ) |  |

Definition at line 209 of file io.c.

Referenced by chfunc(), console_dev(), fill_random_seed(), get_device_once(), load_file_internal(), rb_file_load_ok(), and sysopen_func().

int rb_cloexec_pipe | ( | int | fildes[2]) |  |

Definition at line 271 of file io.c.

Referenced by rb_pipe().

void rb_close_before_exec | ( | int | lowfd,
|  | int | maxhint,
|  | VALUE | noclose_fds
| ) |  |

Referenced by rb_execarg_run_options().

int rb_cmpint | ( | VALUE | ,
|  | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 97 of file bignum.c.

NODE* rb_compile_cstr | ( | const char * | ,
|  | const char * | ,
|  | int | ,
|  | int |
| ) |  |

Definition at line 11104 of file ripper.c.

NODE* rb_compile_file | ( | const char * | ,
|  | VALUE | ,
|  | int |
| ) |  |

Definition at line 11124 of file ripper.c.

NODE* rb_compile_string | ( | const char * | ,
|  | VALUE | ,
|  | int |
| ) |  |

Definition at line 11090 of file ripper.c.

VALUE rb_Complex | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1388 of file complex.c.

VALUE rb_complex_new | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1374 of file complex.c.

VALUE rb_complex_polar | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1380 of file complex.c.

VALUE rb_complex_raw | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1368 of file complex.c.

int rb_const_defined | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 2098 of file variable.c.

Referenced by console_dev(), Init_cparse(), Init_strscan(), rb_define_class(), rb_define_module(), rb_mod_const_defined(), and vm_get_ev_const().

int rb_const_defined_at | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 2104 of file variable.c.

Referenced by debug_lines(), make_struct(), rb_const_remove(), rb_define_class_id_under(), rb_define_module_id_under(), rb_mod_const_defined(), rb_path_to_class(), and vm_search_const_defined_class().

int rb_const_defined_from | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 2092 of file variable.c.

VALUE rb_const_get | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 1871 of file variable.c.

Referenced by callback(), cbsubst_def_attr_aliases(), cbsubst_get_all_subst_keys(), cbsubst_get_subst_arg(), cbsubst_get_subst_key(), cbsubst_initialize(), cbsubst_scan_args(), cbsubst_sym_to_subst(), console_dev(), cState_from_state_s(), float_arg(), function_call(), generic_to_value(), Init_cparse(), Init_generator(), Init_objspace(), Init_parser(), Init_psych_parser(), Init_tcltklib(), Init_tkutil(), ip_ruby_cmd_receiver_const_get(), make_no_method_exception(), numeric_arg(), process_options(), rb_define_class(), rb_define_module(), rb_execarg_fixup(), rb_mod_const_get(), save_env(), set_argv(), syserr_eqq(), syserr_initialize(), vm_get_ev_const(), and vm_set_main_stack().

VALUE rb_const_get_at | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 1877 of file variable.c.

Referenced by debug_lines(), Init_cparse(), mark(), path_unlink(), rb_define_class_id_under(), rb_define_module_id_under(), rb_mod_const_get(), and rb_path_to_class().

VALUE rb_const_get_from | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 1865 of file variable.c.

VALUE rb_const_list | ( | void * | ) |  |

Definition at line 2012 of file variable.c.

Referenced by rb_mod_constants(), and rb_mod_s_constants().

VALUE rb_const_remove | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 1933 of file variable.c.

Referenced by rb_mod_remove_const(), and ruby_init_prelude().

void rb_const_set | ( | VALUE | ,
|  | ID | ,
|  | VALUE |
| ) |  |

Definition at line 2136 of file variable.c.

Referenced by autoload_const_set(), boot_defclass(), cbsubst_init(), cbsubst_table_setup(), console_dev(), Init_class_hierarchy(), Init_strscan(), rb_autoload(), rb_define_class(), rb_define_class_id_under(), rb_define_const(), rb_define_module(), rb_define_module_id_under(), rb_mod_const_set(), and ruby_init_loadpath_safe().

VALUE rb_convert_type | ( | VALUE | ,
|  | int | ,
|  | const char * | ,
|  | const char * |
| ) |  |

Definition at line 2349 of file object.c.

Referenced by addrinfo_mload(), cParser_initialize(), cState_configure(), iseq_build_from_ary_body(), iseq_build_from_ary_exception(), m_core_hash_merge_kwd(), nucomp_s_convert(), nurat_s_convert(), open_key_args(), path_entries(), path_s_glob(), rb_execarg_fixup(), rb_Float(), rb_io_get_io(), rb_str_to_str(), rb_String(), rb_thread_s_handle_interrupt(), rb_to_float(), register_label(), strio_copy(), symbol2event_flag(), tk_symbolkey2str(), to_ary(), and to_hash().

void rb_copy_generic_ivar | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1042 of file variable.c.

Referenced by d_lite_marshal_dump(), d_lite_marshal_load(), init_copy(), nucomp_marshal_dump(), nurat_marshal_dump(), rb_hash_dup(), time_mdump(), and time_mload().

VALUE rb_cstr2inum | ( | const char * | ,
|  | int |
| ) |  |

Definition at line 865 of file bignum.c.

double rb_cstr_to_dbl | ( | const char * | ,
|  | int |
| ) |  |

Definition at line 2516 of file object.c.

Referenced by JSON_parse_float(), rb_str_to_dbl(), str2num(), and tkstr_to_float().

VALUE rb_cstr_to_inum | ( | const char * | ,
|  | int | ,
|  | int |
| ) |  |

Definition at line 579 of file bignum.c.

VALUE rb_current_realfilepath | ( | void | ) |  |

Definition at line 1934 of file vm_eval.c.

Referenced by eval_string_with_cref(), f_current_dirname(), and rb_f_require_relative().

VALUE rb_cv_get | ( | VALUE | ,
|  | const char * |
| ) |  |

Definition at line 2402 of file variable.c.

void rb_cv_set | ( | VALUE | ,
|  | const char * | ,
|  | VALUE |
| ) |  |

Definition at line 2392 of file variable.c.

VALUE rb_cvar_defined | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 2384 of file variable.c.

Referenced by rb_mod_cvar_defined(), and rb_mod_remove_cvar().

VALUE rb_cvar_get | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 2357 of file variable.c.

Referenced by rb_cv_get(), and rb_mod_cvar_get().

void rb_cvar_set | ( | VALUE | ,
|  | ID | ,
|  | VALUE |
| ) |  |

Definition at line 2324 of file variable.c.

Referenced by rb_cv_set(), rb_define_class_variable(), and rb_mod_cvar_set().

VALUE rb_data_object_alloc | ( | VALUE | ,
|  | void * | ,
|  | RUBY_DATA_FUNC | ,
|  | RUBY_DATA_FUNC |
| ) |  |

Definition at line 709 of file gc.c.

VALUE rb_data_typed_object_alloc | ( | VALUE | klass,
|  | void * | datap,
|  | const rb_data_type_t * |
| ) |  |

Definition at line 722 of file gc.c.

Referenced by iow_newobj().

VALUE rb_dbl2big | ( | double | ) |  |

Definition at line 1353 of file bignum.c.

VALUE rb_dbl_cmp | ( | double | ,
|  | double |
| ) |  |

Definition at line 1121 of file numeric.c.

Referenced by flo_cmp().

rb_encoding* rb_default_external_encoding | ( | void | ) |  |

Definition at line 1286 of file encoding.c.

rb_encoding* rb_default_internal_encoding | ( | void | ) |  |

Definition at line 1371 of file encoding.c.

void rb_define_alloc_func | ( | VALUE | ,
|  | rb_alloc_func_t |
| ) |  |

Referenced by Init_Array(), Init_bigdecimal(), Init_Complex(), Init_Cont(), Init_curses(), Init_date_core(), Init_dbm(), Init_digest(), Init_Dir(), Init_dlcfunc(), Init_dlhandle(), Init_dlptr(), Init_fiddle_closure(), Init_fiddle_function(), Init_fiddle_handle(), Init_fiddle_pointer(), Init_File(), Init_GC(), Init_gdbm(), Init_generator(), Init_Hash(), Init_IO(), Init_ISeq(), Init_Object(), Init_ossl_bn(), Init_ossl_cipher(), Init_ossl_digest(), Init_ossl_hmac(), Init_ossl_ns_spki(), Init_ossl_pkcs12(), Init_ossl_pkcs7(), Init_ossl_pkey(), Init_ossl_ssl(), Init_ossl_ssl_session(), Init_ossl_x509attr(), Init_ossl_x509cert(), Init_ossl_x509crl(), Init_ossl_x509ext(), Init_ossl_x509name(), Init_ossl_x509req(), Init_ossl_x509revoked(), Init_ossl_x509store(), Init_parser(), Init_psych_emitter(), Init_psych_parser(), Init_Random(), Init_Rational(), Init_Regexp(), Init_sdbm(), Init_String(), Init_stringio(), Init_strscan(), Init_tcltklib(), Init_Thread(), Init_Time(), Init_transcode(), Init_vm_backtrace(), Init_win32ole(), Init_zlib(), InitVM_Enumerator(), make_struct(), rb_struct_define_without_accessor(), rb_undef_alloc_func(), and rsock_init_addrinfo().

void rb_define_class_variable | ( | VALUE | ,
|  | const char * | ,
|  | VALUE |
| ) |  |

Definition at line 2412 of file variable.c.

void rb_define_const | ( | VALUE | ,
|  | const char * | ,
|  | VALUE |
| ) |  |

Definition at line 2197 of file variable.c.

Referenced by exp1(), Init_bigdecimal(), Init_Complex(), init_constants(), Init_cparse(), Init_curses(), Init_date_core(), Init_dbm(), Init_dl(), Init_dlhandle(), Init_dlptr(), Init_etc(), Init_fcntl(), Init_fiddle(), Init_fiddle_function(), Init_fiddle_handle(), Init_fiddle_pointer(), Init_File(), Init_gdbm(), Init_IO(), Init_marshal(), Init_nkf(), Init_Numeric(), Init_openssl(), Init_ossl_asn1(), Init_ossl_config(), Init_ossl_pkcs7(), Init_ossl_ssl(), Init_ossl_x509name(), Init_process(), Init_psych_parser(), Init_Random(), Init_readline(), Init_Regexp(), Init_tcltklib(), Init_Thread(), Init_tkutil(), Init_transcode(), Init_VM(), Init_win32ole(), Init_zlib(), ole_const_load(), rb_define_global_const(), rb_file_const(), ripper_init_eventids1_table(), ripper_init_eventids2_table(), set_encoding_const(), and set_syserr().

int rb_define_dummy_encoding | ( | const char * | ) |  |

Definition at line 400 of file encoding.c.

void rb_define_global_const | ( | const char * | ,
|  | VALUE |
| ) |  |

Definition at line 2211 of file variable.c.

Referenced by Init_Hash(), Init_IO(), Init_Object(), Init_version(), Init_VM(), load_file_internal(), and ruby_prog_init().

void rb_define_hooked_variable | ( | const char * | ,
|  | VALUE * | ,
|  | VALUE(*)(ANYARGS) | ,
|  | void(*)(ANYARGS) |
| ) |  |

Definition at line 570 of file variable.c.

Referenced by Init_IO(), Init_load(), rb_define_readonly_variable(), rb_define_variable(), rb_define_virtual_variable(), and ruby_prog_init().

void rb_define_readonly_variable | ( | const char * | ,
|  | VALUE * |
| ) |  |

Definition at line 595 of file variable.c.

Referenced by Init_IO().

void rb_define_variable | ( | const char * | ,
|  | VALUE * |
| ) |  |

Definition at line 589 of file variable.c.

Referenced by Init_IO(), Init_String(), and ruby_prog_init().

void rb_define_virtual_variable | ( | const char * | ,
|  | VALUE(*)(ANYARGS) | ,
|  | void(*)(ANYARGS) |
| ) |  |

Definition at line 601 of file variable.c.

Referenced by Init_eval(), Init_IO(), Init_load(), Init_process(), Init_Regexp(), Init_safe(), and Init_Time().

VALUE rb_detach_process | ( | rb_pid_t | pid) |  |

Definition at line 976 of file process.c.

Referenced by proc_detach(), and pty_detach_process().

VALUE rb_dir_getwd | ( | void | ) |  |

Definition at line 878 of file dir.c.

int rb_during_gc | ( | void | ) |  |

Definition at line 3117 of file gc.c.

int rb_dvar_defined | ( | ID | ) |  |

Definition at line 5832 of file compile.c.

VALUE rb_each | ( | VALUE | ) |  |

Definition at line 1166 of file vm_eval.c.

const char* rb_econv_asciicompat_encoding | ( | const char * | encname) |  |

Definition at line 1786 of file transcode.c.

Referenced by econv_s_asciicompat_encoding(), and make_writeconv().

void rb_econv_binmode | ( | rb_econv_t * | ec) |  |

Definition at line 1934 of file transcode.c.

Referenced by rb_io_binmode().

void rb_econv_check_error | ( | rb_econv_t * | ec) |  |

Definition at line 4194 of file transcode.c.

Referenced by fill_cbuf(), gzfile_getc(), and rb_econv_substr_append().

void rb_econv_close | ( | rb_econv_t * | ec) |  |

Definition at line 1702 of file transcode.c.

Referenced by allocate_converted_string(), clear_readconv(), clear_writeconv(), econv_free(), gzfile_reset(), rb_econv_open(), rb_econv_open_by_transcoder_entries(), rb_econv_open_opts(), rb_io_ascii8bit_binmode(), RUBY_ALIAS_FUNCTION(), and transcode_loop().

rb_econv_result_t rb_econv_convert | ( | rb_econv_t * | ec,
|  | const unsigned char ** | source_buffer_ptr,
|  | const unsigned char * | source_buffer_end,
|  | unsigned char ** | destination_buffer_ptr,
|  | unsigned char * | destination_buffer_end,
|  | int | flags
| ) |  |

Definition at line 1446 of file transcode.c.

Referenced by allocate_converted_string(), econv_primitive_convert(), fill_cbuf(), finish_writeconv(), gzfile_getc(), rb_econv_substr_append(), RUBY_ALIAS_FUNCTION(), and transcode_loop().

int rb_econv_decorate_at_first | ( | rb_econv_t * | ec,
|  | const char * | decorator_name
| ) |  |

Definition at line 1900 of file transcode.c.

int rb_econv_decorate_at_last | ( | rb_econv_t * | ec,
|  | const char * | decorator_name
| ) |  |

Definition at line 1917 of file transcode.c.

Referenced by rb_econv_open().

const char* rb_econv_encoding_to_insert_output | ( | rb_econv_t * | ec) |  |

Definition at line 1503 of file transcode.c.

Referenced by econv_insert_output(), make_replacement(), rb_econv_insert_output(), and rb_econv_set_replacement().

int rb_econv_has_convpath_p | ( | const char * | from_encoding,
|  | const char * | to_encoding
| ) |  |

Definition at line 3150 of file transcode.c.

Referenced by rb_w32_write_console().

int rb_econv_insert_output | ( | rb_econv_t * | ec,
|  | const unsigned char * | str,
|  | size_t | len,
|  | const char * | str_encoding
| ) |  |

Definition at line 1587 of file transcode.c.

Referenced by econv_insert_output(), output_hex_charref(), output_replacement_character(), and transcode_loop().

VALUE rb_econv_make_exception | ( | rb_econv_t * | ec) |  |

Definition at line 4188 of file transcode.c.

Referenced by fill_cbuf(), and finish_writeconv().

rb_econv_t* rb_econv_open | ( | const char * | source_encoding,
|  | const char * | destination_encoding,
|  | int | ecflags
| ) |  |

Definition at line 1067 of file transcode.c.

Referenced by allocate_converted_string(), and rb_econv_open_opts().

VALUE rb_econv_open_exc | ( | const char * | senc,
|  | const char * | denc,
|  | int | ecflags
| ) |  |

Definition at line 2028 of file transcode.c.

Referenced by econv_init(), econv_s_search_convpath(), make_readconv(), make_writeconv(), and transcode_loop().

rb_econv_t* rb_econv_open_opts | ( | const char * | source_encoding,
|  | const char * | destination_encoding,
|  | int | ecflags,
|  | VALUE | ecopts
| ) |  |

Definition at line 2570 of file transcode.c.

Referenced by econv_init(), gzfile_reset(), make_readconv(), make_writeconv(), rb_gzfile_ecopts(), RUBY_ALIAS_FUNCTION(), and transcode_loop().

int rb_econv_prepare_options | ( | VALUE | opthash,
|  | VALUE * | ecopts,
|  | int | ecflags
| ) |  |

Definition at line 2519 of file transcode.c.

Referenced by io_encoding_set(), rb_econv_prepare_opts(), and rb_io_extract_modeenc().

int rb_econv_prepare_opts | ( | VALUE | opthash,
|  | VALUE * | ecopts
| ) |  |

Definition at line 2564 of file transcode.c.

Referenced by econv_args(), rb_gzfile_ecopts(), and str_transcode().

void rb_econv_putback | ( | rb_econv_t * | ec,
|  | unsigned char * | p,
|  | int | n
| ) |  |

Definition at line 1753 of file transcode.c.

Referenced by econv_putback(), and fill_cbuf().

int rb_econv_putbackable | ( | rb_econv_t * | ec) |  |

Definition at line 1742 of file transcode.c.

Referenced by econv_putback(), and fill_cbuf().

int rb_econv_set_replacement | ( | rb_econv_t * | ec,
|  | const unsigned char * | str,
|  | size_t | len,
|  | const char * | encname
| ) |  |

Definition at line 2190 of file transcode.c.

Referenced by econv_set_replacement(), and rb_econv_open_opts().

VALUE rb_econv_str_append | ( | rb_econv_t * | ec,
|  | VALUE | src,
|  | VALUE | dst,
|  | int | flags
| ) |  |

Definition at line 1857 of file transcode.c.

VALUE rb_econv_str_convert | ( | rb_econv_t * | ec,
|  | VALUE | src,
|  | int | flags
| ) |  |

Definition at line 1869 of file transcode.c.

Referenced by do_writeconv(), and gzfile_newstr().

VALUE rb_econv_substr_append | ( | rb_econv_t * | ec,
|  | VALUE | src,
|  | long | byteoff,
|  | long | bytesize,
|  | VALUE | dst,
|  | int | flags
| ) |  |

Definition at line 1813 of file transcode.c.

Referenced by rb_econv_str_append(), rb_econv_str_convert(), and rb_econv_substr_convert().

VALUE rb_econv_substr_convert | ( | rb_econv_t * | ec,
|  | VALUE | src,
|  | long | byteoff,
|  | long | bytesize,
|  | int | flags
| ) |  |

Definition at line 1863 of file transcode.c.

int rb_enc_ascget | ( | const char * | p,
|  | const char * | e,
|  | int * | len,
|  | rb_encoding * | enc
| ) |  |

Definition at line 908 of file encoding.c.

VALUE rb_enc_associate | ( | VALUE | ,
|  | rb_encoding * |
| ) |  |

Definition at line 764 of file encoding.c.

VALUE rb_enc_associate_index | ( | VALUE | ,
|  | int |
| ) |  |

Definition at line 746 of file encoding.c.

int rb_enc_casefold | ( | char * | to,
|  | const char * | p,
|  | const char * | e,
|  | rb_encoding * | enc
| ) |  |

rb_encoding* rb_enc_check | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 776 of file encoding.c.

int rb_enc_codelen | ( | int | code,
|  | rb_encoding * | enc
| ) |  |

Definition at line 952 of file encoding.c.

unsigned int rb_enc_codepoint | ( | const char * | p,
|  | const char * | e,
|  | rb_encoding * | enc
| ) |  |

Definition at line 946 of file encoding.c.

unsigned int rb_enc_codepoint_len | ( | const char * | p,
|  | const char * | e,
|  | int * | len,
|  | rb_encoding * | enc
| ) |  |

Definition at line 931 of file encoding.c.

rb_encoding* rb_enc_compatible | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 787 of file encoding.c.

void rb_enc_copy | ( | VALUE | dst,
|  | VALUE | src
| ) |  |

Definition at line 854 of file encoding.c.

VALUE rb_enc_default_external | ( | void | ) |  |

Definition at line 1300 of file encoding.c.

VALUE rb_enc_default_internal | ( | void | ) |  |

Definition at line 1380 of file encoding.c.

static int rb_enc_dummy_p | ( | rb_encoding * | enc) |  |
| inline static

Definition at line 235 of file ripper.y.

Referenced by gzfile_getc(), gzfile_newstr(), opt_enc_index(), rb_reg_initialize(), rb_str_check_dummy_enc(), and set_base_encoding().

int rb_enc_fast_mbclen | ( | const char * | p,
|  | const char * | e,
|  | rb_encoding * | enc
| ) |  |

Definition at line 878 of file encoding.c.

rb_encoding* rb_enc_find | ( | const char * | name) |  |

Definition at line 657 of file encoding.c.

int rb_enc_find_index | ( | const char * | name) |  |

Definition at line 633 of file encoding.c.

VALUE rb_enc_from_encoding | ( | rb_encoding * | enc) |  |

Definition at line 103 of file encoding.c.

rb_encoding* rb_enc_from_index | ( | int | idx) |  |

Definition at line 548 of file encoding.c.

rb_encoding* rb_enc_get | ( | VALUE | ) |  |

Definition at line 770 of file encoding.c.

int rb_enc_get_index | ( | VALUE | obj) |  |

Definition at line 688 of file encoding.c.

int rb_enc_mbclen | ( | const char * | p,
|  | const char * | e,
|  | rb_encoding * | enc
| ) |  |

Definition at line 884 of file encoding.c.

char* rb_enc_nth | ( | const char * | ,
|  | const char * | ,
|  | long | ,
|  | rb_encoding * |
| ) |  |

Definition at line 1582 of file string.c.

Referenced by rb_str_ellipsize(), and rb_str_format().

char* rb_enc_path_end | ( | const char * | ,
|  | const char * | ,
|  | rb_encoding * |
| ) |  |

Definition at line 2840 of file file.c.

Referenced by check_dirname().

char* rb_enc_path_last_separator | ( | const char * | ,
|  | const char * | ,
|  | rb_encoding * |
| ) |  |

Definition at line 2806 of file file.c.

char* rb_enc_path_next | ( | const char * | ,
|  | const char * | ,
|  | rb_encoding * |
| ) |  |

Definition at line 2758 of file file.c.

Referenced by rb_enc_path_skip_prefix(), and realpath_rec().

char* rb_enc_path_skip_prefix | ( | const char * | ,
|  | const char * | ,
|  | rb_encoding * |
| ) |  |

Definition at line 2772 of file file.c.

Referenced by check_dirname(), and ruby_glob0().

int rb_enc_precise_mbclen | ( | const char * | p,
|  | const char * | e,
|  | rb_encoding * | enc
| ) |  |

Definition at line 896 of file encoding.c.

VALUE rb_enc_reg_new | ( | const char * | ,
|  | long | ,
|  | rb_encoding * | ,
|  | int |
| ) |  |

Definition at line 2511 of file re.c.

Referenced by rb_reg_new().

int rb_enc_replicate | ( | const char * | ,
|  | rb_encoding * |
| ) |  |

Definition at line 343 of file encoding.c.

void rb_enc_set_default_external | ( | VALUE | encoding) |  |

Definition at line 1338 of file encoding.c.

void rb_enc_set_default_internal | ( | VALUE | encoding) |  |

Definition at line 1424 of file encoding.c.

void rb_enc_set_index | ( | VALUE | obj,
|  | int | encindex
| ) |  |

Definition at line 739 of file encoding.c.

int rb_enc_str_asciionly_p | ( | VALUE | ) |  |

Definition at line 340 of file string.c.

Referenced by file_path_convert(), fnmatch_brace(), rb_enc_compatible(), rb_inspect(), rb_reg_quote(), and rb_reg_s_union().

VALUE rb_enc_str_buf_cat | ( | VALUE | str,
|  | const char * | ptr,
|  | long | len,
|  | rb_encoding * | enc
| ) |  |

Definition at line 2067 of file string.c.

Referenced by rb_reg_regsub(), and str_gsub().

int rb_enc_str_coderange | ( | VALUE | ) |  |

Definition at line 327 of file string.c.

Referenced by parser_str_new(), prepare_getline_args(), rb_econv_prepare_options(), rb_enc_compatible(), rb_enc_cr_str_buf_cat(), rb_enc_str_asciionly_p(), rb_external_str_new_with_enc(), rb_file_expand_path_internal(), rb_reg_initialize_str(), rb_reg_prepare_enc(), rb_reg_preprocess_dregexp(), rb_str_comparable(), rb_str_hash(), rb_str_is_ascii_only_p(), rb_str_succ(), rb_str_valid_encoding_p(), reg_fragment_setenc_gen(), str_transcode0(), sym_check_asciionly(), and w_symbol().

VALUE rb_enc_str_new | ( | const char * | ,
|  | long | ,
|  | rb_encoding * |
| ) |  |

Definition at line 439 of file string.c.

Referenced by append_fspath(), compile_snprintf(), do_opendir(), econv_get_replacement(), fix_string_encoding(), fole_missing(), foletypelib_name(), foletypelib_path(), get_user_from_path(), io_getc(), lex_get_str(), ole_wc2vstr(), parser_str_new(), prepare_getline_args(), rb_enc_uint_chr(), rb_intern3(), rb_io_getline_1(), rb_push_glob(), rb_reg_initialize(), rb_reg_initialize_m(), rb_reg_source(), rb_str_upto(), rb_w32_conv_from_wchar(), register_symid(), strftimev(), strio_getc(), strio_init(), strio_substr(), strio_ungetc(), sym_inspect(), time_strftime(), and transcode_loop().

long rb_enc_strlen | ( | const char * | ,
|  | const char * | ,
|  | rb_encoding * |
| ) |  |

Definition at line 1025 of file string.c.

Referenced by rb_str_format(), and update_char_offset().

int rb_enc_symname2_p | ( | const char * | ,
|  | long | ,
|  | rb_encoding * |
| ) |  |

Definition at line 15804 of file ripper.c.

int rb_enc_symname_p | ( | const char * | ,
|  | rb_encoding * |
| ) |  |

Definition at line 15703 of file ripper.c.

int rb_enc_tolower | ( | int | c,
|  | rb_encoding * | enc
| ) |  |

Definition at line 968 of file encoding.c.

int rb_enc_toupper | ( | int | c,
|  | rb_encoding * | enc
| ) |  |

Definition at line 962 of file encoding.c.

VALUE rb_enc_uint_chr | ( | unsigned int | code,
|  | rb_encoding * | enc
| ) |  |

Definition at line 2417 of file numeric.c.

Referenced by int_chr(), and rb_io_ungetc().

int rb_enc_unicode_p | ( | rb_encoding * | enc) |  |

Definition at line 459 of file encoding.c.

VALUE rb_enc_vsprintf | ( | rb_encoding * | ,
|  | const char * | ,
|  | va_list |
| ) |  |

Definition at line 1218 of file sprintf.c.

Referenced by rb_enc_raise(), rb_enc_sprintf(), rb_loaderror(), rb_loaderror_with_path(), and rb_vsprintf().

VALUE rb_ensure | ( | VALUE(*)(ANYARGS) | ,
|  | VALUE | ,
|  | VALUE(*)(ANYARGS) | ,
|  | VALUE |
| ) |  |

Definition at line 804 of file eval.c.

VALUE rb_enum_values_pack | ( | int | ,
|  | VALUE * |
| ) |  |

Definition at line 33 of file enum.c.

VALUE rb_enumeratorize | ( | VALUE | ,
|  | VALUE | ,
|  | int | ,
|  | VALUE * |
| ) |  |

Definition at line 398 of file enumerator.c.

VALUE rb_enumeratorize_with_size | ( | VALUE | ,
|  | VALUE | ,
|  | int | ,
|  | VALUE * | ,
|  | VALUE(*)(ANYARGS) |
| ) |  |

Definition at line 407 of file enumerator.c.

VALUE rb_env_clear | ( | void | ) |  |

Definition at line 2859 of file hash.c.

Referenced by Init_Hash(), and rb_execarg_run_options().

int rb_env_path_tainted | ( | void | ) |  |

Definition at line 2329 of file hash.c.

Referenced by security().

int rb_eql | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 67 of file object.c.

Referenced by cdhash_cmp(), eql_i(), hash_equal(), rb_any_cmp(), and recursive_eql().

VALUE rb_equal | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 56 of file object.c.

Referenced by assoc_i(), chunk_ii(), count_i(), eql_i(), exc_equal(), find_index_i(), hash_equal(), Init_Object(), key_i(), member_i(), name_err_mesg_equal(), num_div(), num_eql(), num_remainder(), num_step(), num_zero_p(), pst_equal(), range_bsearch(), rassoc_i(), rb_ary_assoc(), rb_ary_count(), rb_ary_delete(), rb_ary_equal(), rb_ary_includes(), rb_ary_index(), rb_ary_rassoc(), rb_ary_rindex(), rb_big_eq(), rb_hash_search_value(), rb_method_definition_eq(), rb_obj_cmp(), rb_str_equal(), recursive_equal(), syserr_eqq(), time_eql(), time_mdump(), and vtm_add_offset().

VALUE rb_errinfo | ( | void | ) |  |

Definition at line 1429 of file eval.c.

void rb_error_untrusted | ( | VALUE | ) |  |

Definition at line 1985 of file error.c.

VALUE rb_eval_cmd | ( | VALUE | ,
|  | VALUE | ,
|  | int |
| ) |  |

Definition at line 1444 of file vm_eval.c.

Referenced by rb_trace_eval(), run_single_final(), signal_exec(), and tk_eval_cmd().

VALUE rb_eval_string | ( | const char * | str) |  |

Evaluates the given string in an isolated binding.

Here "isolated" means the binding does not inherit any other binding. This behaves same as the binding for required libraries.

FILE will be "(eval)", and LINE starts from 1 in the evaluation.

Parameters

  str | Ruby code to evaluate.

Returns
  The evaluated result.

Exceptions

  Exception | Raises an exception on error.

Definition at line 1384 of file vm_eval.c.

Referenced by foletype_s_typelibs(), ip_ruby_eval(), and rb_eval_string_protect().

VALUE rb_eval_string_protect | ( | const char * | str,
|  | int * | state
| ) |  |

Evaluates the given string in an isolated binding.

FILE will be "(eval)", and LINE starts from 1 in the evaluation.

See Also
  rb_eval_string

Parameters

  str | Ruby code to evaluate.
  state | Being set to zero if succeeded. Nonzero if an error occurred.

Returns
  The evaluated result if succeeded, an undefined value if otherwise.

Definition at line 1400 of file vm_eval.c.

Referenced by ip_ruby_cmd_receiver_const_get(), and rb_eval_string_wrap().

VALUE rb_eval_string_wrap | ( | const char * | str,
|  | int * | state
| ) |  |

Evaluates the given string under a module binding in an isolated binding.

This is same as the binding for required libraries on "require('foo', true)".

FILE will be "(eval)", and LINE starts from 1 in the evaluation.

See Also
  rb_eval_string

Parameters

  str | Ruby code to evaluate.
  state | Being set to zero if succeeded. Nonzero if an error occurred.

Returns
  The evaluated result if succeeded, an undefined value if otherwise.

Definition at line 1417 of file vm_eval.c.

VALUE rb_exc_new | ( | VALUE | ,
|  | const char * | ,
|  | long |
| ) |  |

Definition at line 536 of file error.c.

VALUE rb_exc_new2 | ( | VALUE | ,
|  | const char * |
| ) |  |

Definition at line 542 of file error.c.

VALUE rb_exc_new3 | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 548 of file error.c.

int rb_exec_async_signal_safe | ( | const struct rb_execarg * | e,
|  | char * | errmsg,
|  | size_t | errmsg_buflen
| ) |  |

Definition at line 3019 of file process.c.

Referenced by chfunc(), rb_exec_without_timer_thread(), and rb_f_exec().

void rb_exec_end_proc | ( | void | ) |  |

Definition at line 97 of file eval_jump.c.

VALUE rb_exec_recursive | ( | VALUE(*)(VALUE, VALUE, int) | ,
|  | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 4857 of file thread.c.

Referenced by ary_join_1(), enumerator_inspect(), range_inspect(), rb_ary_inspect(), rb_file_join(), rb_hash_inspect(), rb_invcmp(), rb_io_puts(), rb_obj_inspect(), and rb_struct_inspect().

VALUE rb_exec_recursive_outer | ( | VALUE(*)(VALUE, VALUE, int) | ,
|  | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 4880 of file thread.c.

Referenced by range_hash(), rb_ary_hash(), rb_hash_hash(), and rb_struct_hash().

VALUE rb_exec_recursive_paired | ( | VALUE(*)(VALUE, VALUE, int) | ,
|  | VALUE | ,
|  | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 4868 of file thread.c.

Referenced by hash_equal(), range_eq(), range_eql(), rb_ary_cmp(), rb_ary_eql(), rb_ary_equal(), rb_struct_eql(), and rb_struct_equal().

int rb_execarg_addopt | ( | VALUE | execarg_obj,
|  | VALUE | key,
|  | VALUE | val
| ) |  |

Definition at line 1606 of file process.c.

Referenced by check_exec_options_i(), check_exec_options_i_extract(), pipe_open(), and rb_exec_arg_addopt().

VALUE rb_execarg_extract_options | ( | VALUE | execarg_obj,
|  | VALUE | opthash
| ) |  |

Definition at line 1897 of file process.c.

Referenced by rb_io_s_popen().

void rb_execarg_fixup | ( | VALUE | execarg_obj) |  |

Definition at line 2254 of file process.c.

Referenced by establishShell(), pipe_open(), rb_exec_arg_fixup(), rb_f_exec(), rb_f_spawn(), and rb_spawn_internal().

struct rb_execarg* rb_execarg_get | ( | VALUE | execarg_obj) |  |

Definition at line 2201 of file process.c.

Referenced by establishShell(), pipe_open(), rb_exec(), rb_exec_err(), rb_exec_fillarg(), rb_execarg_addopt(), rb_execarg_fixup(), rb_execarg_init(), rb_execarg_setenv(), rb_f_exec(), rb_f_spawn(), rb_run_exec_options(), rb_run_exec_options_err(), and rb_spawn_internal().

VALUE rb_execarg_init | ( | int | argc,
|  | VALUE * | argv,
|  | int | accept_shell,
|  | VALUE | execarg_obj
| ) |  |

Definition at line 2209 of file process.c.

Referenced by rb_exec_arg_init(), and rb_execarg_new().

VALUE rb_execarg_new | ( | int | argc,
|  | VALUE * | argv,
|  | int | accept_shell
| ) |  |

Definition at line 2190 of file process.c.

Referenced by establishShell(), pipe_open_s(), rb_f_exec(), rb_f_spawn(), rb_io_s_popen(), and rb_spawn_internal().

int rb_execarg_run_options | ( | const struct rb_execarg * | e,
|  | struct rb_execarg * | s,
|  | char * | errmsg,
|  | size_t | errmsg_buflen
| ) |  |

Definition at line 2872 of file process.c.

Referenced by pipe_open(), rb_exec_async_signal_safe(), rb_run_exec_options(), rb_run_exec_options_err(), and rb_spawn_process().

void rb_execarg_setenv | ( | VALUE | execarg_obj,
|  | VALUE | env
| ) |  |

Definition at line 2228 of file process.c.

Referenced by rb_io_s_popen().

void rb_extend_object | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1234 of file eval.c.

VALUE rb_external_str_new | ( | const char * | ,
|  | long |
| ) |  |

Definition at line 584 of file string.c.

Referenced by fsdbm_delete(), fsdbm_delete_if(), fsdbm_each_key(), fsdbm_each_pair(), fsdbm_each_value(), fsdbm_fetch(), fsdbm_invert(), fsdbm_key(), fsdbm_keys(), fsdbm_select(), fsdbm_shift(), fsdbm_to_a(), fsdbm_to_hash(), fsdbm_values(), ruby_script(), and set_arg0().

VALUE rb_external_str_new_cstr | ( | const char * | ) |  |

Definition at line 590 of file string.c.

Referenced by ruby_set_argv().

VALUE rb_external_str_new_with_enc | ( | const char * | ptr,
|  | long | len,
|  | rb_encoding * |
| ) |  |

Definition at line 569 of file string.c.

Referenced by coverage(), debug_lines(), dir_each(), dir_read(), gettable_gen(), push_pattern(), rb_external_str_new(), rb_external_str_new_cstr(), rb_filesystem_str_new(), rb_filesystem_str_new_cstr(), rb_locale_str_new(), and rb_locale_str_new_cstr().

VALUE rb_f_abort | ( | int | ,
|  | VALUE * |
| ) |  |

Definition at line 3620 of file process.c.

Referenced by Init_process().

VALUE rb_f_exec | ( | int | ,
|  | VALUE * |
| ) |  |

Definition at line 2387 of file process.c.

Referenced by Init_process().

VALUE rb_f_exit | ( | int | ,
|  | VALUE * |
| ) |  |

Definition at line 3590 of file process.c.

Referenced by Init_process().

VALUE rb_f_global_variables | ( | void | ) |  |

Definition at line 842 of file variable.c.

Referenced by Init_eval().

VALUE rb_f_kill | ( | int | ,
|  | VALUE * |
| ) |  |

Definition at line 364 of file signal.c.

Referenced by Init_process().

VALUE rb_f_notimplement | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | obj
| ) |  |

Definition at line 70 of file vm_method.c.

Referenced by rb_add_method(), and rb_add_method_cfunc().

VALUE rb_f_require | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 786 of file load.c.

Referenced by Init_load().

VALUE rb_f_sprintf | ( | int | ,
|  | const VALUE * |
| ) |  |

Definition at line 433 of file sprintf.c.

Referenced by Init_Object(), iso8601_timediv(), jisx0301_date(), name_err_mesg_to_str(), rb_f_printf(), rb_io_printf(), and syslog_write().

VALUE rb_f_trace_var | ( | int | ,
|  | VALUE * |
| ) |  |

Definition at line 641 of file variable.c.

Referenced by Init_eval().

VALUE rb_f_untrace_var | ( | int | ,
|  | VALUE * |
| ) |  |

Definition at line 701 of file variable.c.

Referenced by Init_eval(), and rb_f_trace_var().

void rb_fd_fix_cloexec | ( | int | fd) |  |

Definition at line 202 of file io.c.

Referenced by fdbm_initialize(), fgdbm_initialize(), fgdbm_reorganize(), get_device_once(), ossl_pkey_new_from_file(), ossl_x509_new_from_file(), rb_io_reopen(), and rsock_socket0().

int rb_feature_provided | ( | const char * | ,
|  | const char ** |
| ) |  |

Definition at line 511 of file load.c.

Referenced by autoload_provided(), and rb_provided().

VALUE rb_fiber_alive_p | ( | VALUE | ) |  |

Definition at line 1392 of file cont.c.

VALUE rb_fiber_current | ( | void | ) |  |

Definition at line 1200 of file cont.c.

VALUE rb_fiber_new | ( | VALUE(*)(ANYARGS) | ,
|  | VALUE |
| ) |  |

Definition at line 1090 of file cont.c.

void rb_fiber_reset_root_local_storage | ( | VALUE | ) |  |

Definition at line 1370 of file cont.c.

VALUE rb_fiber_resume | ( | VALUE | fib,
|  | int | argc,
|  | VALUE * | args
| ) |  |

Definition at line 1348 of file cont.c.

VALUE rb_fiber_yield | ( | int | argc,
|  | VALUE * | args
| ) |  |

Definition at line 1364 of file cont.c.

VALUE rb_file_absolute_path | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 3357 of file file.c.

Referenced by rb_f_require_relative(), and rb_file_s_absolute_path().

void rb_file_const | ( | const char * | ,
|  | VALUE |
| ) |  |

Definition at line 5144 of file file.c.

Referenced by Init_Dir().

VALUE rb_file_directory_p | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1144 of file file.c.

Referenced by Init_Dir(), Init_File(), and rb_f_test().

VALUE rb_file_dirname | ( | VALUE | fname) |  |

Definition at line 3792 of file file.c.

Referenced by f_current_dirname(), rb_f_require_relative(), and rb_file_s_dirname().

VALUE rb_file_expand_path | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 3314 of file file.c.

Referenced by expand_include_path(), rb_file_identical_p(), and rb_file_s_expand_path().

VALUE rb_file_expand_path_fast | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 3321 of file file.c.

Referenced by rb_construct_expanded_load_path(), and rb_feature_provided().

VALUE rb_file_expand_path_internal | ( | VALUE | ,
|  | VALUE | ,
|  | int | ,
|  | int | ,
|  | VALUE |
| ) |  |

Definition at line 2960 of file file.c.

Referenced by file_expand_path_1(), rb_file_absolute_path(), rb_file_expand_path(), rb_file_expand_path_fast(), rb_file_expand_path_internal(), rb_find_file_ext_safe(), and rb_find_file_safe().

int rb_file_load_ok | ( | const char * | ) |  |

Definition at line 5260 of file file.c.

Referenced by rb_f_load(), rb_find_file_ext_safe(), and rb_find_file_safe().

VALUE rb_file_open | ( | const char * | ,
|  | const char * |
| ) |  |

Definition at line 5424 of file io.c.

VALUE rb_file_open_str | ( | VALUE | ,
|  | const char * |
| ) |  |

Definition at line 5417 of file io.c.

Referenced by gzfile_s_open(), and iseq_s_compile_file().

VALUE rb_file_s_absolute_path | ( | int | ,
|  | VALUE * |
| ) |  |

Definition at line 3377 of file file.c.

Referenced by Init_File().

VALUE rb_file_s_expand_path | ( | int | ,
|  | VALUE * |
| ) |  |

Definition at line 3344 of file file.c.

Referenced by Init_File().

int rb_filesystem_encindex | ( | void | ) |  |

Definition at line 1237 of file encoding.c.

rb_encoding* rb_filesystem_encoding | ( | void | ) |  |

Definition at line 1246 of file encoding.c.

VALUE rb_filesystem_str_new | ( | const char * | ,
|  | long |
| ) |  |

Definition at line 608 of file string.c.

VALUE rb_filesystem_str_new_cstr | ( | const char * | ) |  |

Definition at line 614 of file string.c.

Referenced by env_fetch(), etc_sysconfdir(), etc_systmpdir(), load_path_getcwd(), rb_f_getenv(), and search_required().

rb_encoding* rb_find_encoding | ( | VALUE | ) |  |

Definition at line 201 of file encoding.c.

VALUE rb_find_file | ( | VALUE | ) |  |

Definition at line 5371 of file file.c.

Referenced by rb_f_load(), and rb_load().

int rb_find_file_ext | ( | VALUE * | ,
|  | const char *const * |
| ) |  |

Definition at line 5296 of file file.c.

int rb_find_file_ext_safe | ( | VALUE * | ,
|  | const char *const * | ,
|  | int |
| ) |  |

Definition at line 5302 of file file.c.

Referenced by rb_find_file_ext(), and search_required().

VALUE rb_find_file_safe | ( | VALUE | ,
|  | int |
| ) |  |

Definition at line 5377 of file file.c.

Referenced by rb_find_file(), and search_required().

short rb_fix2short | ( | VALUE | ) |  |

Definition at line 2143 of file numeric.c.

VALUE rb_fix2str | ( | VALUE | ,
|  | int |
| ) |  |

Definition at line 2546 of file numeric.c.

Referenced by call_original_exit(), fix_to_s(), ole_typedesc2val(), and rb_big2str0().

unsigned short rb_fix2ushort | ( | VALUE | ) |  |

Definition at line 2161 of file numeric.c.

VALUE rb_Float | ( | VALUE | ) |  |

Definition at line 2628 of file object.c.

Referenced by flo_coerce(), foletypelib_version(), int_round(), num_ceil(), num_coerce(), num_fdiv(), num_floor(), num_round(), num_truncate(), range_bsearch(), rb_f_float(), rb_num2dbl(), rb_str_format(), time_minus(), and time_to_f().

static VALUE rb_float_new | ( | double | d) |  |
| inline static

Definition at line 790 of file ripper.y.

Referenced by BigDecimal_to_f(), callback(), generic_to_value(), JSON_parse_float(), ole_variant2val(), rand_random(), rand_range(), tkstr_to_float(), and vtdate2rbtime().

VALUE rb_float_new_in_heap | ( | double | ) |  |

Definition at line 638 of file numeric.c.

Referenced by rb_float_new().

static double rb_float_value | ( | VALUE | v) |  |
| inline static

Definition at line 764 of file ripper.y.

rb_pid_t rb_fork_async_signal_safe | ( | int * | status,
|  | int(*)(void *, char *, size_t) | chfunc,
|  | void * | charg,
|  | VALUE | fds,
|  | char * | errmsg,
|  | size_t | errmsg_buflen
| ) |  |

Referenced by establishShell(), pipe_open(), and rb_spawn_process().

rb_pid_t rb_fork_ruby | ( | int * | status) |  |

Referenced by pipe_open().

ID rb_frame_callee | ( | void | ) |  |

Definition at line 919 of file eval.c.

int rb_frame_method_id_and_class | ( | ID * | idp,
|  | VALUE * | klassp
| ) |  |

Definition at line 1489 of file vm.c.

void rb_frame_pop | ( | void | ) |  |

Definition at line 935 of file eval.c.

ID rb_frame_this_func | ( | void | ) |  |

Definition at line 902 of file eval.c.

void rb_free_generic_ivar | ( | VALUE | ) |  |

Definition at line 1023 of file variable.c.

Referenced by obj_free(), and rb_copy_generic_ivar().

void rb_free_tmp_buffer | ( | volatile VALUE * | store) |  |

Definition at line 822 of file string.c.

void rb_frozen_class_p | ( | VALUE | ) |  |

Definition at line 403 of file eval.c.

VALUE rb_funcall | ( | VALUE | recv,
|  | ID | mid,
|  | int | n,
|  |  | ...
| ) |  |

Calls a method.

Parameters

  recv | receiver of the method
  mid | an ID that represents the name of the method
  n | the number of arguments
  ... | arbitrary number of method arguments

Precondition
  each of arguments after n must be a VALUE.

Definition at line 774 of file vm_eval.c.

Referenced by _thread_call_proc_core(), _thread_call_proc_value(), add(), argument_error(), ary2list(), ary2list2(), BigDecimal_power(), BigDecimal_to_i(), BigDecimal_to_r(), binomial_coefficient(), binop(), bsock_setsockopt(), call_next(), call_queue_handler(), callback(), cbsubst_def_attr_aliases(), cbsubst_get_subst_key(), cbsubst_scan_args(), chunk_i(), chunk_ii(), cmp(), cmp_eq(), cmp_ge(), cmp_gt(), cmp_le(), cmp_lt(), code_page(), coerce_body(), const_missing(), convert_encoding(), copy_stream_fallback_body(), cParser_initialize(), create_encoding_table(), cState_aref(), cState_aset(), cState_from_state_s(), default_inspect(), descending_factorial(), dir_inspect(), divmodv(), DupPrivPKeyPtr(), encoding_table_get_name_core(), enum_cycle_size(), enum_each_cons_size(), enum_each_slice_size(), enum_find(), enum_zip(), eq(), error_print(), eval_queue_handler(), evs_length(), exc_message(), f_add(), f_cmp(), f_div(), f_eqeq_p(), f_ge_p(), f_gt_p(), f_le_p(), f_lt_p(), f_minus_one_p(), f_negative_p(), f_odd_p(), f_one_p(), f_sub(), f_to_f(), f_zero_p(), fix_and(), fix_or(), fix_pow(), fix_xor(), flo_pow(), flo_quo(), fole_s_show_help(), foleparam_inspect(), foletype_s_ole_classes(), foletypelib_s_typelibs(), folevariable_inspect(), folevariant_value(), fun1(), fun2(), function_call(), generate_json(), generate_json_bignum(), generate_json_float(), generate_json_object(), generate_json_string(), generic_to_value(), get_backtrace(), get_eval_string_core(), GetConfigPtr(), GetPrivPKeyPtr(), GetVpValueWithPrec(), grep_i(), grep_iter_i(), gzfile_close(), gzfile_read_raw_partial(), gzfile_read_raw_rescue(), gzfile_reader_rewind(), gzfile_write_raw(), hash_default_value(), hidden_identity_hash_new(), Init_generator(), Init_parser(), Init_syslog(), Init_win32ole(), initialize(), inject_op_i(), int_dotimes(), int_dotimes_size(), int_downto(), int_even_p(), int_odd_p(), int_pred(), int_round_0(), int_succ(), int_upto(), invoke_queue_handler(), io_call_close(), io_reader(), io_write(), ip_eval(), ip_invoke_with_position(), ip_set_exc_message(), is_negative(), is_one(), is_zero(), JSON_parse_array(), JSON_parse_object(), JSON_parse_string(), key2keyname(), lazy_drop_size(), lazy_flat_map_func(), lazy_flat_map_to_ary(), lazy_grep_func(), lazy_grep_iter(), lazy_map_func(), lazy_reject_func(), lazy_select_func(), lazy_zip_arrays_func(), lazy_zip_func(), lexer_iter(), lib_eventloop_ensure(), lib_eventloop_launcher(), lib_fromUTF8_core(), lib_set_system_encoding(), lib_thread_callback(), lib_toUTF8_core(), lib_watchdog_core(), load_file_internal(), make_exception(), make_no_method_exception(), match_i(), max_by_i(), max_i(), min_by_i(), min_i(), minmax_by_i(), minmax_by_i_update(), minmax_i(), minmax_i_update(), mlambda(), mnew(), mObject_to_json(), mod(), mString_Extend_json_create(), mString_included_s(), mString_to_json_raw_object(), mul(), negate_lit(), negative_int_p(), num_abs(), num_div(), num_equal(), num_fdiv(), num_interval_step_size(), num_modulo(), num_nonzero_p(), num_quo(), num_remainder(), num_step(), num_to_int(), num_uminus(), nurat_div(), ole_invoke(), ole_typelib_from_itypeinfo(), ossl_call_client_cert_cb(), ossl_call_session_get_cb(), ossl_call_session_new_cb(), ossl_call_session_remove_cb(), ossl_call_tmp_dh_callback(), ossl_call_verify_cb_proc(), ossl_pkey_sign(), ossl_ssl_close(), ossl_ssl_initialize(), ossl_ssl_read_internal(), ossl_ssl_session_get_time(), ossl_ssl_session_set_time(), ossl_ssl_write_internal(), ossl_sslctx_flush_sessions(), ossl_to_der(), ossl_x509attr_get_value(), ossl_x509attr_initialize(), ossl_x509ext_initialize(), ossl_x509store_verify(), parse(), parse_main(), path_atime(), path_basename(), path_blockdev_p(), path_chardev_p(), path_chmod(), path_chown(), path_ctime(), path_directory_p(), path_dirname(), path_entries(), path_executable_p(), path_executable_real_p(), path_exist_p(), path_expand_path(), path_extname(), path_file_p(), path_fnmatch(), path_ftype(), path_grpowned_p(), path_lchmod(), path_lchown(), path_lstat(), path_make_link(), path_make_symlink(), path_mkdir(), path_mtime(), path_owned_p(), path_pipe_p(), path_readable_p(), path_readable_real_p(), path_readlink(), path_realdirpath(), path_realpath(), path_rename(), path_rmdir(), path_s_getwd(), path_setgid_p(), path_setuid_p(), path_size(), path_size_p(), path_socket_p(), path_split(), path_stat(), path_sticky_p(), path_symlink_p(), path_truncate(), path_utime(), path_world_readable_p(), path_world_writable_p(), path_writable_p(), path_writable_real_p(), path_zero_p(), positive_int_p(), protected_alias(), protected_empty(), protected_end_document(), protected_end_mapping(), protected_end_sequence(), protected_end_stream(), protected_start_stream(), quo(), r_le(), r_leave(), r_lt(), r_object0(), range_bsearch(), range_check(), range_each_func(), range_eqq(), range_max(), range_min(), range_step(), range_step_size(), rb_ary_bsearch(), rb_ary_cycle_size(), rb_ary_repeated_permutation_size(), rb_big_pow(), rb_class_inherited(), rb_cmpint(), rb_digest_class_s_digest(), rb_digest_instance_bubblebabble(), rb_digest_instance_digest(), rb_digest_instance_digest_bang(), rb_digest_instance_hexdigest(), rb_digest_instance_hexdigest_bang(), rb_digest_instance_length(), rb_digest_instance_new(), rb_digest_instance_to_s(), rb_enc_get_index(), rb_eql(), rb_equal(), rb_exc_new(), rb_exc_new3(), rb_gzreader_initialize(), rb_gzwriter_flush(), rb_gzwriter_initialize(), rb_hash(), rb_hash_default(), rb_inspect(), rb_io_flush(), rb_io_write(), rb_mod_include(), rb_mod_prepend(), rb_num_coerce_bin(), rb_num_coerce_bit(), rb_num_coerce_cmp(), rb_num_coerce_relop(), rb_obj_as_string(), rb_obj_clone(), rb_obj_dup(), rb_obj_extend(), rb_obj_init_dup_clone(), rb_obj_not_equal(), rb_obj_not_match(), rb_range_values(), rb_str_match(), rb_str_sum(), rb_str_upto(), rb_strftime_with_timespec(), rbtime2vtdate(), readline_attempted_completion_function(), recursive_cmp(), reduce0(), rescue_callback(), rt_complete_frags(), set_backtrace(), set_max_block_time(), set_option_encoding_once(), set_state_ivars(), shift(), slicebefore_i(), slicebefore_ii(), sockopt_unpack(), sort_2(), sort_by_cmp(), ssl_renegotiation_cb(), step_i(), strscan_get_charpos(), sub(), sym_step_i(), syserr_eqq(), tcl2rb_bool(), tcl_protect_core(), time_timespec(), tk_funcall(), tk_install_cmd_core(), TkStringValue(), to_strkey(), transcode_io(), unknown_keyword_error(), unlink_body(), unlink_rescue(), vtdate2rbtime(), wadd(), wcmp(), wdivmod(), weq(), wmul(), wquo(), writer(), and wsub().

VALUE rb_funcall2 | ( | VALUE | recv,
|  | ID | mid,
|  | int | argc,
|  | const VALUE * | argv
| ) |  |

Calls a method.

Parameters

  recv | receiver of the method
  mid | an ID that represents the name of the method
  argc | the number of arguments
  argv | pointer to an array of method arguments

Definition at line 805 of file vm_eval.c.

Referenced by asn1time_to_time(), basic_obj_respond_to(), callback(), check_funcall_exec(), check_match(), cleanup_iseq_build(), dir_open_dir(), getc_call(), io_getch(), lazy_drop_func(), lazy_drop_while_func(), lazy_flat_map_i(), lazy_take_func(), lazy_take_while_func(), method_missing(), mproc(), nucomp_f_complex(), nucomp_rationalize(), nurat_f_rational(), obj_respond_to(), path_binread(), path_each_line(), path_open(), path_read(), path_readlines(), path_s_glob(), path_sub(), path_sysopen(), r_byte(), r_byte1_buffered(), r_bytes1(), r_bytes1_buffered(), r_object0(), rand_range(), random_equal(), range_values(), rb_digest_class_s_bubblebabble(), rb_digest_class_s_hexdigest(), rb_eval_cmd(), rb_f_gets(), rb_f_open(), rb_f_putc(), rb_f_puts(), rb_f_readline(), rb_f_readlines(), rb_hash_flatten(), rb_io_set_encoding(), rb_obj_call_init(), rb_obj_respond_to(), rb_random_bytes(), rb_random_int32(), rb_random_real(), rb_random_ulong_limited(), rb_str_match_m(), require_libraries(), strio_readbyte(), strio_readchar(), strio_readline(), strio_sysread(), tk_do_callback(), tk_fromUTF8(), tk_toUTF8(), vm_call0_body(), and w_object().

VALUE rb_funcall3 | ( | VALUE | recv,
|  | ID | mid,
|  | int | argc,
|  | const VALUE * | argv
| ) |  |

Calls a method.

Same as rb_funcall2 but this function can call only public methods.

Parameters

  recv | receiver of the method
  mid | an ID that represents the name of the method
  argc | the number of arguments
  argv | pointer to an array of method arguments

Definition at line 820 of file vm_eval.c.

Referenced by aref_fallback(), argf_close(), argf_forward(), argf_getbyte(), argf_getc(), argf_getline(), argf_readchar(), argf_readlines(), protected_scalar(), protected_start_document(), protected_start_mapping(), protected_start_sequence(), and rawmode_opt().

VALUE rb_funcall_passing_block | ( | VALUE | ,
|  | ID | ,
|  | int | ,
|  | const VALUE * |
| ) |  |

Definition at line 826 of file vm_eval.c.

Referenced by rb_f_chomp(), rb_f_chop(), rb_f_gsub(), and rb_f_sub().

VALUE rb_funcall_with_block | ( | VALUE | ,
|  | ID | ,
|  | int | ,
|  | const VALUE * | ,
|  | VALUE |
| ) |  |

Definition at line 834 of file vm_eval.c.

Referenced by sym_call().

void rb_gc | ( | void | ) |  |

Definition at line 3108 of file gc.c.

Referenced by dir_initialize(), getDevice(), rb_fdopen(), rb_gc_start(), rb_pipe(), rb_sysopen(), rsock_s_accept(), rsock_socket(), and ruby_dup().

void rb_gc_call_finalizer_at_exit | ( | void | ) |  |

Definition at line 1482 of file gc.c.

Referenced by ruby_finalize_1().

void rb_gc_copy_finalizer | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1349 of file gc.c.

Referenced by init_copy().

VALUE rb_gc_disable | ( | void | ) |  |

Definition at line 3283 of file gc.c.

Referenced by cbsubst_scan_args(), Init_GC(), ip_ruby_cmd(), lib_merge_tklist(), lib_split_tklist_core(), tcl_protect_core(), and tk_conv_args().

VALUE rb_gc_enable | ( | void | ) |  |

Definition at line 3261 of file gc.c.

Referenced by cbsubst_scan_args(), Init_GC(), ip_ruby_cmd(), lib_merge_tklist(), lib_split_tklist_core(), tcl_protect_core(), and tk_conv_args().

void rb_gc_finalize_deferred | ( | void | ) |  |

Definition at line 1455 of file gc.c.

Referenced by rb_threadptr_execute_interrupts().

void rb_gc_force_recycle | ( | VALUE | ) |  |

Definition at line 2961 of file gc.c.

Referenced by call_queue_handler(), dispose_string(), eval_queue_handler(), fixup_nodes(), invoke_queue_handler(), literal_concat_gen(), parser_heredoc_restore(), parser_yylex(), rb_ary_decrement_share(), rb_parser_free(), RUBY_ALIAS_FUNCTION(), ruby_vm_destruct(), and yyparse().

static volatile VALUE* rb_gc_guarded_ptr | ( | volatile VALUE * | ptr) |  |
| inline static

Definition at line 524 of file ripper.y.

void rb_gc_mark | ( | VALUE | ) |  |

Definition at line 2598 of file gc.c.

Referenced by _thread_call_proc_arg_mark(), addrinfo_mark(), argf_mark(), autoload_i_mark(), backtrace_mark(), bm_mark(), call_queue_mark(), cont_mark(), cparse_params_mark(), d_lite_gc_mark(), dir_mark(), dlcfunc_mark(), dlptr_mark(), enumerator_mark(), eval_queue_mark(), fiber_mark(), fiddle_ptr_mark(), gc_marks(), generator_mark(), givar_mark_i(), gzfile_mark(), invoke_queue_mark(), iow_mark(), location_mark(), location_mark_entry(), mark_dump_arg(), mark_exec_arg(), mark_marshal_compat_i(), parser_mark(), random_mark(), rb_mark_end_proc(), rb_thread_mark(), rb_vm_mark(), strio_mark(), strscan_mark(), subst_mark(), thread_shield_mark(), time_mark(), tp_mark(), vm_mark_each_thread_func(), vm_trace_mark_event_hooks(), wmap_mark(), yielder_mark(), and zstream_mark().

void rb_gc_mark_encodings | ( | void | ) |  |

Definition at line 211 of file encoding.c.

void rb_gc_mark_global_tbl | ( | void | ) |  |

Definition at line 547 of file variable.c.

Referenced by gc_marks().

void rb_gc_mark_locations | ( | VALUE * | ,
|  | VALUE * |
| ) |  |

Definition at line 2341 of file gc.c.

void rb_gc_mark_maybe | ( | VALUE | ) |  |

Definition at line 2547 of file gc.c.

Referenced by gc_marks(), JSON_mark(), mark_global_entry(), val_marker(), and var_marker().

void rb_gc_mark_parser | ( | void | ) |  |

Definition at line 15480 of file ripper.c.

void rb_gc_mark_symbols | ( | void | ) |  |

Definition at line 15653 of file ripper.c.

void rb_gc_register_address | ( | VALUE * | ) |  |

Definition at line 2987 of file gc.c.

Referenced by Init_coverage(), Init_curses(), and rb_global_variable().

void rb_gc_register_mark_object | ( | VALUE | ) |  |

Definition at line 2980 of file gc.c.

Referenced by date__strptime_internal(), date_zone_to_diff(), Init_Bignum(), Init_date_core(), Init_Encoding(), Init_IO(), Init_load(), Init_marshal(), Init_Random(), Init_VM(), Init_win32ole(), power_cache_get_power0(), pruby_init(), rb_define_class_id_under(), rb_define_module_id_under(), rb_w32_init_file(), regcomp(), rt_complete_frags(), ruby_process_options(), and sym_to_proc().

void rb_gc_set_params | ( | void | ) |  |

Definition at line 3293 of file gc.c.

VALUE rb_gc_start | ( | void | ) |  |

Definition at line 3101 of file gc.c.

Referenced by Init_GC().

void rb_gc_unregister_address | ( | VALUE * | ) |  |

Definition at line 2999 of file gc.c.

Referenced by curses_finalize().

struct st_table* rb_generic_ivar_table | ( | VALUE | ) |  |

Definition at line 899 of file variable.c.

unsigned int rb_genrand_int32 | ( | void | ) |  |

Definition at line 250 of file random.c.

double rb_genrand_real | ( | void | ) |  |

Definition at line 257 of file random.c.

unsigned long rb_genrand_ulong_limited | ( | unsigned long | i) |  |

Definition at line 908 of file random.c.

Referenced by big_sparse_p().

rb_alloc_func_t rb_get_alloc_func | ( | VALUE | ) |  |

Definition at line 488 of file vm_method.c.

Referenced by obj_alloc_by_klass(), r_leave(), rb_marshal_define_compat(), rb_obj_alloc(), and w_object().

VALUE rb_get_argv | ( | void | ) |  |

Definition at line 11409 of file io.c.

VALUE rb_get_backtrace | ( | VALUE | info) |  |

Definition at line 53 of file eval_error.c.

VALUE rb_get_coverages | ( | void | ) |  |

Definition at line 5155 of file thread.c.

Referenced by clear_coverage(), coverage(), prepare_iseq_build(), rb_coverage_result(), and rb_coverage_start().

VALUE rb_get_expanded_load_path | ( | void | ) |  |

Definition at line 110 of file load.c.

Referenced by rb_feature_p(), rb_find_file_ext_safe(), and rb_find_file_safe().

VALUE rb_get_load_path | ( | void | ) |  |

Definition at line 33 of file load.c.

int rb_get_next_signal | ( | void | ) |  |

Definition at line 590 of file signal.c.

Referenced by rb_threadptr_execute_interrupts().

VALUE rb_get_path | ( | VALUE | ) |  |

Definition at line 224 of file file.c.

Referenced by apply2files(), rb_feature_provided(), and rb_file_s_path().

VALUE rb_get_path_check_convert | ( | VALUE | ,
|  | VALUE | ,
|  | int |
| ) |  |

Definition at line 197 of file file.c.

Referenced by rb_construct_expanded_load_path(), and rb_get_path_check().

VALUE rb_get_path_check_to_string | ( | VALUE | ,
|  | int |
| ) |  |

Definition at line 175 of file file.c.

Referenced by rb_construct_expanded_load_path(), and rb_get_path_check().

VALUE rb_get_path_no_checksafe | ( | VALUE | ) |  |

Definition at line 218 of file file.c.

VALUE rb_get_values_at | ( | VALUE | ,
|  | long | ,
|  | int | ,
|  | VALUE * | ,
|  | VALUE(*)(VALUE, long) |
| ) |  |

Definition at line 2580 of file array.c.

VALUE rb_gets | ( | void | ) |  |

Definition at line 7877 of file io.c.

void rb_glob | ( | const char * | ,
|  | void(*)(const char *, VALUE, void *) | ,
|  | VALUE |
| ) |  |

Definition at line 1574 of file dir.c.

struct rb_global_entry* rb_global_entry | ( | ID | ) |  |

Definition at line 435 of file variable.c.

Referenced by iseq_build_from_ary_body(), rb_alias_variable(), rb_define_hooked_variable(), rb_f_trace_var(), rb_gv_get(), and rb_gv_set().

void rb_global_variable | ( | VALUE * | ) |  |

Definition at line 426 of file gc.c.

Referenced by Init_ossl_asn1(), Init_RandomSeed(), Init_Regexp(), Init_tcltklib(), and Init_tkutil().

VALUE rb_gv_get | ( | const char * | ) |  |

Definition at line 808 of file variable.c.

Referenced by ip_ruby_cmd_receiver_get(), load_file(), and mSyslog_open().

VALUE rb_gv_set | ( | const char * | ,
|  | VALUE |
| ) |  |

Definition at line 799 of file variable.c.

Referenced by process_sflag(), and restore_lineno().

VALUE rb_gvar_defined | ( | struct rb_global_entry * | ) |  |

VALUE rb_gvar_get | ( | struct rb_global_entry * | ) |  |

Referenced by rb_gv_get().

void rb_gvar_readonly_setter | ( | VALUE | val,
|  | ID | id,
|  | void * | data,
|  | struct rb_global_variable * | gvar
| ) |  |

Referenced by Init_IO(), Init_load(), and ruby_prog_init().

VALUE rb_gvar_set | ( | struct rb_global_entry * | ,
|  | VALUE |
| ) |  |

Referenced by rb_gv_set().

VALUE rb_gvar_undef_getter | ( | ID | id,
|  | void * | data,
|  | struct rb_global_variable * | gvar
| ) |  |

void rb_gvar_undef_marker | ( | VALUE * | var) |  |

void rb_gvar_undef_setter | ( | VALUE | val,
|  | ID | id,
|  | void * | data,
|  | struct rb_global_variable * | gvar
| ) |  |

VALUE rb_gvar_val_getter | ( | ID | id,
|  | void * | data,
|  | struct rb_global_variable * | gvar
| ) |  |

void rb_gvar_val_marker | ( | VALUE * | var) |  |

void rb_gvar_val_setter | ( | VALUE | val,
|  | ID | id,
|  | void * | data,
|  | struct rb_global_variable * | gvar
| ) |  |

VALUE rb_gvar_var_getter | ( | ID | id,
|  | void * | data,
|  | struct rb_global_variable * | gvar
| ) |  |

void rb_gvar_var_marker | ( | VALUE * | var) |  |

void rb_gvar_var_setter | ( | VALUE | val,
|  | ID | id,
|  | void * | data,
|  | struct rb_global_variable * | gvar
| ) |  |

VALUE rb_hash | ( | VALUE | ) |  |

Definition at line 66 of file hash.c.

Referenced by cdhash_hash(), hash_i(), nucomp_hash(), nurat_hash(), rb_any_hash(), recursive_hash(), and time_hash().

VALUE rb_Hash | ( | VALUE | ) |  |

Definition at line 2778 of file object.c.

Referenced by rb_f_hash().

VALUE rb_hash_aref | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 560 of file hash.c.

Referenced by cbsubst_get_subst_arg(), cbsubst_scan_args(), cbsubst_sym_to_subst(), cParser_initialize(), cState_configure(), cto_i(), dir_initialize(), econv_opts(), econv_primitive_convert(), extract_binmode(), generate_json_object(), group_by_i(), hash2ptr_dispparams(), hash2result(), Init_Hash(), io_s_write(), iseq_build_from_ary_body(), JSON_parse_object(), mString_Extend_json_create(), open_key_args(), parse_main(), pruby_get_instance(), rawmode_opt(), rb_econv_open_opts(), rb_econv_prepare_options(), rb_hash_values_at(), rb_io_extract_modeenc(), rb_io_initialize(), rb_str_sub_bang(), rb_thread_variable_get(), rb_threadptr_pending_interrupt_check_mask(), realpath_rec(), recursive_list_access(), str_gsub(), tk_do_callback(), tr_setup_table(), transcode_loop(), and zstream_run().

VALUE rb_hash_aset | ( | VALUE | ,
|  | VALUE | ,
|  | VALUE |
| ) |  |

Referenced by add_activated_refinement(), ary_add_hash(), ary_add_hash_by(), cbsubst_table_setup(), cdhash_set_label_i(), check_exec_fds(), check_exec_fds_1(), check_exec_options_i_extract(), code_page(), count_nodes(), count_objects(), count_objects_size(), coverage(), coverage_result_i(), create_encoding_table_core(), cState_to_h(), cto_i(), date_zone_to_diff(), debug_lines(), env_select(), env_to_hash(), fdbm_invert(), fdbm_to_hash(), fgdbm_invert(), fgdbm_to_hash(), fsdbm_invert(), fsdbm_to_hash(), gc_profile_record_get(), gc_stat(), group_by_i(), Init_Hash(), Init_ossl_asn1(), Init_ossl_x509name(), io_s_write(), iseq_data_to_ary(), JSON_parse_object(), m_core_hash_from_ary(), m_core_hash_merge_ary(), m_core_hash_merge_ptr(), mString_to_json_raw_object(), ole_const_load(), ossl_dh_get_params(), ossl_dsa_get_params(), ossl_rsa_get_params(), ossl_sslctx_get_session_cache_stats(), pruby_register_instance(), r_object0(), rb_econv_prepare_options(), rb_enc_aliases_enc_i(), rb_hash_invert_i(), rb_hash_s_create(), rb_inflate_add_dictionary(), rb_mod_refine(), rb_struct_to_h(), rb_thread_variable_set(), rb_uninterruptible(), rb_using_refinement(), realpath_rec(), recursive_list_access(), recursive_push(), reg_named_captures_iter(), replace_i(), ripper_init_eventids1_table(), ripper_init_eventids2_table(), select_i(), separate_symbol(), set_state_ivars(), set_zero(), set_zero_i(), sig_list(), tk_install_cmd_core(), to_strkey(), tr_setup_table(), tr_trans(), update_encoding_table(), and when_vals().

VALUE rb_hash_clear | ( | VALUE | ) |  |

Definition at line 1138 of file hash.c.

Referenced by Init_Hash(), and rb_hash_replace().

VALUE rb_hash_delete | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 859 of file hash.c.

Referenced by Init_Hash(), pruby_unregister_instance(), recursive_pop(), tk_uninstall_cmd(), and unknown_keyword_error().

VALUE rb_hash_delete_if | ( | VALUE | ) |  |

Definition at line 959 of file hash.c.

Referenced by env_reject(), fdbm_reject(), fgdbm_reject(), fsdbm_reject(), Init_Hash(), and rb_hash_reject().

VALUE rb_hash_dup | ( | VALUE | ) |  |

Definition at line 240 of file hash.c.

Referenced by io_s_write(), and rb_using_refinement().

st_index_t rb_hash_end | ( | st_index_t | ) |  |

VALUE rb_hash_fetch | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 645 of file hash.c.

void rb_hash_foreach | ( | VALUE | ,
|  | int(*)(ANYARGS) | ,
|  | VALUE |
| ) |  |

Definition at line 200 of file hash.c.

Referenced by cbsubst_def_attr_aliases(), env_replace(), env_update(), initialize(), inspect_hash(), iseq_data_to_ary(), iseq_set_sequence(), JSON_parse_string(), m_core_hash_merge_kwd(), rb_hash_assoc(), rb_hash_clear(), rb_hash_delete_if(), rb_hash_each_key(), rb_hash_each_pair(), rb_hash_each_value(), rb_hash_has_value(), rb_hash_invert(), rb_hash_keep_if(), rb_hash_key(), rb_hash_keys(), rb_hash_rassoc(), rb_hash_rehash(), rb_hash_reject_bang(), rb_hash_replace(), rb_hash_select(), rb_hash_select_bang(), rb_hash_shift(), rb_hash_to_a(), rb_hash_update(), rb_hash_update_by(), rb_hash_values(), rb_thread_s_handle_interrupt(), rb_thread_variables(), rb_using_module(), recursive_eql(), recursive_hash(), and w_object().

VALUE rb_hash_freeze | ( | VALUE | ) |  |

Definition at line 36 of file hash.c.

Referenced by rb_coverage_result(), and rb_econv_prepare_options().

VALUE rb_hash_lookup | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 582 of file hash.c.

VALUE rb_hash_lookup2 | ( | VALUE | ,
|  | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 571 of file hash.c.

Referenced by ary_add_hash_by(), rb_ary_sample(), rb_ary_shuffle_bang(), rb_hash_lookup(), rb_io_extract_encoding_option(), recursive_check(), recursive_pop(), and recursive_push().

VALUE rb_hash_new | ( | void | ) |  |

Definition at line 234 of file hash.c.

Referenced by allocate_cbsubst_info(), ary_tmp_hash_new(), check_exec_fds(), check_exec_options_i_extract(), count_nodes(), count_objects(), count_objects_size(), count_tdata_objects(), create_encoding_table_core(), cState_to_h(), date__httpdate(), date__iso8601(), date__jisx0301(), date__parse(), date__rfc2822(), date__rfc3339(), date__xmlschema(), date_s__strptime_internal(), date_zone_to_diff(), enum_group_by(), env_select(), env_to_hash(), fdbm_invert(), fdbm_to_hash(), fgdbm_invert(), fgdbm_to_hash(), fsdbm_invert(), fsdbm_to_hash(), gc_profile_record_get(), gc_stat(), hidden_identity_hash_new(), Init_ossl_asn1(), Init_ossl_x509name(), Init_tkutil(), Init_VM(), io_s_write(), iseq_compile_each(), iseq_data_to_ary(), JSON_parse_object(), m_core_hash_from_ary(), make_compile_option_value(), mString_to_json_raw_object(), nil_to_h(), ole_const_load(), ossl_dh_get_params(), ossl_dsa_get_params(), ossl_rsa_get_params(), ossl_sslctx_get_session_cache_stats(), pruby_init(), r_object0(), rb_coverage_result(), rb_coverage_start(), rb_econv_prepare_options(), rb_enc_aliases(), rb_execarg_fixup(), rb_Hash(), rb_hash_invert(), rb_hash_select(), rb_hash_to_h(), rb_inflate_s_allocate(), rb_realpath_internal(), rb_reg_named_captures(), rb_struct_to_h(), rb_uninterruptible(), rb_w32_init_file(), recursive_list_access(), recursive_push(), ripper_init_eventids1_table(), ripper_init_eventids2_table(), ruby_thread_init(), separate_symbol(), sig_list(), tk_symbolkey2str(), tr_setup_table(), tr_trans(), vm_callee_setup_keyword_arg(), and vm_default_params().

st_index_t rb_hash_proc | ( | st_index_t | hash,
|  | VALUE | proc
| ) |  |

Definition at line 804 of file proc.c.

Referenced by proc_hash(), and rb_hash_method_definition().

st_index_t rb_hash_start | ( | st_index_t | ) |  |

Definition at line 1416 of file random.c.

Referenced by match_hash(), method_hash(), proc_hash(), rb_any_hash(), rb_obj_hash(), and recursive_hash().

struct st_table* rb_hash_tbl | ( | VALUE | ) |  |

Definition at line 266 of file hash.c.

Referenced by rb_hash_modify(), and rb_hash_replace().

st_index_t rb_hash_uint | ( | st_index_t | ,
|  | st_index_t |
| ) |  |

st_index_t rb_hash_uint32 | ( | st_index_t | ,
|  | uint32_t |
| ) |  |

VALUE rb_hash_update_by | ( | VALUE | hash1,
|  | VALUE | hash2,
|  | rb_hash_update_func * | func
| ) |  |

Definition at line 1944 of file hash.c.

VALUE rb_home_dir | ( | const char * | user,
|  | VALUE | result
| ) |  |

Definition at line 2888 of file file.c.

Referenced by dir_s_home(), and rb_file_expand_path_internal().

const char* rb_id2name | ( | ID | ) |  |

Definition at line 16068 of file ripper.c.

VALUE rb_id2str | ( | ID | ) |  |

Definition at line 16007 of file ripper.c.

ID rb_id_attrset | ( | ID | ) |  |

Definition at line 14326 of file ripper.c.

ID rb_id_encoding | ( | void | ) |  |

Definition at line 681 of file encoding.c.

VALUE rb_id_quote_unprintable | ( | ID | ) |  |

Definition at line 7841 of file string.c.

const char* rb_insns_name | ( | int | i) |  |

Definition at line 5475 of file compile.c.

VALUE rb_insns_name_array | ( | void | ) |  |

Definition at line 5481 of file compile.c.

VALUE rb_inspect | ( | VALUE | ) |  |

Definition at line 402 of file object.c.

Referenced by advice_arg_check(), bit_coerce(), cannot_be_coerced_into_BigDecimal(), coerce_rescue(), control_frame_dump(), env_inspect(), get_exception_sym2type(), insn_data_to_s_detail(), insn_operand_intern(), inspect_ary(), inspect_enumerator(), inspect_i(), inspect_range(), inspect_struct(), iseq_build_from_ary_body(), method_inspect(), name_err_mesg_to_str(), ossl_x509_inspect(), rb_check_id(), rb_cmperr(), rb_hash_fetch_m(), rb_mod_to_s(), rb_p(), rb_stat_inspect(), rb_str_format(), rb_throw_obj(), rb_to_id(), rb_vmdebug_debug_print_post(), rb_vmdebug_proc_dump_raw(), recursive_pop(), ruby__sfvextra(), ruby_debug_print_value(), and vm_check_if_namespace().

VALUE rb_int2big | ( | SIGNED_VALUE | ) |  |

Definition at line 309 of file bignum.c.

VALUE rb_int2big | ( | SIGNED_VALUE | ) |  |

Definition at line 309 of file bignum.c.

VALUE rb_int2inum | ( | SIGNED_VALUE | ) |  |

Definition at line 337 of file bignum.c.

VALUE rb_int2inum | ( | SIGNED_VALUE | ) |  |

Definition at line 337 of file bignum.c.

static VALUE rb_int2num_inline | ( | int | v) |  |
| inline static

Definition at line 1171 of file ripper.y.

References arg_concat, args, NEW_ZARRAY, tOROP, and value_expr.

VALUE rb_Integer | ( | VALUE | ) |  |

Definition at line 2469 of file object.c.

Referenced by function_call(), get_freefunc(), ossl_x509stctx_set_time(), rb_dlcfunc_initialize(), rb_dlptr_initialize(), rb_dlptr_s_to_ptr(), rb_fiddle_ptr_initialize(), rb_fiddle_ptr_s_to_ptr(), rb_gzfile_set_mtime(), rb_str_format(), time_mdump(), time_to_time_t(), and value_to_generic().

VALUE rb_integer_float_cmp | ( | VALUE | x,
|  | VALUE | y
| ) |  |

Definition at line 1459 of file bignum.c.

VALUE rb_integer_float_eq | ( | VALUE | x,
|  | VALUE | y
| ) |  |

Definition at line 1509 of file bignum.c.

ID rb_intern | ( | const char * | ) |  |

Definition at line 15991 of file ripper.c.

ID rb_intern2 | ( | const char * | ,
|  | long |
| ) |  |

Definition at line 15984 of file ripper.c.

ID rb_intern3 | ( | const char * | ,
|  | long | ,
|  | rb_encoding * |
| ) |  |

Definition at line 15856 of file ripper.c.

ID rb_intern_str | ( | VALUE | str) |  |

Definition at line 15997 of file ripper.c.

ID rb_interned_id_p | ( | const char * | ,
|  | long | ,
|  | rb_encoding * |
| ) |  |

void rb_interrupt | ( | void | ) |  |

Definition at line 545 of file eval.c.

VALUE rb_invcmp | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 42 of file compar.c.

VALUE rb_io_addstr | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1437 of file io.c.

Referenced by Init_IO().

VALUE rb_io_ascii8bit_binmode | ( | VALUE | ) |  |

Definition at line 4580 of file io.c.

Referenced by argf_binmode_m(), argf_next_argv(), rb_io_binmode_m(), and rsock_init_sock().

VALUE rb_io_binmode | ( | VALUE | ) |  |

Definition at line 4556 of file io.c.

Referenced by argf_next_argv(), io_reopen(), rb_io_init_copy(), and seek_before_access().

ssize_t rb_io_bufread | ( | VALUE | io,
|  | void * | buf,
|  | size_t | size
| ) |  |

Definition at line 2038 of file io.c.

VALUE rb_io_close | ( | VALUE | ) |  |

Definition at line 4187 of file io.c.

Referenced by argf_next_argv(), bsock_close_read(), bsock_close_write(), console_dev(), gzfile_wrap(), io_s_write(), load_file_internal(), pty_close_pty(), rb_f_backquote(), rb_gets(), rb_io_close_m(), rb_io_close_read(), rb_io_close_write(), rb_io_s_binread(), rb_io_s_foreach(), rb_io_s_pipe(), rb_io_s_read(), and rb_io_s_readlines().

VALUE rb_io_eof | ( | VALUE | ) |  |

Definition at line 1706 of file io.c.

Referenced by argf_eof(), and Init_IO().

VALUE rb_io_fdopen | ( | int | ,
|  | int | ,
|  | const char * |
| ) |  |

Definition at line 7083 of file io.c.

Referenced by load_file_internal().

VALUE rb_io_flush | ( | VALUE | ) |  |

Definition at line 1470 of file io.c.

Referenced by Init_IO(), process_options(), rb_f_p_internal(), rb_file_flock(), rb_file_size(), rb_io_getbyte(), rb_io_init_copy(), and rb_io_s_popen().

VALUE rb_io_get_io | ( | VALUE | ) |  |

Definition at line 614 of file io.c.

Referenced by io_reopen(), rb_io_init_copy(), and select_internal().

VALUE rb_io_getbyte | ( | VALUE | ) |  |

Definition at line 3667 of file io.c.

Referenced by argf_getbyte(), Init_IO(), io_strip_bom(), load_file_internal(), and rb_io_readbyte().

VALUE rb_io_gets | ( | VALUE | ) |  |

Definition at line 3076 of file io.c.

Referenced by argf_getline(), lex_io_gets(), load_file_internal(), and rb_gets().

VALUE rb_io_print | ( | int | ,
|  | VALUE * | ,
|  | VALUE |
| ) |  |

Definition at line 6682 of file io.c.

Referenced by Init_IO(), and rb_f_print().

VALUE rb_io_printf | ( | int | ,
|  | VALUE * | ,
|  | VALUE |
| ) |  |

Definition at line 6623 of file io.c.

Referenced by Init_IO().

VALUE rb_io_puts | ( | int | ,
|  | VALUE * | ,
|  | VALUE |
| ) |  |

Definition at line 6847 of file io.c.

Referenced by Init_IO(), io_puts_ary(), rb_f_abort(), rb_f_puts(), and rb_warn_m().

VALUE rb_io_ungetbyte | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 3728 of file io.c.

Referenced by Init_IO(), io_strip_bom(), and load_file_internal().

VALUE rb_io_ungetc | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 3763 of file io.c.

Referenced by Init_IO().

VALUE rb_io_write | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1415 of file io.c.

Referenced by argf_write(), copy_stream_body(), copy_stream_fallback_body(), gc_profile_report(), marshal_dump(), process_options(), rb_f_printf(), rb_io_addstr(), rb_io_print(), rb_io_printf(), rb_io_putc(), rb_io_puts(), rb_obj_display(), rb_p(), rb_write_error2(), rb_write_error_str(), and w_nbyte().

int rb_is_absolute_path | ( | const char * | ) |  |

Definition at line 5150 of file file.c.

Referenced by path_check_0(), rb_construct_expanded_load_path(), rb_file_expand_path_internal(), rb_find_file_ext_safe(), and rb_find_file_safe().

int rb_is_attrset_id | ( | ID | ) |  |

Definition at line 16133 of file ripper.c.

int rb_is_attrset_name | ( | VALUE | name) |  |

Definition at line 16261 of file ripper.c.

int rb_is_class_id | ( | ID | ) |  |

Definition at line 16115 of file ripper.c.

int rb_is_class_name | ( | VALUE | name) |  |

Definition at line 16243 of file ripper.c.

int rb_is_const_id | ( | ID | ) |  |

Definition at line 16109 of file ripper.c.

int rb_is_const_name | ( | VALUE | name) |  |

Definition at line 16237 of file ripper.c.

int rb_is_global_id | ( | ID | ) |  |

Definition at line 16121 of file ripper.c.

int rb_is_global_name | ( | VALUE | name) |  |

Definition at line 16249 of file ripper.c.

int rb_is_instance_id | ( | ID | ) |  |

Definition at line 16127 of file ripper.c.

int rb_is_instance_name | ( | VALUE | name) |  |

Definition at line 16255 of file ripper.c.

int rb_is_junk_id | ( | ID | ) |  |

Definition at line 16145 of file ripper.c.

int rb_is_junk_name | ( | VALUE | name) |  |

Definition at line 16283 of file ripper.c.

int rb_is_local_id | ( | ID | ) |  |

Definition at line 16139 of file ripper.c.

int rb_is_local_name | ( | VALUE | name) |  |

Definition at line 16267 of file ripper.c.

int rb_is_method_name | ( | VALUE | name) |  |

Definition at line 16273 of file ripper.c.

int rb_isalnum | ( | int | c) |  |

Definition at line 1882 of file encoding.c.

int rb_isalpha | ( | int | c) |  |

Definition at line 1883 of file encoding.c.

int rb_isblank | ( | int | c) |  |

Definition at line 1884 of file encoding.c.

int rb_iscntrl | ( | int | c) |  |

Definition at line 1885 of file encoding.c.

int rb_isdigit | ( | int | c) |  |

Definition at line 1886 of file encoding.c.

VALUE rb_iseq_clone | ( | VALUE | iseqval,
|  | VALUE | newcbase
| ) |  |

Definition at line 1884 of file iseq.c.

Referenced by clone_method(), and vm_define_method().

int rb_isgraph | ( | int | c) |  |

Definition at line 1887 of file encoding.c.

int rb_islower | ( | int | c) |  |

Definition at line 1888 of file encoding.c.

int rb_isprint | ( | int | c) |  |

Definition at line 1889 of file encoding.c.

int rb_ispunct | ( | int | c) |  |

Definition at line 1890 of file encoding.c.

int rb_isspace | ( | int | c) |  |

Definition at line 1891 of file encoding.c.

int rb_isupper | ( | int | c) |  |

Definition at line 1892 of file encoding.c.

int rb_isxdigit | ( | int | c) |  |

Definition at line 1893 of file encoding.c.

VALUE rb_iterate | ( | VALUE(*)(VALUE) | ,
|  | VALUE | ,
|  | VALUE(*)(ANYARGS) | ,
|  | VALUE |
| ) |  |

Definition at line 1032 of file vm_eval.c.

Referenced by call_lexer(), method_proc(), rb_block_call(), rb_check_block_call(), and rb_proc_new().

VALUE rb_iv_get | ( | VALUE | ,
|  | const char * |
| ) |  |

Definition at line 2578 of file variable.c.

VALUE rb_iv_get | ( | VALUE | ,
|  | const char * |
| ) |  |

Definition at line 2578 of file variable.c.

Referenced by call_trace_func(), callback(), cvar_front_klass(), esignal_signo(), function_call(), localjump_reason(), localjump_xvalue(), ossl_call_session_get_cb(), ossl_call_session_new_cb(), ossl_call_session_remove_cb(), ossl_ssl_setup(), ossl_sslctx_setup(), ossl_x509extfactory_create_ext(), ossl_x509stctx_initialize(), ossl_x509stctx_verify(), ossl_x509store_verify(), parse(), pst_to_i(), rb_mod_to_s(), rb_thread_variable_get(), rb_thread_variable_p(), rb_thread_variable_set(), rb_thread_variables(), ruby_cleanup(), set_state_ivars(), ssl_renegotiation_cb(), and sysexit_status().

VALUE rb_iv_set | ( | VALUE | ,
|  | const char * | ,
|  | VALUE |
| ) |  |

Definition at line 2586 of file variable.c.

VALUE rb_iv_set | ( | VALUE | ,
|  | const char * | ,
|  | VALUE |
| ) |  |

Definition at line 2586 of file variable.c.

Referenced by build_exception(), esignal_init(), exc_initialize(), exc_set_backtrace(), exit_initialize(), Init_VM(), initialize(), initialize_params(), ip_RubyExitCommand(), make_localjump_error(), name_err_initialize(), nometh_err_initialize(), ossl_ssl_initialize(), ossl_sslctx_initialize(), ossl_x509extfactory_alloc(), ossl_x509extfactory_set_crl(), ossl_x509extfactory_set_issuer_cert(), ossl_x509extfactory_set_subject_cert(), ossl_x509extfactory_set_subject_req(), ossl_x509stctx_initialize(), ossl_x509store_initialize(), ossl_x509store_set_flags(), ossl_x509store_set_purpose(), ossl_x509store_set_time(), ossl_x509store_set_trust(), ossl_x509store_set_vfy_cb(), ossl_x509store_verify(), parse_keyword_arg_i(), raise_from_check(), rb_last_status_set(), ruby_thread_init(), setup_exception(), and syserr_initialize().

st_index_t rb_ivar_count | ( | VALUE | ) |  |

Definition at line 1294 of file variable.c.

Referenced by rb_obj_inspect().

VALUE rb_ivar_defined | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 1199 of file variable.c.

Referenced by get_digest_base_metadata(), rb_obj_ivar_defined(), and struct_ivar_get().

void rb_ivar_foreach | ( | VALUE | ,
|  | int(*)(ANYARGS) | ,
|  | st_data_t |
| ) |  |

Definition at line 1266 of file variable.c.

Referenced by inspect_obj(), rb_obj_instance_variables(), and w_objivar().

VALUE rb_ivar_get | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 1111 of file variable.c.

Referenced by add_event_call_back(), ary2list(), ary2list2(), chunk_i(), cState_aref(), echild_status(), encoding_table_get_name_core(), EVENTSINK_Invoke(), fev_get_handler(), fev_off_event(), fole_s_show_help(), folemethod_event(), folemethod_name(), foleparam_name(), foletype_name(), folevariable_name(), get_digest_base_metadata(), get_strpath(), initialize_params(), ip_get_encoding_table(), lazy_drop_size(), lazy_size(), lazy_take_size(), lib_split_tklist_core(), method_inspect(), nucomp_loader(), nurat_loader(), ossl_start_ssl(), range_loader(), rb_enc_get_index(), rb_inflate_add_dictionary(), rb_iv_get(), rb_method_name_error(), rb_obj_ivar_get(), rb_undef(), reduce(), singleton_class_of(), slicebefore_i(), struct_ivar_get(), tcl_protect_core(), tkobj_path(), vm_getivar(), and zstream_run().

VALUE rb_ivar_set | ( | VALUE | ,
|  | ID | ,
|  | VALUE |
| ) |  |

Definition at line 1123 of file variable.c.

Referenced by add_event_call_back(), ary2list(), ary2list2(), cbsubst_initialize(), create_encoding_table_core(), create_ip_exc(), cState_aset(), enc_set_index(), enum_chunk(), enum_slice_before(), enumerable_lazy(), eval_string_with_cref(), fev_initialize(), fev_set_handler(), gzfile_raise(), Init_md5(), Init_rmd160(), Init_sha1(), initialize_params(), int_ossl_asn1_decode0_prim(), lazy_drop_func(), lazy_drop_while_func(), lazy_initialize(), lazy_set_method(), lazy_take_func(), lazy_zip_arrays_func(), lazy_zip_func(), lib_fromUTF8_core(), lib_split_tklist_core(), lib_toUTF8_core(), lib_UTF_backslash_core(), make_econv_exception(), make_struct(), next_i(), nucomp_marshal_load(), nurat_marshal_load(), ole_method_params(), ole_variables(), olemethod_set_member(), oleparam_ole_param_from_index(), oletype_set_member(), ossl_sslctx_session_get_cb(), ossl_sslctx_session_new_cb(), ossl_start_ssl(), parse_main(), pipe_open(), r_ivar(), raise_loaderror(), range_dumper(), rb_class_path(), rb_inflate_s_allocate(), rb_io_init_copy(), rb_iv_set(), rb_mod_refine(), rb_name_class(), rb_obj_ivar_set(), rb_set_class_path(), rb_set_class_path_string(), rb_struct_define_without_accessor(), readline_s_set_completion_case_fold(), readline_s_set_completion_proc(), ruby_init_loadpath_safe(), set_strpath(), sockopt_initialize(), time_mdump(), vm_call0_body(), and vm_setivar().

void rb_last_status_clear | ( | void | ) |  |

Definition at line 285 of file process.c.

Referenced by proc_wait(), proc_waitall(), rb_f_backquote(), rb_f_system(), and rb_io_close().

VALUE rb_last_status_get | ( | void | ) |  |

Definition at line 270 of file process.c.

Referenced by detach_process_watcher(), Init_process(), proc_wait2(), proc_waitall(), pty_check(), raise_from_check(), rb_f_system(), and waitall_each().

void rb_last_status_set | ( | int | status,
|  | rb_pid_t | pid
| ) |  |

Definition at line 276 of file process.c.

Referenced by pipe_finalize(), proc_waitall(), rb_spawn_process(), rb_waitpid(), and waitall_each().

VALUE rb_lastline_get | ( | void | ) |  |

Definition at line 774 of file vm.c.

Referenced by Init_IO(), rb_io_print(), rb_reg_match2(), and uscore_get().

void rb_lastline_set | ( | VALUE | ) |  |

Definition at line 780 of file vm.c.

Referenced by argf_gets(), Init_IO(), rb_f_chomp(), rb_f_chop(), rb_f_gsub(), rb_f_sub(), rb_gets(), rb_gzreader_gets(), rb_io_gets_m(), and strio_gets().

VALUE rb_lcm | ( | VALUE | x,
|  | VALUE | y
| ) |  |

Definition at line 1711 of file rational.c.

Referenced by Init_Rational(), and nucomp_denominator().

void rb_load | ( | VALUE | ,
|  | int |
| ) |  |

Definition at line 626 of file load.c.

Referenced by rb_load_protect().

void* rb_load_file | ( | const char * | ) |  |

Definition at line 824 of file pepper_main.c.

Referenced by rb_load_internal().

void rb_load_protect | ( | VALUE | ,
|  | int | ,
|  | int * |
| ) |  |

Definition at line 634 of file load.c.

int rb_local_defined | ( | ID | ) |  |

Definition at line 5857 of file compile.c.

VALUE rb_locale_charmap | ( | VALUE | klass) |  |

Definition at line 1477 of file encoding.c.

int rb_locale_encindex | ( | void | ) |  |

Definition at line 1196 of file encoding.c.

rb_encoding* rb_locale_encoding | ( | void | ) |  |

Definition at line 1212 of file encoding.c.

VALUE rb_locale_str_new | ( | const char * | ,
|  | long |
| ) |  |

Definition at line 596 of file string.c.

Referenced by curses_getch(), env_str_new(), and window_getch().

VALUE rb_locale_str_new_cstr | ( | const char * | ) |  |

Definition at line 602 of file string.c.

Referenced by curses_getstr(), filename_completion_proc_call(), hist_each(), hist_get(), rb_remove_history(), readline_attempted_completion_function(), readline_readline(), time_mdump(), time_zone(), username_completion_proc_call(), and window_getstr().

static VALUE rb_long2num_inline | ( | long | v) |  |
| inline static

Definition at line 1192 of file ripper.y.

References new_attr_op_assign, and value_expr.

VALUE rb_make_backtrace | ( | void | ) |  |

Definition at line 772 of file vm_backtrace.c.

VALUE rb_make_backtrace | ( | void | ) |  |

Definition at line 772 of file vm_backtrace.c.

Referenced by argument_error(), and parser_set_encode().

VALUE rb_make_exception | ( | int | ,
|  | VALUE * |
| ) |  |

Definition at line 642 of file eval.c.

void rb_mark_end_proc | ( | void | ) |  |

Definition at line 80 of file eval_jump.c.

void rb_mark_generic_ivar | ( | VALUE | ) |  |

Definition at line 985 of file variable.c.

Referenced by gc_mark_children().

void rb_mark_generic_ivar_tbl | ( | void | ) |  |

Definition at line 1015 of file variable.c.

Referenced by gc_marks().

void rb_mark_hash | ( | struct st_table * | ) |  |

Definition at line 2411 of file gc.c.

Referenced by Init_win32ole(), mark_dump_arg(), and mark_load_arg().

void rb_mark_set | ( | struct st_table * | ) |  |

Definition at line 2387 of file gc.c.

Referenced by mark_dump_arg().

void rb_mark_tbl | ( | struct st_table * | ) |  |

Definition at line 2541 of file gc.c.

Referenced by autoload_mark(), mark_load_arg(), rb_gc_mark_symbols(), rb_mark_generic_ivar(), rb_thread_mark(), and rb_vm_mark().

void rb_marshal_define_compat | ( | VALUE | newclass,
|  | VALUE | oldclass,
|  | VALUE(*)(VALUE) | dumper,
|  | VALUE(*)(VALUE, VALUE) | loader
| ) |  |

Definition at line 113 of file marshal.c.

Referenced by Init_Complex(), Init_Range(), Init_Rational(), and Init_vm_backtrace().

VALUE rb_marshal_dump | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 2111 of file marshal.c.

VALUE rb_marshal_load | ( | VALUE | ) |  |

Definition at line 2123 of file marshal.c.

Referenced by date_s__load().

void rb_match_busy | ( | VALUE | ) |  |

Definition at line 1189 of file re.c.

Referenced by date__httpdate(), date__iso8601(), date__jisx0301(), date__parse(), date__rfc2822(), date__rfc3339(), date__strptime_internal(), date__xmlschema(), match_getter(), nucomp_s_convert(), nurat_s_convert(), and rb_reg_match_m().

VALUE rb_math_atan2 | ( | VALUE | ,
|  | VALUE |
| ) |  |

VALUE rb_math_cos | ( | VALUE | ) |  |

VALUE rb_math_cosh | ( | VALUE | ) |  |

VALUE rb_math_exp | ( | VALUE | ) |  |

VALUE rb_math_hypot | ( | VALUE | ,
|  | VALUE |
| ) |  |

VALUE rb_math_log | ( | int | argc,
|  | VALUE * | argv
| ) |  |

Referenced by imp2().

VALUE rb_math_sin | ( | VALUE | ) |  |

VALUE rb_math_sinh | ( | VALUE | ) |  |

VALUE rb_math_sqrt | ( | VALUE | ) |  |

void rb_maygvl_fd_fix_cloexec | ( | int | fd) |  |

Definition at line 179 of file io.c.

Referenced by cloexec_accept(), rb_cloexec_dup2(), rb_cloexec_fcntl_dupfd(), rb_cloexec_open(), rb_cloexec_pipe(), and rb_fd_fix_cloexec().

void rb_mem_clear | ( | register VALUE * | ,
|  | register | long
| ) |  |

Definition at line 37 of file array.c.

int rb_memcicmp | ( | const void * | ,
|  | const void * | ,
|  | long |
| ) |  |

Definition at line 80 of file re.c.

Referenced by parser_encode_length(), and rb_file_identical_p().

st_index_t rb_memhash | ( | const void * | ptr,
|  | long | len
| ) |  |

Definition at line 1422 of file random.c.

Referenced by BigDecimal_hash(), d_lite_hash(), flo_hash(), match_hash(), nucomp_hash(), nurat_hash(), rb_big_hash(), rb_str_hash(), and reg_hash().

long rb_memsearch | ( | const void * | ,
|  | long | ,
|  | const void * | ,
|  | long | ,
|  | rb_encoding * |
| ) |  |

Definition at line 227 of file re.c.

Referenced by rb_str_index(), and rb_str_split_m().

int rb_method_basic_definition_p | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 1491 of file vm_method.c.

Referenced by check_funcall_missing(), hash_default_value(), make_no_method_exception(), method_missing(), mnew(), obj_respond_to(), rb_mod_const_get(), rb_obj_respond_to(), rb_p(), send_internal(), set_backtrace(), and vm_call_opt_send().

int rb_method_boundp | ( | VALUE | ,
|  | ID | ,
|  | int |
| ) |  |

Definition at line 769 of file vm_method.c.

Referenced by basic_obj_respond_to(), and rb_mod_method_defined().

VALUE rb_method_call | ( | int | ,
|  | VALUE * | ,
|  | VALUE |
| ) |  |

Definition at line 1520 of file proc.c.

Referenced by Init_Proc(), and method_fallback().

VALUE rb_method_call_with_block | ( | int | ,
|  | VALUE * | ,
|  | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1527 of file proc.c.

Referenced by bmcall(), and rb_method_call().

int rb_method_defined_by | ( | VALUE | obj,
|  | ID | mid,
|  | VALUE(*)(ANYARGS) | cfunc
| ) |  |

VALUE rb_mod_class_variables | ( | int | ,
|  | VALUE * | ,
|  | VALUE |
| ) |  |

Definition at line 2503 of file variable.c.

Referenced by Init_Object().

void* rb_mod_const_at | ( | VALUE | ,
|  | void * |
| ) |  |

Definition at line 1977 of file variable.c.

Referenced by rb_mod_const_of(), rb_mod_constants(), and rb_mod_s_constants().

VALUE rb_mod_const_missing | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1513 of file variable.c.

Referenced by Init_Object().

void* rb_mod_const_of | ( | VALUE | ,
|  | void * |
| ) |  |

Definition at line 1990 of file variable.c.

Referenced by rb_mod_constants(), and rb_mod_s_constants().

VALUE rb_mod_constants | ( | int | ,
|  | VALUE * | ,
|  | VALUE |
| ) |  |

Definition at line 2041 of file variable.c.

Referenced by Init_Object(), and rb_mod_s_constants().

int rb_mod_method_arity | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 1823 of file proc.c.

Referenced by rb_obj_method_arity().

VALUE rb_mod_module_eval | ( | int | ,
|  | VALUE * | ,
|  | VALUE |
| ) |  |

Definition at line 1666 of file vm_eval.c.

Referenced by Init_vm_eval(), and rb_struct_s_def().

VALUE rb_mod_module_exec | ( | int | ,
|  | VALUE * | ,
|  | VALUE |
| ) |  |

Definition at line 1692 of file vm_eval.c.

Referenced by Init_vm_eval(), and rb_mod_initialize().

VALUE rb_mod_name | ( | VALUE | ) |  |

Definition at line 205 of file variable.c.

Referenced by Init_Object().

VALUE rb_mod_remove_const | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1911 of file variable.c.

Referenced by console_dev(), Init_Object(), and make_struct().

VALUE rb_mod_remove_cvar | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 2544 of file variable.c.

Referenced by Init_Object().

void rb_must_asciicompat | ( | VALUE | ) |  |

Definition at line 1463 of file string.c.

Referenced by rb_str_to_inum(), string_to_c(), string_to_c_strict(), string_to_r(), and string_to_r_strict().

void rb_mutex_allow_trap | ( | VALUE | self,
|  | int | val
| ) |  |

Definition at line 4540 of file thread.c.

Referenced by io_binwrite().

VALUE rb_mutex_lock | ( | VALUE | mutex) |  |

Definition at line 4291 of file thread.c.

Referenced by Init_Thread(), rb_mutex_sleep(), rb_mutex_synchronize(), rb_thread_shield_new(), and rb_thread_shield_wait().

VALUE rb_mutex_locked_p | ( | VALUE | mutex) |  |

Definition at line 4181 of file thread.c.

Referenced by Init_Thread().

VALUE rb_mutex_new | ( | void | ) |  |

Definition at line 4169 of file thread.c.

Referenced by io_binwrite().

VALUE rb_mutex_owned_p | ( | VALUE | self) |  |

Definition at line 4367 of file thread.c.

Referenced by finish_writeconv(), Init_Thread(), and io_flush_buffer().

VALUE rb_mutex_sleep | ( | VALUE | self,
|  | VALUE | timeout
| ) |  |

Definition at line 4468 of file thread.c.

Referenced by mutex_sleep().

VALUE rb_mutex_synchronize | ( | VALUE | mutex,
|  | VALUE(*)(VALUE arg) | func,
|  | VALUE | arg
| ) |  |

Definition at line 4517 of file thread.c.

Referenced by fptr_finalize(), io_binwrite(), io_flush_buffer(), and rb_mutex_synchronize_m().

VALUE rb_mutex_trylock | ( | VALUE | mutex) |  |

Definition at line 4208 of file thread.c.

Referenced by Init_Thread(), and rb_mutex_lock().

VALUE rb_mutex_unlock | ( | VALUE | mutex) |  |

Definition at line 4422 of file thread.c.

Referenced by Init_Thread(), rb_mutex_sleep(), rb_mutex_synchronize(), rb_thread_shield_destroy(), rb_thread_shield_release(), and rb_thread_shield_wait().

void rb_name_class | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 372 of file variable.c.

Referenced by boot_defclass(), rb_define_class(), and rb_define_module_id().

void rb_need_block | ( | void | ) |  |

Definition at line 693 of file eval.c.

VALUE rb_newobj | ( | void | ) |  |

Definition at line 677 of file gc.c.

Referenced by rb_node_newnode().

VALUE rb_newobj_of | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 683 of file gc.c.

NODE* rb_node_newnode | ( | enum | node_type,
|  | VALUE | ,
|  | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 694 of file gc.c.

NODE* rb_node_newnode_longlife | ( | enum | node_type,
|  | VALUE | ,
|  | VALUE | ,
|  | VALUE |
| ) |  |

static char rb_num2char_inline | ( | VALUE | x) |  |
| inline static

Definition at line 1212 of file ripper.y.

References new_attr_op_assign, ripper_intern(), and value_expr.

double rb_num2dbl | ( | VALUE | ) |  |

Definition at line 2697 of file object.c.

Referenced by thread_join_m().

VALUE rb_num2fix | ( | VALUE | ) |  |

Definition at line 2175 of file numeric.c.

SIGNED_VALUE rb_num2long | ( | VALUE | ) |  |

Definition at line 1945 of file numeric.c.

Referenced by rb_fix2short(), rb_num2fix(), rb_num2int(), rb_num2long_inline(), and rb_num2short().

static long rb_num2long_inline | ( | VALUE | x) |  |
| inline static

Definition at line 585 of file ripper.y.

short rb_num2short | ( | VALUE | ) |  |

Definition at line 2134 of file numeric.c.

Referenced by rb_num2short_inline().

static short rb_num2short_inline | ( | VALUE | x) |  |
| inline static

Definition at line 634 of file ripper.y.

VALUE rb_num2ulong | ( | VALUE | ) |  |

Definition at line 1979 of file numeric.c.

Referenced by rb_num2ulong_inline(), and rb_num2ushort().

static unsigned long rb_num2ulong_inline | ( | VALUE | x) |  |
| inline static

Definition at line 594 of file ripper.y.

unsigned short rb_num2ushort | ( | VALUE | ) |  |

Definition at line 2152 of file numeric.c.

Referenced by rb_fix2ushort().

VALUE rb_num_coerce_bin | ( | VALUE | ,
|  | VALUE | ,
|  | ID |
| ) |  |

Definition at line 269 of file numeric.c.

Referenced by f_addsub(), f_divide(), fix_divide(), fix_divmod(), fix_fdiv(), fix_minus(), fix_mod(), fix_mul(), fix_plus(), fix_pow(), flo_div(), flo_divmod(), flo_minus(), flo_mod(), flo_mul(), flo_plus(), flo_pow(), nucomp_expt(), nucomp_mul(), nurat_add(), nurat_div(), nurat_expt(), nurat_mul(), nurat_sub(), rb_big_divide(), rb_big_divmod(), rb_big_fdiv(), rb_big_minus(), rb_big_modulo(), rb_big_mul(), rb_big_plus(), rb_big_pow(), and rb_big_remainder().

VALUE rb_num_coerce_bit | ( | VALUE | ,
|  | VALUE | ,
|  | ID |
| ) |  |

Definition at line 3206 of file numeric.c.

Referenced by rb_big_and(), rb_big_or(), and rb_big_xor().

VALUE rb_num_coerce_cmp | ( | VALUE | ,
|  | VALUE | ,
|  | ID |
| ) |  |

Definition at line 276 of file numeric.c.

Referenced by BigDecimalCmp(), cmp_gen(), equal_gen(), fix_cmp(), flo_cmp(), nurat_cmp(), and rb_big_cmp().

VALUE rb_num_coerce_relop | ( | VALUE | ,
|  | VALUE | ,
|  | ID |
| ) |  |

Definition at line 284 of file numeric.c.

Referenced by big_op(), BigDecimalCmp(), fix_ge(), fix_gt(), fix_le(), fix_lt(), flo_ge(), flo_gt(), flo_le(), and flo_lt().

int rb_num_negative_p | ( | VALUE | ) |  |

Definition at line 189 of file numeric.c.

Referenced by rb_random_ulong_limited().

int rb_num_to_uint | ( | VALUE | val,
|  | unsigned int * | ret
| ) |  |

Definition at line 122 of file numeric.c.

Referenced by int_chr(), and rb_str_concat().

VALUE rb_obj_alloc | ( | VALUE | ) |  |

Definition at line 1702 of file object.c.

Referenced by bsock_s_for_fd(), build_exception(), enum_chunk(), enum_slice_before(), Init_Hash(), Init_Object(), Init_readline(), Init_Thread(), Init_tkutil(), Init_top_self(), int_ossl_asn1_decode0_cons(), int_ossl_asn1_decode0_prim(), obj_alloc_by_klass(), ossl_sslctx_session_new_cb(), ossl_sslctx_session_remove_cb(), prep_window(), pty_getpty(), pty_open(), r_object0(), rb_catch(), rb_class_new_instance(), rb_digest_class_s_digest(), rb_f_catch(), rb_io_s_for_fd(), rb_last_status_set(), rb_obj_clone(), rb_obj_dup(), rb_range_new(), rsock_s_accept(), rsock_s_accept_nonblock(), and RUBY_ALIAS_FUNCTION().

VALUE rb_obj_as_string | ( | VALUE | ) |  |

Definition at line 895 of file string.c.

Referenced by ary_join_1(), compile_err_append(), exc_inspect(), fdbm_store(), init_libraries(), io_write(), pack_pack(), pruby_eval(), pruby_obj_to_var(), rand_random(), range_to_s(), rb_gzwriter_write(), rb_inspect(), rb_io_puts(), rb_io_syswrite(), rb_io_write_nonblock(), rb_p(), rb_str_format(), rb_str_sub_bang(), readline_attempted_completion_function(), reg_fragment_check_gen(), ruby__sfvextra(), setup_exception(), str_gsub(), strio_write(), and tcl_protect_core().

void rb_obj_call_init | ( | VALUE | ,
|  | int | ,
|  | VALUE * |
| ) |  |

Definition at line 1227 of file eval.c.

VALUE rb_obj_class | ( | VALUE | ) |  |

Definition at line 194 of file object.c.

Referenced by ary_make_shared_copy(), cannot_be_coerced_into_BigDecimal(), cbsubst_initialize(), copy_path_class(), d_lite_plus(), dup_obj(), dup_obj_as_complex(), encoded_dup(), exc_equal(), Init_Object(), inspect_struct(), io_reopen(), ip_eval(), ip_invoke_with_position(), mString_to_json_raw_object(), name_err_mesg_equal(), NOINSERT_UPDATE_CALLBACK(), ossl_cipher_init(), ossl_x509_inspect(), path_basename(), path_dirname(), path_each_entry(), path_entries(), path_expand_path(), path_readlink(), path_realdirpath(), path_realpath(), path_split(), path_sub(), path_sub_ext(), random_equal(), rb_ary_slice_bang(), rb_ary_subseq(), rb_ary_times(), rb_ary_to_a(), rb_ary_uniq(), rb_digest_base_block_length(), rb_digest_base_copy(), rb_digest_base_digest_length(), rb_digest_base_finish(), rb_digest_base_reset(), rb_digest_base_update(), rb_hash_dup(), rb_hash_to_h(), rb_ivar_set(), rb_obj_alloc(), rb_obj_clone(), rb_obj_dup(), rb_obj_init_copy(), rb_obj_is_instance_of(), rb_stat_cmp(), rb_str_dup(), rb_str_new_frozen(), rb_str_new_shared(), rb_str_substr(), rb_str_to_s(), rb_struct_eql(), rb_struct_equal(), rb_struct_initialize_m(), rb_struct_members(), rb_struct_members_m(), rb_tmp_class_path(), recursive_hash(), RUBY_ALIAS_FUNCTION(), str_byte_substr(), str_gsub(), syserr_initialize(), tcl_protect_core(), time_dup(), tk_funcall(), and window_subwin().

const char* rb_obj_classname | ( | VALUE | ) |  |

Definition at line 391 of file variable.c.

Referenced by addrinfo_inspect(), BigDecimal_power(), bit_coerce(), coerce_rescue(), convert_type(), d_lite_inspect(), define_final(), define_final0(), divmodv(), econv_inspect(), enc_inspect(), enum_zip(), eval_string_with_cref(), folevariant_initialize(), generator_initialize(), GetVpValueWithPrec(), init_copy(), inspect_enumerator(), iseq_inspect(), lazy_zip(), match_inspect(), method_inspect(), must_encoding(), must_respond_to(), nucomp_coerce(), num_exact(), num_init_copy(), num_sadded(), nurat_coerce(), path_inspect(), proc_to_s(), rand_init(), range_bsearch(), range_each(), range_step(), rb_ary_bsearch(), rb_big_coerce(), rb_builtin_class_name(), rb_check_convert_type(), rb_check_inheritable(), rb_check_safe_str(), rb_check_typeddata(), rb_cmperr(), rb_convert_type(), rb_define_final(), rb_define_module(), rb_define_module_id_under(), rb_digest_instance_inspect(), rb_digest_instance_method_unimpl(), rb_error_untrusted(), rb_f_kill(), rb_Hash(), rb_hash_set_default_proc(), rb_mod_define_method(), rb_obj_clone(), rb_obj_dup(), rb_stat_inspect(), rb_str_index_m(), rb_str_partition(), rb_str_rindex_m(), rb_str_rpartition(), rb_thread_inspect(), rb_to_float(), rb_to_integer(), rescue_callback(), setup_exception(), sockopt_inspect(), take_items(), time_timespec(), uscore_get(), vm_caller_setup_args(), vm_search_super_method(), w_object(), and wdivmod().

VALUE rb_obj_clone | ( | VALUE | ) |  |

Definition at line 296 of file object.c.

Referenced by exc_exception(), Init_Object(), rb_digest_instance_digest(), rb_digest_instance_hexdigest(), rb_digest_instance_new(), rb_eval_string_wrap(), and rb_load_internal().

VALUE rb_obj_dup | ( | VALUE | ) |  |

Definition at line 338 of file object.c.

Referenced by argf_initialize_copy(), chunk_i(), enumerator_each(), Init_Object(), lib_fromUTF8_core(), path_initialize(), path_to_s(), rb_hash_merge(), rb_hash_reject(), rb_io_init_copy(), setup_exception(), and slicebefore_i().

VALUE rb_obj_encoding | ( | VALUE | ) |  |

Definition at line 868 of file encoding.c.

VALUE rb_obj_equal | ( | VALUE | obj1,
|  | VALUE | obj2
| ) |  |

Definition at line 109 of file object.c.

Referenced by Init_Object(), and opt_eq_func().

VALUE rb_obj_freeze | ( | VALUE | ) |  |

Definition at line 971 of file object.c.

Referenced by console_dev(), create_encoding_table_core(), env_str_new(), Init_eval(), Init_File(), Init_GC(), Init_Object(), Init_ossl_ssl(), Init_Proc(), Init_strscan(), Init_tcltklib(), Init_tkutil(), Init_VM(), mk_ary_of_str(), ossl_sslctx_setup(), prep_io(), process_options(), pty_getpty(), pty_open(), rb_ary_flatten_bang(), rb_ary_freeze(), rb_construct_expanded_load_path(), rb_f_getenv(), rb_hash_freeze(), rb_insns_name_array(), rb_mod_freeze(), rb_str_freeze(), rb_str_upto(), ruby_init_loadpath_safe(), run_finalizer(), set_arg0(), tcltklib_compile_info(), update_encoding_table(), and vm_default_params().

VALUE rb_obj_frozen_p | ( | VALUE | ) |  |

Definition at line 1000 of file object.c.

Referenced by generic_ivar_set(), and Init_Object().

VALUE rb_obj_id | ( | VALUE | ) |  |

Definition at line 1688 of file gc.c.

Referenced by exec_recursive(), Init_GC(), iow_internal_object_id(), rb_exec_recursive_paired(), and rb_obj_hash().

void rb_obj_infect | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 942 of file object.c.

VALUE rb_obj_init_copy | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 354 of file object.c.

Referenced by Init_Object(), and rb_mod_init_copy().

VALUE rb_obj_instance_eval | ( | int | ,
|  | VALUE * | ,
|  | VALUE |
| ) |  |

Definition at line 1595 of file vm_eval.c.

Referenced by Init_vm_eval(), and tk_s_new().

VALUE rb_obj_instance_exec | ( | int | ,
|  | VALUE * | ,
|  | VALUE |
| ) |  |

Definition at line 1627 of file vm_eval.c.

Referenced by Init_vm_eval(), and tk_s_new().

VALUE rb_obj_instance_variables | ( | VALUE | ) |  |

Definition at line 1363 of file variable.c.

VALUE rb_obj_is_fiber | ( | VALUE | ) |  |

Definition at line 333 of file cont.c.

VALUE rb_obj_is_instance_of | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 545 of file object.c.

Referenced by error_handle(), Init_Object(), ossl_pkey_initialize(), ossl_ssl_session_initialize(), ossl_ssl_session_set_time(), ossl_sslctx_flush_sessions(), and ossl_sslctx_session_get_cb().

VALUE rb_obj_is_kind_of | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 582 of file object.c.

Referenced by case_when_optimizable_literal(), check_match(), cState_from_state_s(), discrete_object_p(), encoding_table_get_name_core(), encoding_table_get_obj_core(), error_handle(), ev_advise(), eval_string_with_cref(), EVENTSINK_Invoke(), f_kind_of_p(), fole_s_const_load(), fole_s_show_help(), folemethod_initialize(), foleparam_initialize(), folevariant_initialize(), get_eval_string_core(), GetBNPtr(), gzfile_read_raw_rescue(), host_str(), Init_Object(), ip_eval(), ip_invoke_with_position(), ip_is_slave_of_p(), ip_rbTkWaitCommand(), ip_rbUpdateCommand(), ip_rbVwaitCommand(), make_exception(), ole_invoke(), ole_val2variant(), os_obj_of_i(), ossl_asn1cons_to_der(), ossl_asn1data_to_der(), ossl_bn_coerce(), ossl_bn_initialize(), parse(), path_cmp(), path_eq(), pending_exception_check0(), pending_exception_check1(), range_eq(), range_eql(), range_include(), range_max(), range_size(), range_step(), range_step_size(), rb_ary_bsearch(), rb_check_to_float(), rb_check_to_integer(), rb_digest_instance_equal(), rb_dlptr2cptr(), rb_dlptr_aset(), rb_dlptr_cmp(), rb_dlptr_eql(), rb_dlptr_s_to_ptr(), rb_enumeratorize_with_size(), rb_fiddle_ptr2cptr(), rb_fiddle_ptr_aset(), rb_fiddle_ptr_cmp(), rb_fiddle_ptr_eql(), rb_fiddle_ptr_s_to_ptr(), rb_method_call_status(), rb_mod_eqq(), rb_range_values(), rb_rescue2(), rb_set_errinfo(), rb_stat_cmp(), rb_thread_pending_interrupt_p(), rb_to_float(), rb_to_integer(), ruby_cleanup(), setup_exception(), syserr_eqq(), tcl_protect_core(), thread_start_func_2(), tk_funcall(), total_i(), umethod_bind(), vm_call_method(), and vm_search_super_method().

VALUE rb_obj_is_method | ( | VALUE | ) |  |

Definition at line 925 of file proc.c.

Referenced by method_eq(), rb_econv_prepare_options(), rb_mod_define_method(), and transcode_loop().

VALUE rb_obj_is_mutex | ( | VALUE | obj) |  |

Definition at line 4134 of file thread.c.

Referenced by rb_objspace_call_finalizer().

VALUE rb_obj_is_proc | ( | VALUE | ) |  |

Definition at line 91 of file proc.c.

Referenced by enumerator_initialize(), enumerator_size(), generator_initialize(), iseq_s_of(), rb_econv_prepare_options(), rb_hash_set_default_proc(), rb_mod_define_method(), set_trace_func(), thread_add_trace_func(), transcode_loop(), and vm_caller_setup_args().

VALUE rb_obj_is_thread | ( | VALUE | obj) |  |

Definition at line 1928 of file vm.c.

Referenced by rb_objspace_call_finalizer().

VALUE rb_obj_method | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1232 of file proc.c.

Referenced by Init_Proc(), and wmap_allocate().

int rb_obj_method_arity | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 1831 of file proc.c.

Referenced by rb_obj_respond_to().

VALUE rb_obj_remove_instance_variable | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1395 of file variable.c.

Referenced by Init_Object().

int rb_obj_respond_to | ( | VALUE | ,
|  | ID | ,
|  | int |
| ) |  |

Definition at line 1518 of file vm_method.c.

Referenced by ary2list(), ary2list2(), get_eval_string_core(), r_object0(), rb_respond_to(), and w_object().

VALUE rb_obj_taint | ( | VALUE | ) |  |

Definition at line 860 of file object.c.

Referenced by Init_Object(), pack_pack(), path_taint(), rb_file_path(), rsock_s_recvfrom(), rsock_s_recvfrom_nonblock(), and tk_obj_untrust().

VALUE rb_obj_tainted | ( | VALUE | ) |  |

Definition at line 843 of file object.c.

Referenced by Init_Object().

VALUE rb_obj_trust | ( | VALUE | ) |  |

Definition at line 931 of file object.c.

Referenced by Init_Object().

VALUE rb_obj_untaint | ( | VALUE | ) |  |

Definition at line 879 of file object.c.

Referenced by Init_Object(), path_untaint(), and time_zone().

VALUE rb_obj_untrust | ( | VALUE | ) |  |

Definition at line 912 of file object.c.

Referenced by Init_Object(), and tk_obj_untrust().

VALUE rb_obj_untrusted | ( | VALUE | ) |  |

Definition at line 897 of file object.c.

Referenced by Init_Object().

const char* rb_objspace_data_type_name | ( | VALUE | obj) |  |

Definition at line 749 of file gc.c.

Referenced by cto_i().

void rb_p | ( | VALUE | ) |  |

Definition at line 6896 of file io.c.

Referenced by rb_f_p_internal().

int rb_parse_in_eval | ( | void | ) |  |

Definition at line 5876 of file compile.c.

int rb_parse_in_main | ( | void | ) |  |

Definition at line 5882 of file compile.c.

NODE* rb_parser_append_print | ( | VALUE | ,
|  | NODE * |
| ) |  |

Definition at line 15485 of file ripper.c.

void* rb_parser_calloc | ( | struct parser_params * | ,
|  | size_t | ,
|  | size_t |
| ) |  |

Definition at line 16529 of file ripper.c.

NODE* rb_parser_compile_cstr | ( | volatile VALUE | ,
|  | const char * | ,
|  | const char * | ,
|  | int | ,
|  | int |
| ) |  |

Definition at line 11111 of file ripper.c.

NODE* rb_parser_compile_file | ( | volatile VALUE | ,
|  | const char * | ,
|  | VALUE | ,
|  | int |
| ) |  |

Definition at line 11132 of file ripper.c.

NODE* rb_parser_compile_string | ( | volatile VALUE | ,
|  | const char * | ,
|  | VALUE | ,
|  | int |
| ) |  |

Definition at line 11097 of file ripper.c.

VALUE rb_parser_dump_tree | ( | NODE * | node,
|  | int | comment
| ) |  |

Definition at line 889 of file node.c.

Referenced by process_options().

VALUE rb_parser_encoding | ( | VALUE | ) |  |

Definition at line 16473 of file ripper.c.

VALUE rb_parser_end_seen_p | ( | VALUE | ) |  |

Definition at line 16458 of file ripper.c.

void rb_parser_free | ( | struct parser_params * | ,
|  | void * |
| ) |  |

Definition at line 16559 of file ripper.c.

VALUE rb_parser_get_yydebug | ( | VALUE | ) |  |

Definition at line 16488 of file ripper.c.

VALUE rb_parser_get_yydebug | ( | VALUE | ) |  |

Definition at line 16488 of file ripper.c.

void* rb_parser_malloc | ( | struct parser_params * | ,
|  | size_t |
| ) |  |

Definition at line 16519 of file ripper.c.

VALUE rb_parser_new | ( | void | ) |  |

Definition at line 16444 of file ripper.c.

void* rb_parser_realloc | ( | struct parser_params * | ,
|  | void * | ,
|  | size_t |
| ) |  |

Definition at line 16539 of file ripper.c.

VALUE rb_parser_set_yydebug | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 16503 of file ripper.c.

VALUE rb_parser_set_yydebug | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 16503 of file ripper.c.

NODE* rb_parser_while_loop | ( | VALUE | ,
|  | NODE * | ,
|  | int | ,
|  | int |
| ) |  |

Definition at line 15517 of file ripper.c.

VALUE rb_path2class | ( | const char * | ) |  |

Definition at line 366 of file variable.c.

Referenced by convert_UTF8_to_JSON_ASCII(), Init_bubblebabble(), Init_generator(), Init_md5(), Init_ossl_digest(), Init_parser(), Init_rmd160(), Init_sha1(), Init_sha2(), Init_tcltklib(), and path2class().

int rb_path_check | ( | const char * | ) |  |

Definition at line 5229 of file file.c.

Referenced by path_tainted_p().

VALUE rb_path_to_class | ( | VALUE | ) |  |

Definition at line 326 of file variable.c.

Referenced by class2path(), path2class(), path2module(), r_object0(), and rb_path2class().

int rb_pipe | ( | int * | pipes) |  |

Definition at line 5514 of file io.c.

Referenced by pipe_open(), and rb_io_s_pipe().

int rb_proc_arity | ( | VALUE | ) |  |

Definition at line 702 of file proc.c.

Referenced by default_proc_arity_check(), proc_arity(), and rb_proc_parameters().

VALUE rb_proc_call | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 592 of file proc.c.

Referenced by enumerator_size(), generator_each(), proc_fallback(), rb_call_end_proc(), and yielder_yield().

VALUE rb_proc_call_with_block | ( | VALUE | ,
|  | int | argc,
|  | VALUE * | argv,
|  | VALUE |
| ) |  |

Definition at line 605 of file proc.c.

Referenced by call_trace_func(), curry(), enumerator_size(), and tp_call_trace().

int rb_proc_exec | ( | const char * | ) |  |

Definition at line 1308 of file process.c.

VALUE rb_proc_lambda_p | ( | VALUE | ) |  |

Definition at line 231 of file proc.c.

Referenced by default_proc_arity_check(), Init_Proc(), and proc_curry().

VALUE rb_proc_location | ( | VALUE | self) |  |

Definition at line 758 of file proc.c.

Referenced by Init_Proc(), and thread_initialize().

VALUE rb_proc_new | ( | VALUE(*)(ANYARGS) | ,
|  | VALUE |
| ) |  |

Definition at line 2018 of file proc.c.

Referenced by call_queue_handler(), create_encoding_table(), eval_queue_handler(), invoke_queue_handler(), make_curry_proc(), rb_fiber_new(), sym_to_proc(), and yielder_new().

VALUE rb_proc_times | ( | VALUE | ) |  |

VALUE rb_protect | ( | VALUE(*)(VALUE) | ,
|  | VALUE | ,
|  | int * |
| ) |  |

Definition at line 771 of file eval.c.

void rb_provide | ( | const char * | ) |  |

Definition at line 554 of file load.c.

Referenced by InitVM_Enumerator(), and ruby_init_ext().

int rb_provided | ( | const char * | ) |  |

Definition at line 505 of file load.c.

VALUE rb_random_bytes | ( | VALUE | rnd,
|  | long | n
| ) |  |

Definition at line 996 of file random.c.

Referenced by random_bytes().

VALUE rb_random_int | ( | VALUE | rnd,
|  | VALUE | max
| ) |  |

unsigned int rb_random_int32 | ( | VALUE | rnd) |  |

Definition at line 914 of file random.c.

double rb_random_real | ( | VALUE | rnd) |  |

Definition at line 931 of file random.c.

unsigned long rb_random_ulong_limited | ( | VALUE | rnd,
|  | unsigned long | limit
| ) |  |

Definition at line 962 of file random.c.

VALUE rb_range_beg_len | ( | VALUE | ,
|  | long * | ,
|  | long * | ,
|  | long | ,
|  | int |
| ) |  |

Definition at line 987 of file range.c.

Referenced by rb_ary_aref(), rb_ary_aset(), rb_ary_fill(), rb_ary_slice_bang(), rb_get_values_at(), rb_str_aref(), rb_str_aset(), str_byte_aref(), and vm_backtrace_to_ary().

VALUE rb_range_new | ( | VALUE | ,
|  | VALUE | ,
|  | int |
| ) |  |

Definition at line 67 of file range.c.

Referenced by fixup_nodes().

int rb_range_values | ( | VALUE | range,
|  | VALUE * | begp,
|  | VALUE * | endp,
|  | int * | exclp
| ) |  |

Definition at line 963 of file range.c.

Referenced by range_values(), and rb_range_beg_len().

VALUE rb_Rational | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1749 of file rational.c.

Referenced by BigDecimal_to_r().

VALUE rb_rational_new | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1741 of file rational.c.

VALUE rb_rational_raw | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1735 of file rational.c.

VALUE rb_rational_reciprocal | ( | VALUE | x) |  |

Definition at line 1675 of file rational.c.

Referenced by fix_divide().

VALUE rb_realpath_internal | ( | VALUE | basedir,
|  | VALUE | path,
|  | int | strict
| ) |  |

Definition at line 3502 of file file.c.

Referenced by iseq_s_compile_file(), process_options(), rb_file_s_realdirpath(), rb_file_s_realpath(), rb_load_internal(), and ruby_init_loadpath_safe().

VALUE rb_refinement_module_get_refined_class | ( | VALUE | module) |  |

Definition at line 1129 of file eval.c.

VALUE rb_reg_alloc | ( | void | ) |  |

Definition at line 2481 of file re.c.

Referenced by rb_enc_reg_new(), rb_reg_compile(), and rb_reg_new_str().

int rb_reg_backref_number | ( | VALUE | match,
|  | VALUE | backref
| ) |  |

Definition at line 1075 of file re.c.

Referenced by rb_str_subpat(), and rb_str_subpat_set().

VALUE rb_reg_check_preprocess | ( | VALUE | ) |  |

Definition at line 2304 of file re.c.

Referenced by reg_fragment_check_gen().

VALUE rb_reg_compile | ( | VALUE | str,
|  | int | options,
|  | const char * | sourcefile,
|  | int | sourceline
| ) |  |

Definition at line 2530 of file re.c.

Referenced by reg_compile_gen().

VALUE rb_reg_init_str | ( | VALUE | re,
|  | VALUE | s,
|  | int | options
| ) |  |

Definition at line 2493 of file re.c.

Referenced by rb_reg_new_str().

VALUE rb_reg_last_match | ( | VALUE | ) |  |

Definition at line 1483 of file re.c.

Referenced by last_match_getter(), match_to_s(), and vm_getspecial().

VALUE rb_reg_match | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 2746 of file re.c.

Referenced by Init_Regexp(), and rb_str_match().

VALUE rb_reg_match2 | ( | VALUE | ) |  |

Definition at line 2805 of file re.c.

Referenced by Init_Regexp().

VALUE rb_reg_match_last | ( | VALUE | ) |  |

Definition at line 1546 of file re.c.

Referenced by last_paren_match_getter(), and vm_getspecial().

VALUE rb_reg_match_post | ( | VALUE | ) |  |

Definition at line 1528 of file re.c.

Referenced by Init_Regexp(), postmatch_getter(), and vm_getspecial().

VALUE rb_reg_match_pre | ( | VALUE | ) |  |

Definition at line 1501 of file re.c.

Referenced by Init_Regexp(), prematch_getter(), and vm_getspecial().

VALUE rb_reg_new | ( | const char * | ,
|  | long | ,
|  | int |
| ) |  |

Definition at line 2524 of file re.c.

Referenced by date__strptime_internal(), proc_options(), and regcomp().

VALUE rb_reg_new_str | ( | VALUE | ,
|  | int |
| ) |  |

Definition at line 2487 of file re.c.

Referenced by r_object0(), rb_reg_new_ary(), rb_reg_regcomp(), and rb_reg_s_union().

VALUE rb_reg_nth_defined | ( | int | ,
|  | VALUE |
| ) |  |

Definition at line 1439 of file re.c.

VALUE rb_reg_nth_match | ( | int | ,
|  | VALUE |
| ) |  |

Definition at line 1457 of file re.c.

Referenced by date__strptime_internal(), httpdate_type1_cb(), httpdate_type2_cb(), httpdate_type3_cb(), iso8601_bas_datetime_cb(), iso8601_ext_datetime_cb(), iso8601_ext_time_cb(), jisx0301_cb(), match_aref(), match_entry(), match_inspect(), parse_day_cb(), parse_ddd_cb(), parse_dot_cb(), parse_eu_cb(), parse_frag_cb(), parse_iso21_cb(), parse_iso22_cb(), parse_iso23_cb(), parse_iso24_cb(), parse_iso25_cb(), parse_iso26_cb(), parse_iso_cb(), parse_jis_cb(), parse_mday_cb(), parse_mon_cb(), parse_sla_cb(), parse_time2_cb(), parse_time_cb(), parse_us_cb(), parse_vms11_cb(), parse_vms12_cb(), parse_year_cb(), rb_reg_last_match(), rb_reg_match_last(), rb_reg_s_last_match(), rb_str_rpartition(), rb_str_sub_bang(), rb_str_subpat(), rfc2822_cb(), rfc3339_cb(), scan_once(), str_gsub(), vm_getspecial(), xmlschema_datetime_cb(), xmlschema_time_cb(), and xmlschema_trunc_cb().

int rb_reg_options | ( | VALUE | ) |  |

Definition at line 3083 of file re.c.

Referenced by rb_reg_init_copy(), rb_reg_initialize_m(), rb_reg_options_m(), and w_object().

int rb_remove_event_hook | ( | rb_event_hook_func_t | func) |  |

Definition at line 194 of file vm_trace.c.

Referenced by rb_clear_trace_func(), rb_reset_coverages(), and set_trace_func().

void rb_remove_method | ( | VALUE | ,
|  | const char * |
| ) |  |

Definition at line 688 of file vm_method.c.

void rb_remove_method_id | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 682 of file vm_method.c.

Referenced by num_sadded().

VALUE rb_require | ( | const char * | ) |  |

Definition at line 997 of file load.c.

Referenced by Init_bubblebabble(), Init_generator(), Init_md5(), Init_ossl_digest(), Init_parser(), Init_psych_parser(), Init_rmd160(), Init_sha1(), Init_sha2(), Init_tkutil(), and process_options().

VALUE rb_require_safe | ( | VALUE | ,
|  | int |
| ) |  |

Definition at line 911 of file load.c.

Referenced by autoload_require(), load_transcoder_entry(), rb_f_require(), rb_f_require_relative(), rb_require(), and require_enc().

VALUE rb_rescue | ( | VALUE(*)(ANYARGS) | ,
|  | VALUE | ,
|  | VALUE(*)(ANYARGS) | ,
|  | VALUE |
| ) |  |

Definition at line 763 of file eval.c.

VALUE rb_rescue2 | ( | VALUE(*)(ANYARGS) | ,
|  | VALUE | ,
|  | VALUE(*)(ANYARGS) | ,
|  | VALUE | ,
|  |  | ...
| ) |  |

Definition at line 701 of file eval.c.

int rb_reserved_fd_p | ( | int | fd) |  |

Referenced by rb_io_initialize().

struct kwtable* rb_reserved_word | ( | const char * | ,
|  | unsigned | int
| ) |  |

Definition at line 16427 of file ripper.c.

void rb_reset_random_seed | ( | void | ) |  |

Definition at line 1443 of file random.c.

Referenced by rb_thread_atfork().

int rb_respond_to | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 1557 of file vm_method.c.

Referenced by check_funcall_failed(), copy_stream_body(), copy_stream_fallback_body(), define_final(), discrete_object_p(), do_coerce(), encoding_table_get_name_core(), enum_zip(), generate_json(), gzfile_close(), gzfile_write_raw(), hash_equal(), lazy_flat_map_func(), lazy_zip(), marshal_dump(), marshal_load(), must_respond_to(), num_exact(), ole_search_handler_method(), ossl_to_der_if_possible(), parse(), range_values(), rb_ary_equal(), rb_define_final(), rb_econv_prepare_options(), rb_f_open(), rb_gzreader_initialize(), rb_gzwriter_flush(), rb_gzwriter_initialize(), rb_range_values(), rb_str_equal(), readline_s_set_completion_proc(), syserr_eqq(), and TkStringValue().

VALUE* rb_ruby_debug_ptr | ( | void | ) |  |

Definition at line 2464 of file vm.c.

VALUE* rb_ruby_verbose_ptr | ( | void | ) |  |

Definition at line 2458 of file vm.c.

int rb_safe_level | ( | void | ) |  |

Definition at line 28 of file safe.c.

void rb_secure | ( | int | ) |  |

Definition at line 79 of file safe.c.

Referenced by apply2files(), bsock_do_not_rev_lookup_set(), bsock_do_not_reverse_lookup_set(), bsock_setsockopt(), check_dirname(), check_gid_switch(), check_uid_switch(), create_dummy_encoding_for_tk_core(), curses_init_screen(), dir_s_chdir(), dlhandle_sym(), env_assoc(), env_delete(), env_each_pair(), env_empty_p(), env_fetch(), env_has_key(), env_has_value(), env_inspect(), env_key(), env_keys(), env_rassoc(), env_select(), env_shift(), env_size(), env_to_a(), env_to_hash(), env_update(), env_values(), env_values_at(), etc_getgrgid(), etc_getgrnam(), etc_getlogin(), etc_getpwuid(), etc_group(), etc_passwd(), ev_advise(), fdbm_modify(), fev_off_event(), fiddle_handle_sym(), fole_free(), fole_initialize(), fole_respond_to(), fole_s_connect(), fole_s_const_load(), gc_stress_set(), get_pid(), get_ppid(), hist_delete_at(), hist_each(), hist_empty_p(), hist_get(), hist_length(), hist_pop(), hist_push(), hist_push_method(), hist_shift(), id2ref(), io_write(), ip_allow_ruby_exit_set(), ip_create_slave(), ip_evloop_abort_on_exc_set(), ip_invoke_immediate(), ip_restart(), iseq_eval(), iseq_s_compile(), iseq_s_compile_file(), iseq_s_compile_option_set(), iseq_s_of(), iseq_to_a(), lib_evloop_abort_on_exc_set(), lib_restart(), mSyslog_close(), mSyslog_set_mask(), ole_types_from_typelib(), os_each_obj(), proc_detach(), proc_wait(), proc_waitall(), rb_alias(), rb_check_safe_obj(), rb_define_const(), rb_dir_getwd(), rb_dl_free(), rb_dl_malloc(), rb_dl_ptr2value(), rb_dl_realloc(), rb_dlcfunc_new(), rb_dlhandle_initialize(), rb_dlptr_malloc(), rb_dlptr_new2(), rb_dlptr_s_allocate(), rb_env_size(), rb_execarg_addopt(), rb_export_method(), rb_f_abort(), rb_f_exit(), rb_f_exit_bang(), rb_f_getenv(), rb_f_kill(), rb_f_srand(), rb_f_trace_var(), rb_f_untrace_var(), rb_fiddle_free(), rb_fiddle_handle_initialize(), rb_fiddle_malloc(), rb_fiddle_ptr2value(), rb_fiddle_ptr_malloc(), rb_fiddle_ptr_new2(), rb_fiddle_ptr_s_allocate(), rb_fiddle_realloc(), rb_file_chmod(), rb_file_chown(), rb_file_executable_p(), rb_file_executable_real_p(), rb_file_flock(), rb_file_identical_p(), rb_file_lstat(), rb_file_readable_p(), rb_file_readable_real_p(), rb_file_s_chmod(), rb_file_s_chown(), rb_file_s_ftype(), rb_file_s_lstat(), rb_file_s_rename(), rb_file_s_stat(), rb_file_s_umask(), rb_file_s_unlink(), rb_file_s_utime(), rb_file_symlink_p(), rb_file_writable_p(), rb_file_writable_real_p(), rb_gdbm_modify(), rb_include_module(), rb_io_autoclose_p(), rb_io_initialize(), rb_io_reopen(), rb_io_set_autoclose(), rb_io_syswrite(), rb_io_write_nonblock(), rb_ioctl(), rb_iseq_disasm(), rb_load_internal(), rb_obj_taint(), rb_obj_trust(), rb_obj_untaint(), rb_obj_untrust(), rb_prepend_module(), rb_realpath_internal(), rb_remove_history(), rb_secure_update(), rb_stat(), rb_stat_init(), rb_thread_abort_exc_set(), rb_thread_kill(), rb_thread_priority_set(), rb_thread_s_abort_exc_set(), rb_tracepoint_disable(), rb_tracepoint_enable(), rb_undef(), readline_readline(), readline_s_get_completion_case_fold(), readline_s_get_completion_proc(), readline_s_set_completion_case_fold(), readline_s_set_completion_proc(), readline_s_set_input(), readline_s_set_output(), remove_method(), rsock_bsock_send(), rsock_s_accept(), rsock_s_accept_nonblock(), rsock_sock_listen(), set_eventloop_tick(), set_eventloop_weight(), set_eventloop_window_mode(), set_no_event_wait(), set_trace_func(), sig_trap(), sock_initialize(), sock_s_gethostbyname(), syslog_write(), tcp_s_gethostbyname(), test_check(), thgroup_add(), thread_add_trace_func_m(), thread_set_trace_func_m(), top_define_method(), top_include(), udp_bind(), udp_connect(), udp_init(), udp_send(), window_initialize(), and writable().

void rb_secure_update | ( | VALUE | ) |  |

Definition at line 94 of file safe.c.

Referenced by rb_dlcfunc_call().

void rb_set_class_path | ( | VALUE | ,
|  | VALUE | ,
|  | const char * |
| ) |  |

Definition at line 303 of file variable.c.

Referenced by Init_IO().

void rb_set_class_path_string | ( | VALUE | ,
|  | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 280 of file variable.c.

Referenced by rb_define_class_id_under(), and rb_define_module_id_under().

void rb_set_end_proc | ( | void(*)(VALUE) | ,
|  | VALUE |
| ) |  |

Definition at line 60 of file eval_jump.c.

void rb_set_errinfo | ( | VALUE | ) |  |

Definition at line 1436 of file eval.c.

void rb_set_safe_level | ( | int | ) |  |

Definition at line 40 of file safe.c.

Referenced by callq_safelevel_handler(), create_encoding_table_core(), evq_safelevel_handler(), and ivq_safelevel_handler().

void rb_set_safe_level_force | ( | int | ) |  |

Definition at line 34 of file safe.c.

Referenced by check_autoload_required(), create_encoding_table_core(), rb_autoload_load(), rb_eval_cmd(), rb_exec_end_proc(), rb_method_call_with_block(), rb_require_safe(), and reset_safe().

int rb_sigaltstack_size | ( | void | ) |  |

Referenced by init_heap(), and th_init().

const char* rb_sourcefile | ( | void | ) |  |

Definition at line 802 of file vm.c.

VALUE rb_sourcefilename | ( | void | ) |  |

Definition at line 788 of file vm.c.

Referenced by rb_const_set(), and warn_print().

int rb_sourceline | ( | void | ) |  |

Definition at line 816 of file vm.c.

Referenced by ary_new(), call_trace_func(), empty_ary_alloc(), empty_hash_alloc(), empty_str_alloc(), error_pos(), error_print(), eval_string_with_cref(), m_core_hash_from_ary(), newobj(), rb_bug(), rb_const_set(), rb_exec(), rb_f_load(), rb_obj_alloc(), rb_require_safe(), rb_str_resurrect(), setup_exception(), str_new(), update_coverage(), and warn_print().

rb_pid_t rb_spawn | ( | int | ,
|  | VALUE * |
| ) |  |

Definition at line 3724 of file process.c.

rb_pid_t rb_spawn_err | ( | int | ,
|  | VALUE * | ,
|  | char * | ,
|  | size_t |
| ) |  |

Definition at line 3718 of file process.c.

static int rb_special_const_p | ( | VALUE | obj) |  |
| inline static

Definition at line 1560 of file ripper.y.

Referenced by bit_coerce(), cannot_be_coerced_into_BigDecimal(), coerce_rescue(), generic_ivar_set(), givar_i(), ivar_get(), markable_object_p(), r_object0(), rb_ivar_count(), rb_ivar_defined(), rb_ivar_foreach(), rb_obj_clone(), rb_obj_dup(), and rb_obj_remove_instance_variable().

void rb_stdio_set_default_encoding | ( | void | ) |  |

Definition at line 10332 of file io.c.

Referenced by process_options().

VALUE rb_str2inum | ( | VALUE | ,
|  | int |
| ) |  |

Definition at line 871 of file bignum.c.

VALUE rb_str_append | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 2114 of file string.c.

Referenced by argf_read(), compile_err_append(), dir_inspect(), dt_lite_jisx0301(), eval_string_with_cref(), fc_path(), gzfile_error_inspect(), inspect_i(), inspect_range(), inspect_struct(), iso8601_timediv(), join_der_i(), key2keyname(), make_version_str(), method_inspect(), name_err_mesg_to_str(), ossl_sslctx_set_ciphers(), ossl_x509_inspect(), ossl_x509extfactory_create_ext(), parser_here_document(), path_sub_ext(), rand_random(), range_to_s(), rb_io_inspect(), rb_iseq_disasm(), rb_load_fail(), rb_mod_to_s(), rb_reg_s_union(), rb_set_class_path_string(), rb_stat_inspect(), rb_str_concat(), rb_str_ellipsize(), rb_str_insert(), reg_compile_gen(), sockopt_inspect(), strscan_concat(), sys_fail2(), tcl_protect_core(), tk_install_cmd_core(), and warn_print().

void rb_str_associate | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1422 of file string.c.

Referenced by pack_pack(), and pack_unpack().

VALUE rb_str_associated | ( | VALUE | ) |  |

Definition at line 1453 of file string.c.

Referenced by pack_unpack().

VALUE rb_str_buf_append | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 2098 of file string.c.

Referenced by ary_join_0(), ary_join_1(), env_inspect(), exc_inspect(), gc_profile_result(), inspect_ary(), inspect_i(), literal_concat0(), match_inspect(), method_inspect(), rb_digest_instance_inspect(), rb_file_join(), rb_reg_preprocess_dregexp(), rb_str_append(), and str_gsub().

VALUE rb_str_buf_cat | ( | VALUE | ,
|  | const char * | ,
|  | long |
| ) |  |

Definition at line 1940 of file string.c.

Referenced by append_utf8(), appendline(), encodes(), env_inspect(), exc_inspect(), fill_envp_buf_i(), json_string_unescape(), load_file_read_contents_callback(), match_inspect(), pack_pack(), pack_unpack(), parser_nextc(), qpencode(), rb_enc_cr_str_buf_cat(), rb_exec_fillarg(), rb_execarg_fixup(), rb_file_expand_path_internal(), rb_reg_expr_str(), rb_str_buf_cat2(), rb_str_buf_cat_escaped_char(), rb_str_buf_new_cstr(), rb_str_cat(), unescape_escaped_nonascii(), unescape_nonascii(), w_nbyte(), zstream_append_buffer(), and zstream_append_input().

VALUE rb_str_buf_cat2 | ( | VALUE | ,
|  | const char * |
| ) |  |

Definition at line 1950 of file string.c.

Referenced by addrinfo_inspect(), env_inspect(), fill_envp_buf_i(), inspect_ary(), inspect_enumerator(), inspect_hash(), match_inspect(), method_inspect(), rb_digest_instance_inspect(), rb_enc_reg_error_desc(), rb_exec_fillarg(), rb_reg_desc(), rb_reg_to_s(), and rb_stat_inspect().

VALUE rb_str_buf_cat_ascii | ( | VALUE | ,
|  | const char * |
| ) |  |

Definition at line 2074 of file string.c.

Referenced by inspect_i(), prepare_getline_args(), and rb_reg_s_union().

int rb_str_buf_cat_escaped_char | ( | VALUE | result,
|  | unsigned int | c,
|  | int | unicode_p
| ) |  |

Definition at line 4455 of file string.c.

Referenced by rb_reg_expr_str(), and rb_str_inspect().

VALUE rb_str_buf_new | ( | long | ) |  |

Definition at line 777 of file string.c.

Referenced by appendline(), copy_stream_body(), copy_stream_fallback_body(), gc_profile_result(), JSON_parse_string(), marshal_dump(), pack_pack(), parser_nextc(), pst_to_s(), rb_ary_join(), rb_digest_instance_inspect(), rb_econv_substr_append(), rb_enc_vsprintf(), rb_exec_fillarg(), rb_execarg_fixup(), rb_file_join(), rb_reg_preprocess(), rb_reg_regsub(), rb_reg_s_union(), rb_str_buf_new_cstr(), rb_str_format(), rb_str_inspect(), str_gsub(), zstream_append_buffer(), and zstream_append_input().

VALUE rb_str_buf_new2 | ( | const char * | ) |  |

VALUE rb_str_buf_new_cstr | ( | const char * | ) |  |

Definition at line 793 of file string.c.

Referenced by rb_load_fail().

size_t rb_str_capacity | ( | VALUE | ) |  |

Definition at line 360 of file string.c.

Referenced by append_fspath(), econv_primitive_convert(), rb_econv_substr_append(), rb_str_set_len(), and rb_str_vcatf().

VALUE rb_str_cat | ( | VALUE | ,
|  | const char * | ,
|  | long |
| ) |  |

Definition at line 1956 of file string.c.

Referenced by date_strftime_internal(), eval_string_with_cref(), flo_to_s(), inspect_range(), inspect_sockaddr(), io_getc(), io_shift_cbuf(), moreswitches(), ole_excepinfo2msg(), parser_here_document(), process_sflag(), r_bytes1_buffered(), range_to_s(), rb_file_dirname(), rb_id2str(), rb_io_inspect(), rb_str_cat2(), rb_str_concat(), rb_str_ellipsize(), realpath_rec(), reg_compile_gen(), strio_write(), and time_strftime().

VALUE rb_str_cat2 | ( | VALUE | ,
|  | const char * |
| ) |  |

Definition at line 1975 of file string.c.

Referenced by addrinfo_inspect(), argf_next_argv(), cannot_be_coerced_into_BigDecimal(), cbsubst_get_subst_arg(), cbsubst_sym_to_subst(), cbsubst_table_setup(), clsid_from_remote(), compile_err_append(), compile_snprintf(), compile_warn_print(), cState_aset(), dir_inspect(), econv_description(), econv_inspect(), f_format(), fc_path(), foleparam_inspect(), folevariable_inspect(), gzfile_error_inspect(), insn_data_to_s_detail(), inspect_i(), inspect_obj(), inspect_sockaddr(), inspect_struct(), make_inspect(), make_version_str(), name_err_mesg_to_str(), nucomp_inspect(), nurat_inspect(), ole_excepinfo2msg(), ole_hresult2msg(), oletypelib_path(), ossl_ssl_get_state(), ossl_sslctx_set_ciphers(), ossl_x509_inspect(), path_check_0(), proc_options(), process_sflag(), pst_inspect(), pst_message(), rb_econv_open_exc(), rb_find_file_ext_safe(), rb_io_inspect(), rb_iseq_disasm(), rb_iseq_disasm_insn(), rb_load_fail(), rb_mod_to_s(), rb_set_class_path(), rb_set_class_path_string(), realpath_rec(), search_required(), sockopt_inspect(), sys_fail2(), and warn_print().

int rb_str_cmp | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 2301 of file string.c.

Referenced by ary2list(), ary2list2(), ole_method_event(), ole_search_event(), ole_search_event_at(), oleclass_from_typelib(), oletypelib_search_registry(), rb_digest_instance_equal(), rb_str_cmp_m(), rb_str_upto(), sort_2(), typeinfo_from_ole(), and typelib_file_from_typelib().

long rb_str_coderange_scan_restartable | ( | const char * | ,
|  | const char * | ,
|  | rb_encoding * | ,
|  | int * |
| ) |  |

Definition at line 232 of file string.c.

Referenced by fnmatch_brace(), rb_io_getline_fast(), rb_reg_expr_str(), rb_str_format(), read_all(), and str_encode_associate().

int rb_str_comparable | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 2276 of file string.c.

Referenced by rb_str_cmp(), rb_str_hash_cmp(), and str_eql().

VALUE rb_str_concat | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 2155 of file string.c.

Referenced by clsid_from_remote(), cState_aref(), cState_aset(), f_format(), foleparam_inspect(), folevariable_inspect(), Init_String(), insn_data_to_s_detail(), inspect_enumerator(), iseq_compile_each(), make_inspect(), nucomp_inspect(), nurat_inspect(), ole_typedesc2val(), oletypelib_path(), pruby_eval(), rb_iseq_disasm(), rb_iseq_disasm_insn(), rb_mod_to_s(), and strio_ungetc().

VALUE rb_str_conv_enc | ( | VALUE | str,
|  | rb_encoding * | from,
|  | rb_encoding * | to
| ) |  |

Definition at line 563 of file string.c.

Referenced by append_fspath(), env_fetch(), env_str_new(), file_path_convert(), rb_external_str_new_with_enc(), rb_f_getenv(), rb_gzreader_ungetc(), rb_gzwriter_write(), rb_str_export(), rb_str_export_locale(), rb_str_export_to_enc(), realpath_rec(), strio_ungetc(), and strio_write().

VALUE rb_str_conv_enc_opts | ( | VALUE | str,
|  | rb_encoding * | from,
|  | rb_encoding * | to,
|  | int | ecflags,
|  | VALUE | ecopts
| ) |  |

Referenced by gzfile_newstr(), rb_str_conv_enc(), rb_strftime_with_timespec(), and ruby__sfvextra().

VALUE rb_str_drop_bytes | ( | VALUE | ,
|  | long |
| ) |  |

Definition at line 3339 of file string.c.

Referenced by econv_primitive_convert(), rb_str_splice_0(), and rb_str_subseq().

VALUE rb_str_dump | ( | VALUE | ) |  |

Definition at line 4622 of file string.c.

Referenced by Init_String(), inspect1(), inspect2(), make_econv_exception(), rb_econv_prepare_options(), and sockopt_inspect().

VALUE rb_str_dup | ( | VALUE | ) |  |

Definition at line 946 of file string.c.

Referenced by cannot_be_coerced_into_BigDecimal(), check_exec_redirect(), convert_encoding(), cParser_source(), cState_aset(), date__parse(), dir_path(), econv_convert(), encoded_dup(), eval_string_with_cref(), exc_inspect(), fc_path(), fdbm_delete_if(), fgdbm_delete_if(), fsdbm_delete_if(), insn_operand_intern(), inspect_range(), iseq_compile_each(), make_inspectname(), name_err_mesg_to_str(), process_options(), range_to_s(), rb_class_path(), rb_class_path_no_cache(), rb_deflate_init_copy(), rb_execarg_addopt(), rb_file_path(), rb_find_file_ext_safe(), rb_gzfile_comment(), rb_gzfile_orig_name(), rb_gzfile_set_comment(), rb_gzfile_set_orig_name(), rb_id2str(), rb_intern_str(), rb_mod_name(), rb_mod_to_s(), rb_set_class_path(), rb_set_class_path_string(), rb_str_aref(), rb_str_capitalize(), rb_str_chomp(), rb_str_delete(), rb_str_downcase(), rb_str_encode_ospath(), rb_str_justify(), rb_str_lstrip(), rb_str_reverse(), rb_str_rstrip(), rb_str_squeeze(), rb_str_strip(), rb_str_sub(), rb_str_swapcase(), rb_str_tr(), rb_str_tr_s(), rb_str_upcase(), rb_str_upto(), realpath_rec(), rsock_ipaddr(), RUBY_ALIAS_FUNCTION(), ruby_set_script_name(), and str_gsub().

VALUE rb_str_dup_frozen | ( | VALUE | ) |  |

VALUE rb_str_ellipsize | ( | VALUE | str,
|  | long | len
| ) |  |

Shortens str and adds three dots, an ellipsis, if it is longer than len characters.

Parameters

  str | the string to ellipsize.
  len | the maximum string length.

Returns
  the ellipsized string.

Precondition
  len must not be negative.

Postcondition
  the length of the returned string in characters is less than or equal to len.
  If the length of str is less than or equal len, returns str itself.
  the encoded of returned string is equal to the encoded of str.
  the class of returned string is equal to the class of str.

Note
  the length is counted in characters.

Definition at line 7701 of file string.c.

Referenced by rb_hash_fetch_m(), and sys_fail2().

VALUE rb_str_encode | ( | VALUE | str,
|  | VALUE | to,
|  | int | ecflags,
|  | VALUE | ecopts
| ) |  |

Definition at line 2867 of file transcode.c.

Referenced by do_writeconv(), econv_insert_output(), fix_string_encoding(), get_user_from_path(), rb_file_expand_path_internal(), rb_io_getline_1(), rb_str_ellipsize(), rb_str_encode_ospath(), rb_w32_conv_from_wchar(), and rb_w32_write_console().

VALUE rb_str_encode_ospath | ( | VALUE | ) |  |

Definition at line 230 of file file.c.

Referenced by apply2files(), check_dirname(), dir_initialize(), dir_s_chdir(), do_opendir(), load_file_internal(), rb_file_chmod(), rb_file_chown(), rb_file_executable_p(), rb_file_executable_real_p(), rb_file_expand_path_internal(), rb_file_identical_p(), rb_file_lstat(), rb_file_readable_p(), rb_file_readable_real_p(), rb_file_s_ftype(), rb_file_s_lstat(), rb_file_s_rename(), rb_file_symlink_p(), rb_file_writable_p(), rb_file_writable_real_p(), rb_stat(), rb_stat_init(), rb_sysopen(), and realpath_rec().

VALUE rb_str_equal | ( | VALUE | str1,
|  | VALUE | str2
| ) |  |

Definition at line 2351 of file string.c.

Referenced by init_addrinfo_getaddrinfo(), Init_String(), match_equal(), opt_eq_func(), path_eq(), rb_get_expanded_load_path(), and rb_str_upto().

VALUE rb_str_export | ( | VALUE | ) |  |

Definition at line 620 of file string.c.

VALUE rb_str_export_locale | ( | VALUE | ) |  |

Definition at line 626 of file string.c.

Referenced by curses_addstr(), and window_addstr().

VALUE rb_str_export_to_enc | ( | VALUE | ,
|  | rb_encoding * |
| ) |  |

Definition at line 632 of file string.c.

Referenced by alias(), scalar(), start_document(), start_mapping(), start_sequence(), and transcode_string().

VALUE rb_str_format | ( | int | ,
|  | const VALUE * | ,
|  | VALUE |
| ) |  |

Definition at line 439 of file sprintf.c.

Referenced by date_strftime_with_tmx(), rb_f_sprintf(), rb_str_format_m(), rb_str_upto(), and rb_strftime_with_timespec().

void rb_str_free | ( | VALUE | ) |  |

Definition at line 830 of file string.c.

Referenced by dispose_string(), and obj_free().

VALUE rb_str_freeze | ( | VALUE | ) |  |

Definition at line 1797 of file string.c.

Referenced by get_loaded_features_index(), path_freeze(), rb_construct_expanded_load_path(), rb_provide_feature(), and ruby_init_loadpath_safe().

st_index_t rb_str_hash | ( | VALUE | ) |  |

Definition at line 2237 of file string.c.

Referenced by cdhash_hash(), match_hash(), path_hash(), rb_any_hash(), and rb_str_hash_m().

int rb_str_hash_cmp | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 2247 of file string.c.

Referenced by cdhash_cmp(), and rb_any_cmp().

VALUE rb_str_inspect | ( | VALUE | ) |  |

Definition at line 4500 of file string.c.

Referenced by check_path_encoding(), gzfile_error_inspect(), id_to_name(), Init_String(), location_inspect_m(), match_inspect(), rb_str_quote_unprintable(), and sym_inspect().

VALUE rb_str_intern | ( | VALUE | ) |  |

Definition at line 7203 of file string.c.

Referenced by hash2ptr_dispparams(), hash2result(), Init_String(), JSON_parse_string(), rb_to_id(), set_state_ivars(), sym_capitalize(), sym_downcase(), sym_each_i(), sym_step_i(), sym_succ(), sym_swapcase(), and sym_upcase().

VALUE rb_str_length | ( | VALUE | ) |  |

Definition at line 1182 of file string.c.

Referenced by Init_String(), reg_match_pos(), strscan_get_charpos(), and sym_length().

VALUE rb_str_locktmp | ( | VALUE | ) |  |

Referenced by io_fread(), io_getpartial(), rb_io_sysread(), and readline_readline().

void rb_str_modify | ( | VALUE | ) |  |

Definition at line 1369 of file string.c.

Referenced by econv_primitive_convert(), io_set_read_length(), io_setstrbuf(), ossl_ssl_read_internal(), rb_file_expand_path_internal(), rb_str_setbyte(), rb_str_splice_0(), rb_str_sub_bang(), rb_str_vcatf(), rb_string_value_cstr(), setup_narg(), str_buf_cat(), string_to_c(), string_to_c_strict(), string_to_r(), string_to_r_strict(), strio_extend(), strio_read(), and strio_ungetbyte().

void rb_str_modify_expand | ( | VALUE | ,
|  | long |
| ) |  |

Definition at line 1377 of file string.c.

Referenced by io_setstrbuf(), rb_str_append(), rb_str_cat(), and read_all().

VALUE rb_str_new | ( | const char * | ,
|  | long |
| ) |  |

Definition at line 425 of file string.c.

Referenced by addrinfo_inspect_sockaddr(), addrinfo_mdump(), addrinfo_to_sockaddr(), appendline(), argf_getpartial(), asn1str_to_str(), BigDecimal_dump(), BigDecimal_inspect(), BigDecimal_split(), BigDecimal_to_f(), BigDecimal_to_s(), bsock_getpeername(), bsock_getsockname(), bsock_getsockopt(), bubblebabble_str_new(), check_pipe_command(), cState_array_nl(), cState_indent(), cState_object_nl(), cState_space(), cState_space_before(), cState_to_h(), date_strftime_internal(), date_zone_to_diff(), decode_bstr(), decode_eoc(), dir_s_home(), econv_convert(), econv_description(), econv_finish(), econv_primitive_errinfo(), econv_putback(), env_fetch(), env_str_new(), extract_user_token(), gzfile_getc(), gzfile_read(), gzfile_read_all(), gzfile_read_header(), gzfile_readpartial(), gzreader_gets(), infected_str_new(), inspect1(), inspect2(), int_chr(), int_ossl_asn1_decode0_prim(), io_getc(), io_setstrbuf(), io_shift_cbuf(), join_der(), lib_conv_listelement(), lib_fromUTF8_core(), lib_merge_tklist(), lib_toUTF8_core(), lib_UTF_backslash_core(), load_file_internal(), load_file_read_contents(), load_transcoder_entry(), make_econv_exception(), match_to_s(), Messaging_HandleMessage(), name_to_backref_number(), ossl_asn1cons_to_der(), ossl_asn1data_to_der(), ossl_asn1eoc_initialize(), ossl_bn_to_s(), ossl_cipher_final(), ossl_cipher_update(), ossl_dh_compute_key(), ossl_dh_to_der(), ossl_digest_finish(), ossl_dsa_sign(), ossl_dsa_to_der(), ossl_hmac_s_digest(), ossl_membio2str0(), ossl_pkcs12_to_der(), ossl_pkcs7_to_der(), ossl_pkey_sign(), ossl_rand_bytes(), ossl_rand_pseudo_bytes(), ossl_rsa_private_decrypt(), ossl_rsa_private_encrypt(), ossl_rsa_public_decrypt(), ossl_rsa_public_encrypt(), ossl_rsa_to_der(), ossl_spki_get_challenge(), ossl_spki_print(), ossl_spki_to_der(), ossl_ssl_read_internal(), ossl_ssl_session_to_der(), ossl_ssl_session_to_pem(), ossl_ssl_session_to_text(), ossl_sslctx_session_get_cb(), ossl_sslctx_set_ciphers(), ossl_str_new(), ossl_x509_to_der(), ossl_x509attr_get_value(), ossl_x509attr_to_der(), ossl_x509crl_get_signature_algorithm(), ossl_x509crl_to_der(), ossl_x509crl_to_pem(), ossl_x509crl_to_text(), ossl_x509ext_to_der(), ossl_x509name_to_a(), ossl_x509name_to_der(), ossl_x509req_get_signature_algorithm(), ossl_x509req_to_der(), ossl_x509req_to_pem(), ossl_x509req_to_text(), pack_pack(), parse(), proc_options(), r_bytes0(), r_bytes1_buffered(), rb_compile_cstr(), rb_digest_base_finish(), rb_enc_str_new(), rb_exc_new(), rb_execarg_fixup(), rb_execarg_run_options(), rb_f_backquote(), rb_f_getenv(), rb_file_dirname(), rb_file_join(), rb_file_s_basename(), rb_file_s_extname(), rb_gdbm_fetch(), rb_gdbm_firstkey(), rb_gdbm_nextkey(), rb_inflate_inflate(), rb_io_getline_fast(), rb_io_putc(), rb_io_ungetbyte(), rb_iseq_disasm(), rb_iseq_disasm_insn(), rb_nkf_convert(), rb_parser_compile_cstr(), rb_path_check(), rb_random_bytes(), rb_reg_compile(), rb_reg_quote(), rb_str_new_cstr(), rb_str_plus(), rb_str_slice_bang(), rb_usascii_str_new(), rb_write_error2(), reg_named_captures_iter(), reg_names_iter(), RUBY_ALIAS_FUNCTION(), ruby_init_loadpath_safe(), s3e(), set_file_encoding(), set_option_encoding_once(), sock_s_gethostbyaddr(), sock_s_pack_sockaddr_in(), sock_sockaddr(), sockopt_s_bool(), sockopt_s_int(), sockopt_s_linger(), str_new(), strio_getline(), strio_read(), strscan_inspect(), time_mdump(), time_strftime(), tkstr_to_str(), warn_print(), writer(), zstream_detach_buffer(), zstream_detach_input(), and zstream_expand_buffer_into().

VALUE rb_str_new2 | ( | const char * | ) |  |

VALUE rb_str_new3 | ( | VALUE | ) |  |

VALUE rb_str_new4 | ( | VALUE | ) |  |

VALUE rb_str_new5 | ( | VALUE | ,
|  | const char * | ,
|  | long |
| ) |  |

VALUE rb_str_new_cstr | ( | const char * | ) |  |

Definition at line 447 of file string.c.

Referenced by addrinfo_mdump(), curses_keyname(), decorate_convpath(), dir_inspect(), econv_convpath(), finish_writeconv(), gc_profile_dump_on(), hist_to_s(), Init_readline(), load_file_internal(), prep_io(), process_options(), pty_getpty(), pty_open(), rand_random(), rb_econv_open_exc(), rb_exec_fillarg(), rb_file_open(), rb_io_inspect(), rb_io_s_binread(), rb_iseq_defined_string(), rb_load_file(), rb_parser_dump_tree(), rb_path2class(), rb_strftime_with_timespec(), ruby_init_loadpath_safe(), search_convpath_i(), sig_signame(), and sys_fail2().

VALUE rb_str_new_frozen | ( | VALUE | ) |  |

Definition at line 713 of file string.c.

Referenced by hash_aset_str(), io_write(), rb_check_argv(), rb_econv_prepare_options(), rb_file_open_generic(), rb_io_reopen(), rb_io_syswrite(), rb_set_class_path_string(), rb_str_subseq(), and str_replace_shared_without_enc().

VALUE rb_str_new_shared | ( | VALUE | ) |  |

Definition at line 677 of file string.c.

Referenced by rb_file_s_basename(), and rb_str_subseq().

VALUE rb_str_new_with_class | ( | VALUE | ,
|  | const char * | ,
|  | long |
| ) |  |

Referenced by rb_str_ellipsize().

long rb_str_offset | ( | VALUE | ,
|  | long |
| ) |  |

Definition at line 1610 of file string.c.

Referenced by reg_match_pos().

VALUE rb_str_plus | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1236 of file string.c.

Referenced by Init_String().

VALUE rb_str_quote_unprintable | ( | VALUE | ) |  |

Definition at line 7820 of file string.c.

Referenced by rb_id_quote_unprintable().

VALUE rb_str_replace | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 4022 of file string.c.

Referenced by Init_String(), and rb_str_init().

VALUE rb_str_resize | ( | VALUE | ,
|  | long |
| ) |  |

Definition at line 1846 of file string.c.

Referenced by append_fspath(), appendline(), argf_getpartial(), argf_read(), BigDecimal_dump(), BigDecimal_inspect(), BigDecimal_split(), BigDecimal_to_s(), copy_stream_body(), copy_stream_fallback_body(), econv_primitive_convert(), flo_to_s(), get_user_from_path(), gzfile_error_inspect(), gzfile_readpartial(), lib_conv_listelement(), literal_concat0(), marshal_dump(), moreswitches(), ossl_cipher_update(), ossl_digest_finish(), ossl_ssl_read_internal(), r_object0(), rb_big2str0(), rb_econv_substr_append(), rb_enc_vsprintf(), rb_feature_p(), rb_file_expand_path_internal(), rb_gzfile_set_comment(), rb_gzfile_set_orig_name(), rb_home_dir(), rb_io_getline_fast(), rb_iseq_disasm(), rb_nkf_putchar(), rb_reg_quote(), rb_str_concat(), rb_str_format(), rb_str_vcatf(), realpath_rec(), RUBY_ALIAS_FUNCTION(), ruby_init_loadpath_safe(), ruby_setenv(), set_file_encoding(), setup_narg(), str_transcoding_resize(), strio_extend(), strio_init(), strio_read(), strio_truncate(), strio_ungetbyte(), strio_ungetc(), sym_inspect(), VpAlloc(), w_nbyte(), yyparse(), zstream_append_buffer(), zstream_detach_buffer(), zstream_discard_input(), zstream_expand_buffer(), and zstream_expand_buffer_into().

VALUE rb_str_resurrect | ( | VALUE | str) |  |

Definition at line 952 of file string.c.

Referenced by gzfile_raise(), gzfile_reader_get_unused(), and obj_resurrect().

void rb_str_set_len | ( | VALUE | ,
|  | long |
| ) |  |

Definition at line 1830 of file string.c.

Referenced by appendline(), econv_primitive_convert(), io_set_read_length(), io_setstrbuf(), load_transcoder_entry(), ossl_cipher_final(), ossl_cipher_update(), ossl_dh_compute_key(), ossl_dsa_sign(), ossl_pkey_sign(), ossl_rsa_private_decrypt(), ossl_rsa_private_encrypt(), ossl_rsa_public_decrypt(), ossl_rsa_public_encrypt(), ossl_ssl_read_internal(), ossl_x509attr_to_der(), pack_pack(), pack_unpack(), r_object0(), rb_econv_substr_append(), rb_execarg_fixup(), rb_execarg_run_options(), rb_file_expand_path_internal(), rb_file_join(), rb_find_file_ext_safe(), rb_nkf_convert(), rb_realpath_internal(), rb_str_format(), read_all(), rsock_s_recvfrom(), rsock_s_recvfrom_nonblock(), ruby__sfvwrite(), RUBY_ALIAS_FUNCTION(), and str_transcode0().

void rb_str_setter | ( | VALUE | ,
|  | ID | ,
|  | VALUE * |
| ) |  |

Definition at line 7607 of file string.c.

Referenced by Init_IO().

void rb_str_shared_replace | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 857 of file string.c.

Referenced by rb_str_reverse_bang(), rb_str_succ_bang(), str_encode_bang(), and str_gsub().

VALUE rb_str_split | ( | VALUE | ,
|  | const char * |
| ) |  |

Definition at line 6123 of file string.c.

long rb_str_strlen | ( | VALUE | ) |  |

Definition at line 1168 of file string.c.

long rb_str_sublen | ( | VALUE | ,
|  | long |
| ) |  |

Definition at line 1657 of file string.c.

Referenced by rb_reg_match(), rb_reg_match2(), rb_str_aset(), rb_str_index_m(), rb_str_rindex_m(), and rb_str_rpartition().

VALUE rb_str_subseq | ( | VALUE | ,
|  | long | ,
|  | long |
| ) |  |

Definition at line 1668 of file string.c.

Referenced by check_dirname(), features_index_add(), match_array(), path_sub_ext(), rb_file_s_extname(), rb_mod_const_get(), rb_realpath_internal(), rb_reg_match_post(), rb_reg_match_pre(), rb_reg_nth_match(), rb_str_chop(), rb_str_ellipsize(), rb_str_enumerate_chars(), rb_str_enumerate_lines(), rb_str_partition(), rb_str_split_m(), rb_str_sub_bang(), realpath_rec(), search_required(), str_gsub(), and zstream_shift_buffer().

VALUE rb_str_substr | ( | VALUE | ,
|  | long | ,
|  | long |
| ) |  |

Definition at line 1774 of file string.c.

Referenced by rb_io_putc(), rb_str_aref(), rb_str_aref_m(), rb_str_chr(), rb_str_rpartition(), and set_state_ivars().

VALUE rb_str_succ | ( | VALUE | ) |  |

Definition at line 2976 of file string.c.

Referenced by Init_String(), rb_str_succ_bang(), and sym_succ().

int rb_str_symname_p | ( | VALUE | ) |  |

Definition at line 7801 of file string.c.

Referenced by id_to_name(), and sym_inspect().

VALUE rb_str_times | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 1268 of file string.c.

Referenced by Init_String().

VALUE rb_str_tmp_new | ( | long | ) |  |

Referenced by moreswitches(), rb_alloc_tmp_buffer(), rb_feature_p(), rb_find_file_ext_safe(), rb_find_file_safe(), str_transcode0(), and VpAlloc().

double rb_str_to_dbl | ( | VALUE | ,
|  | int |
| ) |  |

Definition at line 2600 of file object.c.

Referenced by f_to_f(), rb_Float(), and rb_str_to_f().

VALUE rb_str_to_inum | ( | VALUE | ,
|  | int | ,
|  | int |
| ) |  |

Definition at line 777 of file bignum.c.

VALUE rb_str_to_str | ( | VALUE | ) |  |

Definition at line 849 of file string.c.

Referenced by make_struct(), rb_gzfile_set_comment(), rb_gzfile_set_orig_name(), rb_string_value(), and reg_operand().

VALUE rb_str_unlocktmp | ( | VALUE | ) |  |

Definition at line 1820 of file string.c.

Referenced by io_fread(), io_getpartial(), rb_io_sysread(), and readline_readline().

void rb_str_update | ( | VALUE | ,
|  | long | ,
|  | long | ,
|  | VALUE |
| ) |  |

Definition at line 3443 of file string.c.

Referenced by eval_string_with_cref(), rb_str_prepend(), and strio_ungetc().

VALUE rb_str_vcatf | ( | VALUE | ,
|  | const char * | ,
|  | va_list |
| ) |  |

Definition at line 1283 of file sprintf.c.

Referenced by compile_snprintf(), rb_str_catf(), and warn_print().

size_t rb_strftime | ( | char * | s,
|  | size_t | maxsize,
|  | const char * | format,
|  | rb_encoding * | enc,
|  | const struct vtm * | vtm,
|  | VALUE | timev,
|  | int | gmt
| ) |  |

Definition at line 830 of file strftime.c.

References NULL, and rb_strftime_with_timespec().

Referenced by rb_strftime_alloc().

size_t rb_strftime_timespec | ( | char * | s,
|  | size_t | maxsize,
|  | const char * | format,
|  | rb_encoding * | enc,
|  | const struct vtm * | vtm,
|  | struct timespec * | ts,
|  | int | gmt
| ) |  |

Definition at line 836 of file strftime.c.

References Qnil, and rb_strftime_with_timespec().

Referenced by rb_strftime_alloc().

VALUE rb_String | ( | VALUE | ) |  |

Definition at line 2719 of file object.c.

Referenced by exc_to_s(), GetBNPtr(), make_version_str(), ossl_sslctx_set_ciphers(), and rb_f_string().

VALUE rb_string_value | ( | volatile VALUE * | ) |  |

Definition at line 1472 of file string.c.

Referenced by rb_string_value_cstr(), and rb_string_value_ptr().

char* rb_string_value_cstr | ( | volatile VALUE * | ) |  |

Definition at line 1490 of file string.c.

char* rb_string_value_ptr | ( | volatile VALUE * | ) |  |

Definition at line 1483 of file string.c.

VALUE rb_struct_alloc | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 415 of file struct.c.

VALUE rb_struct_alloc_noinit | ( | VALUE | ) |  |

Definition at line 223 of file struct.c.

Referenced by range_alloc().

VALUE rb_struct_aref | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 671 of file struct.c.

Referenced by Init_Struct(), and struct_entry().

VALUE rb_struct_aset | ( | VALUE | ,
|  | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 738 of file struct.c.

Referenced by Init_Struct().

VALUE rb_struct_define | ( | const char * | ,
|  |  | ...
| ) |  |

Definition at line 264 of file struct.c.

Referenced by Init_etc(), and Init_process().

VALUE rb_struct_define_without_accessor | ( | const char * | ,
|  | VALUE | ,
|  | rb_alloc_func_t | ,
|  |  | ...
| ) |  |

Definition at line 229 of file struct.c.

Referenced by Init_Range().

VALUE rb_struct_getmember | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 91 of file struct.c.

Referenced by rb_struct_ref().

VALUE rb_struct_init_copy | ( | VALUE | copy,
|  | VALUE | s
| ) |  |

Definition at line 620 of file struct.c.

Referenced by Init_Struct().

VALUE rb_struct_initialize | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 387 of file struct.c.

Referenced by r_object0().

VALUE rb_struct_members | ( | VALUE | ) |  |

Definition at line 53 of file struct.c.

Referenced by inspect_struct(), rb_struct_aref_id(), rb_struct_aset_id(), rb_struct_each_pair(), rb_struct_getmember(), rb_struct_set(), rb_struct_to_h(), and w_object().

VALUE rb_struct_new | ( | VALUE | ,
|  |  | ...
| ) |  |

Definition at line 421 of file struct.c.

VALUE rb_struct_s_members | ( | VALUE | ) |  |

Definition at line 39 of file struct.c.

Referenced by r_object0(), rb_struct_members(), and rb_struct_s_members_m().

VALUE rb_suppress_tracing | ( | VALUE(*)(VALUE) | func,
|  | VALUE | arg
| ) |  |

Definition at line 344 of file vm_trace.c.

Referenced by yycompile().

VALUE rb_sym_all_symbols | ( | void | ) |  |

Definition at line 16100 of file ripper.c.

int rb_sym_interned_p | ( | VALUE | ) |  |

VALUE rb_sym_to_s | ( | VALUE | ) |  |

Definition at line 7898 of file string.c.

Referenced by constant_arg(), ev_on_event(), fev_off_event(), fole_respond_to(), get_eval_string_core(), hash2named_arg(), Init_String(), location_base_label(), ole_invoke(), range_each(), range_step(), rb_mod_const_get(), reg_operand(), sym_aref(), sym_casecmp(), sym_cmp(), sym_match(), and sym_succ().

int rb_symname_p | ( | const char * | ) |  |

Definition at line 15697 of file ripper.c.

VALUE rb_syserr_new | ( | int | ,
|  | const char * |
| ) |  |

Definition at line 1873 of file error.c.

VALUE rb_syserr_new_str | ( | int | n,
|  | VALUE | arg
| ) |  |

Definition at line 1881 of file error.c.

void rb_syswait | ( | rb_pid_t | pid) |  |

Definition at line 3643 of file process.c.

Referenced by rb_io_close().

VALUE rb_tainted_str_new | ( | const char * | ,
|  | long |
| ) |  |

Referenced by env_rassoc(), fdbm_delete(), fdbm_delete_if(), fdbm_each_key(), fdbm_each_pair(), fdbm_each_value(), fdbm_fetch(), fdbm_invert(), fdbm_key(), fdbm_keys(), fdbm_select(), fdbm_shift(), fdbm_to_a(), fdbm_to_hash(), fdbm_values(), ip_ruby_cmd(), lib_fromUTF8_core(), pack_unpack(), rb_dlptr_aref(), rb_dlptr_to_s(), rb_dlptr_to_str(), rb_external_str_new_with_enc(), rb_fiddle_ptr_aref(), rb_fiddle_ptr_to_s(), rb_fiddle_ptr_to_str(), rsock_s_recvfrom(), and rsock_s_recvfrom_nonblock().

VALUE rb_tainted_str_new2 | ( | const char * | ) |  |

VALUE rb_tainted_str_new_cstr | ( | const char * | ) |  |

Definition at line 479 of file string.c.

Referenced by addrinfo_firstonly_new(), addrinfo_list_new(), and init_addrinfo_getaddrinfo().

int rb_thread_alone | ( | void | ) |  |

Definition at line 2904 of file thread.c.

Referenced by io_writable_length(), ip_rb_threadTkWaitCommand(), ip_rb_threadUpdateCommand(), ip_rb_threadVwaitCommand(), ip_rbTkWaitCommand(), ip_rbVwaitCommand(), lib_eventloop_core(), rb_thread_polling(), rb_thread_schedule_limits(), rb_thread_stop(), rb_thread_terminate_all(), rb_waitpid(), and thread_start_func_2().

void rb_thread_atfork | ( | void | ) |  |

Definition at line 3845 of file thread.c.

Referenced by pipe_open().

void rb_thread_atfork_before_exec | ( | void | ) |  |

Definition at line 3868 of file thread.c.

void rb_thread_check_ints | ( | void | ) |  |

Definition at line 1090 of file thread.c.

Referenced by bigmul1_normal(), collect_all(), io_binwrite(), lib_eventloop_core(), rb_io_wait_readable(), rb_io_wait_writable(), and trap_check().

VALUE rb_thread_create | ( | VALUE(*)(ANYARGS) | ,
|  | void * |
| ) |  |

Definition at line 722 of file thread.c.

Referenced by lib_thread_callback(), lib_watchdog_core(), and rb_detach_process().

VALUE rb_thread_current | ( | void | ) |  |

Definition at line 2350 of file thread.c.

Referenced by call_queue_handler(), chdir_yield(), copy_stream_body(), dir_s_chdir(), eval_queue_handler(), invoke_queue_handler(), ip_eval(), ip_invoke_real(), ip_invoke_with_position(), ip_rb_threadTkWaitCommand(), ip_rb_threadUpdateCommand(), ip_rb_threadVwaitCommand(), ip_rbTkWaitCommand(), ip_rbVwaitCommand(), lib_eventloop_ensure(), lib_eventloop_launcher(), lib_evloop_thread_p(), lib_watchdog_core(), rb_autoload_load(), rb_autoloading_value(), rb_const_set(), rb_dl_get_last_error(), rb_dl_set_last_error(), recursive_list_access(), recursive_pop(), thread_s_current(), tk_funcall(), VpGetException(), VpGetPrecLimit(), and VpGetRoundMode().

void rb_thread_execute_interrupts | ( | VALUE | th) |  |

Definition at line 1973 of file thread.c.

Referenced by exec_interrupts(), and maygvl_copy_stream_continue_p().

void rb_thread_fd_close | ( | int | ) |  |

Definition at line 2078 of file thread.c.

Referenced by io_reopen(), and rb_io_close().

int rb_thread_fd_select | ( | int | ,
|  | rb_fdset_t * | ,
|  | rb_fdset_t * | ,
|  | rb_fdset_t * | ,
|  | struct timeval * |
| ) |  |

Definition at line 3488 of file thread.c.

Referenced by maygvl_select(), rb_thread_select(), select_internal(), and select_single().

int rb_thread_fd_writable | ( | int | ) |  |

Definition at line 3437 of file thread.c.

Referenced by rb_io_wait_writable(), rsock_bsock_send(), and udp_send().

int rb_thread_interrupted | ( | VALUE | thval) |  |

Definition at line 1107 of file thread.c.

Referenced by maygvl_copy_stream_continue_p().

VALUE rb_thread_io_blocking_region | ( | rb_blocking_function_t * | func,
|  | void * | data1,
|  | int | fd
| ) |  |

Definition at line 1331 of file thread.c.

Referenced by do_ioctl(), io_flush_buffer_async(), rb_file_flock(), rb_io_flush(), rb_read_internal(), and rb_write_internal().

VALUE rb_thread_kill | ( | VALUE | ) |  |

Definition at line 2133 of file thread.c.

Referenced by Init_Thread(), rb_thread_exit(), and rb_thread_s_kill().

VALUE rb_thread_local_aref | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 2663 of file thread.c.

Referenced by detach_process_pid(), rb_dl_get_last_error(), rb_thread_aref(), recursive_list_access(), VpGetException(), VpGetPrecLimit(), and VpGetRoundMode().

VALUE rb_thread_local_aset | ( | VALUE | ,
|  | ID | ,
|  | VALUE |
| ) |  |

Definition at line 2748 of file thread.c.

Referenced by rb_detach_process(), rb_dl_set_last_error(), rb_thread_aset(), and recursive_list_access().

VALUE rb_thread_main | ( | void | ) |  |

Definition at line 2371 of file thread.c.

Referenced by rb_thread_s_main().

void rb_thread_mark | ( | void * | th) |  |

Definition at line 1788 of file vm.c.

Referenced by cont_mark().

void rb_thread_recycle_stack_release | ( | VALUE * | ) |  |

Definition at line 1766 of file vm.c.

Referenced by thread_start_func_2().

VALUE rb_thread_run | ( | VALUE | ) |  |

Definition at line 2264 of file thread.c.

Referenced by call_queue_handler(), eval_queue_handler(), Init_Thread(), invoke_queue_handler(), lib_eventloop_launcher(), and lib_watchdog_core().

void rb_thread_schedule | ( | void | ) |  |

Definition at line 1138 of file thread.c.

Referenced by call_queue_handler(), eval_queue_handler(), invoke_queue_handler(), lib_eventloop_core(), lib_thread_callback(), proc_waitall(), rb_thread_run(), rb_waitpid(), rbtk_EventCheckProc(), and thread_s_pass().

VALUE rb_thread_shield_destroy | ( | VALUE | self) |  |

Definition at line 4642 of file thread.c.

Referenced by release_thread_shield().

VALUE rb_thread_shield_new | ( | void | ) |  |

Definition at line 4595 of file thread.c.

Referenced by load_lock().

VALUE rb_thread_shield_release | ( | VALUE | self) |  |

Definition at line 4631 of file thread.c.

Referenced by release_thread_shield().

VALUE rb_thread_shield_wait | ( | VALUE | self) |  |

Definition at line 4611 of file thread.c.

Referenced by load_lock().

void rb_thread_sleep | ( | int | ) |  |

Definition at line 1115 of file thread.c.

Referenced by pipe_open().

void rb_thread_sleep_forever | ( | void | ) |  |

Definition at line 1020 of file thread.c.

Referenced by lib_eventloop_core(), rb_f_sleep(), and rb_thread_fd_select().

VALUE rb_thread_stop | ( | void | ) |  |

Definition at line 2291 of file thread.c.

Referenced by Init_Thread().

void rb_thread_wait_fd | ( | int | ) |  |

Definition at line 3431 of file thread.c.

Referenced by ossl_ssl_read_internal(), rb_io_read_check(), rb_io_sysread(), rb_io_wait_readable(), rb_read_check(), rsock_s_accept(), and rsock_s_recvfrom().

void rb_thread_wait_for | ( | struct timeval | ) |  |

Definition at line 1066 of file thread.c.

Referenced by ip_eval(), ip_invoke_with_position(), ip_rb_threadTkWaitCommand(), ip_rb_threadUpdateCommand(), ip_rb_threadVwaitCommand(), lib_watchdog_core(), rb_f_sleep(), rb_file_flock(), rb_thread_fd_select(), rb_thread_sleep(), rsock_connect(), and tk_funcall().

VALUE rb_thread_wakeup | ( | VALUE | ) |  |

Definition at line 2220 of file thread.c.

Referenced by call_queue_handler(), eval_queue_handler(), Init_Thread(), invoke_queue_handler(), lib_eventloop_ensure(), rb_thread_run(), rb_threadUpdateProc(), rb_threadVwaitProc(), rb_threadWaitVisibilityProc(), and rb_threadWaitWindowProc().

VALUE rb_thread_wakeup_alive | ( | VALUE | ) |  |

Definition at line 2229 of file thread.c.

Referenced by rb_thread_wakeup().

struct timeval rb_time_interval | ( | VALUE | num) |  |

Definition at line 2491 of file time.c.

Referenced by io_wait_readable(), io_wait_writable(), rb_f_select(), rb_f_sleep(), and rb_mutex_sleep().

VALUE rb_time_nano_new | ( | time_t | ,
|  | long |
| ) |  |

Definition at line 2389 of file time.c.

Referenced by stat_atime(), stat_ctime(), and stat_mtime().

VALUE rb_time_new | ( | time_t | ,
|  | long |
| ) |  |

Definition at line 2363 of file time.c.

Referenced by rb_gzfile_mtime().

VALUE rb_time_num_new | ( | VALUE | ,
|  | VALUE |
| ) |  |

Definition at line 2395 of file time.c.

VALUE rb_time_succ | ( | VALUE | ) |  |

Definition at line 3836 of file time.c.

struct timespec rb_time_timespec | ( | VALUE | time) |  |

Definition at line 2514 of file time.c.

Referenced by rb_file_s_utime().

struct timeval rb_time_timeval | ( | VALUE | ) |  |

Definition at line 2497 of file time.c.

struct timeval rb_time_timeval | ( | VALUE | time) |  |

Definition at line 2497 of file time.c.

rb_encoding* rb_to_encoding | ( | VALUE | ) |  |

Definition at line 194 of file encoding.c.

int rb_to_encoding_index | ( | VALUE | ) |  |

Definition at line 146 of file encoding.c.

VALUE rb_to_float | ( | VALUE | ) |  |

Definition at line 2673 of file object.c.

Referenced by pack_pack(), and rand_range().

ID rb_to_id | ( | VALUE | ) |  |

Definition at line 8146 of file string.c.

Referenced by enum_inject(), enumerator_init(), fole_missing(), make_struct(), num_sadded(), obj_respond_to(), ole_search_handler_method(), rb_f_trace_var(), rb_mod_alias_method(), rb_mod_attr(), rb_mod_attr_accessor(), rb_mod_attr_reader(), rb_mod_attr_writer(), rb_mod_autoload(), rb_mod_const_missing(), rb_mod_const_set(), rb_mod_cvar_set(), rb_mod_define_method(), rb_mod_modfunc(), rb_obj_ivar_set(), rb_struct_aref(), rb_struct_aset(), rb_struct_s_def(), rb_thread_aref(), rb_thread_aset(), rb_thread_key_p(), rb_thread_variable_get(), rb_thread_variable_p(), rb_thread_variable_set(), send_internal(), and vm_call_opt_send().

VALUE rb_to_int | ( | VALUE | ) |  |

Definition at line 2412 of file object.c.

Referenced by check_exec_redirect(), econv_args(), econv_primitive_convert(), enumerator_initialize(), fix_aref(), obj2vint(), pack_pack(), rand_init(), random_bytes(), random_load(), range_bsearch(), range_step(), range_step_size(), rb_big_lshift(), rb_big_pack(), rb_big_rshift(), rb_dlcfunc_call(), rb_execarg_addopt(), rb_f_rand(), rb_hash(), rb_num2long(), rb_num2ulong(), rb_quad_pack(), time_nsec(), time_round(), and time_usec().

int rb_tolower | ( | int | c) |  |

Definition at line 1896 of file encoding.c.

int rb_toupper | ( | int | c) |  |

Definition at line 1902 of file encoding.c.

void rb_trap_exec | ( | void | ) |  |

Referenced by trap_check().

void rb_trap_exit | ( | void | ) |  |

Definition at line 700 of file signal.c.

Referenced by ruby_finalize_0().

static int rb_type | ( | VALUE | obj) |  |
| inline static

Definition at line 1519 of file ruby.h.

References BUILTIN_TYPE, FIXNUM_P, FLONUM_P, IMMEDIATE_P, Qfalse, Qnil, Qtrue, Qundef, RTEST, SYMBOL_P, T_FALSE, T_FIXNUM, T_FLOAT, T_NIL, T_SYMBOL, T_TRUE, and T_UNDEF.

static int rb_type | ( | VALUE | obj) |  |
| inline static

Definition at line 1519 of file ripper.y.

int rb_typeddata_inherited_p | ( | const rb_data_type_t * | child,
|  | const rb_data_type_t * | parent
| ) |  |

Definition at line 463 of file error.c.

int rb_typeddata_is_kind_of | ( | VALUE | ,
|  | const rb_data_type_t * |
| ) |  |

Definition at line 473 of file error.c.

VALUE rb_uint2big | ( | VALUE | ) |  |

Definition at line 288 of file bignum.c.

VALUE rb_uint2big | ( | VALUE | ) |  |

Definition at line 288 of file bignum.c.

VALUE rb_uint2inum | ( | VALUE | ) |  |

Definition at line 330 of file bignum.c.

VALUE rb_uint2inum | ( | VALUE | ) |  |

Definition at line 330 of file bignum.c.

static VALUE rb_uint2num_inline | ( | unsigned int | v) |  |
| inline static

Definition at line 1181 of file ripper.y.

static VALUE rb_ulong2num_inline | ( | unsigned long | v) |  |
| inline static

Definition at line 1202 of file ripper.y.

References NEW_COLON2, and new_const_op_assign.

void rb_undef | ( | VALUE | ,
|  | ID |
| ) |  |

Definition at line 835 of file vm_method.c.

Referenced by m_core_undef_method(), and rb_mod_undef_method().

void rb_undef_alloc_func | ( | VALUE | ) |  |

Definition at line 482 of file vm_method.c.

Referenced by Init_Binding(), Init_Encoding(), Init_Numeric(), Init_Object(), Init_Proc(), Init_String(), Init_Struct(), Init_VM(), Init_vm_backtrace(), Init_vm_trace(), Init_zlib(), and ruby_Init_Continuation_body().

VALUE rb_uninterruptible | ( | VALUE(*)(ANYARGS) | b_proc,
|  | VALUE | data
| ) |  |

Definition at line 5175 of file thread.c.

Referenced by rb_f_p().

void rb_update_max_fd | ( | int | fd) |  |

Definition at line 164 of file io.c.

Referenced by chfunc(), console_dev(), fill_random_seed(), get_device_once(), io_reopen(), load_file_internal(), ossl_obj2bio(), prep_io(), pty_getpty(), rb_fd_fix_cloexec(), rb_file_load_ok(), rb_io_initialize(), rb_pipe(), rb_sysopen_internal(), rsock_init_sock(), rsock_s_accept(), rsock_s_accept_nonblock(), rsock_socket(), ruby_dup(), run_exec_dup2(), run_exec_dup2_child(), run_exec_open(), and save_redirect_fd().

int rb_usascii_encindex | ( | void | ) |  |

Definition at line 1190 of file encoding.c.

rb_encoding* rb_usascii_encoding | ( | void | ) |  |

Definition at line 1181 of file encoding.c.

VALUE rb_usascii_str_new | ( | const char * | ,
|  | long |
| ) |  |

Definition at line 431 of file string.c.

Referenced by date__strptime(), flo_to_s(), hexencode_str_new(), int_chr(), nil_to_s(), pack_unpack(), rb_ary_join(), rb_big2str0(), rb_id2str(), rb_io_getline_1(), rb_str_ellipsize(), and strftimev().

VALUE rb_usascii_str_new2 | ( | const char * | ) |  |

VALUE rb_usascii_str_new_cstr | ( | const char * | ) |  |

Referenced by flo_to_s(), inspect_ary(), pruby_eval(), and rb_str_upto().

int rb_utf8_encindex | ( | void | ) |  |

Definition at line 1175 of file encoding.c.

rb_encoding* rb_utf8_encoding | ( | void | ) |  |

Definition at line 1166 of file encoding.c.

int rb_uv_to_utf8 | ( | char | [6],
|  | unsigned | long
| ) |  |

Definition at line 2165 of file pack.c.

Referenced by append_utf8(), and pack_pack().

VALUE rb_vm_backtrace_object | ( | ) |  |

Definition at line 532 of file vm_backtrace.c.

Referenced by setup_exception().

void rb_vm_bugreport | ( | void | ) |  |

Definition at line 609 of file vm_dump.c.

Referenced by report_bug(), and sdr().

void rb_vm_change_state | ( | void | ) |  |

Definition at line 103 of file vm.c.

Referenced by rb_clear_cache(), rb_clear_cache_by_class(), rb_clear_cache_by_id(), rb_clear_cache_for_undef(), rb_const_remove(), and rb_const_set().

const void** rb_vm_get_insns_address_table | ( | void | ) |  |

Definition at line 107 of file vm_exec.c.

Referenced by rb_iseq_translate_threaded_code().

void rb_vm_inc_const_missing_count | ( | void | ) |  |

Definition at line 128 of file vm.c.

Referenced by rb_const_get_0().

void rb_vm_mark | ( | void * | ptr) |  |

Definition at line 1549 of file vm.c.

Referenced by gc_marks().

VALUE rb_vm_top_self | ( | void | ) |  |

Definition at line 2427 of file vm.c.

VALUE rb_vsprintf | ( | const char * | ,
|  | va_list |
| ) |  |

Definition at line 1264 of file sprintf.c.

Referenced by rb_compile_error_append(), rb_fatal(), rb_name_error(), rb_name_error_str(), rb_raise(), and rb_sprintf().

rb_pid_t rb_waitpid | ( | rb_pid_t | pid,
|  | int * | status,
|  | int | flags
| ) |  |

Definition at line 707 of file process.c.

Referenced by detach_process_watcher(), proc_wait(), proc_waitall(), pty_check(), rb_f_system(), and rb_syswait().

void rb_write_error | ( | const char * | ) |  |

Definition at line 7021 of file io.c.

Referenced by rescue_callback(), and warn_printf().

void rb_write_error2 | ( | const char * | ,
|  | long |
| ) |  |

Definition at line 7007 of file io.c.

Referenced by rb_write_error().

void rb_write_error_str | ( | VALUE | mesg) |  |

Definition at line 7027 of file io.c.

Referenced by compile_err_append(), compile_warn_print(), and warn_print().

VALUE rb_yield | ( | VALUE | ) |  |

Definition at line 934 of file vm_eval.c.

Referenced by ary_add_hash_by(), ary_reject(), ary_reject_bang(), BigDecimal_save_exception_mode(), BigDecimal_save_limit(), BigDecimal_save_rounding_mode(), chdir_yield(), console_cooked(), console_noecho(), console_raw(), cycle_i(), d_lite_downto(), d_lite_step(), d_lite_upto(), dir_each(), dir_s_open(), drop_while_i(), each_cons_i(), each_entry_i(), each_i(), each_key_i(), each_pair_i(), each_slice_i(), each_val_i(), each_value_i(), enum_cycle(), enum_each_slice(), enum_reverse_each(), env_delete_m(), env_each_key(), env_each_pair(), env_each_value(), env_fetch(), fdbm_delete(), fdbm_delete_if(), fdbm_each_key(), fdbm_each_pair(), fdbm_each_value(), fdbm_fetch(), fdbm_s_open(), fdbm_select(), fgdbm_delete_if(), fgdbm_each_key(), fgdbm_each_pair(), fgdbm_each_value(), fgdbm_fetch(), fgdbm_s_open(), fgdbm_select(), find_all_i(), find_i(), fsdbm_delete(), fsdbm_delete_if(), fsdbm_each_key(), fsdbm_each_pair(), fsdbm_each_value(), fsdbm_fetch(), fsdbm_s_open(), fsdbm_select(), glob_i(), grep_iter_i(), group_by_i(), gzfile_wrap(), hist_each(), int_dotimes(), int_downto(), int_upto(), io_s_foreach(), lazy_grep_iter(), lazy_reject_func(), lazy_select_func(), max_by_i(), min_by_i(), minmax_by_i(), mSyslog_open(), num_step(), ole_each_sub(), os_obj_of_i(), ossl_asn1_decode0(), ossl_generate_cb(), ossl_pem_passwd_cb0(), p_gid_switch(), p_uid_switch(), partition_i(), permute0(), pty_getpty(), pty_open(), range_each(), range_step(), rb_ary_bsearch(), rb_ary_collect(), rb_ary_collect_bang(), rb_ary_combination(), rb_ary_count(), rb_ary_cycle(), rb_ary_delete(), rb_ary_drop_while(), rb_ary_each(), rb_ary_each_index(), rb_ary_fetch(), rb_ary_fill(), rb_ary_index(), rb_ary_initialize(), rb_ary_permutation(), rb_ary_product(), rb_ary_repeated_combination(), rb_ary_repeated_permutation(), rb_ary_reverse_each(), rb_ary_rindex(), rb_ary_select(), rb_ary_select_bang(), rb_ary_take_while(), rb_ary_zip(), rb_callcc(), rb_dlhandle_initialize(), rb_f_open(), rb_fiddle_handle_initialize(), rb_gzreader_each(), rb_gzreader_each_byte(), rb_gzreader_each_char(), rb_hash_delete(), rb_hash_fetch_m(), rb_io_each_byte(), rb_io_each_char(), rb_io_each_codepoint(), rb_io_each_line(), rb_io_s_open(), rb_io_s_pipe(), rb_io_s_popen(), rb_mutex_synchronize_m(), rb_obj_tap(), rb_reg_match_m(), rb_str_enumerate_bytes(), rb_str_enumerate_chars(), rb_str_enumerate_codepoints(), rb_str_enumerate_lines(), rb_str_match_m(), rb_str_scan(), rb_str_sub_bang(), rb_str_upto(), rb_struct_each(), rb_struct_each_pair(), rb_struct_select(), rb_thread_s_handle_interrupt(), rcombinate0(), reject_i(), rpermute0(), ruby_float_step(), sort_by_i(), step_i(), str_gsub(), strio_each(), strio_each_byte(), strio_each_char(), strio_each_codepoint(), strio_s_open(), sym_each_i(), sym_step_i(), tracepoint_disable_m(), tracepoint_enable_m(), window_attron(), zip_ary(), zip_i(), zstream_detach_buffer(), and zstream_expand_buffer().

VALUE rb_yield_splat | ( | VALUE | ) |  |

Definition at line 973 of file vm_eval.c.

VALUE rb_yield_values | ( | int | n,
|  |  | ...
| ) |  |

Definition at line 945 of file vm_eval.c.

Referenced by delete_if_i(), each_with_index_i(), each_with_object_i(), enumerator_with_index_i(), enumerator_with_object_i(), env_reject_bang(), env_select(), env_select_bang(), env_update_i(), inject_i(), keep_if_i(), max_ii(), min_ii(), minmax_ii(), minmax_ii_update(), rb_hash_update_block_callback(), select_i(), and sort_1().

VALUE rb_yield_values2 | ( | int | n,
|  | const VALUE * | argv
| ) |  |

Definition at line 967 of file vm_eval.c.

Referenced by lazy_drop_while_func(), lazy_flat_map_func(), lazy_init_iterator(), lazy_map_func(), lazy_take_while_func(), and yielder_yield_i().

static void reduce_nodes_gen | ( | struct parser_params * | ,
|  | NODE ** |
| ) |  |
| static

static VALUE reg_compile_gen | ( | struct parser_params * | ,
|  | VALUE | ,
|  | int |
| ) |  |
| static

static int reg_fragment_check_gen | ( | struct parser_params * | ,
|  | VALUE | ,
|  | int |
| ) |  |
| static

static void reg_fragment_setenc_gen | ( | struct parser_params * | ,
|  | VALUE | ,
|  | int |
| ) |  |
| static

static NODE* reg_named_capture_assign_gen | ( | struct parser_params * | parser,
|  | VALUE | regexp,
|  | NODE * | match
| ) |  |
| static

static ID register_symid | ( | ID | ,
|  | const char * | ,
|  | long | ,
|  | rb_encoding * |
| ) |  |
| static

static ID register_symid_str | ( | ID | ,
|  | VALUE |
| ) |  |
| static

static NODE* remove_begin | ( | NODE * | ) |  |
| static

static NODE* ret_args_gen | ( | struct parser_params * | ,
|  | NODE * |
| ) |  |
| static

expr ripper_intern | ( | "and" | ) |  |

Referenced by rb_num2char_inline(), and yyparse().

RUBY_EXTERN double round | ( | double | ) |  |

Definition at line 84 of file numeric.c.

Referenced by BigDecimal_power(), d_lite_plus(), dbl2ival(), fix_pow(), flo_pow(), flo_round(), offset_to_sec(), rb_big_pow(), and wholenum_p().

int ruby_brace_glob | ( | const char * | ,
|  | int | ,
|  | ruby_glob_func * | ,
|  | VALUE |
| ) |  |

Definition at line 1672 of file dir.c.

void ruby_default_signal | ( | int | ) |  |

Definition at line 323 of file signal.c.

Referenced by ruby_cleanup().

const char* ruby_enc_find_basename | ( | const char * | name,
|  | long * | baselen,
|  | long * | alllen,
|  | rb_encoding * | enc
| ) |  |

Definition at line 3654 of file file.c.

Referenced by rb_file_s_basename().

const char* ruby_enc_find_extname | ( | const char * | name,
|  | long * | len,
|  | rb_encoding * | enc
| ) |  |

Definition at line 3847 of file file.c.

Referenced by path_sub_ext(), and rb_file_s_extname().

void ruby_error_print | ( | void | ) |  |

Definition at line 200 of file eval_error.c.

double ruby_float_mod | ( | double | x,
|  | double | y
| ) |  |

Definition at line 903 of file numeric.c.

Referenced by fix_mod(), and flo_mod().

int ruby_float_step | ( | VALUE | from,
|  | VALUE | to,
|  | VALUE | step,
|  | int | excl
| ) |  |

Definition at line 1788 of file numeric.c.

Referenced by num_step(), and range_step().

const char* ruby_get_inplace_mode | ( | void | ) |  |

Definition at line 11369 of file io.c.

int ruby_glob | ( | const char * | ,
|  | int | ,
|  | ruby_glob_func * | ,
|  | VALUE |
| ) |  |

Definition at line 1537 of file dir.c.

void* ruby_mimmalloc | ( | size_t | size) |  |

Definition at line 3660 of file gc.c.

Referenced by Init_BareVM().

int ruby_native_thread_p | ( | void | ) |  |

Definition at line 5058 of file thread.c.

void ruby_set_inplace_mode | ( | const char * | ) |  |

Definition at line 11375 of file io.c.

Referenced by proc_options().

const char* ruby_signal_name | ( | int | ) |  |

Definition at line 237 of file signal.c.

Referenced by pst_message().

unsigned long ruby_strtoul | ( | const char * | str,
|  | char ** | endptr,
|  | int | base
| ) |  |

Definition at line 106 of file util.c.

int ruby_vsnprintf | ( | char * | str,
|  | size_t | n,
|  | char const * | fmt,
|  | va_list | ap
| ) |  |

Definition at line 1285 of file vsnprintf.c.

RUBY_EXTERN void setproctitle | ( | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 135 of file setproctitle.c.

Referenced by set_arg0().

static ID shadowing_lvar_gen | ( | struct parser_params * | ,
|  | ID |
| ) |  |
| static

RUBY_EXTERN int signbit | ( | double | x) |  |

Definition at line 5 of file signbit.c.

Referenced by f_signbit(), math_atan2(), math_gamma(), and math_lgamma().

static NODE* splat_array | ( | NODE * | ) |  |
| static

void st_add_direct | ( | st_table * | ,
|  | st_data_t | ,
|  | st_data_t |
| ) |  |

Definition at line 624 of file st.c.

Referenced by boot_defclass(), define_final0(), generic_ivar_set(), make_transcoder_entry(), method_entry_i(), move_refined_method(), rb_alias_variable(), rb_autoload(), rb_copy_generic_ivar(), rb_define_class(), rb_define_module(), rb_global_entry(), rb_ivar_set(), register_symid_str(), set_syserr(), transcode_search_path(), transcode_search_path_i(), w_object(), and w_symbol().

void st_cleanup_safe | ( | st_table * | ,
|  | st_data_t |
| ) |  |

Definition at line 797 of file st.c.

Referenced by hash_foreach_ensure().

void st_clear | ( | st_table * | ) |  |

Definition at line 308 of file st.c.

Referenced by rb_hash_clear(), rb_thread_atfork_internal(), and st_free_table().

st_table* st_copy | ( | st_table * | ) |  |

Definition at line 658 of file st.c.

Referenced by init_copy(), rb_copy_generic_ivar(), rb_hash_dup(), rb_hash_initialize_copy(), rb_hash_s_create(), rb_hash_to_h(), rb_mod_init_copy(), and rb_singleton_class_clone_and_attach().

int st_delete | ( | st_table * | ,
|  | st_data_t * | ,
|  | st_data_t * |
| ) |  |

Referenced by autoload_delete(), constat_delete(), find_class_path(), flatten(), generic_ivar_remove(), r_leave(), rb_ary_and(), rb_ary_or(), rb_ary_uniq(), rb_ary_uniq_bang(), rb_const_remove(), rb_cvar_get(), rb_cvar_set(), rb_execarg_fixup(), rb_free_generic_ivar(), rb_hash_delete_key(), rb_mod_init_copy(), rb_mod_remove_cvar(), rb_obj_remove_instance_variable(), rb_objspace_call_finalizer(), rb_undefine_final(), rb_waitpid(), remove_method(), run_final(), socklist_delete(), st_delete_wrap(), and wmap_finalize().

int st_delete_safe | ( | st_table * | ,
|  | st_data_t * | ,
|  | st_data_t * | ,
|  | st_data_t |
| ) |  |

Referenced by rb_hash_delete_key().

int st_foreach | ( | st_table * | ,
|  | int(*)(ANYARGS) | ,
|  | st_data_t |
| ) |  |

Definition at line 1000 of file st.c.

Referenced by class_instance_method_list(), clear_coverage(), count_nodes(), count_objects(), count_objects_size(), count_tdata_objects(), enc_names(), exit_handler(), extract_keywords(), fc_i(), get_loaded_features_index(), include_modules_at(), mark_const_tbl(), mark_hash(), mark_m_tbl(), mark_marshal_compat_t(), mark_set(), mark_tbl(), proc_waitall(), rb_ary_uniq(), rb_ary_uniq_bang(), rb_check_deadlock(), rb_check_exec_env(), rb_check_exec_options(), rb_clear_trace_func(), rb_coverage_result(), rb_econv_asciicompat_encoding(), rb_enc_aliases(), rb_enc_name_list(), rb_execarg_extract_options(), rb_execarg_fixup(), rb_feature_p(), rb_free_const_table(), rb_free_m_table(), rb_mod_init_copy(), rb_obj_singleton_methods(), rb_objspace_call_finalizer(), rb_prepend_module(), rb_singleton_class_clone_and_attach(), rb_sym_all_symbols(), rb_thread_atfork_internal(), rb_thread_fd_close(), rb_thread_keys(), rb_thread_list(), rb_thread_terminate_all(), rb_vm_check_redefinition_by_prepend(), rb_vm_mark(), rb_waitpid(), reachable_objects_from(), thgroup_list(), transcode_search_path(), validate_labels(), wmap_free(), wmap_mark(), and wmap_memsize().

int st_foreach_check | ( | st_table * | ,
|  | int(*)(ANYARGS) | ,
|  | st_data_t | ,
|  | st_data_t |
| ) |  |

Definition at line 909 of file st.c.

Referenced by hash2kv(), hash2kv_enc(), hash_foreach_call(), st_foreach_safe(), and tk_symbolkey2str().

void st_foreach_safe | ( | struct st_table * | ,
|  | int(*)(ANYARGS) | ,
|  | st_data_t |
| ) |  |

Definition at line 133 of file hash.c.

Referenced by cvar_list(), find_class_path(), givar_i(), mod_cvar_at(), obj_ivar_each(), rb_const_list(), rb_f_global_variables(), rb_gc_mark_global_tbl(), rb_ivar_foreach(), rb_mark_generic_ivar_tbl(), rb_mod_const_at(), and w_ivar().

void st_free_table | ( | st_table * | ) |  |

Definition at line 334 of file st.c.

Referenced by ary_recycle_hash(), autoload_free(), class_instance_method_list(), clear_dump_arg(), clear_load_arg(), cvar_list(), exit_handler(), fiber_free(), flatten(), free_enc2cp(), generic_ivar_remove(), init_copy(), Init_win32ole(), iseq_build_from_ary_body(), iseq_data_to_ary(), obj_free(), rb_const_list(), rb_copy_generic_ivar(), rb_free_const_table(), rb_free_generic_ivar(), rb_free_m_table(), rb_hash_rehash(), rb_mod_init_copy(), rb_obj_singleton_methods(), rb_objspace_call_finalizer(), ruby_vm_destruct(), st_copy(), thread_free(), transcode_search_path(), and wmap_free().

int st_get_key | ( | st_table * | ,
|  | st_data_t | ,
|  | st_data_t * |
| ) |  |

Referenced by rb_feature_p().

st_index_t st_hash | ( | const void * | ptr,
|  | size_t | len,
|  | st_index_t | h
| ) |  |

Definition at line 1313 of file st.c.

Referenced by hash_i(), and strhash().

st_index_t st_hash_end | ( | st_index_t | h) |  |

Definition at line 1477 of file st.c.

st_index_t st_hash_start | ( | st_index_t | h) |  |

Definition at line 1486 of file st.c.

st_index_t st_hash_uint | ( | st_index_t | h,
|  | st_index_t | i
| ) |  |

Definition at line 1446 of file st.c.

st_index_t st_hash_uint32 | ( | st_index_t | h,
|  | uint32_t | i
| ) |  |

Definition at line 1440 of file st.c.

st_table* st_init_numtable | ( | void | ) |  |

Definition at line 272 of file st.c.

Referenced by class_instance_method_list(), constat_handle(), fiber_init(), find_class_path(), flatten(), generic_ivar_set(), init_constants(), init_enc2cp(), Init_Exception(), init_heap(), Init_marshal(), Init_var_tables(), Init_VM(), Init_win32ole(), insn_make_insn_table(), iseq_compile_each(), iseq_data_to_ary(), iseq_load(), marshal_dump(), marshal_load(), mod_cvar_at(), rb_autoload(), rb_class_boot(), rb_const_set(), rb_cvar_set(), rb_include_class_new(), rb_iseq_build_from_ary(), rb_ivar_set(), rb_mod_const_at(), rb_mod_init_copy(), rb_module_new(), rb_obj_freeze(), rb_obj_singleton_methods(), rb_prepend_module(), rb_singleton_class_attached(), rb_singleton_class_clone_and_attach(), rb_thread_local_aset(), rb_waitpid(), reachable_objects_from(), socklist_insert(), vm_init_redefined_flag(), and wmap_allocate().

st_table* st_init_numtable_with_size | ( | st_index_t | ) |  |

Definition at line 278 of file st.c.

Referenced by Init_sym().

st_table* st_init_strcasetable | ( | void | ) |  |

Definition at line 296 of file st.c.

Referenced by Init_transcode(), make_transcoder_entry(), rb_enc_init(), transcode_search_path(), and w_encoding().

st_table* st_init_strcasetable_with_size | ( | st_index_t | ) |  |

Definition at line 302 of file st.c.

st_table* st_init_strtable | ( | void | ) |  |

Definition at line 284 of file st.c.

Referenced by Init_load(), load_lock(), and zone_str().

st_table* st_init_strtable_with_size | ( | st_index_t | ) |  |

Definition at line 290 of file st.c.

st_table* st_init_table | ( | const struct st_hash_type * | ) |  |

Definition at line 266 of file st.c.

Referenced by rb_hash_tbl(), st_init_numtable(), st_init_strcasetable(), and st_init_strtable().

st_table* st_init_table_with_size | ( | const struct st_hash_type * | ,
|  | st_index_t |
| ) |  |

Definition at line 229 of file st.c.

Referenced by Init_sym(), rb_hash_rehash(), st_init_numtable_with_size(), st_init_strcasetable_with_size(), st_init_strtable_with_size(), and st_init_table().

int st_insert | ( | st_table * | ,
|  | st_data_t | ,
|  | st_data_t |
| ) |  |

Referenced by add_opt_method(), clone_const(), constat_handle(), cv_i(), enc_register_at(), enc_set_default_encoding(), features_index_add_single(), find_class_path(), flatten(), generic_ivar_set(), init_constants(), Init_VM(), insn_make_insn_table(), iseq_compile_each(), iseq_load(), load_lock(), obj_alloc_by_klass(), ole_vstr2wc(), r_entry0(), r_prepare(), r_symreal(), rb_autoload(), rb_const_set(), rb_copy_generic_ivar(), rb_cvar_set(), rb_execarg_fixup(), rb_gc_copy_finalizer(), rb_hash_rehash_i(), rb_ivar_set(), rb_marshal_define_compat(), rb_method_entry_make(), rb_obj_freeze(), rb_singleton_class_attached(), rb_thread_atfork_internal(), rb_thread_local_aset(), rb_waitpid(), reachable_object_from_i(), register_label(), socklist_insert(), sv_i(), thread_create_core(), val2dispatch(), w_encoding(), w_object(), and wmap_aset().

int st_insert2 | ( | st_table * | ,
|  | st_data_t | ,
|  | st_data_t | ,
|  | st_data_t(*)(st_data_t) |
| ) |  |

Referenced by enc_alias_internal().

int st_lookup | ( | st_table * | ,
|  | st_data_t | ,
|  | st_data_t * |
| ) |  |

Referenced by add_opt_method(), autoload_data(), autoload_defined_p(), autoload_delete(), classname(), constat_handle(), constat_reset(), cv_i(), cvar_lookup_at(), define_final0(), eql_i(), fc_path(), features_index_add_single(), flatten(), generic_ivar_defined(), generic_ivar_get(), generic_ivar_remove(), generic_ivar_set(), get_syserr(), get_transcoder_entry(), iseq_build_from_ary_body(), iseq_compile_each(), iseq_data_to_ary(), iseq_load(), ivar_get(), load_lock(), lookup_method_table(), make_transcoder_entry(), method_entry_i(), obj_alloc_by_klass(), ole_vstr2wc(), r_entry0(), r_leave(), r_object0(), r_symlink(), rb_alias_variable(), rb_ary_diff(), rb_autoload(), rb_check_id(), rb_check_id_cstr(), rb_const_defined_0(), rb_const_get_0(), rb_const_set(), rb_copy_generic_ivar(), rb_econv_asciicompat_encoding(), rb_enc_registered(), rb_f_untrace_var(), rb_feature_p(), rb_gc_copy_finalizer(), rb_generic_ivar_memsize(), rb_generic_ivar_table(), rb_global_entry(), rb_hash_aref(), rb_hash_fetch_m(), rb_hash_has_key(), rb_hash_lookup2(), rb_id2str(), rb_intern3(), rb_intern_str(), rb_ivar_count(), rb_ivar_defined(), rb_ivar_foreach(), rb_ivar_set(), rb_mark_generic_ivar(), rb_method_entry_make(), rb_obj_frozen_p(), rb_obj_remove_instance_variable(), rb_thread_key_p(), rb_thread_local_aref(), rb_thread_variable_p(), rb_tmp_class_path(), rb_vm_check_redefinition_opt_method(), register_label(), remove_method(), rsock_intern_family(), rsock_intern_family_noprefix(), rsock_intern_ip_optname(), rsock_intern_iplevel(), rsock_intern_ipproto(), rsock_intern_ipv6_optname(), rsock_intern_local_optname(), rsock_intern_protocol_family(), rsock_intern_scm_optname(), rsock_intern_so_optname(), rsock_intern_socktype(), rsock_intern_tcp_optname(), rsock_intern_udp_optname(), set_const_visibility(), set_syserr(), socklist_lookup(), sv_i(), syserr_initialize(), transcode_search_path(), transcode_search_path_i(), val2dispatch(), vm_callee_setup_keyword_arg(), vm_get_ev_const(), vm_getivar(), vm_setivar(), w_class(), w_encoding(), w_object(), w_symbol(), wmap_aref(), and wmap_aset().

size_t st_memsize | ( | const st_table * | ) |  |

Definition at line 342 of file st.c.

Referenced by autoload_memsize(), fiber_memsize(), memsize_of(), rb_generic_ivar_memsize(), thread_memsize(), vm_memsize(), and wmap_memsize().

int st_numcmp | ( | st_data_t | ,
|  | st_data_t |
| ) |  |

Definition at line 1569 of file st.c.

Referenced by STATIC_ASSERT().

st_index_t st_numhash | ( | st_data_t | ) |  |

Definition at line 1575 of file st.c.

Referenced by STATIC_ASSERT().

int st_reverse_foreach | ( | st_table * | ,
|  | int(*)(ANYARGS) | ,
|  | st_data_t |
| ) |  |

int st_strcasecmp | ( | const char * | s1,
|  | const char * | s2
| ) |  |

Definition at line 1500 of file st.c.

int st_strcasecmp | ( | const char * | s1,
|  | const char * | s2
| ) |  |

Definition at line 1500 of file st.c.

int st_strncasecmp | ( | const char * | s1,
|  | const char * | s2,
|  | size_t | n
| ) |  |

Definition at line 1524 of file st.c.

int st_strncasecmp | ( | const char * | s1,
|  | const char * | s2,
|  | size_t | n
| ) |  |

Definition at line 1524 of file st.c.

int st_update | ( | st_table * | table,
|  | st_data_t | key,
|  | st_update_callback_func * | func,
|  | st_data_t | arg
| ) |  |

Definition at line 834 of file st.c.

Referenced by kwmerge_i(), load_unlock(), wmap_finalize(), and zone_str().

RUBY_EXTERN char* strchr | ( | const char * | ,
|  | int |
| ) |  |

Definition at line 8 of file strchr.c.

RUBY_EXTERN char* strerror | ( | int | ) |  |

Definition at line 11 of file strerror.c.

Referenced by argf_next_argv(), dln_load(), dln_strerror(), init_libraries_if_necessary(), inspect_errno(), load_file_internal(), Messaging_HandleMessage(), ossl_pkey_new_from_file(), ossl_x509_new_from_file(), rb_bug_errno(), rb_maygvl_fd_fix_cloexec(), rb_sys_warning(), rb_w32_strerror(), sys_warning_1(), and syserr_initialize().

RUBY_EXTERN size_t strlcat | ( | char * | ,
|  | const char * | ,
|  | size_t |
| ) |  |

Definition at line 46 of file strlcat.c.

Referenced by dln_load(), rb_file_expand_path_internal(), and rb_w32_aspawn_flags().

RUBY_EXTERN size_t strlcpy | ( | char * | ,
|  | const char * | ,
|  | size_t |
| ) |  |

Definition at line 44 of file strlcpy.c.

Referenced by cmdglob(), date_strftime_with_tmx(), dln_find_1(), dln_load(), get_device_once(), rb_feature_p(), rb_strftime_with_timespec(), rb_w32_aspawn_flags(), rb_w32_cmdvector(), rb_w32_strerror(), ruby_brace_expand(), ruby_init_loadpath_safe(), and setproctitle().

RUBY_EXTERN char* strrchr | ( | const char * | ,
|  | int |
| ) |  |

Definition at line 20 of file strchr.c.

RUBY_EXTERN char* strstr | ( | const char * | ,
|  | const char * |
| ) |  |

Definition at line 8 of file strstr.c.

Referenced by do_spawn(), load_file_internal(), and Messaging_HandleMessage().

switch | ( | c | ) |  |

Definition at line 7601 of file ripper.y.

References lex_strterm, NEW_STRTERM, pushback, str_dsym, and str_ssym.

Referenced by dump_node().

RUBY_EXTERN double tgamma | ( | double | ) |  |

Definition at line 72 of file tgamma.c.

Referenced by math_gamma().

static void token_info_pop | ( | struct parser_params * | ,
|  | const char * | token
| ) |  |
| static

static void token_info_push | ( | struct parser_params * | ,
|  | const char * | token
| ) |  |
| static

static int value_expr_gen | ( | struct parser_params * | ,
|  | NODE * |
| ) |  |
| static

VALUE vm_thread_backtrace | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | thval
| ) |  |

Definition at line 859 of file vm_backtrace.c.

Referenced by rb_thread_backtrace_m().

VALUE vm_thread_backtrace_locations | ( | int | argc,
|  | VALUE * | argv,
|  | VALUE | thval
| ) |  |

Definition at line 865 of file vm_backtrace.c.

Referenced by rb_thread_backtrace_locations_m().

static void void_expr_gen | ( | struct parser_params * | ,
|  | NODE * |
| ) |  |
| static

static void void_stmts_gen | ( | struct parser_params * | ,
|  | NODE * |
| ) |  |
| static

static void vtable_add | ( | struct vtable * | tbl,
|  | ID | id
| ) |  |
| static

Definition at line 180 of file ripper.y.

static struct vtable* vtable_alloc | ( | struct vtable * | prev) |  |
| static

Definition at line 156 of file ripper.y.

static void vtable_free | ( | struct vtable * | tbl) |  |
| static

Definition at line 168 of file ripper.y.

static int vtable_included | ( | const struct vtable * | tbl,
|  | ID | id
| ) |  |
| static

Definition at line 195 of file ripper.y.

static int vtable_size | ( | const struct vtable * | tbl) |  |
| static

Definition at line 143 of file ripper.y.

warn_balanced | ( | "/" | ,
|  | "regexp literal" |
| ) |  |

void* xcalloc | ( | size_t | ,
|  | size_t |
| ) |  |

void xfree | ( | void * | ) |  |

void* xmalloc2 | ( | size_t | ,
|  | size_t |
| ) |  |

void* xrealloc | ( | void * | ,
|  | size_t |
| ) |  |

void* xrealloc2 | ( | void * | ,
|  | size_t | ,
|  | size_t |
| ) |  |

static int yylex | ( | void * | ,
|  | void * |
| ) |  |
| static

## Variable Documentation

top_compstmt __pad0__

Definition at line 888 of file ripper.y.

block_command __pad10__

Definition at line 1336 of file ripper.y.

fcall __pad11__

Definition at line 1362 of file ripper.y.

command __pad12__

Definition at line 1380 of file ripper.y.

mlhs __pad13__

Definition at line 1480 of file ripper.y.

mlhs_item __pad14__ = mlhs_add($$, $3)

Definition at line 1585 of file ripper.y.

mlhs_node __pad15__

Definition at line 1635 of file ripper.y.

primary_value [' opt_call_args rbracket { $$ = dispatch2(aref_field, $1, escape_Qundef($3)); } | primary_value '.' tIDENTIFIER { $$ = dispatch3(field, $1, ripper_id2sym('.'), $3); } | primary_value tCOLON2 tIDENTIFIER { $$ = dispatch2(const_path_field, $1, $3); } | primary_value '.' tCONSTANT { $$ = dispatch3(field, $1, ripper_id2sym('.'), $3); } | primary_value tCOLON2 tCONSTANT { if (in_def || in_single) yyerror("dynamic constant assignment"); $$ = dispatch2(const_path_field, $1, $3); } | tCOLON3 tCONSTANT { $$ = dispatch1(top_const_field, $2); } | backref { $$ = dispatch1(var_field, $1); $$ = dispatch1(assign_error, $$); } ;lhs : user_variable { $$ = assignable($1, 0); $$ = dispatch1(var_field, $$); } | keyword_variable { $$ = assignable($1, 0); $$ = dispatch1(var_field, $$); } | primary_value '[' opt_call_args rbracket { $$ = dispatch2(aref_field, $1, escape_Qundef($3)); } | primary_value '.' tIDENTIFIER { $$ = dispatch3(field, $1, ripper_id2sym('.'), $3); } | primary_value tCOLON2 tIDENTIFIER { $$ = dispatch3(field, $1, ripper_intern("::"), $3); } | primary_value '.' tCONSTANT { $$ = dispatch3(field, $1, ripper_id2sym('.'), $3); } | primary_value tCOLON2 tCONSTANT { $$ = dispatch2(const_path_field, $1, $3); if (in_def || in_single) { $$ = dispatch1(assign_error, $$); } } | tCOLON3 tCONSTANT { $$ = dispatch1(top_const_field, $2); if (in_def || in_single) { $$ = dispatch1(assign_error, $$); } } | backref { $$ = dispatch1(assign_error, $1); } ;cname : tIDENTIFIER { $$ = dispatch1(class_name_error, $1); } | tCONSTANT ;cpath : tCOLON3 cname { $$ = dispatch1(top_const_ref, $2); } | cname { $$ = dispatch1(const_ref, $1); } | primary_value tCOLON2 cname { $$ = dispatch2(const_path_ref, $1, $3); } ;fname : tIDENTIFIER | tCONSTANT | tFID | op { lex_state = EXPR_ENDFN; $$ = $1; } | reswords { lex_state = EXPR_ENDFN; $$ = $1; } ;fsym : fname | symbol ;fitem : fsym { $$ = dispatch1(symbol_literal, $1); } | dsym ;undef_list : fitem { $$ = rb_ary_new3(1, $1); } | undef_list ',' {lex_state = EXPR_FNAME;} fitem { rb_ary_push($1, $4); } ;op : '|' { ifndef_ripper($$ = '|'); } | '^' { ifndef_ripper($$ = '^'); } | '&' { ifndef_ripper($$ = '&'); } | tCMP { ifndef_ripper($$ = tCMP); } | tEQ { ifndef_ripper($$ = tEQ); } | tEQQ { ifndef_ripper($$ = tEQQ); } | tMATCH { ifndef_ripper($$ = tMATCH); } | tNMATCH { ifndef_ripper($$ = tNMATCH); } | '>' { ifndef_ripper($$ = '>'); } | tGEQ { ifndef_ripper($$ = tGEQ); } | '<' { ifndef_ripper($$ = '<'); } | tLEQ { ifndef_ripper($$ = tLEQ); } | tNEQ { ifndef_ripper($$ = tNEQ); } | tLSHFT { ifndef_ripper($$ = tLSHFT); } | tRSHFT { ifndef_ripper($$ = tRSHFT); } | '+' { ifndef_ripper($$ = '+'); } | '-' { ifndef_ripper($$ = '-'); } | '*' { ifndef_ripper($$ = '*'); } | tSTAR { ifndef_ripper($$ = '*'); } | '/' { ifndef_ripper($$ = '/'); } | '%' { ifndef_ripper($$ = '%'); } | tPOW { ifndef_ripper($$ = tPOW); } | tDSTAR { ifndef_ripper($$ = tDSTAR); } | '!' { ifndef_ripper($$ = '!'); } | '~' { ifndef_ripper($$ = '~'); } | tUPLUS { ifndef_ripper($$ = tUPLUS); } | tUMINUS { ifndef_ripper($$ = tUMINUS); } | tAREF { ifndef_ripper($$ = tAREF); } | tASET { ifndef_ripper($$ = tASET); } | '`' { ifndef_ripper($$ = '`'); } ;reswords : keyword__LINE__ | keyword__FILE__ | keyword__ENCODING__ | keyword_BEGIN | keyword_END | keyword_alias | keyword_and | keyword_begin | keyword_break | keyword_case | keyword_class | keyword_def | keyword_defined | keyword_do | keyword_else | keyword_elsif | keyword_end | keyword_ensure | keyword_false | keyword_for | keyword_in | keyword_module | keyword_next | keyword_nil | keyword_not | keyword_or | keyword_redo | keyword_rescue | keyword_retry | keyword_return | keyword_self | keyword_super | keyword_then | keyword_true | keyword_undef | keyword_when | keyword_yield | keyword_if | keyword_unless | keyword_while | keyword_until ;arg : lhs '=' arg { $$ = dispatch2(assign, $1, $3); } | lhs '=' arg modifier_rescue arg { $$ = dispatch2(assign, $1, dispatch2(rescue_mod, $3, $5)); } | var_lhs tOP_ASGN arg { value_expr($3); $$ = new_op_assign($1, $2, $3); } | var_lhs tOP_ASGN arg modifier_rescue arg { $3 = dispatch2(rescue_mod, $3, $5); $$ = new_op_assign($1, $2, $3); } | primary_value '[' opt_call_args rbracket tOP_ASGN arg { $1 = dispatch2(aref_field, $1, escape_Qundef($3)); $$ = dispatch3(opassign, $1, $5, $6); } | primary_value '.' tIDENTIFIER tOP_ASGN arg { value_expr($5); $$ = new_attr_op_assign($1, ripper_id2sym('.'), $3, $4, $5); } | primary_value '.' tCONSTANT tOP_ASGN arg { value_expr($5); $$ = new_attr_op_assign($1, ripper_id2sym('.'), $3, $4, $5); } | primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg { value_expr($5); $$ = new_attr_op_assign($1, ripper_intern("::"), $3, $4, $5); } | primary_value tCOLON2 tCONSTANT tOP_ASGN arg { $$ = dispatch2(const_path_field, $1, $3); $$ = dispatch3(opassign, $$, $4, $5); } | tCOLON3 tCONSTANT tOP_ASGN arg { $$ = dispatch1(top_const_field, $2); $$ = dispatch3(opassign, $$, $3, $4); } | backref tOP_ASGN arg { $$ = dispatch1(var_field, $1); $$ = dispatch3(opassign, $$, $2, $3); $$ = dispatch1(assign_error, $$); } | arg tDOT2 arg { $$ = dispatch2(dot2, $1, $3); } | arg tDOT3 arg { $$ = dispatch2(dot3, $1, $3); } | arg '+' arg { $$ = dispatch3(binary, $1, ID2SYM('+'), $3); } | arg '-' arg { $$ = dispatch3(binary, $1, ID2SYM('-'), $3); } | arg '*' arg { $$ = dispatch3(binary, $1, ID2SYM('*'), $3); } | arg '/' arg { $$ = dispatch3(binary, $1, ID2SYM('/'), $3); } | arg '%' arg { $$ = dispatch3(binary, $1, ID2SYM('%'), $3); } | arg tPOW arg { $$ = dispatch3(binary, $1, ripper_intern("**"), $3); } | tUMINUS_NUM tINTEGER tPOW arg { $$ = dispatch3(binary, $2, ripper_intern("**"), $4); $$ = dispatch2(unary, ripper_intern("-@"), $$); } | tUMINUS_NUM tFLOAT tPOW arg { $$ = dispatch3(binary, $2, ripper_intern("**"), $4); $$ = dispatch2(unary, ripper_intern("-@"), $$); } | tUPLUS arg { $$ = dispatch2(unary, ripper_intern("+@"), $2); } | tUMINUS arg { $$ = dispatch2(unary, ripper_intern("-@"), $2); } | arg '|' arg { $$ = dispatch3(binary, $1, ID2SYM('|'), $3); } | arg '^' arg { $$ = dispatch3(binary, $1, ID2SYM('^'), $3); } | arg '&' arg { $$ = dispatch3(binary, $1, ID2SYM('&'), $3); } | arg tCMP arg { $$ = dispatch3(binary, $1, ripper_intern("<=>"), $3); } | arg '>' arg { $$ = dispatch3(binary, $1, ID2SYM('>'), $3); } | arg tGEQ arg { $$ = dispatch3(binary, $1, ripper_intern(">="), $3); } | arg '<' arg { $$ = dispatch3(binary, $1, ID2SYM('<'), $3); } | arg tLEQ arg { $$ = dispatch3(binary, $1, ripper_intern("<="), $3); } | arg tEQ arg { $$ = dispatch3(binary, $1, ripper_intern("=="), $3); } | arg tEQQ arg { $$ = dispatch3(binary, $1, ripper_intern("==="), $3); } | arg tNEQ arg { $$ = dispatch3(binary, $1, ripper_intern("!="), $3); } | arg tMATCH arg { $$ = dispatch3(binary, $1, ripper_intern("=~"), $3); } | arg tNMATCH arg { $$ = dispatch3(binary, $1, ripper_intern("!~"), $3); } | '!' arg { $$ = dispatch2(unary, ID2SYM('!'), $2); } | '~' arg { $$ = dispatch2(unary, ID2SYM('~'), $2); } | arg tLSHFT arg { $$ = dispatch3(binary, $1, ripper_intern("<<"), $3); } | arg tRSHFT arg { $$ = dispatch3(binary, $1, ripper_intern(">>"), $3); } | arg tANDOP arg { $$ = dispatch3(binary, $1, ripper_intern("&&"), $3); } | arg tOROP arg { $$ = dispatch3(binary, $1, ripper_intern("||"), $3); } | keyword_defined opt_nl {in_defined = 1;} arg { in_defined = 0; $$ = dispatch1(defined, $4); } | arg '?' arg opt_nl ':' arg { $$ = dispatch3(ifop, $1, $3, $6); } | primary { $$ = $1; } ;arg_value : arg { $$ = $1; } ;aref_args : none | args trailer { $$ = $1; } | args ',' assocs trailer { $$ = arg_add_assocs($1, $3); } | assocs trailer { $$ = arg_add_assocs(arg_new(), $1); } ;paren_args : '(' opt_call_args rparen { $$ = dispatch1(arg_paren, escape_Qundef($2)); } ;opt_paren_args : none | paren_args ;opt_call_args : none | call_args | args ',' { $$ = $1; } | args ',' assocs ',' { $$ = arg_add_assocs($1, $3); } | assocs ',' { $$ = arg_add_assocs(arg_new(), $1); } ;call_args : command { $$ = arg_add(arg_new(), $1); } | args opt_block_arg { $$ = arg_add_optblock($1, $2); } | assocs opt_block_arg { $$ = arg_add_assocs(arg_new(), $1); $$ = arg_add_optblock($$, $2); } | args ',' assocs opt_block_arg { $$ = arg_add_optblock(arg_add_assocs($1, $3), $4); } | block_arg { $$ = arg_add_block(arg_new(), $1); } ;command_args : { $<val>$ = cmdarg_stack; CMDARG_PUSH(1); } call_args { cmdarg_stack = $<val>1; $$ = $2; } ;block_arg : tAMPER arg_value { $$ = $2; } ;opt_block_arg : ',' block_arg { $$ = $2; } | none { $$ = 0; } ;args : arg_value { $$ = arg_add(arg_new(), $1); } | tSTAR arg_value { $$ = arg_add_star(arg_new(), $2); } | args ',' arg_value { $$ = arg_add($1, $3); } | args ',' tSTAR arg_value { $$ = arg_add_star($1, $4); } ;mrhs : args ',' arg_value { $$ = mrhs_add(args2mrhs($1), $3); } | args ',' tSTAR arg_value { $$ = mrhs_add_star(args2mrhs($1), $4); } | tSTAR arg_value { $$ = mrhs_add_star(mrhs_new(), $2); } ;primary : literal | strings | xstring | regexp | words | qwords | symbols | qsymbols | var_ref | backref | tFID { $$ = method_arg(dispatch1(fcall, $1), arg_new()); } | k_begin { $<val>1 = cmdarg_stack; cmdarg_stack = 0; } bodystmt k_end { cmdarg_stack = $<val>1; $$ = dispatch1(begin, $3); } | tLPAREN_ARG {lex_state = EXPR_ENDARG;} rparen { $$ = dispatch1(paren, 0); } | tLPAREN_ARG expr {lex_state = EXPR_ENDARG;} rparen { $$ = dispatch1(paren, $2); } | tLPAREN compstmt ')' { $$ = dispatch1(paren, $2); } | primary_value tCOLON2 tCONSTANT { $$ = dispatch2(const_path_ref, $1, $3); } | tCOLON3 tCONSTANT { $$ = dispatch1(top_const_ref, $2); } | tLBRACK aref_args ']' { $$ = dispatch1(array, escape_Qundef($2)); } | tLBRACE assoc_list '}' { $$ = dispatch1(hash, escape_Qundef($2)); } | keyword_return { $$ = dispatch0(return0); } | keyword_yield '(' call_args rparen { $$ = dispatch1(yield, dispatch1(paren, $3)); } | keyword_yield '(' rparen { $$ = dispatch1(yield, dispatch1(paren, arg_new())); } | keyword_yield { $$ = dispatch0(yield0); } | keyword_defined opt_nl '(' {in_defined = 1;} expr rparen { in_defined = 0; $$ = dispatch1(defined, $5); } | keyword_not '(' expr rparen { $$ = dispatch2(unary, ripper_intern("not"), $3); } | keyword_not '(' rparen { $$ = dispatch2(unary, ripper_intern("not"), Qnil); } | fcall brace_block { $$ = method_arg(dispatch1(fcall, $1), arg_new()); $$ = method_add_block($$, $2); } | method_call | method_call brace_block { $$ = method_add_block($1, $2); } | tLAMBDA lambda { $$ = $2; } | k_if expr_value then compstmt if_tail k_end { $$ = dispatch3(if, $2, $4, escape_Qundef($5)); } | k_unless expr_value then compstmt opt_else k_end { $$ = dispatch3(unless, $2, $4, escape_Qundef($5)); } | k_while {COND_PUSH(1);} expr_value do {COND_POP();} compstmt k_end { $$ = dispatch2(while, $3, $6); } | k_until {COND_PUSH(1);} expr_value do {COND_POP();} compstmt k_end { $$ = dispatch2(until, $3, $6); } | k_case expr_value opt_terms case_body k_end { $$ = dispatch2(case, $2, $4); } | k_case opt_terms case_body k_end { $$ = dispatch2(case, Qnil, $3); } | k_for for_var keyword_in {COND_PUSH(1);} expr_value do {COND_POP();} compstmt k_end { $$ = dispatch3(for, $2, $5, $8); } | k_class cpath superclass { if (in_def || in_single) yyerror("class definition in method body"); local_push(0); } bodystmt k_end { $$ = dispatch3(class, $2, $3, $5); local_pop(); } | k_class tLSHFT expr { $<num>$ = in_def; in_def = 0; } term { $<num>$ = in_single; in_single = 0; local_push(0); } bodystmt k_end { $$ = dispatch2(sclass, $3, $7); local_pop(); in_def = $<num>4; in_single = $<num>6; } | k_module cpath { if (in_def || in_single) yyerror("module definition in method body"); local_push(0); } bodystmt k_end { $$ = dispatch2(module, $2, $4); local_pop(); } | k_def fname { $<id>$ = cur_mid; cur_mid = $2; in_def++; local_push(0); } f_arglist bodystmt k_end { $$ = dispatch3(def, $2, $4, $5); local_pop(); in_def--; cur_mid = $<id>3; } | k_def singleton dot_or_colon {lex_state = EXPR_FNAME;} fname { in_single++; lex_state = EXPR_ENDFN; local_push(0); } f_arglist bodystmt k_end { $$ = dispatch5(defs, $2, $3, $5, $7, $8); local_pop(); in_single--; } | keyword_break { $$ = dispatch1(break, arg_new()); } | keyword_next { $$ = dispatch1(next, arg_new()); } | keyword_redo { $$ = dispatch0(redo); } | keyword_retry { $$ = dispatch0(retry); } ;primary_value : primary { $$ = $1; } ;k_begin : keyword_begin { token_info_push("begin"); } ;k_if : keyword_if { token_info_push("if"); } ;k_unless : keyword_unless { token_info_push("unless"); } ;k_while : keyword_while { token_info_push("while"); } ;k_until : keyword_until { token_info_push("until"); } ;k_case : keyword_case { token_info_push("case"); } ;k_for : keyword_for { token_info_push("for"); } ;k_class : keyword_class { token_info_push("class"); } ;k_module : keyword_module { token_info_push("module"); } ;k_def : keyword_def { token_info_push("def"); } ;k_end : keyword_end { token_info_pop("end"); } ;then : term { $$ = Qnil; } | keyword_then | term keyword_then { $$ = $2; } ;do : term { $$ = Qnil; } | keyword_do_cond ;if_tail : opt_else | keyword_elsif expr_value then compstmt if_tail { $$ = dispatch3(elsif, $2, $4, escape_Qundef($5)); } ;opt_else : none | keyword_else compstmt { $$ = dispatch1(else, $2); } ;for_var : lhs | mlhs ;f_marg : f_norm_arg { $$ = assignable($1, 0); $$ = dispatch1(mlhs_paren, $$); } | tLPAREN f_margs rparen { $$ = dispatch1(mlhs_paren, $2); } ;f_marg_list : f_marg { $$ = mlhs_add(mlhs_new(), $1); } | f_marg_list ',' f_marg { $$ = mlhs_add($1, $3); } ;f_margs : f_marg_list { $$ = $1; } | f_marg_list ',' tSTAR f_norm_arg { $$ = assignable($4, 0); $$ = mlhs_add_star($1, $$); } | f_marg_list ',' tSTAR f_norm_arg ',' f_marg_list { $$ = assignable($4, 0); $$ = mlhs_add_star($1, $$); } | f_marg_list ',' tSTAR { $$ = mlhs_add_star($1, Qnil); } | f_marg_list ',' tSTAR ',' f_marg_list { $$ = mlhs_add_star($1, $5); } | tSTAR f_norm_arg { $$ = assignable($2, 0); $$ = mlhs_add_star(mlhs_new(), $$); } | tSTAR f_norm_arg ',' f_marg_list { $$ = assignable($2, 0); $$ = mlhs_add_star($$, $4); } | tSTAR { $$ = mlhs_add_star(mlhs_new(), Qnil); } | tSTAR ',' f_marg_list { $$ = mlhs_add_star(mlhs_new(), Qnil); } ;block_args_tail : f_block_kwarg ',' f_kwrest opt_f_block_arg { $$ = new_args_tail($1, $3, $4); } | f_block_kwarg opt_f_block_arg { $$ = new_args_tail($1, Qnone, $2); } | f_kwrest opt_f_block_arg { $$ = new_args_tail(Qnone, $1, $2); } | f_block_arg { $$ = new_args_tail(Qnone, Qnone, $1); } ;opt_block_args_tail : ',' block_args_tail { $$ = $2; } | { $$ = new_args_tail(Qnone, Qnone, Qnone); } ;block_param : f_arg ',' f_block_optarg ',' f_rest_arg opt_block_args_tail { $$ = new_args($1, $3, $5, Qnone, $6); } | f_arg ',' f_block_optarg ',' f_rest_arg ',' f_arg opt_block_args_tail { $$ = new_args($1, $3, $5, $7, $8); } | f_arg ',' f_block_optarg opt_block_args_tail { $$ = new_args($1, $3, Qnone, Qnone, $4); } | f_arg ',' f_block_optarg ',' f_arg opt_block_args_tail { $$ = new_args($1, $3, Qnone, $5, $6); } | f_arg ',' f_rest_arg opt_block_args_tail { $$ = new_args($1, Qnone, $3, Qnone, $4); } | f_arg ',' { $$ = new_args($1, Qnone, 1, Qnone, new_args_tail(Qnone, Qnone, Qnone)); dispatch1(excessed_comma, $$); } | f_arg ',' f_rest_arg ',' f_arg opt_block_args_tail { $$ = new_args($1, Qnone, $3, $5, $6); } | f_arg opt_block_args_tail { $$ = new_args($1, Qnone, Qnone, Qnone, $2); } | f_block_optarg ',' f_rest_arg opt_block_args_tail { $$ = new_args(Qnone, $1, $3, Qnone, $4); } | f_block_optarg ',' f_rest_arg ',' f_arg opt_block_args_tail { $$ = new_args(Qnone, $1, $3, $5, $6); } | f_block_optarg opt_block_args_tail { $$ = new_args(Qnone, $1, Qnone, Qnone, $2); } | f_block_optarg ',' f_arg opt_block_args_tail { $$ = new_args(Qnone, $1, Qnone, $3, $4); } | f_rest_arg opt_block_args_tail { $$ = new_args(Qnone, Qnone, $1, Qnone, $2); } | f_rest_arg ',' f_arg opt_block_args_tail { $$ = new_args(Qnone, Qnone, $1, $3, $4); } | block_args_tail { $$ = new_args(Qnone, Qnone, Qnone, Qnone, $1); } ;opt_block_param : none | block_param_def { command_start = TRUE; } ;block_param_def : '|' opt_bv_decl '|' { $$ = blockvar_new(params_new(Qnil,Qnil,Qnil,Qnil,Qnil,Qnil,Qnil), escape_Qundef($2)); } | tOROP { $$ = blockvar_new(params_new(Qnil,Qnil,Qnil,Qnil,Qnil,Qnil,Qnil), Qnil); } | '|' block_param opt_bv_decl '|' { $$ = blockvar_new(escape_Qundef($2), escape_Qundef($3)); } ;opt_bv_decl : opt_nl { $$ = 0; } | opt_nl ';' bv_decls opt_nl { $$ = $3; } ;bv_decls : bvar { $$ = rb_ary_new3(1, $1); } | bv_decls ',' bvar { rb_ary_push($1, $3); } ;bvar : tIDENTIFIER { new_bv(get_id($1)); $$ = get_value($1); } | f_bad_arg { $$ = 0; } ;lambda : { $<vars>$ = dyna_push(); } { $<num>$ = lpar_beg; lpar_beg = ++paren_nest; } f_larglist lambda_body { lpar_beg = $<num>2; $$ = dispatch2(lambda, $3, $4); dyna_pop($<vars>1); } ;f_larglist : '(' f_args opt_bv_decl ')' { $$ = dispatch1(paren, $2); } | f_args { $$ = $1; } ;lambda_body : tLAMBEG compstmt '}' { $$ = $2; } | keyword_do_LAMBDA compstmt keyword_end { $$ = $2; } ;do_block : keyword_do_block { $<vars>1 = dyna_push(); } opt_block_param compstmt keyword_end { $$ = dispatch2(do_block, escape_Qundef($3), $4); dyna_pop($<vars>1); } ;block_call : command do_block { $$ = method_add_block($1, $2); } | block_call dot_or_colon operation2 opt_paren_args { $$ = dispatch3(call, $1, $2, $3); $$ = method_optarg($$, $4); } | block_call dot_or_colon operation2 opt_paren_args brace_block { $$ = dispatch4(command_call, $1, $2, $3, $4); $$ = method_add_block($$, $5); } | block_call dot_or_colon operation2 command_args do_block { $$ = dispatch4(command_call, $1, $2, $3, $4); $$ = method_add_block($$, $5); } ;method_call : fcall paren_args { $$ = method_arg(dispatch1(fcall, $1), $2); } | primary_value '.' operation2 { } opt_paren_args { $$ = dispatch3(call, $1, ripper_id2sym('.'), $3); $$ = method_optarg($$, $5); } | primary_value tCOLON2 operation2 { } paren_args { $$ = dispatch3(call, $1, ripper_id2sym('.'), $3); $$ = method_optarg($$, $5); } | primary_value tCOLON2 operation3 { $$ = dispatch3(call, $1, ripper_intern("::"), $3); } | primary_value '.' { } paren_args { $$ = dispatch3(call, $1, ripper_id2sym('.'), ripper_intern("call")); $$ = method_optarg($$, $4); } | primary_value tCOLON2 { } paren_args { $$ = dispatch3(call, $1, ripper_intern("::"), ripper_intern("call")); $$ = method_optarg($$, $4); } | keyword_super paren_args { $$ = dispatch1(super, $2); } | keyword_super { $$ = dispatch0(zsuper); } | primary_value '[' opt_call_args rbracket { $$ = dispatch2(aref, $1, escape_Qundef($3)); } ;brace_block : '{' { $<vars>1 = dyna_push(); } opt_block_param compstmt '}' { $$ = dispatch2(brace_block, escape_Qundef($3), $4); dyna_pop($<vars>1); } | keyword_do { $<vars>1 = dyna_push(); } opt_block_param compstmt keyword_end { $$ = dispatch2(do_block, escape_Qundef($3), $4); dyna_pop($<vars>1); } ;case_body : keyword_when args then compstmt cases { $$ = dispatch3(when, $2, $4, escape_Qundef($5)); } ;cases : opt_else | case_body ;opt_rescue : keyword_rescue exc_list exc_var then compstmt opt_rescue { $$ = dispatch4(rescue, escape_Qundef($2), escape_Qundef($3), escape_Qundef($5), escape_Qundef($6)); } | none ;exc_list : arg_value { $$ = rb_ary_new3(1, $1); } | mrhs { $$ = $1; } | none ;exc_var : tASSOC lhs { $$ = $2; } | none ;opt_ensure : keyword_ensure compstmt { $$ = dispatch1(ensure, $2); } | none ;literal : numeric | symbol { $$ = dispatch1(symbol_literal, $1); } | dsym ;strings : string { $$ = $1; } ;string : tCHAR | string1 | string string1 { $$ = dispatch2(string_concat, $1, $2); } ;string1 : tSTRING_BEG string_contents tSTRING_END { $$ = dispatch1(string_literal, $2); } ;xstring : tXSTRING_BEG xstring_contents tSTRING_END { $$ = dispatch1(xstring_literal, $2); } ;regexp : tREGEXP_BEG regexp_contents tREGEXP_END { $$ = dispatch2(regexp_literal, $2, $3); } ;words : tWORDS_BEG ' ' tSTRING_END { $$ = dispatch0(words_new); $$ = dispatch1(array, $$); } | tWORDS_BEG word_list tSTRING_END { $$ = dispatch1(array, $2); } ;word_list : { $$ = dispatch0(words_new); } | word_list word ' ' { $$ = dispatch2(words_add, $1, $2); } ;word : string_content { $$ = dispatch0(word_new); $$ = dispatch2(word_add, $$, $1); } | word string_content { $$ = dispatch2(word_add, $1, $2); } ;symbols : tSYMBOLS_BEG ' ' tSTRING_END { $$ = dispatch0(symbols_new); $$ = dispatch1(array, $$); } | tSYMBOLS_BEG symbol_list tSTRING_END { $$ = dispatch1(array, $2); } ;symbol_list : { $$ = dispatch0(symbols_new); } | symbol_list word ' ' { $$ = dispatch2(symbols_add, $1, $2); } ;qwords : tQWORDS_BEG ' ' tSTRING_END { $$ = dispatch0(qwords_new); $$ = dispatch1(array, $$); } | tQWORDS_BEG qword_list tSTRING_END { $$ = dispatch1(array, $2); } ;qsymbols : tQSYMBOLS_BEG ' ' tSTRING_END { $$ = dispatch0(qsymbols_new); $$ = dispatch1(array, $$); } | tQSYMBOLS_BEG qsym_list tSTRING_END { $$ = dispatch1(array, $2); } ;qword_list : { $$ = dispatch0(qwords_new); } | qword_list tSTRING_CONTENT ' ' { $$ = dispatch2(qwords_add, $1, $2); } ;qsym_list : { $$ = dispatch0(qsymbols_new); } | qsym_list tSTRING_CONTENT ' ' { $$ = dispatch2(qsymbols_add, $1, $2); } ;string_contents : { $$ = dispatch0(string_content); } | string_contents string_content { $$ = dispatch2(string_add, $1, $2); } ;xstring_contents: { $$ = dispatch0(xstring_new); } | xstring_contents string_content { $$ = dispatch2(xstring_add, $1, $2); } ;regexp_contents: { $$ = dispatch0(regexp_new); } | regexp_contents string_content { $$ = dispatch2(regexp_add, $1, $2); } ;string_content : tSTRING_CONTENT | tSTRING_DVAR { $<node>$ = lex_strterm; lex_strterm = 0; lex_state = EXPR_BEG; } string_dvar { lex_strterm = $<node>2; $$ = dispatch1(string_dvar, $3); } | tSTRING_DBEG { $<val>1 = cond_stack; $<val>$ = cmdarg_stack; cond_stack = 0; cmdarg_stack = 0; } { $<node>$ = lex_strterm; lex_strterm = 0; lex_state = EXPR_BEG; } { $<num>$ = brace_nest; brace_nest = 0; } compstmt tSTRING_DEND { cond_stack = $<val>1; cmdarg_stack = $<val>2; lex_strterm = $<node>3; brace_nest = $<num>4; $$ = dispatch1(string_embexpr, $5); } ;string_dvar : tGVAR { $$ = dispatch1(var_ref, $1); } | tIVAR { $$ = dispatch1(var_ref, $1); } | tCVAR { $$ = dispatch1(var_ref, $1); } | backref ;symbol : tSYMBEG sym { lex_state = EXPR_END; $$ = dispatch1(symbol, $2); } ;sym : fname | tIVAR | tGVAR | tCVAR ;dsym : tSYMBEG xstring_contents tSTRING_END { lex_state = EXPR_END; $$ = dispatch1(dyna_symbol, $2); } ;numeric : tINTEGER | tFLOAT | tUMINUS_NUM tINTEGER %prec tLOWEST { $$ = dispatch2(unary, ripper_intern("-@"), $2); } | tUMINUS_NUM tFLOAT %prec tLOWEST { $$ = dispatch2(unary, ripper_intern("-@"), $2); } ;user_variable : tIDENTIFIER | tIVAR | tGVAR | tCONSTANT | tCVAR ;keyword_variable: keyword_nil {ifndef_ripper($$ = keyword_nil);} | keyword_self {ifndef_ripper($$ = keyword_self);} | keyword_true {ifndef_ripper($$ = keyword_true);} | keyword_false {ifndef_ripper($$ = keyword_false);} | keyword__FILE__ {ifndef_ripper($$ = keyword__FILE__);} | keyword__LINE__ {ifndef_ripper($$ = keyword__LINE__);} | keyword__ENCODING__ {ifndef_ripper($$ = keyword__ENCODING__);} ;var_ref : user_variable { if (id_is_var(get_id($1))) { $$ = dispatch1(var_ref, $1); } else { $$ = dispatch1(vcall, $1); } } | keyword_variable { $$ = dispatch1(var_ref, $1); } ;var_lhs : user_variable { $$ = assignable($1, 0); $$ = dispatch1(var_field, $$); } | keyword_variable { $$ = assignable($1, 0); $$ = dispatch1(var_field, $$); } ;backref : tNTH_REF | tBACK_REF ;superclass : term { $$ = Qnil; } | '<' { lex_state = EXPR_BEG; command_start = TRUE; } expr_value term { $$ = $3; } | error term { yyerrok; $$ = Qnil; } ;f_arglist : '(' f_args rparen { $$ = dispatch1(paren, $2); lex_state = EXPR_BEG; command_start = TRUE; } | f_args term { $$ = $1; lex_state = EXPR_BEG; command_start = TRUE; } ;args_tail : f_kwarg ',' f_kwrest opt_f_block_arg { $$ = new_args_tail($1, $3, $4); } | f_kwarg opt_f_block_arg { $$ = new_args_tail($1, Qnone, $2); } | f_kwrest opt_f_block_arg { $$ = new_args_tail(Qnone, $1, $2); } | f_block_arg { $$ = new_args_tail(Qnone, Qnone, $1); } ;opt_args_tail : ',' args_tail { $$ = $2; } | { $$ = new_args_tail(Qnone, Qnone, Qnone); } ;f_args : f_arg ',' f_optarg ',' f_rest_arg opt_args_tail { $$ = new_args($1, $3, $5, Qnone, $6); } | f_arg ',' f_optarg ',' f_rest_arg ',' f_arg opt_args_tail { $$ = new_args($1, $3, $5, $7, $8); } | f_arg ',' f_optarg opt_args_tail { $$ = new_args($1, $3, Qnone, Qnone, $4); } | f_arg ',' f_optarg ',' f_arg opt_args_tail { $$ = new_args($1, $3, Qnone, $5, $6); } | f_arg ',' f_rest_arg opt_args_tail { $$ = new_args($1, Qnone, $3, Qnone, $4); } | f_arg ',' f_rest_arg ',' f_arg opt_args_tail { $$ = new_args($1, Qnone, $3, $5, $6); } | f_arg opt_args_tail { $$ = new_args($1, Qnone, Qnone, Qnone, $2); } | f_optarg ',' f_rest_arg opt_args_tail { $$ = new_args(Qnone, $1, $3, Qnone, $4); } | f_optarg ',' f_rest_arg ',' f_arg opt_args_tail { $$ = new_args(Qnone, $1, $3, $5, $6); } | f_optarg opt_args_tail { $$ = new_args(Qnone, $1, Qnone, Qnone, $2); } | f_optarg ',' f_arg opt_args_tail { $$ = new_args(Qnone, $1, Qnone, $3, $4); } | f_rest_arg opt_args_tail { $$ = new_args(Qnone, Qnone, $1, Qnone, $2); } | f_rest_arg ',' f_arg opt_args_tail { $$ = new_args(Qnone, Qnone, $1, $3, $4); } | args_tail { $$ = new_args(Qnone, Qnone, Qnone, Qnone, $1); } | { $$ = new_args_tail(Qnone, Qnone, Qnone); $$ = new_args(Qnone, Qnone, Qnone, Qnone, $$); } ;f_bad_arg : tCONSTANT { $$ = dispatch1(param_error, $1); } | tIVAR { $$ = dispatch1(param_error, $1); } | tGVAR { $$ = dispatch1(param_error, $1); } | tCVAR { $$ = dispatch1(param_error, $1); } ;f_norm_arg : f_bad_arg | tIDENTIFIER { formal_argument(get_id($1)); $$ = $1; } ;f_arg_item : f_norm_arg { arg_var(get_id($1)); $$ = get_value($1); } | tLPAREN f_margs rparen { ID tid = internal_id(); arg_var(tid); $$ = dispatch1(mlhs_paren, $2); } ;f_arg : f_arg_item { $$ = rb_ary_new3(1, $1); } | f_arg ',' f_arg_item { $$ = rb_ary_push($1, $3); } ;f_kw : tLABEL arg_value { arg_var(formal_argument(get_id($1))); $$ = assignable($1, $2); $$ = rb_assoc_new($$, $2); } ;f_block_kw : tLABEL primary_value { arg_var(formal_argument(get_id($1))); $$ = assignable($1, $2); $$ = rb_assoc_new($$, $2); } ;f_block_kwarg : f_block_kw { $$ = rb_ary_new3(1, $1); } | f_block_kwarg ',' f_block_kw { $$ = rb_ary_push($1, $3); } ;f_kwarg : f_kw { $$ = rb_ary_new3(1, $1); } | f_kwarg ',' f_kw { $$ = rb_ary_push($1, $3); } ;kwrest_mark : tPOW | tDSTAR ;f_kwrest : kwrest_mark tIDENTIFIER { shadowing_lvar(get_id($2)); $$ = $2; } | kwrest_mark { $$ = internal_id(); } ;f_opt : tIDENTIFIER '=' arg_value { arg_var(formal_argument(get_id($1))); $$ = assignable($1, $3); $$ = rb_assoc_new($$, $3); } ;f_block_opt : tIDENTIFIER '=' primary_value { arg_var(formal_argument(get_id($1))); $$ = assignable($1, $3); $$ = rb_assoc_new($$, $3); } ;f_block_optarg : f_block_opt { $$ = rb_ary_new3(1, $1); } | f_block_optarg ',' f_block_opt { $$ = rb_ary_push($1, $3); } ;f_optarg : f_opt { $$ = rb_ary_new3(1, $1); } | f_optarg ',' f_opt { $$ = rb_ary_push($1, $3); } ;restarg_mark : '*' | tSTAR ;f_rest_arg : restarg_mark tIDENTIFIER { arg_var(shadowing_lvar(get_id($2))); $$ = dispatch1(rest_param, $2); } | restarg_mark { $$ = dispatch1(rest_param, Qnil); } ;blkarg_mark : '&' | tAMPER ;f_block_arg : blkarg_mark tIDENTIFIER { arg_var(shadowing_lvar(get_id($2))); $$ = dispatch1(blockarg, $2); } ;opt_f_block_arg : ',' f_block_arg { $$ = $2; } | none { $$ = Qundef; } ;singleton : var_ref { $$ = $1; } | '(' {lex_state = EXPR_BEG;} expr rparen { $$ = dispatch1(paren, $3); } ;assoc_list : none | assocs trailer { $$ = dispatch1(assoclist_from_args, $1); } ;assocs : assoc { $$ = rb_ary_new3(1, $1); } | assocs ',' assoc { $$ = rb_ary_push($1, $3); } ;assoc : arg_value tASSOC arg_value { $$ = dispatch2(assoc_new, $1, $3); } | tLABEL arg_value { $$ = dispatch2(assoc_new, $1, $2); } | tDSTAR arg_value { $$ = dispatch1(assoc_splat, $2); } ; ;operation : tIDENTIFIER | tCONSTANT | tFID ;operation2 : tIDENTIFIER | tCONSTANT | tFID | op ;operation3 : tIDENTIFIER | tFID | op ;dot_or_colon : '.' { $$ = $<val>1; } | tCOLON2 { $$ = $<val>1; } ;opt_terms : | terms ;opt_nl : | '\n' ;rparen : opt_nl ')' ;rbracket : opt_nl ']' ;trailer : | '\n' | ',' ;term : ';' {yyerrok;} | '\n' ;terms : term | terms ';' {yyerrok;} ;none : { $$ = Qundef; } ;%%#define yylvalstatic 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*);#define nextc() #define pushback(c) #define newtok() #define tokspace(n) #define tokadd(c) #define tok_hex(numlen) #define read_escape(flags,e) #define tokadd_escape(e) #define regx_options() #define tokadd_string(f,t,p,n,e) #define parse_string(n) #define tokaddmbc(c, enc) #define here_document(n) #define heredoc_identifier() #define heredoc_restore(n) #define whole_match_p(e,l,i) #define set_yylval_str(x) #define set_yylval_num(x) #define set_yylval_id(x) #define set_yylval_name(x) #define set_yylval_literal(x) #define set_yylval_node(x) #define yylval_id() #define ripper_flush(p) #define SIGN_EXTEND_CHAR(c) #define parser_encoding_name() #define parser_mbclen() #define parser_precise_mbclen() #define is_identchar(p,e,enc) #define parser_is_identchar() #define parser_isascii() static inttoken_info_get_column(struct parser_params *parser, const char *token){ int column = 1; const char *p, *pend = lex_p - strlen(token); for (p = lex_pbeg; p < pend; p++) { if (*p == '\t') { column = (((column - 1) / 8) + 1) * 8; } column++; } return column;}static inttoken_info_has_nonspaces(struct parser_params *parser, const char *token){ const char *p, *pend = lex_p - strlen(token); for (p = lex_pbeg; p < pend; p++) { if (*p != ' ' && *p != '\t') { return 1; } } return 0;}static voidtoken_info_push(struct parser_params *parser, const char *token){ token_info *ptinfo; if (!parser->parser_token_info_enabled) return; ptinfo = ALLOC(token_info); ptinfo->token = token; ptinfo->linenum = ruby_sourceline; ptinfo->column = token_info_get_column(parser, token); ptinfo->nonspc = token_info_has_nonspaces(parser, token); ptinfo->next = parser->parser_token_info; parser->parser_token_info = ptinfo;}static voidtoken_info_pop(struct parser_params *parser, const char *token){ int linenum; token_info *ptinfo = parser->parser_token_info; if (!ptinfo) return; parser->parser_token_info = ptinfo->next; if (token_info_get_column(parser, token) == ptinfo->column) { goto finish; } linenum = ruby_sourceline; if (linenum == ptinfo->linenum) { goto finish; } if (token_info_has_nonspaces(parser, token) || ptinfo->nonspc) { goto finish; } if (parser->parser_token_info_enabled) { rb_compile_warn(ruby_sourcefile, linenum, "mismatched indentations at '%s' with '%s' at %d", token, ptinfo->token, ptinfo->linenum); } finish: xfree(ptinfo);}static intparser_yyerror(struct parser_params *parser, const char *msg){ const int max_line_margin = 30; const char *p, *pe; char *buf; long len; int i; compile_error(PARSER_ARG "%s", msg); p = lex_p; while (lex_pbeg <= p) { if (*p == '\n') break; p--; } p++; pe = lex_p; while (pe < lex_pend) { if (*pe == '\n') break; pe++; } len = pe - p; if (len > 4) { char *p2; const char *pre = "", *post = ""; if (len > max_line_margin * 2 + 10) { if (lex_p - p > max_line_margin) { p = rb_enc_prev_char(p, lex_p - max_line_margin, pe, rb_enc_get(lex_lastline)); pre = "..."; } if (pe - lex_p > max_line_margin) { pe = rb_enc_prev_char(lex_p, lex_p + max_line_margin, pe, rb_enc_get(lex_lastline)); post = "..."; } len = pe - p; } buf = ALLOCA_N(char, len+2); MEMCPY(buf, p, char, len); buf[len] = '\0'; rb_compile_error_append("%s%s%s", pre, buf, post); i = (int)(lex_p - p); p2 = buf; pe = buf + len; while (p2 < pe) { if (*p2 != '\t') *p2 = ' '; p2++; } buf[i] = '^'; buf[i+1] = '\0'; rb_compile_error_append("%s%s", pre, buf); } return 0;}static void parser_prepare(struct parser_params *parser);static VALUEdebug_lines(const char *f){ ID script_lines; CONST_ID(script_lines, "SCRIPT_LINES__"); if (rb_const_defined_at(rb_cObject, script_lines)) { VALUE hash = rb_const_get_at(rb_cObject, script_lines); if (RB_TYPE_P(hash, T_HASH)) { VALUE fname = rb_external_str_new_with_enc(f, strlen(f), rb_filesystem_encoding()); VALUE lines = rb_ary_new(); rb_hash_aset(hash, fname, lines); return lines; } } return 0;}static VALUEcoverage(const char *f, int n){ VALUE coverages = rb_get_coverages(); if (RTEST(coverages) && RBASIC(coverages)->klass == 0) { VALUE fname = rb_external_str_new_with_enc(f, strlen(f), rb_filesystem_encoding()); VALUE lines = rb_ary_new2(n); int i; RBASIC(lines)->klass = 0; for (i = 0; i < n; i++) RARRAY_PTR(lines)[i] = Qnil; RARRAY(lines)->as.heap.len = n; rb_hash_aset(coverages, fname, lines); return lines; } return 0;}static inte_option_supplied(struct parser_params *parser){ return strcmp(ruby_sourcefile, "-e") == 0;}static VALUEyycompile0(VALUE arg){ int n; NODE *tree; struct parser_params *parser = (struct parser_params *)arg; if (!compile_for_eval && rb_safe_level() == 0) { ruby_debug_lines = debug_lines(ruby_sourcefile); if (ruby_debug_lines && ruby_sourceline > 0) { VALUE str = STR_NEW0(); n = ruby_sourceline; do { rb_ary_push(ruby_debug_lines, str); } while (--n); } if (!e_option_supplied(parser)) { ruby_coverage = coverage(ruby_sourcefile, ruby_sourceline); } } parser_prepare(parser); deferred_nodes = 0; parser->parser_token_info_enabled = !compile_for_eval && RTEST(ruby_verbose); if (RUBY_DTRACE_PARSE_BEGIN_ENABLED()) { RUBY_DTRACE_PARSE_BEGIN(parser->parser_ruby_sourcefile, parser->parser_ruby_sourceline); } n = yyparse((void*)parser); if (RUBY_DTRACE_PARSE_END_ENABLED()) { RUBY_DTRACE_PARSE_END(parser->parser_ruby_sourcefile, parser->parser_ruby_sourceline); } ruby_debug_lines = 0; ruby_coverage = 0; compile_for_eval = 0; lex_strterm = 0; lex_p = lex_pbeg = lex_pend = 0; lex_lastline = lex_nextline = 0; if (parser->nerr) { return 0; } tree = ruby_eval_tree; if (!tree) { tree = NEW_NIL(); } else if (ruby_eval_tree_begin) { tree->nd_body = NEW_PRELUDE(ruby_eval_tree_begin, tree->nd_body); } return (VALUE)tree;}static NODE*yycompile(struct parser_params *parser, const char *f, int line){ ruby_sourcefile = ruby_strdup(f); ruby_sourceline = line - 1; return (NODE *)rb_suppress_tracing(yycompile0, (VALUE)parser);}static rb_encoding *must_be_ascii_compatible(VALUE s){ rb_encoding *enc = rb_enc_get(s); if (!rb_enc_asciicompat(enc)) { rb_raise(rb_eArgError, "invalid source encoding"); } return enc;}static VALUElex_get_str(struct parser_params *parser, VALUE s){ char *beg, *end, *pend; rb_encoding *enc = must_be_ascii_compatible(s); beg = RSTRING_PTR(s); if (lex_gets_ptr) { if (RSTRING_LEN(s) == lex_gets_ptr) return Qnil; beg += lex_gets_ptr; } pend = RSTRING_PTR(s) + RSTRING_LEN(s); end = beg; while (end < pend) { if (*end++ == '\n') break; } lex_gets_ptr = end - RSTRING_PTR(s); return rb_enc_str_new(beg, end - beg, enc);}static VALUElex_getline(struct parser_params *parser){ VALUE line = (*parser->parser_lex_gets)(parser, parser->parser_lex_input); if (NIL_P(line)) return line; must_be_ascii_compatible(line); if (ruby_debug_lines) { rb_enc_associate(line, current_enc); rb_ary_push(ruby_debug_lines, line); } if (ruby_coverage) { rb_ary_push(ruby_coverage, Qnil); } return line;}static const rb_data_type_t parser_data_type;static NODE*parser_compile_string(volatile VALUE vparser, const char *f, VALUE s, int line){ struct parser_params *parser; NODE *node; TypedData_Get_Struct(vparser, struct parser_params, &parser_data_type, parser); lex_gets = lex_get_str; lex_gets_ptr = 0; lex_input = s; lex_pbeg = lex_p = lex_pend = 0; compile_for_eval = rb_parse_in_eval(); node = yycompile(parser, f, line); RB_GC_GUARD(vparser); return node;}NODE*rb_compile_string(const char *f, VALUE s, int line){ must_be_ascii_compatible(s); return parser_compile_string(rb_parser_new(), f, s, line);}NODE*rb_parser_compile_string(volatile VALUE vparser, const char *f, VALUE s, int line){ must_be_ascii_compatible(s); return parser_compile_string(vparser, f, s, line);}NODE*rb_compile_cstr(const char *f, const char *s, int len, int line){ VALUE str = rb_str_new(s, len); return parser_compile_string(rb_parser_new(), f, str, line);}NODE*rb_parser_compile_cstr(volatile VALUE vparser, const char *f, const char *s, int len, int line){ VALUE str = rb_str_new(s, len); return parser_compile_string(vparser, f, str, line);}static VALUElex_io_gets(struct parser_params *parser, VALUE io){ return rb_io_gets(io);}NODE*rb_compile_file(const char *f, VALUE file, int start){ VALUE volatile vparser = rb_parser_new(); return rb_parser_compile_file(vparser, f, file, start);}NODE*rb_parser_compile_file(volatile VALUE vparser, const char *f, VALUE file, int start){ struct parser_params *parser; NODE *node; TypedData_Get_Struct(vparser, struct parser_params, &parser_data_type, parser); lex_gets = lex_io_gets; lex_input = file; lex_pbeg = lex_p = lex_pend = 0; compile_for_eval = rb_parse_in_eval(); node = yycompile(parser, f, start); RB_GC_GUARD(vparser); return node;}#define STR_FUNC_ESCAPE#define STR_FUNC_EXPAND#define STR_FUNC_REGEXP#define STR_FUNC_QWORDS#define STR_FUNC_SYMBOL#define STR_FUNC_INDENTenum 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)};static VALUEparser_str_new(const char *p, long n, rb_encoding *enc, int func, rb_encoding *enc0){ VALUE str; str = rb_enc_str_new(p, n, enc); if (!(func & STR_FUNC_REGEXP) && rb_enc_asciicompat(enc)) { if (rb_enc_str_coderange(str) == ENC_CODERANGE_7BIT) { } else if (enc0 == rb_usascii_encoding() && enc != rb_utf8_encoding()) { rb_enc_associate(str, rb_ascii8bit_encoding()); } } return str;}#define lex_goto_eol(parser) #define lex_eol_p() #define peek(c) #define peek_n(c,n) static inline intparser_nextc(struct parser_params *parser){ int c; if (lex_p == lex_pend) { VALUE v = lex_nextline; lex_nextline = 0; if (!v) { if (parser->eofp) return -1; if (!lex_input || NIL_P(v = lex_getline(parser))) { parser->eofp = Qtrue; lex_goto_eol(parser); return -1; } } { if (heredoc_end > 0) { ruby_sourceline = heredoc_end; heredoc_end = 0; } ruby_sourceline++; parser->line_count++; lex_pbeg = lex_p = RSTRING_PTR(v); lex_pend = lex_p + RSTRING_LEN(v); ripper_flush(parser); lex_lastline = v; } } c = (unsigned char)*lex_p++; if (c == '\r' && peek('\n')) { lex_p++; c = '\n'; } return c;}static voidparser_pushback(struct parser_params *parser, int c){ if (c == -1) return; lex_p--; if (lex_p > lex_pbeg && lex_p[0] == '\n' && lex_p[-1] == '\r') { lex_p--; }}#define was_bol() #define tokfix() #define tok() #define toklen() #define toklast() static char*parser_newtok(struct parser_params *parser){ tokidx = 0; tokline = ruby_sourceline; if (!tokenbuf) { toksiz = 60; tokenbuf = ALLOC_N(char, 60); } if (toksiz > 4096) { toksiz = 60; REALLOC_N(tokenbuf, char, 60); } return tokenbuf;}static char *parser_tokspace(struct parser_params *parser, int n){ tokidx += n; if (tokidx >= toksiz) { do {toksiz *= 2;} while (toksiz < tokidx); REALLOC_N(tokenbuf, char, toksiz); } return &tokenbuf[tokidx-n];}static voidparser_tokadd(struct parser_params *parser, int c){ tokenbuf[tokidx++] = (char)c; if (tokidx >= toksiz) { toksiz *= 2; REALLOC_N(tokenbuf, char, toksiz); }}static intparser_tok_hex(struct parser_params *parser, size_t *numlen){ int c; c = scan_hex(lex_p, 2, numlen); if (!*numlen) { yyerror("invalid hex escape"); return 0; } lex_p += *numlen; return c;}#define tokcopy(n) static intparser_tokadd_utf8(struct parser_params *parser, rb_encoding **encp, int string_literal, int symbol_literal, int regexp_literal){ int codepoint; size_t numlen; if (regexp_literal) { tokadd('\\'); tokadd('u'); } if (peek('{')) { do { if (regexp_literal) { tokadd(*lex_p); } nextc(); codepoint = scan_hex(lex_p, 6, &numlen); if (numlen == 0) { yyerror("invalid Unicode escape"); return 0; } if (codepoint > 0x10ffff) { yyerror("invalid Unicode codepoint (too large)"); return 0; } lex_p += numlen; if (regexp_literal) { tokcopy((int)numlen); } else if (codepoint >= 0x80) { *encp = rb_utf8_encoding(); if (string_literal) tokaddmbc(codepoint, *encp); } else if (string_literal) { tokadd(codepoint); } } while (string_literal && (peek(' ') || peek('\t'))); if (!peek('}')) { yyerror("unterminated Unicode escape"); return 0; } if (regexp_literal) { tokadd('}'); } nextc(); } else { codepoint = scan_hex(lex_p, 4, &numlen); if (numlen < 4) { yyerror("invalid Unicode escape"); return 0; } lex_p += 4; if (regexp_literal) { tokcopy(4); } else if (codepoint >= 0x80) { *encp = rb_utf8_encoding(); if (string_literal) tokaddmbc(codepoint, *encp); } else if (string_literal) { tokadd(codepoint); } } return codepoint;}#define ESCAPE_CONTROL#define ESCAPE_METAstatic intparser_read_escape(struct parser_params *parser, int flags, rb_encoding **encp){ int c; size_t numlen; switch (c = nextc()) { case '\\': return c; case 'n': return '\n'; case 't': return '\t'; case 'r': return '\r'; case 'f': return '\f'; case 'v': return '\13'; case 'a': return '\007'; case 'e': return 033; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': pushback(c); c = scan_oct(lex_p, 3, &numlen); lex_p += numlen; return c; case 'x': c = tok_hex(&numlen); if (numlen == 0) return 0; return c; case 'b': return '\010'; case 's': return ' '; case 'M': if (flags & ESCAPE_META) goto eof; if ((c = nextc()) != '-') { pushback(c); goto eof; } if ((c = nextc()) == '\\') { if (peek('u')) goto eof; return read_escape(flags|ESCAPE_META, encp) | 0x80; } else if (c == -1 || !ISASCII(c)) goto eof; else { return ((c & 0xff) | 0x80); } case 'C': if ((c = nextc()) != '-') { pushback(c); goto eof; } case 'c': if (flags & ESCAPE_CONTROL) goto eof; if ((c = nextc())== '\\') { if (peek('u')) goto eof; c = read_escape(flags|ESCAPE_CONTROL, encp); } else if (c == '?') return 0177; else if (c == -1 || !ISASCII(c)) goto eof; return c & 0x9f; eof: case -1: yyerror("Invalid escape character syntax"); return '\0'; default: return c; }}static voidparser_tokaddmbc(struct parser_params *parser, int c, rb_encoding *enc){ int len = rb_enc_codelen(c, enc); rb_enc_mbcput(c, tokspace(len), enc);}static intparser_tokadd_escape(struct parser_params *parser, rb_encoding **encp){ int c; int flags = 0; size_t numlen; first: switch (c = nextc()) { case '\n': return 0; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': { ruby_scan_oct(--lex_p, 3, &numlen); if (numlen == 0) goto eof; lex_p += numlen; tokcopy((int)numlen + 1); } return 0; case 'x': { tok_hex(&numlen); if (numlen == 0) return -1; tokcopy((int)numlen + 2); } return 0; case 'M': if (flags & ESCAPE_META) goto eof; if ((c = nextc()) != '-') { pushback(c); goto eof; } tokcopy(3); flags |= ESCAPE_META; goto escaped; case 'C': if (flags & ESCAPE_CONTROL) goto eof; if ((c = nextc()) != '-') { pushback(c); goto eof; } tokcopy(3); goto escaped; case 'c': if (flags & ESCAPE_CONTROL) goto eof; tokcopy(2); flags |= ESCAPE_CONTROL; escaped: if ((c = nextc()) == '\\') { goto first; } else if (c == -1) goto eof; tokadd(c); return 0; eof: case -1: yyerror("Invalid escape character syntax"); return -1; default: tokadd('\\'); tokadd(c); } return 0;}static intparser_regx_options(struct parser_params *parser){ int kcode = 0; int kopt = 0; int options = 0; int c, opt, kc; newtok(); while (c = nextc(), ISALPHA(c)) { if (c == 'o') { options |= RE_OPTION_ONCE; } else if (rb_char_to_option_kcode(c, &opt, &kc)) { if (kc >= 0) { if (kc != rb_ascii8bit_encindex()) kcode = c; kopt = opt; } else { options |= opt; } } else { tokadd(c); } } options |= kopt; pushback(c); if (toklen()) { tokfix(); compile_error(PARSER_ARG "unknown regexp option%s - %s", toklen() > 1 ? "s" : "", tok()); } return options | RE_OPTION_ENCODING(kcode);}static voiddispose_string(VALUE str){ rb_str_free(str); rb_gc_force_recycle(str);}static intparser_tokadd_mbchar(struct parser_params *parser, int c){ int len = parser_precise_mbclen(); if (!MBCLEN_CHARFOUND_P(len)) { compile_error(PARSER_ARG "invalid multibyte char (%s)", parser_encoding_name()); return -1; } tokadd(c); lex_p += --len; if (len > 0) tokcopy(len); return c;}#define tokadd_mbchar(c) static inline intsimple_re_meta(int c){ switch (c) { case '$': case '*': case '+': case '.': case '?': case '^': case '|': case ')': case ']': case '}': case '>': return TRUE; default: return FALSE; }}static intparser_tokadd_string(struct parser_params *parser, int func, int term, int paren, long *nest, rb_encoding **encp){ int c; int has_nonascii = 0; rb_encoding *enc = *encp; char *errbuf = 0; static const char mixed_msg[] = "%s mixed within %s source";#define mixed_error(enc1, enc2) #define mixed_escape(beg, enc1, enc2) while ((c = nextc()) != -1) { if (paren && c == paren) { ++*nest; } else if (c == term) { if (!nest || !*nest) { pushback(c); break; } --*nest; } else if ((func & STR_FUNC_EXPAND) && c == '#' && lex_p < lex_pend) { int c2 = *lex_p; if (c2 == '$' || c2 == '@' || c2 == '{') { pushback(c); break; } } else if (c == '\\') { const char *beg = lex_p - 1; c = nextc(); switch (c) { case '\n': if (func & STR_FUNC_QWORDS) break; if (func & STR_FUNC_EXPAND) continue; tokadd('\\'); break; case '\\': if (func & STR_FUNC_ESCAPE) tokadd(c); break; case 'u': if ((func & STR_FUNC_EXPAND) == 0) { tokadd('\\'); break; } parser_tokadd_utf8(parser, &enc, 1, func & STR_FUNC_SYMBOL, func & STR_FUNC_REGEXP); if (has_nonascii && enc != *encp) { mixed_escape(beg, enc, *encp); } continue; default: if (c == -1) return -1; if (!ISASCII(c)) { if ((func & STR_FUNC_EXPAND) == 0) tokadd('\\'); goto non_ascii; } if (func & STR_FUNC_REGEXP) { if (c == term && !simple_re_meta(c)) { tokadd(c); continue; } pushback(c); if ((c = tokadd_escape(&enc)) < 0) return -1; if (has_nonascii && enc != *encp) { mixed_escape(beg, enc, *encp); } continue; } else if (func & STR_FUNC_EXPAND) { pushback(c); if (func & STR_FUNC_ESCAPE) tokadd('\\'); c = read_escape(0, &enc); } else if ((func & STR_FUNC_QWORDS) && ISSPACE(c)) { } else if (c != term && !(paren && c == paren)) { tokadd('\\'); pushback(c); continue; } } } else if (!parser_isascii()) { non_ascii: has_nonascii = 1; if (enc != *encp) { mixed_error(enc, *encp); continue; } if (tokadd_mbchar(c) == -1) return -1; continue; } else if ((func & STR_FUNC_QWORDS) && ISSPACE(c)) { pushback(c); break; } if (c & 0x80) { has_nonascii = 1; if (enc != *encp) { mixed_error(enc, *encp); continue; } } tokadd(c); } *encp = enc; return c;}#define NEW_STRTERM(func, term, paren) #define flush_string_content(enc) RUBY_FUNC_EXPORTED const unsigned int ruby_global_name_punct_bits[(0x7e - 0x20 + 31) / 32];#define BIT(c, idx) #define SPECIAL_PUNCT(idx) const unsigned int ruby_global_name_punct_bits[] = { SPECIAL_PUNCT(0), SPECIAL_PUNCT(1), SPECIAL_PUNCT(2),};static inline intis_global_name_punct(const char c){ if (c <= 0x20 || 0x7e < c) return 0; return (ruby_global_name_punct_bits[(c - 0x20) / 32] >> (c % 32)) & 1;}static intparser_peek_variable_name(struct parser_params *parser){ int c; const char *p = lex_p; if (p + 1 >= lex_pend) return 0; c = *p++; switch (c) { case '$': if ((c = *p) == '-') { if (++p >= lex_pend) return 0; c = *p; } else if (is_global_name_punct(c) || ISDIGIT(c)) { return tSTRING_DVAR; } break; case '@': if ((c = *p) == '@') { if (++p >= lex_pend) return 0; c = *p; } break; case '{': lex_p = p; command_start = TRUE; return tSTRING_DBEG; default: return 0; } if (!ISASCII(c) || c == '_' || ISALPHA(c)) return tSTRING_DVAR; return 0;}static intparser_parse_string(struct parser_params *parser, NODE *quote){ int func = (int)quote->nd_func; int term = nd_term(quote); int paren = nd_paren(quote); int c, space = 0; rb_encoding *enc = current_enc; if (func == -1) return tSTRING_END; c = nextc(); if ((func & STR_FUNC_QWORDS) && ISSPACE(c)) { do {c = nextc();} while (ISSPACE(c)); space = 1; } if (c == term && !quote->nd_nest) { if (func & STR_FUNC_QWORDS) { quote->nd_func = -1; return ' '; } if (!(func & STR_FUNC_REGEXP)) return tSTRING_END; set_yylval_num(regx_options()); return tREGEXP_END; } if (space) { pushback(c); return ' '; } newtok(); if ((func & STR_FUNC_EXPAND) && c == '#') { int t = parser_peek_variable_name(parser); if (t) return t; tokadd('#'); c = nextc(); } pushback(c); if (tokadd_string(func, term, paren, &quote->nd_nest, &enc) == -1) { ruby_sourceline = nd_line(quote); if (func & STR_FUNC_REGEXP) { if (parser->eofp) compile_error(PARSER_ARG "unterminated regexp meets end of file"); return tREGEXP_END; } else { if (parser->eofp) compile_error(PARSER_ARG "unterminated string meets end of file"); return tSTRING_END; } } tokfix(); set_yylval_str(STR_NEW3(tok(), toklen(), enc, func)); flush_string_content(enc); return tSTRING_CONTENT;}static intparser_heredoc_identifier(struct parser_params *parser){ int c = nextc(), term, func = 0; long len; if (c == '-') { c = nextc(); func = STR_FUNC_INDENT; } switch (c) { case '\'': func |= str_squote; goto quoted; case '"': func |= str_dquote; goto quoted; case '`': func |= str_xquote; quoted: newtok(); tokadd(func); term = c; while ((c = nextc()) != -1 && c != term) { if (tokadd_mbchar(c) == -1) return 0; } if (c == -1) { compile_error(PARSER_ARG "unterminated here document identifier"); return 0; } break; default: if (!parser_is_identchar()) { pushback(c); if (func & STR_FUNC_INDENT) { pushback('-'); } return 0; } newtok(); term = '"'; tokadd(func |= str_dquote); do { if (tokadd_mbchar(c) == -1) return 0; } while ((c = nextc()) != -1 && parser_is_identchar()); pushback(c); break; } tokfix(); len = lex_p - lex_pbeg; lex_goto_eol(parser); lex_strterm = rb_node_newnode(NODE_HEREDOC, STR_NEW(tok(), toklen()), len, lex_lastline); nd_set_line(lex_strterm, ruby_sourceline); ripper_flush(parser); return term == '`' ? tXSTRING_BEG : tSTRING_BEG;}static voidparser_heredoc_restore(struct parser_params *parser, NODE *here){ VALUE line; line = here->nd_orig; lex_lastline = line; lex_pbeg = RSTRING_PTR(line); lex_pend = lex_pbeg + RSTRING_LEN(line); lex_p = lex_pbeg + here->nd_nth; heredoc_end = ruby_sourceline; ruby_sourceline = nd_line(here); dispose_string(here->nd_lit); rb_gc_force_recycle((VALUE)here); ripper_flush(parser);}static intparser_whole_match_p(struct parser_params *parser, const char *eos, long len, int indent){ const char *p = lex_pbeg; long n; if (indent) { while (*p && ISSPACE(*p)) p++; } n = lex_pend - (p + len); if (n < 0 || (n > 0 && p[len] != '\n' && p[len] != '\r')) return FALSE; return strncmp(eos, p, len) == 0;}#define dispatch_heredoc_end() static intparser_here_document(struct parser_params *parser, NODE *here){ int c, func, indent = 0; const char *eos, *p, *pend; long len; VALUE str = 0; rb_encoding *enc = current_enc; eos = RSTRING_PTR(here->nd_lit); len = RSTRING_LEN(here->nd_lit) - 1; indent = (func = *eos++) & STR_FUNC_INDENT; if ((c = nextc()) == -1) { error: compile_error(PARSER_ARG "can't find string \"%s\" anywhere before EOF", eos); restore: heredoc_restore(lex_strterm); lex_strterm = 0; return 0; } if (was_bol() && whole_match_p(eos, len, indent)) { dispatch_heredoc_end(); heredoc_restore(lex_strterm); return tSTRING_END; } if (!(func & STR_FUNC_EXPAND)) { do { p = RSTRING_PTR(lex_lastline); pend = lex_pend; if (pend > p) { switch (pend[-1]) { case '\n': if (--pend == p || pend[-1] != '\r') { pend++; break; } case '\r': --pend; } } if (str) rb_str_cat(str, p, pend - p); else str = STR_NEW(p, pend - p); if (pend < lex_pend) rb_str_cat(str, "\n", 1); lex_goto_eol(parser); if (nextc() == -1) { if (str) dispose_string(str); goto error; } } while (!whole_match_p(eos, len, indent)); } else { newtok(); if (c == '#') { int t = parser_peek_variable_name(parser); if (t) return t; tokadd('#'); c = nextc(); } do { pushback(c); if ((c = tokadd_string(func, '\n', 0, NULL, &enc)) == -1) { if (parser->eofp) goto error; goto restore; } if (c != '\n') { set_yylval_str(STR_NEW3(tok(), toklen(), enc, func)); flush_string_content(enc); return tSTRING_CONTENT; } tokadd(nextc()); if ((c = nextc()) == -1) goto error; } while (!whole_match_p(eos, len, indent)); str = STR_NEW3(tok(), toklen(), enc, func); } dispatch_heredoc_end(); heredoc_restore(lex_strterm); lex_strterm = NEW_STRTERM(-1, 0, 0); set_yylval_str(str); return tSTRING_CONTENT;}static voidarg_ambiguous_gen(struct parser_params *parser){ rb_warning0("ambiguous first argument; put parentheses or even spaces");}#define arg_ambiguous() static IDformal_argument_gen(struct parser_params *parser, ID lhs){ if (!is_local_id(lhs)) yyerror("formal argument must be local variable"); shadowing_lvar(lhs); return lhs;}static intlvar_defined_gen(struct parser_params *parser, ID id){ return (dyna_in_block() && dvar_defined_get(id)) || local_id(id);}static longparser_encode_length(struct parser_params *parser, const char *name, long len){ long nlen; if (len > 5 && name[nlen = len - 5] == '-') { if (rb_memcicmp(name + nlen + 1, "unix", 4) == 0) return nlen; } if (len > 4 && name[nlen = len - 4] == '-') { if (rb_memcicmp(name + nlen + 1, "dos", 3) == 0) return nlen; if (rb_memcicmp(name + nlen + 1, "mac", 3) == 0 && !(len == 8 && rb_memcicmp(name, "utf8-mac", len) == 0)) return nlen; } return len;}static voidparser_set_encode(struct parser_params *parser, const char *name){ int idx = rb_enc_find_index(name); rb_encoding *enc; VALUE excargs[3]; if (idx < 0) { excargs[1] = rb_sprintf("unknown encoding name: %s", name); error: excargs[0] = rb_eArgError; excargs[2] = rb_make_backtrace(); rb_ary_unshift(excargs[2], rb_sprintf("%s:%d", ruby_sourcefile, ruby_sourceline)); rb_exc_raise(rb_make_exception(3, excargs)); } enc = rb_enc_from_index(idx); if (!rb_enc_asciicompat(enc)) { excargs[1] = rb_sprintf("%s is not ASCII compatible", rb_enc_name(enc)); goto error; } parser->enc = enc; if (ruby_debug_lines) { long i, n = RARRAY_LEN(ruby_debug_lines); const VALUE *p = RARRAY_PTR(ruby_debug_lines); for (i = 0; i < n; ++i) { rb_enc_associate_index(*p, idx); } }}static intcomment_at_top(struct parser_params *parser){ const char *p = lex_pbeg, *pend = lex_p - 1; if (parser->line_count != (parser->has_shebang ? 2 : 1)) return 0; while (p < pend) { if (!ISSPACE(*p)) return 0; p++; } return 1;}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);static voidmagic_comment_encoding(struct parser_params *parser, const char *name, const char *val){ if (!comment_at_top(parser)) { return; } parser_set_encode(parser, val);}static voidparser_set_token_info(struct parser_params *parser, const char *name, const char *val){ int *p = &parser->parser_token_info_enabled; switch (*val) { case 't': case 'T': if (strcasecmp(val, "true") == 0) { *p = TRUE; return; } break; case 'f': case 'F': if (strcasecmp(val, "false") == 0) { *p = FALSE; return; } break; } rb_compile_warning(ruby_sourcefile, ruby_sourceline, "invalid value for %s: %s", name, val);}struct magic_comment { const char *name; rb_magic_comment_setter_t func; rb_magic_comment_length_t length;};static const struct magic_comment magic_comments[] = { {"coding", magic_comment_encoding, parser_encode_length}, {"encoding", magic_comment_encoding, parser_encode_length}, {"warn_indent", parser_set_token_info},};static const char *magic_comment_marker(const char *str, long len){ long i = 2; while (i < len) { switch (str[i]) { case '-': if (str[i-1] == '*' && str[i-2] == '-') { return str + i + 1; } i += 2; break; case '*': if (i + 1 >= len) return 0; if (str[i+1] != '-') { i += 4; } else if (str[i-1] != '-') { i += 2; } else { return str + i + 2; } break; default: i += 3; break; } } return 0;}static intparser_magic_comment(struct parser_params *parser, const char *str, long len){ VALUE name = 0, val = 0; const char *beg, *end, *vbeg, *vend;#define str_copy(_s, _p, _n) if (len <= 7) return FALSE; if (!(beg = magic_comment_marker(str, len))) return FALSE; if (!(end = magic_comment_marker(beg, str + len - beg))) return FALSE; str = beg; len = end - beg - 3; while (len > 0) { const struct magic_comment *p = magic_comments; char *s; int i; long n = 0; for (; len > 0 && *str; str++, --len) { switch (*str) { case '\'': case '"': case ':': case ';': continue; } if (!ISSPACE(*str)) break; } for (beg = str; len > 0; str++, --len) { switch (*str) { case '\'': case '"': case ':': case ';': break; default: if (ISSPACE(*str)) break; continue; } break; } for (end = str; len > 0 && ISSPACE(*str); str++, --len); if (!len) break; if (*str != ':') continue; do str++; while (--len > 0 && ISSPACE(*str)); if (!len) break; if (*str == '"') { for (vbeg = ++str; --len > 0 && *str != '"'; str++) { if (*str == '\\') { --len; ++str; } } vend = str; if (len) { --len; ++str; } } else { for (vbeg = str; len > 0 && *str != '"' && *str != ';' && !ISSPACE(*str); --len, str++); vend = str; } while (len > 0 && (*str == ';' || ISSPACE(*str))) --len, str++; n = end - beg; str_copy(name, beg, n); s = RSTRING_PTR(name); for (i = 0; i < n; ++i) { if (s[i] == '-') s[i] = '_'; } do { if (STRNCASECMP(p->name, s, n) == 0) { n = vend - vbeg; if (p->length) { n = (*p->length)(parser, vbeg, n); } str_copy(val, vbeg, n); (*p->func)(parser, s, RSTRING_PTR(val)); break; } } while (++p < magic_comments + numberof(magic_comments)); } return TRUE;}static voidset_file_encoding(struct parser_params *parser, const char *str, const char *send){ int sep = 0; const char *beg = str; VALUE s; for (;;) { if (send - str <= 6) return; switch (str[6]) { case 'C': case 'c': str += 6; continue; case 'O': case 'o': str += 5; continue; case 'D': case 'd': str += 4; continue; case 'I': case 'i': str += 3; continue; case 'N': case 'n': str += 2; continue; case 'G': case 'g': str += 1; continue; case '=': case ':': sep = 1; str += 6; break; default: str += 6; if (ISSPACE(*str)) break; continue; } if (STRNCASECMP(str-6, "coding", 6) == 0) break; } for (;;) { do { if (++str >= send) return; } while (ISSPACE(*str)); if (sep) break; if (*str != '=' && *str != ':') return; sep = 1; str++; } beg = str; while ((*str == '-' || *str == '_' || ISALNUM(*str)) && ++str < send); s = rb_str_new(beg, parser_encode_length(parser, beg, str - beg)); parser_set_encode(parser, RSTRING_PTR(s)); rb_str_resize(s, 0);}static voidparser_prepare(struct parser_params *parser){ int c = nextc(); switch (c) { case '#': if (peek('!')) parser->has_shebang = 1; break; case 0xef: if (lex_pend - lex_p >= 2 && (unsigned char)lex_p[0] == 0xbb && (unsigned char)lex_p[1] == 0xbf) { parser->enc = rb_utf8_encoding(); lex_p += 2; lex_pbeg = lex_p; return; } break; case EOF: return; } pushback(c); parser->enc = rb_enc_get(lex_lastline);}#define IS_ARG() #define IS_END() #define IS_BEG() #define IS_SPCARG(c) #define IS_LABEL_POSSIBLE() #define IS_LABEL_SUFFIX(n) #define IS_AFTER_OPERATOR() #define ambiguous_operator(op, syn) #define warn_balanced(op, syn) static intparser_yylex(struct parser_params *parser){ register int c; int space_seen = 0; int cmd_state; enum lex_state_e last_state; rb_encoding *enc; int mb; if (lex_strterm) { int token; if (nd_type(lex_strterm) == NODE_HEREDOC) { token = here_document(lex_strterm); if (token == tSTRING_END) { lex_strterm = 0; lex_state = EXPR_END; } } else { token = parse_string(lex_strterm); if (token == tSTRING_END || token == tREGEXP_END) { rb_gc_force_recycle((VALUE)lex_strterm); lex_strterm = 0; lex_state = EXPR_END; } } return token; } cmd_state = command_start; command_start = FALSE; retry: last_state = lex_state; switch (c = nextc()) { case '\0': case '\004': case '\032': case -1: return 0; case ' ': case '\t': case '\f': case '\r': case '\13': space_seen = 1; goto retry; case '#': if (!parser_magic_comment(parser, lex_p, lex_pend - lex_p)) { if (comment_at_top(parser)) { set_file_encoding(parser, lex_p, lex_pend); } } lex_p = lex_pend; case '\n': if (IS_lex_state(EXPR_BEG | EXPR_VALUE | EXPR_CLASS | EXPR_FNAME | EXPR_DOT)) { goto retry; } while ((c = nextc())) { switch (c) { case ' ': case '\t': case '\f': case '\r': case '\13': space_seen = 1; break; case '.': { if ((c = nextc()) != '.') { pushback(c); pushback('.'); goto retry; } } default: --ruby_sourceline; lex_nextline = lex_lastline; case -1: lex_goto_eol(parser); goto normal_newline; } } normal_newline: command_start = TRUE; lex_state = EXPR_BEG; return '\n'; case '*': if ((c = nextc()) == '*') { if ((c = nextc()) == '=') { set_yylval_id(tPOW); lex_state = EXPR_BEG; return tOP_ASGN; } pushback(c); if (IS_SPCARG(c)) { rb_warning0("`**' interpreted as argument prefix"); c = tDSTAR; } else if (IS_BEG()) { c = tDSTAR; } else { warn_balanced("**", "argument prefix"); c = tPOW; } } else { if (c == '=') { set_yylval_id('*'); lex_state = EXPR_BEG; return tOP_ASGN; } pushback(c); if (IS_SPCARG(c)) { rb_warning0("`*' interpreted as argument prefix"); c = tSTAR; } else if (IS_BEG()) { c = tSTAR; } else { warn_balanced("*", "argument prefix"); c = '*'; } } lex_state = IS_AFTER_OPERATOR() ? EXPR_ARG : EXPR_BEG; return c; case '!': c = nextc(); if (IS_AFTER_OPERATOR()) { lex_state = EXPR_ARG; if (c == '@') { return '!'; } } else { lex_state = EXPR_BEG; } if (c == '=') { return tNEQ; } if (c == '~') { return tNMATCH; } pushback(c); return '!'; case '=': if (was_bol()) { if (strncmp(lex_p, "begin", 5) == 0 && ISSPACE(lex_p[5])) { for (;;) { lex_goto_eol(parser); c = nextc(); if (c == -1) { compile_error(PARSER_ARG "embedded document meets end of file"); return 0; } if (c != '=') continue; if (strncmp(lex_p, "end", 3) == 0 && (lex_p + 3 == lex_pend || ISSPACE(lex_p[3]))) { break; } } lex_goto_eol(parser); goto retry; } } lex_state = IS_AFTER_OPERATOR() ? EXPR_ARG : EXPR_BEG; if ((c = nextc()) == '=') { if ((c = nextc()) == '=') { return tEQQ; } pushback(c); return tEQ; } if (c == '~') { return tMATCH; } else if (c == '>') { return tASSOC; } pushback(c); return '='; case '<': last_state = lex_state; c = nextc(); if (c == '<' && !IS_lex_state(EXPR_DOT | EXPR_CLASS) && !IS_END() && (!IS_ARG() || space_seen)) { int token = heredoc_identifier(); if (token) return token; } if (IS_AFTER_OPERATOR()) { lex_state = EXPR_ARG; } else { if (IS_lex_state(EXPR_CLASS)) command_start = TRUE; lex_state = EXPR_BEG; } if (c == '=') { if ((c = nextc()) == '>') { return tCMP; } pushback(c); return tLEQ; } if (c == '<') { if ((c = nextc()) == '=') { set_yylval_id(tLSHFT); lex_state = EXPR_BEG; return tOP_ASGN; } pushback(c); warn_balanced("<<", "here document"); return tLSHFT; } pushback(c); return '<'; case '>': lex_state = IS_AFTER_OPERATOR() ? EXPR_ARG : EXPR_BEG; if ((c = nextc()) == '=') { return tGEQ; } if (c == '>') { if ((c = nextc()) == '=') { set_yylval_id(tRSHFT); lex_state = EXPR_BEG; return tOP_ASGN; } pushback(c); return tRSHFT; } pushback(c); return '>'; case '"': lex_strterm = NEW_STRTERM(str_dquote, '"', 0); return tSTRING_BEG; case '`': if (IS_lex_state(EXPR_FNAME)) { lex_state = EXPR_ENDFN; return c; } if (IS_lex_state(EXPR_DOT)) { if (cmd_state) lex_state = EXPR_CMDARG; else lex_state = EXPR_ARG; return c; } lex_strterm = NEW_STRTERM(str_xquote, '`', 0); return tXSTRING_BEG; case '\'': lex_strterm = NEW_STRTERM(str_squote, '\'', 0); return tSTRING_BEG; case '?': if (IS_END()) { lex_state = EXPR_VALUE; return '?'; } c = nextc(); if (c == -1) { compile_error(PARSER_ARG "incomplete character syntax"); return 0; } if (rb_enc_isspace(c, current_enc)) { if (!IS_ARG()) { int c2 = 0; switch (c) { case ' ': c2 = 's'; break; case '\n': c2 = 'n'; break; case '\t': c2 = 't'; break; case '\v': c2 = 'v'; break; case '\r': c2 = 'r'; break; case '\f': c2 = 'f'; break; } if (c2) { rb_warnI("invalid character syntax; use ?\\%c", c2); } } ternary: pushback(c); lex_state = EXPR_VALUE; return '?'; } newtok(); enc = current_enc; if (!parser_isascii()) { if (tokadd_mbchar(c) == -1) return 0; } else if ((rb_enc_isalnum(c, current_enc) || c == '_') && lex_p < lex_pend && is_identchar(lex_p, lex_pend, current_enc)) { goto ternary; } else if (c == '\\') { if (peek('u')) { nextc(); c = parser_tokadd_utf8(parser, &enc, 0, 0, 0); if (0x80 <= c) { tokaddmbc(c, enc); } else { tokadd(c); } } else if (!lex_eol_p() && !(c = *lex_p, ISASCII(c))) { nextc(); if (tokadd_mbchar(c) == -1) return 0; } else { c = read_escape(0, &enc); tokadd(c); } } else { tokadd(c); } tokfix(); set_yylval_str(STR_NEW3(tok(), toklen(), enc, 0)); lex_state = EXPR_END; return tCHAR; case '&': if ((c = nextc()) == '&') { lex_state = EXPR_BEG; if ((c = nextc()) == '=') { set_yylval_id(tANDOP); lex_state = EXPR_BEG; return tOP_ASGN; } pushback(c); return tANDOP; } else if (c == '=') { set_yylval_id('&'); lex_state = EXPR_BEG; return tOP_ASGN; } pushback(c); if (IS_SPCARG(c)) { rb_warning0("`&' interpreted as argument prefix"); c = tAMPER; } else if (IS_BEG()) { c = tAMPER; } else { warn_balanced("&", "argument prefix"); c = '&'; } lex_state = IS_AFTER_OPERATOR() ? EXPR_ARG : EXPR_BEG; return c; case '|': if ((c = nextc()) == '|') { lex_state = EXPR_BEG; if ((c = nextc()) == '=') { set_yylval_id(tOROP); lex_state = EXPR_BEG; return tOP_ASGN; } pushback(c); return tOROP; } if (c == '=') { set_yylval_id('|'); lex_state = EXPR_BEG; return tOP_ASGN; } lex_state = IS_AFTER_OPERATOR() ? EXPR_ARG : EXPR_BEG; pushback(c); return '|'; case '+': c = nextc(); if (IS_AFTER_OPERATOR()) { lex_state = EXPR_ARG; if (c == '@') { return tUPLUS; } pushback(c); return '+'; } if (c == '=') { set_yylval_id('+'); lex_state = EXPR_BEG; return tOP_ASGN; } if (IS_BEG() || (IS_SPCARG(c) && arg_ambiguous())) { lex_state = EXPR_BEG; pushback(c); if (c != -1 && ISDIGIT(c)) { c = '+'; goto start_num; } return tUPLUS; } lex_state = EXPR_BEG; pushback(c); warn_balanced("+", "unary operator"); return '+'; case '-': c = nextc(); if (IS_AFTER_OPERATOR()) { lex_state = EXPR_ARG; if (c == '@') { return tUMINUS; } pushback(c); return '-'; } if (c == '=') { set_yylval_id('-'); lex_state = EXPR_BEG; return tOP_ASGN; } if (c == '>') { lex_state = EXPR_ENDFN; return tLAMBDA; } if (IS_BEG() || (IS_SPCARG(c) && arg_ambiguous())) { lex_state = EXPR_BEG; pushback(c); if (c != -1 && ISDIGIT(c)) { return tUMINUS_NUM; } return tUMINUS; } lex_state = EXPR_BEG; pushback(c); warn_balanced("-", "unary operator"); return '-'; case '.': lex_state = EXPR_BEG; if ((c = nextc()) == '.') { if ((c = nextc()) == '.') { return tDOT3; } pushback(c); return tDOT2; } pushback(c); if (c != -1 && ISDIGIT(c)) { yyerror("no .<digit> floating literal anymore; put 0 before dot"); } lex_state = EXPR_DOT; return '.'; start_num: case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': { int is_float, seen_point, seen_e, nondigit; is_float = seen_point = seen_e = nondigit = 0; lex_state = EXPR_END; newtok(); if (c == '-' || c == '+') { tokadd(c); c = nextc(); } if (c == '0') {#define no_digits() int start = toklen(); c = nextc(); if (c == 'x' || c == 'X') { c = nextc(); if (c != -1 && ISXDIGIT(c)) { do { if (c == '_') { if (nondigit) break; nondigit = c; continue; } if (!ISXDIGIT(c)) break; nondigit = 0; tokadd(c); } while ((c = nextc()) != -1); } pushback(c); tokfix(); if (toklen() == start) { no_digits(); } else if (nondigit) goto trailing_uc; set_yylval_literal(rb_cstr_to_inum(tok(), 16, FALSE)); return tINTEGER; } if (c == 'b' || c == 'B') { c = nextc(); if (c == '0' || c == '1') { do { if (c == '_') { if (nondigit) break; nondigit = c; continue; } if (c != '0' && c != '1') break; nondigit = 0; tokadd(c); } while ((c = nextc()) != -1); } pushback(c); tokfix(); if (toklen() == start) { no_digits(); } else if (nondigit) goto trailing_uc; set_yylval_literal(rb_cstr_to_inum(tok(), 2, FALSE)); return tINTEGER; } if (c == 'd' || c == 'D') { c = nextc(); if (c != -1 && ISDIGIT(c)) { do { if (c == '_') { if (nondigit) break; nondigit = c; continue; } if (!ISDIGIT(c)) break; nondigit = 0; tokadd(c); } while ((c = nextc()) != -1); } pushback(c); tokfix(); if (toklen() == start) { no_digits(); } else if (nondigit) goto trailing_uc; set_yylval_literal(rb_cstr_to_inum(tok(), 10, FALSE)); return tINTEGER; } if (c == '_') { goto octal_number; } if (c == 'o' || c == 'O') { c = nextc(); if (c == -1 || c == '_' || !ISDIGIT(c)) { no_digits(); } } if (c >= '0' && c <= '7') { octal_number: do { if (c == '_') { if (nondigit) break; nondigit = c; continue; } if (c < '0' || c > '9') break; if (c > '7') goto invalid_octal; nondigit = 0; tokadd(c); } while ((c = nextc()) != -1); if (toklen() > start) { pushback(c); tokfix(); if (nondigit) goto trailing_uc; set_yylval_literal(rb_cstr_to_inum(tok(), 8, FALSE)); return tINTEGER; } if (nondigit) { pushback(c); goto trailing_uc; } } if (c > '7' && c <= '9') { invalid_octal: yyerror("Invalid octal digit"); } else if (c == '.' || c == 'e' || c == 'E') { tokadd('0'); } else { pushback(c); set_yylval_literal(INT2FIX(0)); return tINTEGER; } } for (;;) { switch (c) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': nondigit = 0; tokadd(c); break; case '.': if (nondigit) goto trailing_uc; if (seen_point || seen_e) { goto decode_num; } else { int c0 = nextc(); if (c0 == -1 || !ISDIGIT(c0)) { pushback(c0); goto decode_num; } c = c0; } tokadd('.'); tokadd(c); is_float++; seen_point++; nondigit = 0; break; case 'e': case 'E': if (nondigit) { pushback(c); c = nondigit; goto decode_num; } if (seen_e) { goto decode_num; } tokadd(c); seen_e++; is_float++; nondigit = c; c = nextc(); if (c != '-' && c != '+') continue; tokadd(c); nondigit = c; break; case '_': if (nondigit) goto decode_num; nondigit = c; break; default: goto decode_num; } c = nextc(); } decode_num: pushback(c); if (nondigit) { char tmp[30]; trailing_uc: snprintf(tmp, sizeof(tmp), "trailing `%c' in number", nondigit); yyerror(tmp); } tokfix(); if (is_float) { double d = strtod(tok(), 0); if (errno == ERANGE) { rb_warningS("Float %s out of range", tok()); errno = 0; } set_yylval_literal(DBL2NUM(d)); return tFLOAT; } set_yylval_literal(rb_cstr_to_inum(tok(), 10, FALSE)); return tINTEGER; } case ')': case '] __pad16__

Definition at line 7572 of file ripper.y.

case __pad17__

Definition at line 7574 of file ripper.y.

case __pad18__

Definition at line 7586 of file ripper.y.

case __pad19__

Definition at line 7617 of file ripper.y.

top_stmts __pad1__

Definition at line 890 of file ripper.y.

case __pad20__

Definition at line 7637 of file ripper.y.

__pad21__

Definition at line 7646 of file ripper.y.

__pad22__

Definition at line 7648 of file ripper.y.

case __pad23__

Definition at line 7652 of file ripper.y.

top_stmt __pad2__

Definition at line 921 of file ripper.y.

compstmt __pad3__

Definition at line 976 of file ripper.y.

stmts __pad4__

Definition at line 987 of file ripper.y.

stmt_or_begin __pad5__

Definition at line 1018 of file ripper.y.

command_asgn __pad6__

Definition at line 1032 of file ripper.y.

expr __pad7__

Definition at line 1284 of file ripper.y.

expr_value __pad8__

Definition at line 1321 of file ripper.y.

command_call __pad9__

Definition at line 1324 of file ripper.y.

arg

Definition at line 1312 of file ripper.y.

Referenced by apply2files(), call_asynchronous(), chown_internal(), chunk_i(), connect_blocking(), detach_process_watcher(), econv_set_replacement(), enc_names_i(), eval_string_from_file_helper(), EVENTSINK_Invoke(), exc_initialize(), exec_recursive(), fcntl(), fnmatch_brace(), glob_brace(), gzfile_wrap(), hash_aset(), hash_foreach_iter(), Init_bigdecimal(), init_ext_call(), init_golf(), inspect_enumerator(), io_flush_buffer_sync(), ip_ruby_cmd(), ip_ruby_eval(), iterate_check_method(), iterate_method(), kwmerge_ii(), lazy_zip_func(), mark_const_entry_i(), mark_entry(), mark_key(), mark_keyvalue(), mark_method_entry_i(), marshal_dump(), marshal_load(), match_inspect_name_iter(), new_wrap(), nogvl_getaddrinfo(), nogvl_getnameinfo(), nogvl_ioctl(), NOINSERT_UPDATE_CALLBACK(), nucomp_s_polar(), obj_ivar_each(), onig_foreach_name(), onig_scan_env_set_error_string(), onigenc_apply_all_case_fold_with_map(), onigenc_ascii_apply_all_case_fold(), ossl_asn1_decode0(), ossl_dh_initialize(), ossl_dsa_initialize(), ossl_pkcs12_initialize(), ossl_pkcs7_initialize(), ossl_rsa_initialize(), ossl_sslctx_set_session_cache_mode(), ossl_sslctx_set_session_cache_size(), ossl_x509_initialize(), ossl_x509crl_initialize(), ossl_x509name_initialize(), ossl_x509req_initialize(), path_initialize(), proc_options(), range_each_func(), rb_ary_aref(), rb_check_funcall_with_hook(), rb_dlcfunc_call(), rb_f_integer(), rb_glob2(), rb_hash_update_callback(), rb_hash_update_func_callback(), rb_io_ioctl(), rb_reg_s_union(), rb_str_format(), rb_suppress_tracing(), rb_syserr_new(), rb_vm_call_cfunc(), rb_w32_open(), rb_w32_uopen(), rb_w32_wopen(), rb_waitpid_blocking(), recursive_join(), recvfrom_blocking(), reg_named_capture_assign_gen(), reg_named_capture_assign_iter(), rsock_send_blocking(), rsock_sendto_blocking(), ruby_brace_expand(), ruby_brace_glob0(), ruby_each_words(), ruby_set_argv(), search_convpath_i(), set_rawmode(), set_unblock_function(), setup_narg(), slicebefore_i(), st_foreach(), st_foreach_check(), st_update(), step_i(), strio_first(), sym_step_i(), time_init_1(), trans_open_i(), udp_init(), utime_internal(), vm_yield_with_cfunc(), w_obj_each(), w_object(), w_symbol(), wgetch_func(), and wgetstr_func().

top_stmt bodystmt

Definition at line 921 of file ripper.y.

Referenced by yyparse().

return c

Definition at line 7583 of file ripper.y.

Referenced by add_activated_refinement(), add_char_opt_map_info(), add_ctype_to_cc(), argf_readbyte(), big_sparse_p(), BigDecimal_abs(), BigDecimal_add(), BigDecimal_add2(), BigDecimal_ceil(), BigDecimal_div(), BigDecimal_divremain(), BigDecimal_DoDivmod(), BigDecimal_fix(), BigDecimal_floor(), BigDecimal_frac(), BigDecimal_mult(), BigDecimal_mult2(), BigDecimal_neg(), BigDecimal_round(), BigDecimal_sqrt(), BigDecimal_sub(), BigDecimal_sub2(), BigDecimal_truncate(), bigsqr_fast(), bm_init_skip(), broken_getc(), broken_ungetc(), c_jd_to_civil(), cap_ungetc(), class_or_module_required(), cmp_eq(), cmp_ge(), cmp_gt(), cmp_le(), cmp_lt(), conv_backslash_value(), convert_UTF8_to_JSON(), curses_getch(), date__strptime_internal(), dbl2big(), diff(), enc_strlen(), enc_succ_alnum_char(), f_addsub(), f_cmp(), fetch_char_property_to_ctype(), fetch_escaped_value(), fetch_name(), fetch_name_with_level(), fetch_range_quantifier(), fetch_token(), fetch_token_in_cc(), find_dirsep(), fix_minus(), fix_plus(), fmt_setup(), getdbit(), has_magic(), Init_curses(), int_chr(), int_downto(), int_upto(), intern_str(), io_bufread(), ip_rb_threadTkWaitCommand(), ip_rbTkWaitCommand(), is_internal_cmd(), is_onechar_cclass(), iso2022jp_check_conv(), load_file_internal(), long_mul(), md5_process(), mime_integrity(), mime_putc(), mime_ungetc(), mime_ungetc_buf(), mimeout_addchar(), mmrot3_(), month_arg(), mult(), nfc_getc(), nfc_ungetc(), nkf_buf_push(), noconvert(), node_new_str_raw_char(), node_str_cat_char(), numchar_getc(), numchar_ungetc(), nurat_rationalize_internal(), onig_reduce_nested_quantifier(), onig_scan_unsigned_number(), onigenc_mbn_mbc_to_code(), onigenc_with_ascii_strncmp(), onigenc_with_ascii_strnicmp(), original_module(), pack_pack(), pack_unpack(), parse_enclose(), parse_posix_bracket(), parser_here_document(), parser_heredoc_identifier(), parser_nextc(), parser_parse_string(), parser_peek_variable_name(), parser_prepare(), parser_read_escape(), parser_regx_options(), parser_tok_hex(), parser_tokadd_escape(), parser_tokadd_mbchar(), parser_tokadd_string(), parser_yylex(), path_inspect(), proc_options(), quo(), r_byte(), r_le(), r_long(), r_object0(), range_each_func(), range_max(), range_min(), rb_cstr_to_inum(), rb_enc_ascget(), rb_enc_strlen_cr(), rb_gzreader_each_byte(), rb_gzreader_each_char(), rb_gzwriter_putc(), rb_io_each_char(), rb_io_each_codepoint(), rb_io_getbyte(), rb_io_getline_1(), rb_io_putc(), rb_io_readbyte(), rb_io_readchar(), rb_method_name_error(), rb_nkf_putchar(), rb_num_coerce_relop(), rb_obj_inspect(), rb_path_to_class(), rb_reg_expr_str(), rb_reg_quote(), rb_reg_regsub(), rb_str_buf_cat_ascii(), rb_str_capitalize_bang(), rb_str_count(), rb_str_delete_bang(), rb_str_downcase_bang(), rb_str_dump(), rb_str_enumerate_codepoints(), rb_str_enumerate_lines(), rb_str_format(), rb_str_inspect(), rb_str_ord(), rb_str_reverse_bang(), rb_str_rstrip_bang(), rb_str_split_m(), rb_str_squeeze_bang(), rb_str_succ(), rb_str_swapcase_bang(), rb_str_upcase_bang(), rb_str_upto(), rb_time_unmagnify(), rb_time_unmagnify_to_float(), rb_tolower(), rb_toupper(), rb_undef(), rb_using_refinement(), rb_w32_cmdvector(), rb_w32_getc(), rb_w32_putc(), reg_fragment_setenc_gen(), rmext(), ruby_strtod(), ruby_strtoul(), s3e(), s_oconv(), scan_digits(), scan_unsigned_hexadecimal_number(), scan_unsigned_octal_number(), setdbit(), SHA1_Transform(), SHA256_Transform(), SHA512_Transform(), sign_bits(), sip_hash_init(), status_push_ch(), std_ungetc(), str_end_cmp(), str_end_with_asciichar(), strcasehash(), strio_each_byte(), strio_each_char(), strio_each_codepoint(), strio_getbyte(), strio_putc(), strio_readbyte(), strio_readchar(), swap_node(), sym_printable(), tr_find(), tr_setup_table(), tr_trans(), trnext(), unescape_nonascii(), update_char_offset(), url_ungetc(), utf8_to_uv(), VpMult(), wi_mul(), window_box(), window_getbkgd(), window_getch(), wquo(), x0212_shift(), x0212_unshift(), and z_conv().

keyword_next call_args

Initial value:
{
$$ = dispatch1(return, $2)

Definition at line 1457 of file ripper.y.

case

Definition at line 7645 of file ripper.y.

primary_value tCOLON2 operation2 command_args cmd_brace_block = method_arg($$, $4)

Definition at line 1337 of file ripper.y.

keyword_yield command_args

Initial value:
{
$$ = dispatch1(super, $2)

Definition at line 1439 of file ripper.y.

command_call

Initial value:
{
$$ = dispatch2(unary, ripper_id2sym('!'), $2)

Definition at line 1304 of file ripper.y.

Referenced by yyparse().

command_start = TRUE

Definition at line 7647 of file ripper.y.

opt_block_param compstmt

Initial value:
{
$$ = dispatch2(brace_block, escape_Qundef($3), $4)

Definition at line 1353 of file ripper.y.

else

Initial value:
{
lex_state = EXPR_BEG

Definition at line 7661 of file ripper.y.

keyword_not opt_nl expr

Initial value:
{
$$ = dispatch3(binary, $1, ripper_intern("or"), $3)

Definition at line 1288 of file ripper.y.

Referenced by rb_str_format().

keyword_BEGIN

Initial value:
{
yyerror("BEGIN is permitted only at toplevel")

Definition at line 1025 of file ripper.y.

mlhs_node keyword_variable

Initial value:
{
$$ = assignable($1, 0)

Definition at line 1642 of file ripper.y.

lex_state = EXPR_ENDARG

Definition at line 7579 of file ripper.y.

command_asgn lhs

Initial value:
=' command_asgn
{
$$ = dispatch2(assign, $1, $3);
}

Definition at line 1266 of file ripper.y.

Referenced by formal_argument_gen(), new_op_assign_gen(), and node_assign_gen().

mlhs mlhs_basic

Definition at line 1480 of file ripper.y.

mlhs_item mlhs_head

Definition at line 1585 of file ripper.y.

mlhs mlhs_inner

Definition at line 1480 of file ripper.y.

mlhs_head mlhs_head mlhs_item

Initial value:
{
$$ = mlhs_add($1, $2)

Definition at line 1513 of file ripper.y.

tSTAR mlhs_node

Initial value:
{
$$ = mlhs_add_star($1, $3)

Definition at line 1521 of file ripper.y.

mlhs_head mlhs_head mlhs_post

Initial value:
{
$1 = mlhs_add_star($1, $3)

Definition at line 1529 of file ripper.y.

ONIG_EXTERN OnigCaseFoldType OnigDefaultCaseFoldFlag

Definition at line 124 of file ripper.y.

Referenced by onig_get_default_case_fold_flag(), and onig_set_default_case_fold_flag().

ONIG_EXTERN const OnigSyntaxType* OnigDefaultSyntax

Definition at line 418 of file ripper.y.

Referenced by make_regexp(), onig_set_default_syntax(), rb_reg_prepare_re(), and rb_reg_to_s().

ONIG_EXTERN const unsigned short OnigEncAsciiCtypeTable[]

Definition at line 185 of file ripper.y.

ONIG_EXTERN const UChar OnigEncAsciiToLowerCaseTable[]

Definition at line 183 of file ripper.y.

ONIG_EXTERN const UChar OnigEncAsciiToUpperCaseTable[]

Definition at line 184 of file ripper.y.

ONIG_EXTERN OnigEncoding OnigEncDefaultCharEncoding

Definition at line 182 of file ripper.y.

Referenced by onigenc_get_default_encoding().

ONIG_EXTERN const UChar OnigEncISO_8859_1_ToLowerCaseTable[]

Definition at line 169 of file ripper.y.

ONIG_EXTERN const UChar OnigEncISO_8859_1_ToUpperCaseTable[]

Definition at line 170 of file ripper.y.

ONIG_EXTERN OnigEncodingType OnigEncodingASCII

Definition at line 184 of file ripper.y.

ONIG_EXTERN const OnigSyntaxType OnigSyntaxASIS

Definition at line 390 of file ripper.y.

ONIG_EXTERN const OnigSyntaxType OnigSyntaxEmacs

Definition at line 393 of file ripper.y.

ONIG_EXTERN const OnigSyntaxType OnigSyntaxGnuRegex

Definition at line 395 of file ripper.y.

ONIG_EXTERN const OnigSyntaxType OnigSyntaxGrep

Definition at line 394 of file ripper.y.

ONIG_EXTERN const OnigSyntaxType OnigSyntaxJava

Definition at line 396 of file ripper.y.

ONIG_EXTERN const OnigSyntaxType OnigSyntaxPerl

Definition at line 399 of file ripper.y.

ONIG_EXTERN const OnigSyntaxType OnigSyntaxPerl58

Definition at line 397 of file ripper.y.

ONIG_EXTERN const OnigSyntaxType OnigSyntaxPerl58_NG

Definition at line 398 of file ripper.y.

ONIG_EXTERN const OnigSyntaxType OnigSyntaxPosixBasic

Definition at line 391 of file ripper.y.

ONIG_EXTERN const OnigSyntaxType OnigSyntaxPosixExtended

Definition at line 392 of file ripper.y.

ONIG_EXTERN const OnigSyntaxType OnigSyntaxPython

Definition at line 401 of file ripper.y.

ONIG_EXTERN const OnigSyntaxType OnigSyntaxRuby

Definition at line 400 of file ripper.y.

pure_parser parse param

Definition at line 684 of file ripper.y.

Referenced by check_exec_redirect(), ip_rb_threadTkWaitCommand(), ip_rb_threadUpdateCommand(), ip_rb_threadVwaitCommand(), ip_RubyExitCommand(), ole_invoke(), ole_invoke2(), ole_method_params(), rb_threadUpdateProc(), run_exec_open(), and unnamed_parameters().

RUBY_EXTERN VALUE rb_argv0

Definition at line 651 of file ripper.y.

Referenced by Init_tcltklib(), ruby_open_tk_dll(), ruby_tcl_create_ip_and_stubs_init(), and ruby_tcltk_stubs().

RUBY_EXTERN VALUE rb_cArray

Definition at line 1427 of file ripper.y.

RUBY_EXTERN VALUE rb_cBasicObject

Definition at line 1425 of file ripper.y.

Referenced by class_init_copy_check(), Init_class_hierarchy(), Init_GC(), Init_Object(), Init_VM(), Init_vm_eval(), rb_class_initialize(), rb_class_superclass(), and rb_obj_alloc().

RUBY_EXTERN VALUE rb_cBignum

Definition at line 1428 of file ripper.y.

RUBY_EXTERN VALUE rb_cBinding

Definition at line 1429 of file ripper.y.

Referenced by binding_dup(), eval_string_with_cref(), Init_Binding(), proc_binding(), and rb_binding_new_with_cfp().

RUBY_EXTERN VALUE rb_cClass

Definition at line 1430 of file ripper.y.

Referenced by Init_class_hierarchy(), Init_eval(), Init_Object(), make_metaclass(), rb_check_inheritable(), rb_class_boot(), and rb_include_class_new().

RUBY_EXTERN VALUE rb_cComplex

Definition at line 1453 of file ripper.y.

RUBY_EXTERN VALUE rb_cCont

Definition at line 1431 of file ripper.y.

RUBY_EXTERN VALUE rb_cData

Definition at line 1433 of file ripper.y.

Referenced by call_queue_handler(), eval_queue_handler(), Init_curses(), Init_Exception(), Init_marshal(), Init_Object(), Init_stringio(), Init_transcode(), Init_win32ole(), invoke_queue_handler(), marshal_dump(), marshal_load(), pruby_register_instance(), rb_execarg_new(), and rsock_init_addrinfo().

RUBY_EXTERN VALUE rb_cDir

Definition at line 1432 of file ripper.y.

RUBY_EXTERN VALUE rb_cEncoding

Definition at line 225 of file ripper.y.

RUBY_EXTERN VALUE rb_cEncoding

Definition at line 1435 of file ripper.y.

RUBY_EXTERN VALUE rb_cEnumerator

Definition at line 1436 of file ripper.y.

RUBY_EXTERN VALUE rb_cFalseClass

Definition at line 1434 of file ripper.y.

Referenced by Init_Object(), rb_class_of(), and special_singleton_class_of().

RUBY_EXTERN VALUE rb_cFile

Definition at line 1437 of file ripper.y.

Referenced by argf_next_argv(), console_dev(), copy_stream_body(), Init_Dir(), Init_IO(), path_atime(), path_basename(), path_chmod(), path_chown(), path_ctime(), path_dirname(), path_expand_path(), path_extname(), path_fnmatch(), path_ftype(), path_lchmod(), path_lchown(), path_lstat(), path_make_link(), path_make_symlink(), path_mtime(), path_open(), path_readlink(), path_realdirpath(), path_realpath(), path_rename(), path_split(), path_stat(), path_truncate(), path_utime(), pty_getpty(), pty_open(), rb_f_open(), rb_file_open(), rb_file_open_str(), rb_io_fdopen(), rb_io_open(), rb_io_open_with_args(), and unlink_rescue().

RUBY_EXTERN VALUE rb_cFixnum

Definition at line 1438 of file ripper.y.

Referenced by generate_json(), Init_Numeric(), k_fixnum_p(), negative_int_p(), positive_int_p(), rb_class_of(), and vm_redefinition_check_flag().

RUBY_EXTERN VALUE rb_cFloat

Definition at line 1439 of file ripper.y.

Referenced by generate_json(), Init_Complex(), Init_Numeric(), Init_Rational(), k_float_p(), opt_eq_func(), rb_class_of(), rb_float_new_in_heap(), and vm_redefinition_check_flag().

RUBY_EXTERN VALUE rb_cHash

Definition at line 1440 of file ripper.y.

Referenced by cState_from_state_s(), generate_json(), Init_Hash(), make_compile_option(), rb_hash_new(), rb_hash_to_h(), recursive_hash(), vm_redefinition_check_flag(), and w_object().

RUBY_EXTERN VALUE rb_cInteger

Definition at line 1441 of file ripper.y.

Referenced by host_str(), Init_Bignum(), Init_Numeric(), Init_Rational(), k_integer_p(), range_max(), rb_check_to_integer(), and rb_to_integer().

RUBY_EXTERN VALUE rb_cIO

Definition at line 1442 of file ripper.y.

Referenced by console_dev(), Init_File(), Init_IO(), Init_nonblock(), Init_stringio(), Init_wait(), InitVM_console(), parse(), path_binread(), path_each_line(), path_read(), path_readlines(), path_sysopen(), pipe_open(), pty_open(), rb_dlptr_s_to_ptr(), rb_f_open(), rb_fiddle_ptr_s_to_ptr(), rb_io_fdopen(), and rsock_init_basicsocket().

RUBY_EXTERN VALUE rb_cMatch

Definition at line 1443 of file ripper.y.

RUBY_EXTERN VALUE rb_cMethod

Definition at line 1444 of file ripper.y.

Referenced by Init_Proc(), rb_obj_method(), rb_obj_public_method(), and umethod_bind().

RUBY_EXTERN VALUE rb_cModule

Definition at line 1445 of file ripper.y.

Referenced by check_match(), Init_class_hierarchy(), Init_eval(), Init_eval_method(), Init_load(), Init_Object(), Init_Proc(), Init_vm_eval(), rb_mod_s_constants(), rb_module_new(), rb_thread_pending_interrupt_p(), and rb_tmp_class_path().

RUBY_EXTERN VALUE rb_cNameErrorMesg

Definition at line 1446 of file ripper.y.

RUBY_EXTERN VALUE rb_cNilClass

Definition at line 1447 of file ripper.y.

Referenced by Init_Complex(), Init_Object(), Init_Rational(), rb_class_of(), and special_singleton_class_of().

RUBY_EXTERN VALUE rb_cNumeric

Definition at line 1448 of file ripper.y.

Referenced by case_when_optimizable_literal(), Init_bigdecimal(), Init_Complex(), Init_Numeric(), Init_Rational(), k_numeric_p(), range_include(), range_max(), range_size(), range_step(), range_step_size(), rb_ary_bsearch(), rb_check_to_float(), and rb_to_float().

RUBY_EXTERN VALUE rb_cObject

Definition at line 1426 of file ripper.y.

Referenced by boot_defclass(), classname(), compile_colon2(), compile_cpath(), debug_lines(), defined_expr(), fc_path(), find_class_path(), Init_Array(), Init_Binding(), Init_class_hierarchy(), Init_Complex(), Init_Cont(), Init_cparse(), Init_curses(), Init_date_core(), Init_dbm(), Init_digest(), Init_Dir(), Init_dlcfunc(), Init_dlhandle(), Init_dlptr(), Init_Encoding(), Init_Exception(), Init_fiddle_closure(), Init_fiddle_function(), Init_fiddle_handle(), Init_fiddle_pointer(), Init_File(), Init_GC(), Init_gdbm(), Init_generator(), Init_Hash(), Init_IO(), Init_ISeq(), Init_md5(), Init_Numeric(), Init_Object(), Init_objspace(), Init_ossl_asn1(), Init_ossl_bn(), Init_ossl_cipher(), Init_ossl_config(), Init_ossl_hmac(), Init_ossl_ns_spki(), Init_ossl_pkcs12(), Init_ossl_pkcs7(), Init_ossl_pkey(), Init_ossl_ssl(), Init_ossl_ssl_session(), Init_ossl_x509attr(), Init_ossl_x509cert(), Init_ossl_x509crl(), Init_ossl_x509ext(), Init_ossl_x509name(), Init_ossl_x509req(), Init_ossl_x509revoked(), Init_ossl_x509store(), Init_parser(), Init_pathname(), Init_Proc(), Init_process(), Init_psych_emitter(), Init_psych_parser(), Init_psych_to_ruby(), Init_psych_yaml_tree(), Init_Random(), Init_Range(), Init_Rational(), Init_readline(), Init_Regexp(), Init_rmd160(), Init_sdbm(), Init_sha1(), Init_String(), Init_strscan(), Init_Struct(), Init_tcltklib(), Init_Thread(), Init_Time(), Init_tkutil(), Init_top_self(), Init_VM(), Init_vm_backtrace(), Init_vm_trace(), Init_win32ole(), Init_zlib(), InitVM_Enumerator(), ip_ruby_cmd_receiver_const_get(), iseq_compile_each(), process_options(), range_dumper(), range_loader(), rb_alias(), rb_catch(), rb_class_inherited(), rb_class_initialize(), rb_const_defined_0(), rb_const_get_0(), rb_const_set(), rb_define_class(), rb_define_class_id(), rb_define_const(), rb_define_global_const(), rb_define_module(), rb_execarg_fixup(), rb_export_method(), rb_f_catch(), rb_method_entry_make(), rb_mod_const_get(), rb_mod_const_of(), rb_mod_modfunc(), rb_path_to_class(), rb_set_class_path(), rb_set_class_path_string(), rb_undef(), rb_uninterruptible(), remove_method(), rsock_init_ancdata(), rsock_init_sockopt(), ruby_Init_Continuation_body(), ruby_init_loadpath_safe(), ruby_init_prelude(), save_env(), set_relation(), top_define_method(), top_include(), top_private(), top_public(), uninitialized_constant(), vm_search_const_defined_class(), vm_set_main_stack(), and vm_set_top_stack().

RUBY_EXTERN VALUE rb_cProc

Definition at line 1449 of file ripper.y.

Referenced by get_eval_string_core(), Init_Proc(), m_core_set_postexe(), proc_dup(), rb_block_lambda(), rb_block_proc(), vm_callee_setup_arg_complex(), vm_make_proc_from_block(), vm_yield_setup_block_args(), and vm_yield_with_cfunc().

RUBY_EXTERN VALUE rb_cRandom

Definition at line 1450 of file ripper.y.

Referenced by Init_Random(), rb_ary_sample(), rb_ary_shuffle_bang(), and try_get_rnd().

RUBY_EXTERN VALUE rb_cRange

Definition at line 1451 of file ripper.y.

Referenced by Init_Range(), range_eq(), range_eql(), rb_range_new(), and rb_range_values().

RUBY_EXTERN VALUE rb_cRational

Definition at line 1452 of file ripper.y.

Referenced by Init_Rational(), k_rational_p(), nurat_f_rational(), rb_Rational(), rb_rational_new(), and rb_rational_raw().

RUBY_EXTERN VALUE rb_cRegexp

Definition at line 1454 of file ripper.y.

Referenced by Init_generator(), and w_object().

RUBY_EXTERN VALUE rb_cStat

Definition at line 1455 of file ripper.y.

RUBY_EXTERN VALUE rb_cString

Definition at line 1456 of file ripper.y.

Referenced by code_page(), generate_json(), Init_Complex(), Init_pack(), Init_Rational(), Init_String(), Init_transcode(), intern_str(), NOINSERT_UPDATE_CALLBACK(), opt_eq_func(), rb_any_cmp(), rb_check_id(), rb_check_id_cstr(), rb_dlptr_s_to_ptr(), rb_enc_vsprintf(), rb_fiddle_ptr_s_to_ptr(), rb_file_join(), rb_id2str(), rb_intern3(), rb_str_b(), rb_str_buf_new(), rb_str_new(), rb_str_resurrect(), rb_str_to_s(), rb_sym_to_s(), require_libraries(), vm_redefinition_check_flag(), w_object(), zstream_detach_buffer(), zstream_detach_input(), zstream_expand_buffer(), and zstream_shift_buffer().

RUBY_EXTERN VALUE rb_cStruct

Definition at line 1457 of file ripper.y.

Referenced by Init_Struct(), rb_struct_define(), and struct_ivar_get().

RUBY_EXTERN VALUE rb_cSymbol

Definition at line 1458 of file ripper.y.

Referenced by Init_String(), rb_class_of(), and vm_redefinition_check_flag().

RUBY_EXTERN VALUE rb_cThread

Definition at line 1459 of file ripper.y.

Referenced by Init_Thread(), Init_VM(), Init_vm_backtrace(), Init_vm_trace(), and rb_thread_create().

RUBY_EXTERN VALUE rb_cTime

Definition at line 1460 of file ripper.y.

Referenced by asn1time_to_time(), date_to_time(), datetime_to_time(), discrete_object_p(), folevariant_initialize(), Init_date_core(), ole_val2variant(), ossl_ssl_session_get_time(), ossl_ssl_session_set_time(), ossl_sslctx_flush_sessions(), vm_redefinition_check_flag(), and vtdate2rbtime().

RUBY_EXTERN VALUE rb_cTrueClass

Definition at line 1461 of file ripper.y.

Referenced by Init_Object(), rb_class_of(), and special_singleton_class_of().

RUBY_EXTERN VALUE rb_cUnboundMethod

Definition at line 1462 of file ripper.y.

Referenced by Init_Proc(), method_unbind(), rb_mod_instance_method(), and rb_mod_public_instance_method().

RUBY_EXTERN VALUE rb_default_rs

Definition at line 488 of file ripper.y.

Referenced by argf_getline(), Init_IO(), prepare_getline_args(), rb_gets(), rb_io_getline_1(), rb_io_gets(), rb_io_puts(), rb_p(), rb_str_chomp_bang(), and rb_str_enumerate_lines().

RUBY_EXTERN VALUE rb_eArgError

Definition at line 1470 of file ripper.y.

RUBY_EXTERN VALUE rb_eEncCompatError

Definition at line 1491 of file ripper.y.

RUBY_EXTERN VALUE rb_eEncodingError

Definition at line 1490 of file ripper.y.

RUBY_EXTERN VALUE rb_eEOFError

Definition at line 1471 of file ripper.y.

Referenced by argf_getpartial(), copy_stream_fallback(), gzfile_read_raw(), gzfile_readpartial(), Init_IO(), rb_eof_error(), rb_gzreader_readbyte(), rb_gzreader_readchar(), and rb_gzreader_readline().

RUBY_EXTERN VALUE rb_eException

Definition at line 1464 of file ripper.y.

RUBY_EXTERN VALUE rb_eFatal

Definition at line 1469 of file ripper.y.

RUBY_EXTERN VALUE rb_eFloatDomainError

Definition at line 1486 of file ripper.y.

Referenced by BigDecimal_to_i(), dbl2big(), Init_Numeric(), rb_cstr_to_rat(), string_to_r(), string_to_r_strict(), and VpException().

RUBY_EXTERN VALUE rb_eIndexError

Definition at line 1472 of file ripper.y.

RUBY_EXTERN VALUE rb_eInterrupt

Definition at line 1467 of file ripper.y.

RUBY_EXTERN VALUE rb_eIOError

Definition at line 1476 of file ripper.y.

Referenced by argf_write_io(), check_modifiable(), copy_stream_body(), dir_closed(), finish_writeconv(), get_strio(), Init_IO(), Init_Thread(), io_getc(), io_ungetbyte(), rb_io_check_byte_readable(), rb_io_check_char_readable(), rb_io_check_closed(), rb_io_check_initialized(), rb_io_check_writable(), rb_io_close_read(), rb_io_close_write(), rb_io_each_codepoint(), rb_io_sysread(), rb_io_sysseek(), rb_io_ungetc(), rb_io_wait_readable(), rb_io_wait_writable(), rb_thread_wait_fd_rw(), readable(), readline_readline(), remain_size(), rsock_s_recvfrom(), rsock_s_recvfrom_nonblock(), strio_close(), strio_close_read(), strio_close_write(), strio_seek(), strio_size(), and writable().

RUBY_EXTERN VALUE rb_eKeyError

Definition at line 1474 of file ripper.y.

RUBY_EXTERN VALUE rb_eLoadError

Definition at line 1496 of file ripper.y.

RUBY_EXTERN VALUE rb_eLocalJumpError

Definition at line 1487 of file ripper.y.

RUBY_EXTERN VALUE rb_eMathDomainError

Definition at line 1498 of file ripper.y.

Referenced by BigDecimal_power(), BigMath_s_log(), and exp1().

RUBY_EXTERN VALUE rb_eNameError

Definition at line 1494 of file ripper.y.

RUBY_EXTERN VALUE rb_eNoMemError

Definition at line 1484 of file ripper.y.

RUBY_EXTERN VALUE rb_eNoMethodError

Definition at line 1485 of file ripper.y.

RUBY_EXTERN VALUE rb_eNotImpError

Definition at line 1483 of file ripper.y.

RUBY_EXTERN VALUE rb_eRangeError

Definition at line 1475 of file ripper.y.

RUBY_EXTERN VALUE rb_eRegexpError

Definition at line 1489 of file ripper.y.

Referenced by Init_Regexp(), rb_enc_reg_error_desc(), rb_reg_preprocess_dregexp(), and rb_reg_raise().

RUBY_EXTERN VALUE rb_eRuntimeError

Definition at line 1477 of file ripper.y.

RUBY_EXTERN VALUE rb_eScriptError

Definition at line 1493 of file ripper.y.

RUBY_EXTERN VALUE rb_eSecurityError

Definition at line 1478 of file ripper.y.

RUBY_EXTERN VALUE rb_eSignal

Definition at line 1468 of file ripper.y.

RUBY_EXTERN VALUE rb_eStandardError

Definition at line 1465 of file ripper.y.

RUBY_EXTERN VALUE rb_eStopIteration

Definition at line 1473 of file ripper.y.

RUBY_EXTERN VALUE rb_eSyntaxError

Definition at line 1495 of file ripper.y.

RUBY_EXTERN VALUE rb_eSysStackError

Definition at line 1488 of file ripper.y.

RUBY_EXTERN VALUE rb_eSystemCallError

Definition at line 1479 of file ripper.y.

RUBY_EXTERN VALUE rb_eSystemExit

Definition at line 1466 of file ripper.y.

RUBY_EXTERN VALUE rb_eThreadError

Definition at line 1480 of file ripper.y.

RUBY_EXTERN VALUE rb_eTypeError

Definition at line 1481 of file ripper.y.

RUBY_EXTERN VALUE rb_eZeroDivError

Definition at line 1482 of file ripper.y.

Referenced by BigDecimal_DoDivmod(), Init_Numeric(), and rb_num_zerodiv().

RUBY_EXTERN VALUE rb_fs

Definition at line 485 of file ripper.y.

Referenced by Init_String(), proc_options(), and rb_str_split_m().

RUBY_EXTERN VALUE rb_mComparable

Definition at line 1415 of file ripper.y.

RUBY_EXTERN VALUE rb_mEnumerable

Definition at line 1416 of file ripper.y.

RUBY_EXTERN VALUE rb_mErrno

Definition at line 1417 of file ripper.y.

RUBY_EXTERN VALUE rb_mFileTest

Definition at line 1418 of file ripper.y.

Referenced by path_blockdev_p(), path_chardev_p(), path_directory_p(), path_executable_p(), path_executable_real_p(), path_exist_p(), path_file_p(), path_grpowned_p(), path_owned_p(), path_pipe_p(), path_readable_p(), path_readable_real_p(), path_setgid_p(), path_setuid_p(), path_size(), path_size_p(), path_socket_p(), path_sticky_p(), path_symlink_p(), path_world_readable_p(), path_world_writable_p(), path_writable_p(), path_writable_real_p(), and path_zero_p().

RUBY_EXTERN VALUE rb_mGC

Definition at line 1419 of file ripper.y.

RUBY_EXTERN VALUE rb_mKernel

Definition at line 1414 of file ripper.y.

Referenced by Init_eval(), Init_eval_method(), Init_GC(), Init_IO(), Init_Object(), Init_Proc(), Init_vm_eval(), InitVM_Enumerator(), and rb_define_global_function().

RUBY_EXTERN VALUE rb_mMath

Definition at line 1420 of file ripper.y.

Referenced by exp1(), float_arg(), and numeric_arg().

RUBY_EXTERN VALUE rb_mProcess

Definition at line 1421 of file ripper.y.

RUBY_EXTERN VALUE rb_mWaitReadable

Definition at line 1422 of file ripper.y.

Referenced by Init_IO(), io_getpartial(), read_would_block(), rsock_s_accept_nonblock(), and rsock_s_recvfrom_nonblock().

RUBY_EXTERN VALUE rb_mWaitWritable

Definition at line 1423 of file ripper.y.

Referenced by Init_IO(), rb_io_write_nonblock(), sock_connect_nonblock(), and write_would_block().

RUBY_EXTERN VALUE rb_output_fs

Definition at line 486 of file ripper.y.

RUBY_EXTERN VALUE rb_output_rs

Definition at line 489 of file ripper.y.

Referenced by Init_IO(), proc_options(), and rb_io_print().

RUBY_EXTERN VALUE rb_rs

Definition at line 487 of file ripper.y.

Referenced by argf_getline(), gzreader_gets(), Init_IO(), prepare_getline_args(), proc_options(), rb_gets(), rb_str_chomp_bang(), rb_str_enumerate_lines(), and strio_getline().

RUBY_EXTERN VALUE rb_stderr

Definition at line 1500 of file ripper.y.

Referenced by Init_IO(), rb_f_abort(), rb_io_s_popen(), rb_stdio_set_default_encoding(), rb_warn_m(), rb_write_error2(), and rb_write_error_str().

RUBY_EXTERN VALUE rb_stdin

Definition at line 1500 of file ripper.y.

Referenced by argf_close(), argf_next_argv(), Init_IO(), Init_readline(), load_file_internal(), and rb_stdio_set_default_encoding().

RUBY_EXTERN VALUE rb_stdout

Definition at line 1500 of file ripper.y.

Referenced by argf_next_argv(), gc_profile_report(), Init_IO(), process_options(), rb_f_p_internal(), rb_f_print(), rb_f_printf(), rb_f_putc(), rb_f_puts(), rb_io_getbyte(), rb_io_s_popen(), rb_obj_display(), rb_p(), and rb_stdio_set_default_encoding().

return

Definition at line 7633 of file ripper.y.

Referenced by alt_merge_opt_exact_info(), alt_merge_opt_map_info(), CC_DUP_WARN(), CC_ESC_WARN(), CLOSE_BRACKET_WITHOUT_ESC_WARN(), concat_opt_exact_info(), onig_node_free(), onig_reduce_nested_quantifier(), select_opt_exact_info(), select_opt_map_info(), and UNKNOWN_ESC_WARN().

RUBY_EXTERN char* ruby_sourcefile

Definition at line 576 of file ripper.y.

RUBY_EXTERN int ruby_sourceline

Definition at line 575 of file ripper.y.

error stmt

Initial value:
{
$$ = remove_begin($2)

Definition at line 1015 of file ripper.y.

stmts terms stmt_or_begin

Initial value:
{
$$ = dispatch2(stmts_add, dispatch0(stmts_new), $1)

Definition at line 999 of file ripper.y.

primary_value tCOLON2 operation2 command_args prec tLOWEST

Initial value:
{
$$ = dispatch4(command_call, $1, ripper_id2sym('.'), $3, $4)

Definition at line 1397 of file ripper.y.

return tOP_ASGN

Definition at line 7639 of file ripper.y.

error top_stmt

Initial value:
{
$$ = dispatch2(stmts_add, dispatch0(stmts_new), $1)

Definition at line 902 of file ripper.y.

case return tREGEXP_BEG

Definition at line 7617 of file ripper.y.

tSTAR

Initial value:
{
$$ = mlhs_add_star($1, Qnil)

Definition at line 1538 of file ripper.y.

return tSYMBEG

Definition at line 7613 of file ripper.y.