Ruby  2.5.0dev(2017-10-22revision60238)
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
internal.h File Reference
#include "ruby.h"
#include "ruby/encoding.h"
#include "ruby/io.h"

Go to the source code of this file.

Data Structures

struct  RBignum
 
struct  RRational
 
struct  RFloat
 
struct  RComplex
 
struct  RHash
 
struct  RStruct
 
struct  rb_deprecated_classext_struct
 
struct  rb_subclass_entry
 
struct  rb_classext_struct
 
struct  RClass
 
struct  RIMemo
 
struct  vm_svar
 SVAR (Special VARiable) More...
 
struct  vm_throw_data
 THROW_DATA. More...
 
struct  vm_ifunc_argc
 
struct  vm_ifunc
 IFUNC (Internal FUNCtion) More...
 
struct  rb_imemo_alloc_struct
 
struct  MEMO
 MEMO. More...
 
struct  cmp_opt_data
 
struct  rb_global_entry
 
struct  RBasicRaw
 
struct  rb_execarg
 

Macros

#define bool   signed char
 
#define false   0
 
#define true   1
 
#define __bool_true_false_are_defined   1
 
#define LIKELY(x)   RB_LIKELY(x)
 
#define UNLIKELY(x)   RB_UNLIKELY(x)
 
#define MAYBE_UNUSED(x)   x
 
#define WARN_UNUSED_RESULT(x)   x
 
#define VALGRIND_MAKE_MEM_DEFINED(p, n)   0
 
#define VALGRIND_MAKE_MEM_UNDEFINED(p, n)   0
 
#define numberof(array)   ((int)(sizeof(array) / sizeof((array)[0])))
 
#define __has_feature(x)   0
 
#define __has_extension   __has_feature
 
#define STATIC_ASSERT(name, expr)   typedef int static_assert_##name##_check[1 - 2*!(expr)]
 
#define SIGNED_INTEGER_TYPE_P(int_type)   (0 > ((int_type)0)-1)
 
#define SIGNED_INTEGER_MAX(sint_type)
 
#define SIGNED_INTEGER_MIN(sint_type)   (-SIGNED_INTEGER_MAX(sint_type)-1)
 
#define UNSIGNED_INTEGER_MAX(uint_type)   (~(uint_type)0)
 
#define TIMET_MAX_PLUS_ONE   (2*(double)(TIMET_MAX/2+1))
 
#define MUL_OVERFLOW_SIGNED_INTEGER_P(a, b, min, max)
 
#define MUL_OVERFLOW_FIXNUM_P(a, b)   MUL_OVERFLOW_SIGNED_INTEGER_P(a, b, FIXNUM_MIN, FIXNUM_MAX)
 
#define MUL_OVERFLOW_LONG_LONG_P(a, b)   MUL_OVERFLOW_SIGNED_INTEGER_P(a, b, LLONG_MIN, LLONG_MAX)
 
#define MUL_OVERFLOW_LONG_P(a, b)   MUL_OVERFLOW_SIGNED_INTEGER_P(a, b, LONG_MIN, LONG_MAX)
 
#define MUL_OVERFLOW_INT_P(a, b)   MUL_OVERFLOW_SIGNED_INTEGER_P(a, b, INT_MIN, INT_MAX)
 
#define swap16(x)   ((uint16_t)((((x)&0xFF)<<8) | (((x)>>8)&0xFF)))
 
#define swap32(x)
 
#define bit_length(x)
 
#define BDIGIT   unsigned int
 
#define SIZEOF_BDIGIT   SIZEOF_INT
 
#define BDIGIT_DBL   unsigned LONG_LONG
 
#define BDIGIT_DBL_SIGNED   LONG_LONG
 
#define PRI_BDIGIT_PREFIX   ""
 
#define PRI_BDIGIT_DBL_PREFIX   PRI_LL_PREFIX
 
#define SIZEOF_ACTUAL_BDIGIT   SIZEOF_BDIGIT
 
#define PRIdBDIGIT   PRI_BDIGIT_PREFIX"d"
 
#define PRIiBDIGIT   PRI_BDIGIT_PREFIX"i"
 
#define PRIoBDIGIT   PRI_BDIGIT_PREFIX"o"
 
#define PRIuBDIGIT   PRI_BDIGIT_PREFIX"u"
 
#define PRIxBDIGIT   PRI_BDIGIT_PREFIX"x"
 
#define PRIXBDIGIT   PRI_BDIGIT_PREFIX"X"
 
#define PRIdBDIGIT_DBL   PRI_BDIGIT_DBL_PREFIX"d"
 
#define PRIiBDIGIT_DBL   PRI_BDIGIT_DBL_PREFIX"i"
 
#define PRIoBDIGIT_DBL   PRI_BDIGIT_DBL_PREFIX"o"
 
#define PRIuBDIGIT_DBL   PRI_BDIGIT_DBL_PREFIX"u"
 
#define PRIxBDIGIT_DBL   PRI_BDIGIT_DBL_PREFIX"x"
 
#define PRIXBDIGIT_DBL   PRI_BDIGIT_DBL_PREFIX"X"
 
#define BIGNUM_EMBED_LEN_NUMBITS   3
 
#define BIGNUM_EMBED_LEN_MAX   (SIZEOF_VALUE*3/SIZEOF_ACTUAL_BDIGIT)
 
#define BIGNUM_SIGN_BIT   ((VALUE)FL_USER1)
 
#define BIGNUM_SIGN(b)   ((RBASIC(b)->flags & BIGNUM_SIGN_BIT) != 0)
 
#define BIGNUM_SET_SIGN(b, sign)
 
#define BIGNUM_POSITIVE_P(b)   BIGNUM_SIGN(b)
 
#define BIGNUM_NEGATIVE_P(b)   (!BIGNUM_SIGN(b))
 
#define BIGNUM_NEGATE(b)   (RBASIC(b)->flags ^= BIGNUM_SIGN_BIT)
 
#define BIGNUM_EMBED_FLAG   ((VALUE)FL_USER2)
 
#define BIGNUM_EMBED_LEN_MASK   ((VALUE)(FL_USER5|FL_USER4|FL_USER3))
 
#define BIGNUM_EMBED_LEN_SHIFT   (FL_USHIFT+BIGNUM_EMBED_LEN_NUMBITS)
 
#define BIGNUM_LEN(b)
 
#define BIGNUM_DIGITS(b)
 
#define BIGNUM_LENINT(b)   rb_long2int(BIGNUM_LEN(b))
 
#define RBIGNUM(obj)   (R_CAST(RBignum)(obj))
 
#define RRATIONAL(obj)   (R_CAST(RRational)(obj))
 
#define RRATIONAL_SET_NUM(rat, n)   RB_OBJ_WRITE((rat), &((struct RRational *)(rat))->num,(n))
 
#define RRATIONAL_SET_DEN(rat, d)   RB_OBJ_WRITE((rat), &((struct RRational *)(rat))->den,(d))
 
#define RFLOAT(obj)   (R_CAST(RFloat)(obj))
 
#define RCOMPLEX(obj)   (R_CAST(RComplex)(obj))
 
#define RCOMPLEX_SET_REAL(cmp, r)   RB_OBJ_WRITE((cmp), &((struct RComplex *)(cmp))->real,(r))
 
#define RCOMPLEX_SET_IMAG(cmp, i)   RB_OBJ_WRITE((cmp), &((struct RComplex *)(cmp))->imag,(i))
 
#define RHASH(obj)   (R_CAST(RHash)(obj))
 
#define RHASH_ITER_LEV(h)   (RHASH(h)->iter_lev)
 
#define RHASH_IFNONE(h)   (RHASH(h)->ifnone)
 
#define RHASH_SIZE(h)   (RHASH(h)->ntbl ? RHASH(h)->ntbl->num_entries : (st_index_t)0)
 
#define RSTRUCT_EMBED_LEN_MAX   RSTRUCT_EMBED_LEN_MAX
 
#define RSTRUCT_EMBED_LEN_MASK   RSTRUCT_EMBED_LEN_MASK
 
#define RSTRUCT_EMBED_LEN_SHIFT   RSTRUCT_EMBED_LEN_SHIFT
 
#define RSTRUCT_EMBED_LEN(st)
 
#define RSTRUCT_LEN(st)   rb_struct_len(st)
 
#define RSTRUCT_LENINT(st)   rb_long2int(RSTRUCT_LEN(st))
 
#define RSTRUCT_CONST_PTR(st)   rb_struct_const_ptr(st)
 
#define RSTRUCT_PTR(st)   ((VALUE *)RSTRUCT_CONST_PTR(RB_OBJ_WB_UNPROTECT_FOR(STRUCT, st)))
 
#define RSTRUCT_SET(st, idx, v)   RB_OBJ_WRITE(st, &RSTRUCT_CONST_PTR(st)[idx], (v))
 
#define RSTRUCT_GET(st, idx)   (RSTRUCT_CONST_PTR(st)[idx])
 
#define RSTRUCT(obj)   (R_CAST(RStruct)(obj))
 
#define SERIALT2NUM   ULONG2NUM
 
#define RCLASS_EXT(c)   (RCLASS(c)->ptr)
 
#define RCLASS_IV_TBL(c)   (RCLASS_EXT(c)->iv_tbl)
 
#define RCLASS_CONST_TBL(c)   (RCLASS_EXT(c)->const_tbl)
 
#define RCLASS_M_TBL(c)   (RCLASS(c)->m_tbl)
 
#define RCLASS_CALLABLE_M_TBL(c)   (RCLASS_EXT(c)->callable_m_tbl)
 
#define RCLASS_IV_INDEX_TBL(c)   (RCLASS_EXT(c)->iv_index_tbl)
 
#define RCLASS_ORIGIN(c)   (RCLASS_EXT(c)->origin_)
 
#define RCLASS_REFINED_CLASS(c)   (RCLASS_EXT(c)->refined_class)
 
#define RCLASS_SERIAL(c)   (RCLASS_EXT(c)->class_serial)
 
#define RICLASS_IS_ORIGIN   FL_USER5
 
#define IMEMO_DEBUG   0
 
#define IMEMO_MASK   0x0f
 
#define IMEMO_FL_USHIFT   (FL_USHIFT + 4)
 
#define IMEMO_FL_USER0   FL_USER4
 
#define IMEMO_FL_USER1   FL_USER5
 
#define IMEMO_FL_USER2   FL_USER6
 
#define IMEMO_FL_USER3   FL_USER7
 
#define IMEMO_FL_USER4   FL_USER8
 
#define THROW_DATA_CONSUMED   IMEMO_FL_USER0
 
#define THROW_DATA_P(err)   RB_TYPE_P((VALUE)(err), T_IMEMO)
 
#define IFUNC_NEW(a, b, c)   ((struct vm_ifunc *)rb_imemo_new(imemo_ifunc, (VALUE)(a), (VALUE)(b), (VALUE)(c), 0))
 
#define MEMO_V1_SET(m, v)   RB_OBJ_WRITE((m), &(m)->v1, (v))
 
#define MEMO_V2_SET(m, v)   RB_OBJ_WRITE((m), &(m)->v2, (v))
 
#define MEMO_CAST(m)   ((struct MEMO *)m)
 
#define MEMO_NEW(a, b, c)   ((struct MEMO *)rb_imemo_new(imemo_memo, (VALUE)(a), (VALUE)(b), (VALUE)(c), 0))
 
#define roomof(x, y)   (((x) + (y) - 1) / (y))
 
#define type_roomof(x, y)   roomof(sizeof(x), sizeof(y))
 
#define MEMO_FOR(type, value)   ((type *)RARRAY_PTR(value))
 
#define NEW_MEMO_FOR(type, value)   ((value) = rb_ary_tmp_new_fill(type_roomof(type, VALUE)), MEMO_FOR(type, value))
 
#define NEW_PARTIAL_MEMO_FOR(type, value, member)
 
#define STRING_P(s)   (RB_TYPE_P((s), T_STRING) && CLASS_OF(s) == rb_cString)
 
#define rb_cFixnum   rb_cInteger
 
#define rb_cBignum   rb_cInteger
 
#define NEW_CMP_OPT_MEMO(type, value)   NEW_PARTIAL_MEMO_FOR(type, value, cmp_opt)
 
#define CMP_OPTIMIZABLE_BIT(type)   (1U << TOKEN_PASTE(cmp_opt_,type))
 
#define CMP_OPTIMIZABLE(data, type)
 
#define OPTIMIZED_CMP(a, b, data)
 
#define rb_raise_cstr(etype, mesg)   rb_exc_raise(rb_exc_new_str(etype, rb_str_new_cstr(mesg)))
 
#define rb_raise_static(etype, mesg)   rb_exc_raise(rb_exc_new_str(etype, rb_str_new_static(mesg, rb_strlen_lit(mesg))))
 
#define rb_name_err_raise_str(mesg, recv, name)   rb_exc_raise(rb_name_err_new(mesg, recv, name))
 
#define rb_name_err_raise(mesg, recv, name)   rb_name_err_raise_str(rb_fstring_cstr(mesg), (recv), (name))
 
#define rb_key_err_raise(mesg, recv, name)   rb_exc_raise(rb_key_err_new(mesg, recv, name))
 
#define DEPRECATED_INTERNAL_FEATURE(func)   (ruby_deprecated_internal_feature(func), UNREACHABLE)
 
#define rb_sys_fail_path(path)   rb_sys_fail_str(path)
 
#define rb_syserr_fail_path(err, path)   rb_syserr_fail_str((err), (path))
 
#define SIZED_REALLOC_N(var, type, n, old_n)   ((var)=(type*)ruby_sized_xrealloc((char*)(var), (n) * sizeof(type), (old_n) * sizeof(type)))
 
#define RB_NEWOBJ_OF(obj, type, klass, flags)
 
#define NEWOBJ_OF(obj, type, klass, flags)   RB_NEWOBJ_OF(obj,type,klass,flags)
 
#define RHASH_TBL_RAW(h)   rb_hash_tbl_raw(h)
 
#define HASH_PROC_DEFAULT   FL_USER2
 
#define FIXNUM_POSITIVE_P(num)   ((SIGNED_VALUE)(num) > (SIGNED_VALUE)INT2FIX(0))
 
#define FIXNUM_NEGATIVE_P(num)   ((SIGNED_VALUE)(num) < 0)
 
#define FIXNUM_ZERO_P(num)   ((num) == INT2FIX(0))
 
#define INT_NEGATIVE_P(x)   (FIXNUM_P(x) ? FIXNUM_NEGATIVE_P(x) : BIGNUM_NEGATIVE_P(x))
 
#define ROUND_DEFAULT   RUBY_NUM_ROUND_HALF_UP
 
#define ROUND_TO(mode, even, up, down)
 
#define ROUND_FUNC(mode, name)   ROUND_TO(mode, name##_half_even, name##_half_up, name##_half_down)
 
#define ROUND_CALL(mode, name, args)
 
#define RUBY_BIT_ROTL(v, n)   (((v) << (n)) | ((v) >> ((sizeof(v) * 8) - n)))
 
#define RUBY_BIT_ROTR(v, n)   (((v) >> (n)) | ((v) << ((sizeof(v) * 8) - n)))
 
#define rb_float_value(v)   rb_float_value_inline(v)
 
#define rb_float_new(d)   rb_float_new_inline(d)
 
#define RBASIC_CLEAR_CLASS(obj)   memset(&(((struct RBasicRaw *)((VALUE)(obj)))->klass), 0, sizeof(VALUE))
 
#define RBASIC_SET_CLASS_RAW(obj, cls)   memcpy(&((struct RBasicRaw *)((VALUE)(obj)))->klass, &(cls), sizeof(VALUE))
 
#define RBASIC_SET_CLASS(obj, cls)
 
#define USE_SYMBOL_GC   1
 
#define RB_MAX_GROUPS   (65536)
 
#define ARGVSTR2ARGC(argv_str)   (RSTRING_LEN(argv_str) / sizeof(char *) - 2)
 
#define ARGVSTR2ARGV(argv_str)   ((char **)RSTRING_PTR(argv_str) + 1)
 
#define rb_fstring_lit(str)   rb_fstring_new((str), rb_strlen_lit(str))
 
#define rb_fstring_literal(str)   rb_fstring_lit(str)
 
#define QUOTE(str)   rb_str_quote_unprintable(str)
 
#define QUOTE_ID(id)   rb_id_quote_unprintable(id)
 
#define STR_NOEMBED   FL_USER1
 
#define STR_SHARED   FL_USER2 /* = ELTS_SHARED */
 
#define STR_EMBED_P(str)   (!FL_TEST_RAW((str), STR_NOEMBED))
 
#define STR_SHARED_P(s)   FL_ALL_RAW((s), STR_NOEMBED|ELTS_SHARED)
 
#define is_ascii_string(str)   (rb_enc_str_coderange(str) == ENC_CODERANGE_7BIT)
 
#define is_broken_string(str)   (rb_enc_str_coderange(str) == ENC_CODERANGE_BROKEN)
 
#define COVERAGE_INDEX_LINES   0
 
#define COVERAGE_INDEX_BRANCHES   1
 
#define COVERAGE_INDEX_METHODS   2
 
#define COVERAGE_TARGET_LINES   1
 
#define COVERAGE_TARGET_BRANCHES   2
 
#define COVERAGE_TARGET_METHODS   4
 
#define Check_Type(v, t)
 
#define RB_OBJ_GC_FLAGS_MAX   5
 
#define RUBY_DTRACE_CREATE_HOOK(name, arg)   RUBY_DTRACE_HOOK(name##_CREATE, arg)
 
#define RUBY_DTRACE_HOOK(name, arg)
 
#define RB_OBJ_BUILTIN_TYPE(obj)   rb_obj_builtin_type(obj)
 
#define OBJ_BUILTIN_TYPE(obj)   RB_OBJ_BUILTIN_TYPE(obj)
 

Typedefs

typedef struct rb_subclass_entry rb_subclass_entry_t
 
typedef unsigned long rb_serial_t
 
typedef struct rb_classext_struct rb_classext_t
 
typedef struct rb_imemo_alloc_struct rb_imemo_alloc_t
 
typedef void rb_check_funcall_hook(int, VALUE, ID, int, const VALUE *, VALUE)
 

Enumerations

enum  { RSTRUCT_EMBED_LEN_MAX = 3, RSTRUCT_EMBED_LEN_MASK = (RUBY_FL_USER2|RUBY_FL_USER1), RSTRUCT_EMBED_LEN_SHIFT = (RUBY_FL_USHIFT+1), RSTRUCT_ENUM_END }
 
enum  imemo_type {
  imemo_env = 0, imemo_cref = 1, imemo_svar = 2, imemo_throw_data = 3,
  imemo_ifunc = 4, imemo_memo = 5, imemo_ment = 6, imemo_iseq = 7,
  imemo_alloc = 8
}
 
enum  { cmp_opt_Fixnum, cmp_opt_String, cmp_opt_Float, cmp_optimizable_count }
 
enum  ruby_num_rounding_mode { RUBY_NUM_ROUND_HALF_UP, RUBY_NUM_ROUND_HALF_EVEN, RUBY_NUM_ROUND_HALF_DOWN, RUBY_NUM_ROUND_DEFAULT = ROUND_DEFAULT }
 
enum  rb_int_parse_flags {
  RB_INT_PARSE_SIGN = 0x01, RB_INT_PARSE_UNDERSCORE = 0x02, RB_INT_PARSE_PREFIX = 0x04, RB_INT_PARSE_ALL = 0x07,
  RB_INT_PARSE_DEFAULT = 0x07
}
 

Functions

void ruby_init_setproctitle (int argc, char *argv[])
 
void rb_class_subclass_add (VALUE super, VALUE klass)
 
void rb_class_remove_from_super_subclasses (VALUE)
 
int rb_singleton_class_internal_p (VALUE sklass)
 
struct vm_ifuncrb_vm_ifunc_new (VALUE(*func)(ANYARGS), const void *data, int min_argc, int max_argc)
 
struct rb_global_entryrb_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 *)
 
VALUE rb_ary_last (int, const VALUE *, VALUE)
 
void rb_ary_set_len (VALUE, long)
 
void rb_ary_delete_same (VALUE, VALUE)
 
VALUE rb_ary_tmp_new_fill (long capa)
 
VALUE rb_ary_at (VALUE, VALUE)
 
size_t rb_ary_memsize (VALUE)
 
double rb_big_fdiv_double (VALUE x, VALUE y)
 
VALUE rb_big_uminus (VALUE x)
 
VALUE rb_big_hash (VALUE)
 
VALUE rb_big_odd_p (VALUE)
 
VALUE rb_big_even_p (VALUE)
 
size_t rb_big_size (VALUE)
 
VALUE rb_integer_float_cmp (VALUE x, VALUE y)
 
VALUE rb_integer_float_eq (VALUE x, VALUE y)
 
VALUE rb_cstr_parse_inum (const char *str, ssize_t len, char **endp, int base)
 
VALUE rb_big_comp (VALUE x)
 
VALUE rb_big_aref (VALUE x, VALUE y)
 
VALUE rb_big_abs (VALUE x)
 
VALUE rb_big_size_m (VALUE big)
 
VALUE rb_big_bit_length (VALUE big)
 
VALUE rb_big_remainder (VALUE x, VALUE y)
 
VALUE rb_big_gt (VALUE x, VALUE y)
 
VALUE rb_big_ge (VALUE x, VALUE y)
 
VALUE rb_big_lt (VALUE x, VALUE y)
 
VALUE rb_big_le (VALUE x, VALUE y)
 
VALUE rb_class_boot (VALUE)
 A utility function that wraps class_alloc. More...
 
VALUE rb_class_inherited (VALUE, VALUE)
 Calls Class::inherited. More...
 
VALUE rb_make_metaclass (VALUE, VALUE)
 
VALUE rb_include_class_new (VALUE, VALUE)
 
void rb_class_foreach_subclass (VALUE klass, void(*f)(VALUE, VALUE), VALUE)
 
void rb_class_detach_subclasses (VALUE)
 
void rb_class_detach_module_subclasses (VALUE)
 
void rb_class_remove_from_module_subclasses (VALUE)
 
VALUE rb_obj_methods (int argc, const VALUE *argv, VALUE obj)
 
VALUE rb_obj_protected_methods (int argc, const VALUE *argv, VALUE obj)
 
VALUE rb_obj_private_methods (int argc, const VALUE *argv, VALUE obj)
 
VALUE rb_obj_public_methods (int argc, const VALUE *argv, VALUE obj)
 
VALUE rb_special_singleton_class (VALUE)
 
VALUE rb_singleton_class_clone_and_attach (VALUE obj, VALUE attach)
 
VALUE rb_singleton_class_get (VALUE obj)
 Returns the singleton class of obj, or nil if obj is not a singleton object. More...
 
void Init_class_hierarchy (void)
 
int rb_class_has_methods (VALUE c)
 
void rb_undef_methods_from (VALUE klass, VALUE super)
 
VALUE rb_invcmp (VALUE, VALUE)
 
int rb_dvar_defined (ID, const struct rb_block *)
 
int rb_local_defined (ID, const struct rb_block *)
 
 CONSTFUNC (const char *rb_insns_name(int i))
 
VALUE rb_insns_name_array (void)
 
VALUE rb_complex_plus (VALUE, VALUE)
 
VALUE rb_complex_mul (VALUE, VALUE)
 
VALUE rb_complex_abs (VALUE x)
 
VALUE rb_complex_sqrt (VALUE x)
 
VALUE rb_obj_is_fiber (VALUE)
 
void rb_fiber_reset_root_local_storage (VALUE)
 
void ruby_register_rollback_func_for_ensure (VALUE(*ensure_func)(ANYARGS), VALUE(*rollback_func)(ANYARGS))
 
 PRINTF_ARGS (void ruby_debug_printf(const char *,...), 1, 2)
 
VALUE rb_dir_getwd_ospath (void)
 
void Init_enc (void)
 
void Init_ext (void)
 
ID rb_id_encoding (void)
 
 CONSTFUNC (void rb_gc_mark_encodings(void))
 
rb_encodingrb_enc_get_from_index (int index)
 
rb_encodingrb_enc_check_str (VALUE str1, VALUE str2)
 
int rb_encdb_replicate (const char *alias, const char *orig)
 
int rb_encdb_alias (const char *alias, const char *orig)
 
int rb_encdb_dummy (const char *name)
 
void rb_encdb_declare (const char *name)
 
void rb_enc_set_base (const char *name, const char *orig)
 
int rb_enc_set_dummy (int index)
 
void rb_encdb_set_unicode (int index)
 
 PUREFUNC (int rb_data_is_encoding(VALUE obj))
 
VALUE rb_f_send (int argc, VALUE *argv, VALUE recv)
 
VALUE rb_nmin_run (VALUE obj, VALUE num, int by, int rev, int ary)
 
void rb_report_bug_valist (VALUE file, int line, const char *fmt, va_list args)
 
VALUE rb_syntax_error_append (VALUE, VALUE, int, int, rb_encoding *, const char *, va_list)
 
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)
 
 PRINTF_ARGS (void rb_sys_warn(const char *fmt,...), 1, 2)
 
 PRINTF_ARGS (void rb_syserr_warn(int err, const char *fmt,...), 2, 3)
 
 PRINTF_ARGS (void rb_enc_warn(rb_encoding *enc, const char *fmt,...), 2, 3)
 
 PRINTF_ARGS (void rb_syserr_enc_warn(int err, rb_encoding *enc, const char *fmt,...), 3, 4)
 
VALUE rb_name_err_new (VALUE mesg, VALUE recv, VALUE method)
 
VALUE rb_key_err_new (VALUE mesg, VALUE recv, VALUE name)
 
 NORETURN (void ruby_deprecated_internal_feature(const char *))
 
VALUE rb_warning_warn (VALUE mod, VALUE str)
 
VALUE rb_warning_string (const char *fmt,...)
 
VALUE rb_refinement_module_get_refined_class (VALUE module)
 
VALUE rb_get_backtrace (VALUE info)
 
void rb_call_end_proc (VALUE data)
 
void rb_mark_end_proc (void)
 
VALUE rb_home_dir_of (VALUE user, VALUE result)
 
VALUE rb_default_home_dir (VALUE result)
 
VALUE rb_realpath_internal (VALUE basedir, VALUE path, int strict)
 
VALUE rb_check_realpath (VALUE basedir, VALUE path)
 
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)
 
VALUE rb_get_path_check (VALUE, int)
 
void Init_File (void)
 
int ruby_is_fd_loadable (int fd)
 
void Init_heap (void)
 
void * ruby_mimmalloc (size_t size)
 
void ruby_mimfree (void *ptr)
 
void rb_objspace_set_event_hook (const rb_event_flag_t event)
 
void rb_gc_writebarrier_remember (VALUE obj)
 
void ruby_gc_set_params (int safe_level)
 
void rb_copy_wb_protected_attribute (VALUE dest, VALUE obj)
 
void * ruby_sized_xrealloc (void *ptr, size_t new_size, size_t old_size) RUBY_ATTR_ALLOC_SIZE((2))
 
void * ruby_sized_xrealloc2 (void *ptr, size_t new_count, size_t element_size, size_t old_count) RUBY_ATTR_ALLOC_SIZE((2
 
void void ruby_sized_xfree (void *x, size_t size)
 
struct st_tablerb_hash_tbl_raw (VALUE hash)
 
VALUE rb_hash_new_with_size (st_index_t size)
 
VALUE rb_hash_has_key (VALUE hash, VALUE key)
 
VALUE rb_hash_default_value (VALUE hash, VALUE key)
 
VALUE rb_hash_set_default_proc (VALUE hash, VALUE proc)
 
long rb_objid_hash (st_index_t index)
 
long rb_dbl_long_hash (double d)
 
st_tablerb_init_identtable (void)
 
st_tablerb_init_identtable_with_size (st_index_t size)
 
VALUE rb_hash_compare_by_id_p (VALUE hash)
 
VALUE rb_hash_keys (VALUE hash)
 
VALUE rb_hash_values (VALUE hash)
 
VALUE rb_hash_rehash (VALUE hash)
 
int rb_hash_add_new_element (VALUE hash, VALUE key, VALUE val)
 
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)
 
VALUE rb_io_flush_raw (VALUE, int)
 
size_t rb_io_memsize (const rb_io_t *)
 
int rb_stderr_tty_p (void)
 
VALUE rb_get_load_path (void)
 
VALUE rb_get_expanded_load_path (void)
 
int rb_require_internal (VALUE fname, int safe)
 
 NORETURN (void rb_load_fail(VALUE, const char *))
 
int Init_enc_set_filesystem_encoding (void)
 
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, const 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 ruby_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_int_succ (VALUE num)
 
VALUE rb_int_pred (VALUE num)
 
VALUE rb_int_uminus (VALUE num)
 
VALUE rb_float_uminus (VALUE num)
 
VALUE rb_int_plus (VALUE x, VALUE y)
 
VALUE rb_int_minus (VALUE x, VALUE y)
 
VALUE rb_int_mul (VALUE x, VALUE y)
 
VALUE rb_int_idiv (VALUE x, VALUE y)
 
VALUE rb_int_modulo (VALUE x, VALUE y)
 
VALUE rb_int_round (VALUE num, int ndigits, enum ruby_num_rounding_mode mode)
 
VALUE rb_int2str (VALUE num, int base)
 
VALUE rb_dbl_hash (double d)
 
VALUE rb_fix_plus (VALUE x, VALUE y)
 
VALUE rb_int_gt (VALUE x, VALUE y)
 
int rb_float_cmp (VALUE x, VALUE y)
 
VALUE rb_float_gt (VALUE x, VALUE y)
 
VALUE rb_int_ge (VALUE x, VALUE y)
 
enum ruby_num_rounding_mode rb_num_get_rounding_option (VALUE opts)
 
double rb_int_fdiv_double (VALUE x, VALUE y)
 
VALUE rb_int_pow (VALUE x, VALUE y)
 
VALUE rb_float_pow (VALUE x, VALUE y)
 
VALUE rb_int_cmp (VALUE x, VALUE y)
 
VALUE rb_int_equal (VALUE x, VALUE y)
 
VALUE rb_int_divmod (VALUE x, VALUE y)
 
VALUE rb_int_and (VALUE x, VALUE y)
 
VALUE rb_int_lshift (VALUE x, VALUE y)
 
VALUE rb_int_div (VALUE x, VALUE y)
 
VALUE rb_int_abs (VALUE num)
 
VALUE rb_float_abs (VALUE flt)
 
VALUE rb_float_equal (VALUE x, VALUE y)
 
VALUE rb_float_eql (VALUE x, VALUE y)
 
void rb_obj_copy_ivar (VALUE dest, VALUE obj)
 
 CONSTFUNC (VALUE rb_obj_equal(VALUE obj1, VALUE obj2))
 
 CONSTFUNC (VALUE rb_obj_not(VALUE obj))
 
VALUE rb_class_search_ancestor (VALUE klass, VALUE super)
 
 NORETURN (void rb_undefined_alloc(VALUE klass))
 
double rb_num_to_dbl (VALUE val)
 
VALUE rb_obj_dig (int argc, VALUE *argv, VALUE self, VALUE notfound)
 
VALUE rb_immutable_obj_clone (int, VALUE *, VALUE)
 
VALUE rb_obj_not_equal (VALUE obj1, VALUE obj2)
 call-seq: obj != other -> true or false More...
 
VALUE rb_convert_type_with_id (VALUE, int, const char *, ID)
 
VALUE rb_check_convert_type_with_id (VALUE, int, const char *, ID)
 
VALUE rb_parser_get_yydebug (VALUE)
 
VALUE rb_parser_set_yydebug (VALUE, VALUE)
 
VALUE rb_parser_set_context (VALUE, const struct rb_block *, int)
 
void * rb_parser_load_file (VALUE parser, VALUE name)
 
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)
 
 PUREFUNC (int rb_is_const_sym(VALUE sym))
 
ID rb_make_internal_id (void)
 
void rb_gc_free_dsymbol (VALUE)
 
ID rb_id_attrget (ID id)
 
VALUE rb_proc_location (VALUE self)
 
st_index_t rb_hash_proc (st_index_t hash, VALUE proc)
 
int rb_block_arity (void)
 
int rb_block_min_max_arity (int *max)
 
VALUE rb_func_proc_new (rb_block_call_func_t func, VALUE val)
 
VALUE rb_func_lambda_new (rb_block_call_func_t func, VALUE val, int min_argc, int max_argc)
 
VALUE rb_block_to_s (VALUE self, const struct rb_block *block, const char *additional_info)
 
rb_pid_t rb_fork_ruby (int *status)
 
void rb_last_status_clear (void)
 
VALUE rb_rational_uminus (VALUE self)
 
VALUE rb_rational_plus (VALUE self, VALUE other)
 
VALUE rb_lcm (VALUE x, VALUE y)
 
VALUE rb_rational_reciprocal (VALUE x)
 
VALUE rb_cstr_to_rat (const char *, int)
 
VALUE rb_rational_abs (VALUE self)
 
VALUE rb_rational_cmp (VALUE self, VALUE other)
 
VALUE rb_numeric_quo (VALUE x, VALUE y)
 
VALUE rb_reg_compile (VALUE str, int options, const char *sourcefile, int sourceline)
 
VALUE rb_reg_check_preprocess (VALUE)
 
long rb_reg_search0 (VALUE, VALUE, long, int, int)
 
VALUE rb_reg_match_p (VALUE re, VALUE str, long pos)
 
bool rb_reg_start_with_p (VALUE re, VALUE str)
 
void rb_backref_set_string (VALUE string, long pos, long len)
 
int rb_match_count (VALUE match)
 
int rb_match_nth_defined (int nth, VALUE match)
 
int rb_get_next_signal (void)
 
int rb_sigaltstack_size (void)
 
void rb_hash_bulk_insert (long, const VALUE *, VALUE)
 
VALUE rb_fstring (VALUE)
 
VALUE rb_fstring_new (const char *ptr, long len)
 
VALUE rb_fstring_cstr (const char *str)
 
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)
 
char * rb_str_fill_terminator (VALUE str, const int termlen)
 
void rb_str_change_terminator_length (VALUE str, const int oldtermlen, const int termlen)
 
VALUE rb_str_locktmp_ensure (VALUE str, VALUE(*func)(VALUE), VALUE arg)
 
VALUE rb_str_tmp_frozen_acquire (VALUE str)
 
void rb_str_tmp_frozen_release (VALUE str, VALUE tmp)
 
VALUE rb_str_chomp_string (VALUE str, VALUE chomp)
 
size_t rb_str_memsize (VALUE)
 
VALUE rb_sym_proc_call (ID mid, int argc, const VALUE *argv, VALUE passed_proc)
 
VALUE rb_sym_to_proc (VALUE sym)
 
char * rb_str_to_cstr (VALUE str)
 
VALUE rb_str_eql (VALUE str1, VALUE str2)
 
VALUE rb_sym_intern_ascii (const char *ptr, long len)
 
VALUE rb_sym_intern_ascii_cstr (const char *ptr)
 
VALUE rb_struct_init_copy (VALUE copy, VALUE s)
 
VALUE rb_struct_lookup (VALUE s, VALUE idx)
 
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_default_coverage (int)
 
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)
 
int rb_thread_to_be_killed (VALUE thread)
 
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)
 
int rb_divert_reserved_fd (int fd)
 
size_t rb_econv_memsize (rb_econv_t *)
 
char * ruby_dtoa (double d_, int mode, int ndigits, int *decpt, int *sign, char **rve)
 
char * ruby_hdtoa (double d, const char *xdigs, int ndigits, int *decpt, int *sign, char **rve)
 
void rb_gc_mark_global_tbl (void)
 
size_t rb_generic_ivar_memsize (VALUE)
 
VALUE rb_search_class_path (VALUE)
 
VALUE rb_attr_delete (VALUE, ID)
 
VALUE rb_ivar_lookup (VALUE obj, ID id, VALUE undef)
 
void rb_autoload_str (VALUE mod, ID id, VALUE file)
 
void rb_deprecate_constant (VALUE mod, const char *name)
 
rb_serial_t rb_next_class_serial (void)
 
VALUE rb_obj_is_thread (VALUE obj)
 
void rb_vm_mark (void *ptr)
 
void Init_BareVM (void)
 
void Init_vm_objects (void)
 
 PUREFUNC (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)
 
const void ** rb_vm_get_insns_address_table (void)
 
VALUE rb_sourcefilename (void)
 
VALUE rb_source_location (int *pline)
 
const char * rb_source_loc (int *pline)
 
void rb_vm_pop_cfunc_frame (void)
 
int rb_vm_add_root_module (ID id, VALUE module)
 
void rb_vm_check_redefinition_by_prepend (VALUE klass)
 
VALUE rb_yield_refine_block (VALUE refinement, VALUE refinements)
 
VALUE ruby_vm_special_exception_copy (VALUE)
 
 PUREFUNC (st_table *rb_vm_fstring_table(void))
 
void rb_print_backtrace (void)
 
void Init_vm_eval (void)
 
VALUE rb_current_realfilepath (void)
 
VALUE rb_check_block_call (VALUE, ID, int, const VALUE *, rb_block_call_func_t, VALUE)
 
VALUE rb_check_funcall_with_hook (VALUE recv, ID mid, int argc, const VALUE *argv, rb_check_funcall_hook *hook, VALUE arg)
 
VALUE rb_check_funcall_default (VALUE, ID, int, const VALUE *, VALUE)
 
VALUE rb_yield_1 (VALUE val)
 
VALUE rb_yield_force_blockarg (VALUE values)
 
VALUE rb_lambda_call (VALUE obj, ID mid, int argc, const VALUE *argv, rb_block_call_func_t bl_proc, int min_argc, int max_argc, VALUE data2)
 
VALUE rb_equal_opt (VALUE obj1, VALUE obj2)
 
VALUE rb_eql_opt (VALUE obj1, VALUE obj2)
 
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 rb_vm_thread_backtrace (int argc, const VALUE *argv, VALUE thval)
 
VALUE rb_vm_thread_backtrace_locations (int argc, const 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_backtrace_to_location_ary (VALUE obj)
 
void rb_backtrace_each (VALUE(*iter)(VALUE recv, VALUE str), VALUE output)
 
RUBY_SYMBOL_EXPORT_BEGIN const char * rb_objspace_data_type_name (VALUE obj)
 
VALUE rb_thread_io_blocking_region (rb_blocking_function_t *func, void *data1, int fd)
 
VALUE rb_big_mul_normal (VALUE x, VALUE y)
 
VALUE rb_big_mul_balance (VALUE x, VALUE y)
 
VALUE rb_big_mul_karatsuba (VALUE x, VALUE y)
 
VALUE rb_big_mul_toom3 (VALUE x, VALUE y)
 
VALUE rb_big_sq_fast (VALUE x)
 
VALUE rb_big_divrem_normal (VALUE x, VALUE y)
 
VALUE rb_big2str_poweroftwo (VALUE x, int base)
 
VALUE rb_big2str_generic (VALUE x, int base)
 
VALUE rb_str2big_poweroftwo (VALUE arg, int base, int badcheck)
 
VALUE rb_str2big_normal (VALUE arg, int base, int badcheck)
 
VALUE rb_str2big_karatsuba (VALUE arg, int base, int badcheck)
 
VALUE rb_int_parse_cstr (const char *str, ssize_t len, char **endp, size_t *ndigits, int base, int flags)
 
int rb_bug_reporter_add (void(*func)(FILE *, void *), void *data)
 
 NORETURN (void rb_unexpected_type(VALUE, int))
 
VALUE rb_hash_delete_entry (VALUE hash, VALUE key)
 
VALUE rb_ident_hash_new (void)
 
void rb_maygvl_fd_fix_cloexec (int fd)
 
int rb_gc_for_fd (int err)
 
void rb_write_error_str (VALUE mesg)
 
VALUE rb_int_positive_pow (long x, unsigned long y)
 
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, const VALUE *argv, int accept_shell)
 
struct rb_execargrb_execarg_get (VALUE execarg_obj)
 
VALUE rb_execarg_init (int argc, const VALUE *argv, int accept_shell, VALUE execarg_obj)
 
int rb_execarg_addopt (VALUE execarg_obj, VALUE key, VALUE val)
 
void rb_execarg_parent_start (VALUE execarg_obj)
 
void rb_execarg_parent_end (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)
 
VALUE rb_gcd (VALUE x, VALUE y)
 
VALUE rb_gcd_normal (VALUE self, VALUE other)
 
int ruby_thread_has_gvl_p (void)
 
unsigned long ruby_scan_digits (const char *str, ssize_t len, int base, size_t *retlen, int *overflow)
 
void rb_mark_generic_ivar (VALUE)
 
VALUE rb_const_missing (VALUE klass, VALUE name)
 
int rb_class_ivar_set (VALUE klass, ID vid, VALUE value)
 
st_tablerb_st_copy (VALUE obj, struct st_table *orig_tbl)
 
VALUE rb_wb_protected_newobj_of (VALUE, VALUE)
 
VALUE rb_wb_unprotected_newobj_of (VALUE, VALUE)
 
size_t rb_obj_memsize_of (VALUE)
 
void rb_gc_verify_internal_consistency (void)
 
size_t rb_obj_gc_flags (VALUE, ID[], size_t)
 
void rb_gc_mark_values (long n, const VALUE *values)
 
VALUE rb_imemo_new (enum imemo_type type, VALUE v1, VALUE v2, VALUE v3, VALUE v0)
 

Variables

const char ruby_digitmap []
 
VALUE rb_eEAGAIN
 
VALUE rb_eEWOULDBLOCK
 
VALUE rb_eEINPROGRESS
 
VALUEruby_initial_gc_stress_ptr
 
int ruby_disable_gc
 
const char ruby_exec_prefix []
 
const char ruby_initial_load_paths []
 
int ruby_enable_coredump
 
VALUE rb_cEncodingConverter
 
rb_encoding OnigEncodingUS_ASCII
 
rb_encoding OnigEncodingUTF_8
 
const char ruby_engine []
 
const signed char ruby_digit36_to_number_table []
 
const char ruby_hexdigits []
 

Macro Definition Documentation

◆ __bool_true_false_are_defined

#define __bool_true_false_are_defined   1

Definition at line 38 of file internal.h.

◆ __has_extension

#define __has_extension   __has_feature

Definition at line 73 of file internal.h.

◆ __has_feature

#define __has_feature (   x)    0

Definition at line 69 of file internal.h.

◆ ARGVSTR2ARGC

#define ARGVSTR2ARGC (   argv_str)    (RSTRING_LEN(argv_str) / sizeof(char *) - 2)

Definition at line 1563 of file internal.h.

Referenced by rb_execarg_commandline().

◆ ARGVSTR2ARGV

#define ARGVSTR2ARGV (   argv_str)    ((char **)RSTRING_PTR(argv_str) + 1)

Definition at line 1564 of file internal.h.

Referenced by rb_execarg_commandline().

◆ BDIGIT

#define BDIGIT   unsigned int

Definition at line 526 of file internal.h.

◆ BDIGIT_DBL

#define BDIGIT_DBL   unsigned LONG_LONG

Definition at line 528 of file internal.h.

◆ BDIGIT_DBL_SIGNED

#define BDIGIT_DBL_SIGNED   LONG_LONG

Definition at line 529 of file internal.h.

◆ BIGNUM_DIGITS

#define BIGNUM_DIGITS (   b)
Value:
((RBASIC(b)->flags & BIGNUM_EMBED_FLAG) ? \
RBIGNUM(b)->as.ary : \
RBIGNUM(b)->as.heap.digits)
#define RBIGNUM(obj)
Definition: internal.h:622
#define RBASIC(obj)
Definition: ruby.h:1197
#define BIGNUM_EMBED_FLAG
Definition: internal.h:607

Definition at line 616 of file internal.h.

◆ BIGNUM_EMBED_FLAG

#define BIGNUM_EMBED_FLAG   ((VALUE)FL_USER2)

Definition at line 607 of file internal.h.

◆ BIGNUM_EMBED_LEN_MASK

#define BIGNUM_EMBED_LEN_MASK   ((VALUE)(FL_USER5|FL_USER4|FL_USER3))

Definition at line 608 of file internal.h.

◆ BIGNUM_EMBED_LEN_MAX

#define BIGNUM_EMBED_LEN_MAX   (SIZEOF_VALUE*3/SIZEOF_ACTUAL_BDIGIT)

Definition at line 581 of file internal.h.

◆ BIGNUM_EMBED_LEN_NUMBITS

#define BIGNUM_EMBED_LEN_NUMBITS   3

Definition at line 578 of file internal.h.

◆ BIGNUM_EMBED_LEN_SHIFT

#define BIGNUM_EMBED_LEN_SHIFT   (FL_USHIFT+BIGNUM_EMBED_LEN_NUMBITS)

Definition at line 609 of file internal.h.

◆ BIGNUM_LEN

#define BIGNUM_LEN (   b)
Value:
((RBASIC(b)->flags & BIGNUM_EMBED_FLAG) ? \
(size_t)((RBASIC(b)->flags >> BIGNUM_EMBED_LEN_SHIFT) & \
RBIGNUM(b)->as.heap.len)
#define BIGNUM_EMBED_LEN_MASK
Definition: internal.h:608
#define BIGNUM_EMBED_LEN_SHIFT
Definition: internal.h:609
#define RBIGNUM(obj)
Definition: internal.h:622
#define RBASIC(obj)
Definition: ruby.h:1197
#define BIGNUM_EMBED_FLAG
Definition: internal.h:607

Definition at line 610 of file internal.h.

Referenced by rb_absint_singlebit_p(), rb_absint_size(), rb_big_clone(), rb_big_comp(), rb_big_divrem_normal(), rb_big_eql(), rb_big_even_p(), rb_big_isqrt(), rb_big_mul_balance(), rb_big_mul_karatsuba(), rb_big_mul_normal(), rb_big_mul_toom3(), rb_big_odd_p(), rb_big_sq_fast(), and rb_integer_pack().

◆ BIGNUM_LENINT

#define BIGNUM_LENINT (   b)    rb_long2int(BIGNUM_LEN(b))

Definition at line 620 of file internal.h.

◆ BIGNUM_NEGATE

#define BIGNUM_NEGATE (   b)    (RBASIC(b)->flags ^= BIGNUM_SIGN_BIT)

Definition at line 605 of file internal.h.

Referenced by rb_big_uminus().

◆ BIGNUM_NEGATIVE_P

#define BIGNUM_NEGATIVE_P (   b)    (!BIGNUM_SIGN(b))

Definition at line 604 of file internal.h.

Referenced by rb_big_abs(), rb_big_bit_length(), rb_big_pow(), and rb_num_to_uint().

◆ BIGNUM_POSITIVE_P

#define BIGNUM_POSITIVE_P (   b)    BIGNUM_SIGN(b)

Definition at line 603 of file internal.h.

Referenced by rb_big_comp(), and rb_integer_pack().

◆ BIGNUM_SET_SIGN

#define BIGNUM_SET_SIGN (   b,
  sign 
)
Value:
((sign) ? (RBASIC(b)->flags |= BIGNUM_SIGN_BIT) \
: (RBASIC(b)->flags &= ~BIGNUM_SIGN_BIT))
#define BIGNUM_SIGN_BIT
Definition: internal.h:597
#define RBASIC(obj)
Definition: ruby.h:1197

Definition at line 600 of file internal.h.

◆ BIGNUM_SIGN

#define BIGNUM_SIGN (   b)    ((RBASIC(b)->flags & BIGNUM_SIGN_BIT) != 0)

◆ BIGNUM_SIGN_BIT

#define BIGNUM_SIGN_BIT   ((VALUE)FL_USER1)

Definition at line 597 of file internal.h.

◆ bit_length

#define bit_length (   x)
Value:
(unsigned int) \
(sizeof(x) <= SIZEOF_INT ? SIZEOF_INT * CHAR_BIT - nlz_int((unsigned int)(x)) : \
SIZEOF_LONG * CHAR_BIT - nlz_long((unsigned long)(x)))
#define CHAR_BIT
Definition: ruby.h:196

Definition at line 518 of file internal.h.

◆ bool

#define bool   signed char

Definition at line 35 of file internal.h.

◆ Check_Type

#define Check_Type (   v,
 
)
Value:
(!RB_TYPE_P((VALUE)(v), (t)) || \
((t) == RUBY_T_DATA && RTYPEDDATA_P(v)) ? \
rb_unexpected_type((VALUE)(v), (t)) : (void)0)
#define RB_TYPE_P(obj, type)
Definition: ruby.h:527
unsigned long VALUE
Definition: ruby.h:85
void rb_unexpected_type(VALUE x, int t)
Definition: error.c:739
#define RTYPEDDATA_P(v)
Definition: ruby.h:1108

Definition at line 1847 of file internal.h.

◆ CMP_OPTIMIZABLE

#define CMP_OPTIMIZABLE (   data,
  type 
)
Value:
(((data).opt_inited & CMP_OPTIMIZABLE_BIT(type)) ? \
((data).opt_methods & CMP_OPTIMIZABLE_BIT(type)) : \
(((data).opt_inited |= CMP_OPTIMIZABLE_BIT(type)), \
rb_method_basic_definition_p(TOKEN_PASTE(rb_c,type), id_cmp) && \
((data).opt_methods |= CMP_OPTIMIZABLE_BIT(type))))
#define CMP_OPTIMIZABLE_BIT(type)
Definition: internal.h:996
#define TOKEN_PASTE(x, y)
Definition: version.h:12
#define id_cmp
Definition: array.c:29

Definition at line 997 of file internal.h.

◆ CMP_OPTIMIZABLE_BIT

#define CMP_OPTIMIZABLE_BIT (   type)    (1U << TOKEN_PASTE(cmp_opt_,type))

Definition at line 996 of file internal.h.

◆ COVERAGE_INDEX_BRANCHES

#define COVERAGE_INDEX_BRANCHES   1

Definition at line 1695 of file internal.h.

◆ COVERAGE_INDEX_LINES

#define COVERAGE_INDEX_LINES   0

Definition at line 1694 of file internal.h.

◆ COVERAGE_INDEX_METHODS

#define COVERAGE_INDEX_METHODS   2

Definition at line 1696 of file internal.h.

◆ COVERAGE_TARGET_BRANCHES

#define COVERAGE_TARGET_BRANCHES   2

Definition at line 1698 of file internal.h.

◆ COVERAGE_TARGET_LINES

#define COVERAGE_TARGET_LINES   1

Definition at line 1697 of file internal.h.

◆ COVERAGE_TARGET_METHODS

#define COVERAGE_TARGET_METHODS   4

Definition at line 1699 of file internal.h.

◆ DEPRECATED_INTERNAL_FEATURE

#define DEPRECATED_INTERNAL_FEATURE (   func)    (ruby_deprecated_internal_feature(func), UNREACHABLE)

Definition at line 1174 of file internal.h.

◆ false

#define false   0

Definition at line 36 of file internal.h.

◆ FIXNUM_NEGATIVE_P

#define FIXNUM_NEGATIVE_P (   num)    ((SIGNED_VALUE)(num) < 0)

Definition at line 1317 of file internal.h.

◆ FIXNUM_POSITIVE_P

#define FIXNUM_POSITIVE_P (   num)    ((SIGNED_VALUE)(num) > (SIGNED_VALUE)INT2FIX(0))

Definition at line 1316 of file internal.h.

◆ FIXNUM_ZERO_P

#define FIXNUM_ZERO_P (   num)    ((num) == INT2FIX(0))

Definition at line 1318 of file internal.h.

Referenced by rb_int_fdiv_double().

◆ HASH_PROC_DEFAULT

#define HASH_PROC_DEFAULT   FL_USER2

Definition at line 1273 of file internal.h.

◆ IFUNC_NEW

#define IFUNC_NEW (   a,
  b,
 
)    ((struct vm_ifunc *)rb_imemo_new(imemo_ifunc, (VALUE)(a), (VALUE)(b), (VALUE)(c), 0))

Definition at line 925 of file internal.h.

Referenced by rb_vm_ifunc_new().

◆ IMEMO_DEBUG

#define IMEMO_DEBUG   0

Definition at line 827 of file internal.h.

◆ IMEMO_FL_USER0

#define IMEMO_FL_USER0   FL_USER4

Definition at line 874 of file internal.h.

◆ IMEMO_FL_USER1

#define IMEMO_FL_USER1   FL_USER5

Definition at line 875 of file internal.h.

◆ IMEMO_FL_USER2

#define IMEMO_FL_USER2   FL_USER6

Definition at line 876 of file internal.h.

◆ IMEMO_FL_USER3

#define IMEMO_FL_USER3   FL_USER7

Definition at line 877 of file internal.h.

◆ IMEMO_FL_USER4

#define IMEMO_FL_USER4   FL_USER8

Definition at line 878 of file internal.h.

◆ IMEMO_FL_USHIFT

#define IMEMO_FL_USHIFT   (FL_USHIFT + 4)

Definition at line 873 of file internal.h.

◆ IMEMO_MASK

#define IMEMO_MASK   0x0f

Definition at line 849 of file internal.h.

◆ INT_NEGATIVE_P

#define INT_NEGATIVE_P (   x)    (FIXNUM_P(x) ? FIXNUM_NEGATIVE_P(x) : BIGNUM_NEGATIVE_P(x))

Definition at line 1320 of file internal.h.

Referenced by rb_rational_abs().

◆ is_ascii_string

#define is_ascii_string (   str)    (rb_enc_str_coderange(str) == ENC_CODERANGE_7BIT)

Definition at line 1654 of file internal.h.

Referenced by rb_str_conv_enc_opts().

◆ is_broken_string

#define is_broken_string (   str)    (rb_enc_str_coderange(str) == ENC_CODERANGE_BROKEN)

Definition at line 1655 of file internal.h.

◆ LIKELY

#define LIKELY (   x)    RB_LIKELY(x)

Definition at line 42 of file internal.h.

Referenced by rb_memsearch(), and rb_str_concat_literals().

◆ MAYBE_UNUSED

#define MAYBE_UNUSED (   x)    x

Definition at line 46 of file internal.h.

Referenced by rb_debug_inspector_open().

◆ MEMO_CAST

#define MEMO_CAST (   m)    ((struct MEMO *)m)

Definition at line 961 of file internal.h.

◆ MEMO_FOR

#define MEMO_FOR (   type,
  value 
)    ((type *)RARRAY_PTR(value))

Definition at line 967 of file internal.h.

◆ MEMO_NEW

#define MEMO_NEW (   a,
  b,
 
)    ((struct MEMO *)rb_imemo_new(imemo_memo, (VALUE)(a), (VALUE)(b), (VALUE)(c), 0))

Definition at line 963 of file internal.h.

◆ MEMO_V1_SET

#define MEMO_V1_SET (   m,
 
)    RB_OBJ_WRITE((m), &(m)->v1, (v))

Definition at line 958 of file internal.h.

◆ MEMO_V2_SET

#define MEMO_V2_SET (   m,
 
)    RB_OBJ_WRITE((m), &(m)->v2, (v))

Definition at line 959 of file internal.h.

◆ MUL_OVERFLOW_FIXNUM_P

#define MUL_OVERFLOW_FIXNUM_P (   a,
 
)    MUL_OVERFLOW_SIGNED_INTEGER_P(a, b, FIXNUM_MIN, FIXNUM_MAX)

Definition at line 122 of file internal.h.

◆ MUL_OVERFLOW_INT_P

#define MUL_OVERFLOW_INT_P (   a,
 
)    MUL_OVERFLOW_SIGNED_INTEGER_P(a, b, INT_MIN, INT_MAX)

Definition at line 132 of file internal.h.

◆ MUL_OVERFLOW_LONG_LONG_P

#define MUL_OVERFLOW_LONG_LONG_P (   a,
 
)    MUL_OVERFLOW_SIGNED_INTEGER_P(a, b, LLONG_MIN, LLONG_MAX)

Definition at line 130 of file internal.h.

◆ MUL_OVERFLOW_LONG_P

#define MUL_OVERFLOW_LONG_P (   a,
 
)    MUL_OVERFLOW_SIGNED_INTEGER_P(a, b, LONG_MIN, LONG_MAX)

Definition at line 131 of file internal.h.

◆ MUL_OVERFLOW_SIGNED_INTEGER_P

#define MUL_OVERFLOW_SIGNED_INTEGER_P (   a,
  b,
  min,
  max 
)
Value:
( \
(a) == 0 ? 0 : \
(a) == -1 ? (b) < -(max) : \
(a) > 0 ? \
((b) > 0 ? (max) / (a) < (b) : (min) / (a) > (b)) : \
((b) > 0 ? (min) / (a) < (b) : (max) / (a) > (b)))

Definition at line 107 of file internal.h.

◆ NEW_CMP_OPT_MEMO

#define NEW_CMP_OPT_MEMO (   type,
  value 
)    NEW_PARTIAL_MEMO_FOR(type, value, cmp_opt)

Definition at line 994 of file internal.h.

◆ NEW_MEMO_FOR

#define NEW_MEMO_FOR (   type,
  value 
)    ((value) = rb_ary_tmp_new_fill(type_roomof(type, VALUE)), MEMO_FOR(type, value))

Definition at line 968 of file internal.h.

◆ NEW_PARTIAL_MEMO_FOR

#define NEW_PARTIAL_MEMO_FOR (   type,
  value,
  member 
)
Value:
((value) = rb_ary_tmp_new_fill(type_roomof(type, VALUE)), \
rb_ary_set_len((value), offsetof(type, member) / sizeof(VALUE)), \
MEMO_FOR(type, value))
#define type_roomof(x, y)
Definition: internal.h:966
void rb_ary_set_len(VALUE, long)
Definition: array.c:1625
VALUE rb_ary_tmp_new_fill(long capa)
Definition: array.c:550
#define offsetof(p_type, field)
Definition: addrinfo.h:186
unsigned long VALUE
Definition: ruby.h:85

Definition at line 970 of file internal.h.

◆ NEWOBJ_OF

#define NEWOBJ_OF (   obj,
  type,
  klass,
  flags 
)    RB_NEWOBJ_OF(obj,type,klass,flags)

Definition at line 1254 of file internal.h.

◆ numberof

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

Definition at line 66 of file internal.h.

◆ OBJ_BUILTIN_TYPE

#define OBJ_BUILTIN_TYPE (   obj)    RB_OBJ_BUILTIN_TYPE(obj)

Definition at line 1945 of file internal.h.

◆ OPTIMIZED_CMP

#define OPTIMIZED_CMP (   a,
  b,
  data 
)
Value:
((FIXNUM_P(a) && FIXNUM_P(b) && CMP_OPTIMIZABLE(data, Fixnum)) ? \
(((long)a > (long)b) ? 1 : ((long)a < (long)b) ? -1 : 0) : \
(STRING_P(a) && STRING_P(b) && CMP_OPTIMIZABLE(data, String)) ? \
rb_str_cmp(a, b) : \
(RB_FLOAT_TYPE_P(a) && RB_FLOAT_TYPE_P(b) && CMP_OPTIMIZABLE(data, Float)) ? \
rb_float_cmp(a, b) : \
rb_cmpint(rb_funcallv(a, id_cmp, 1, &b), a, b))
int rb_float_cmp(VALUE x, VALUE y)
Definition: numeric.c:1481
#define STRING_P(s)
Definition: internal.h:975
int rb_str_cmp(VALUE, VALUE)
Definition: string.c:3159
#define FIXNUM_P(f)
Definition: ruby.h:365
#define CMP_OPTIMIZABLE(data, type)
Definition: internal.h:997
#define id_cmp
Definition: array.c:29
#define RB_FLOAT_TYPE_P(obj)
Definition: ruby.h:523
#define rb_funcallv
Definition: console.c:21

Definition at line 1004 of file internal.h.

◆ PRI_BDIGIT_DBL_PREFIX

#define PRI_BDIGIT_DBL_PREFIX   PRI_LL_PREFIX

Definition at line 531 of file internal.h.

◆ PRI_BDIGIT_PREFIX

#define PRI_BDIGIT_PREFIX   ""

Definition at line 530 of file internal.h.

◆ PRIdBDIGIT

#define PRIdBDIGIT   PRI_BDIGIT_PREFIX"d"

Definition at line 561 of file internal.h.

◆ PRIdBDIGIT_DBL

#define PRIdBDIGIT_DBL   PRI_BDIGIT_DBL_PREFIX"d"

Definition at line 570 of file internal.h.

◆ PRIiBDIGIT

#define PRIiBDIGIT   PRI_BDIGIT_PREFIX"i"

Definition at line 562 of file internal.h.

◆ PRIiBDIGIT_DBL

#define PRIiBDIGIT_DBL   PRI_BDIGIT_DBL_PREFIX"i"

Definition at line 571 of file internal.h.

◆ PRIoBDIGIT

#define PRIoBDIGIT   PRI_BDIGIT_PREFIX"o"

Definition at line 563 of file internal.h.

◆ PRIoBDIGIT_DBL

#define PRIoBDIGIT_DBL   PRI_BDIGIT_DBL_PREFIX"o"

Definition at line 572 of file internal.h.

◆ PRIuBDIGIT

#define PRIuBDIGIT   PRI_BDIGIT_PREFIX"u"

Definition at line 564 of file internal.h.

◆ PRIuBDIGIT_DBL

#define PRIuBDIGIT_DBL   PRI_BDIGIT_DBL_PREFIX"u"

Definition at line 573 of file internal.h.

◆ PRIxBDIGIT

#define PRIxBDIGIT   PRI_BDIGIT_PREFIX"x"

Definition at line 565 of file internal.h.

◆ PRIXBDIGIT

#define PRIXBDIGIT   PRI_BDIGIT_PREFIX"X"

Definition at line 566 of file internal.h.

◆ PRIxBDIGIT_DBL

#define PRIxBDIGIT_DBL   PRI_BDIGIT_DBL_PREFIX"x"

Definition at line 574 of file internal.h.

◆ PRIXBDIGIT_DBL

#define PRIXBDIGIT_DBL   PRI_BDIGIT_DBL_PREFIX"X"

Definition at line 575 of file internal.h.

◆ QUOTE

#define QUOTE (   str)    rb_str_quote_unprintable(str)

Definition at line 1635 of file internal.h.

Referenced by rb_f_untrace_var(), and rb_path_to_class().

◆ QUOTE_ID

#define QUOTE_ID (   id)    rb_id_quote_unprintable(id)

◆ rb_cBignum

#define rb_cBignum   rb_cInteger

Definition at line 979 of file internal.h.

Referenced by Init_Bignum().

◆ rb_cFixnum

#define rb_cFixnum   rb_cInteger

Definition at line 978 of file internal.h.

◆ rb_float_new

#define rb_float_new (   d)    rb_float_new_inline(d)

Definition at line 1449 of file internal.h.

Referenced by generic_to_value().

◆ rb_float_value

#define rb_float_value (   v)    rb_float_value_inline(v)

Definition at line 1448 of file internal.h.

◆ rb_fstring_lit

#define rb_fstring_lit (   str)    rb_fstring_new((str), rb_strlen_lit(str))

Definition at line 1608 of file internal.h.

◆ rb_fstring_literal

#define rb_fstring_literal (   str)    rb_fstring_lit(str)

Definition at line 1609 of file internal.h.

◆ rb_key_err_raise

#define rb_key_err_raise (   mesg,
  recv,
  name 
)    rb_exc_raise(rb_key_err_new(mesg, recv, name))

Definition at line 1171 of file internal.h.

◆ RB_MAX_GROUPS

#define RB_MAX_GROUPS   (65536)

Definition at line 1514 of file internal.h.

◆ rb_name_err_raise

#define rb_name_err_raise (   mesg,
  recv,
  name 
)    rb_name_err_raise_str(rb_fstring_cstr(mesg), (recv), (name))

◆ rb_name_err_raise_str

#define rb_name_err_raise_str (   mesg,
  recv,
  name 
)    rb_exc_raise(rb_name_err_new(mesg, recv, name))

◆ RB_NEWOBJ_OF

#define RB_NEWOBJ_OF (   obj,
  type,
  klass,
  flags 
)
Value:
type *(obj) = (type*)(((flags) & FL_WB_PROTECTED) ? \
rb_wb_protected_newobj_of(klass, (flags) & ~FL_WB_PROTECTED) : \
VALUE rb_wb_unprotected_newobj_of(VALUE, VALUE)
Definition: gc.c:1982
#define FL_WB_PROTECTED
Definition: ruby.h:1209

Definition at line 1250 of file internal.h.

◆ RB_OBJ_BUILTIN_TYPE

#define RB_OBJ_BUILTIN_TYPE (   obj)    rb_obj_builtin_type(obj)

Definition at line 1944 of file internal.h.

◆ RB_OBJ_GC_FLAGS_MAX

#define RB_OBJ_GC_FLAGS_MAX   5

Definition at line 1919 of file internal.h.

◆ rb_raise_cstr

#define rb_raise_cstr (   etype,
  mesg 
)    rb_exc_raise(rb_exc_new_str(etype, rb_str_new_cstr(mesg)))

Definition at line 1160 of file internal.h.

◆ rb_raise_static

#define rb_raise_static (   etype,
  mesg 
)    rb_exc_raise(rb_exc_new_str(etype, rb_str_new_static(mesg, rb_strlen_lit(mesg))))

Definition at line 1162 of file internal.h.

◆ rb_sys_fail_path

#define rb_sys_fail_path (   path)    rb_sys_fail_str(path)

Definition at line 1216 of file internal.h.

Referenced by rb_io_set_nonblock().

◆ rb_syserr_fail_path

#define rb_syserr_fail_path (   err,
  path 
)    rb_syserr_fail_str((err), (path))

Definition at line 1217 of file internal.h.

◆ RBASIC_CLEAR_CLASS

#define RBASIC_CLEAR_CLASS (   obj)    memset(&(((struct RBasicRaw *)((VALUE)(obj)))->klass), 0, sizeof(VALUE))

Definition at line 1469 of file internal.h.

Referenced by rb_apply(), rb_hash_bulk_insert(), rb_obj_hide(), and rb_str_vcatf().

◆ RBASIC_SET_CLASS

#define RBASIC_SET_CLASS (   obj,
  cls 
)
Value:
do { \
VALUE _obj_ = (obj); \
RB_OBJ_WRITE(_obj_, &((struct RBasicRaw *)(_obj_))->klass, cls); \
} while (0)

Definition at line 1471 of file internal.h.

Referenced by rb_obj_reveal(), and rb_obj_setup().

◆ RBASIC_SET_CLASS_RAW

#define RBASIC_SET_CLASS_RAW (   obj,
  cls 
)    memcpy(&((struct RBasicRaw *)((VALUE)(obj)))->klass, &(cls), sizeof(VALUE))

Definition at line 1470 of file internal.h.

◆ RBIGNUM

#define RBIGNUM (   obj)    (R_CAST(RBignum)(obj))

Definition at line 622 of file internal.h.

◆ RCLASS_CALLABLE_M_TBL

#define RCLASS_CALLABLE_M_TBL (   c)    (RCLASS_EXT(c)->callable_m_tbl)

Definition at line 792 of file internal.h.

◆ RCLASS_CONST_TBL

#define RCLASS_CONST_TBL (   c)    (RCLASS_EXT(c)->const_tbl)

Definition at line 790 of file internal.h.

Referenced by rb_const_lookup(), rb_const_remove(), rb_const_set(), and rb_mod_const_at().

◆ RCLASS_EXT

#define RCLASS_EXT (   c)    (RCLASS(c)->ptr)

Definition at line 788 of file internal.h.

◆ RCLASS_IV_INDEX_TBL

#define RCLASS_IV_INDEX_TBL (   c)    (RCLASS_EXT(c)->iv_index_tbl)

Definition at line 793 of file internal.h.

◆ RCLASS_IV_TBL

#define RCLASS_IV_TBL (   c)    (RCLASS_EXT(c)->iv_tbl)

◆ RCLASS_M_TBL

#define RCLASS_M_TBL (   c)    (RCLASS(c)->m_tbl)

◆ RCLASS_ORIGIN

#define RCLASS_ORIGIN (   c)    (RCLASS_EXT(c)->origin_)

◆ RCLASS_REFINED_CLASS

#define RCLASS_REFINED_CLASS (   c)    (RCLASS_EXT(c)->refined_class)

Definition at line 795 of file internal.h.

◆ RCLASS_SERIAL

#define RCLASS_SERIAL (   c)    (RCLASS_EXT(c)->class_serial)

Definition at line 796 of file internal.h.

◆ RCOMPLEX

#define RCOMPLEX (   obj)    (R_CAST(RComplex)(obj))

Definition at line 647 of file internal.h.

◆ RCOMPLEX_SET_IMAG

#define RCOMPLEX_SET_IMAG (   cmp,
 
)    RB_OBJ_WRITE((cmp), &((struct RComplex *)(cmp))->imag,(i))

Definition at line 653 of file internal.h.

◆ RCOMPLEX_SET_REAL

#define RCOMPLEX_SET_REAL (   cmp,
 
)    RB_OBJ_WRITE((cmp), &((struct RComplex *)(cmp))->real,(r))

Definition at line 652 of file internal.h.

◆ RFLOAT

#define RFLOAT (   obj)    (R_CAST(RFloat)(obj))

Definition at line 639 of file internal.h.

◆ RHASH

#define RHASH (   obj)    (R_CAST(RHash)(obj))

◆ RHASH_IFNONE

#define RHASH_IFNONE (   h)    (RHASH(h)->ifnone)

Definition at line 670 of file internal.h.

◆ RHASH_ITER_LEV

#define RHASH_ITER_LEV (   h)    (RHASH(h)->iter_lev)

Definition at line 669 of file internal.h.

◆ RHASH_SIZE

#define RHASH_SIZE (   h)    (RHASH(h)->ntbl ? RHASH(h)->ntbl->num_entries : (st_index_t)0)

Definition at line 671 of file internal.h.

◆ RHASH_TBL_RAW

#define RHASH_TBL_RAW (   h)    rb_hash_tbl_raw(h)

Definition at line 1268 of file internal.h.

◆ RICLASS_IS_ORIGIN

#define RICLASS_IS_ORIGIN   FL_USER5

Definition at line 798 of file internal.h.

◆ roomof

#define roomof (   x,
 
)    (((x) + (y) - 1) / (y))

Definition at line 965 of file internal.h.

Referenced by rb_alloc_tmp_buffer().

◆ ROUND_CALL

#define ROUND_CALL (   mode,
  name,
  args 
)
Value:
ROUND_TO(mode, name##_half_even args, \
name##_half_up args, name##_half_down args)
#define ROUND_TO(mode, even, up, down)
Definition: internal.h:1331
const char * name
Definition: nkf.c:208

Definition at line 1336 of file internal.h.

◆ ROUND_DEFAULT

#define ROUND_DEFAULT   RUBY_NUM_ROUND_HALF_UP

Definition at line 1323 of file internal.h.

◆ ROUND_FUNC

#define ROUND_FUNC (   mode,
  name 
)    ROUND_TO(mode, name##_half_even, name##_half_up, name##_half_down)

Definition at line 1334 of file internal.h.

◆ ROUND_TO

#define ROUND_TO (   mode,
  even,
  up,
  down 
)
Value:

Definition at line 1331 of file internal.h.

◆ RRATIONAL

#define RRATIONAL (   obj)    (R_CAST(RRational)(obj))

Definition at line 630 of file internal.h.

◆ RRATIONAL_SET_DEN

#define RRATIONAL_SET_DEN (   rat,
 
)    RB_OBJ_WRITE((rat), &((struct RRational *)(rat))->den,(d))

Definition at line 632 of file internal.h.

◆ RRATIONAL_SET_NUM

#define RRATIONAL_SET_NUM (   rat,
 
)    RB_OBJ_WRITE((rat), &((struct RRational *)(rat))->num,(n))

Definition at line 631 of file internal.h.

◆ RSTRUCT

#define RSTRUCT (   obj)    (R_CAST(RStruct)(obj))

Definition at line 714 of file internal.h.

◆ RSTRUCT_CONST_PTR

#define RSTRUCT_CONST_PTR (   st)    rb_struct_const_ptr(st)

Definition at line 710 of file internal.h.

◆ RSTRUCT_EMBED_LEN

#define RSTRUCT_EMBED_LEN (   st)
Value:
(long)((RBASIC(st)->flags >> RSTRUCT_EMBED_LEN_SHIFT) & \
#define RSTRUCT_EMBED_LEN_SHIFT
Definition: internal.h:681
#define RSTRUCT_EMBED_LEN_MASK
Definition: internal.h:680
#define RBASIC(obj)
Definition: ruby.h:1197

Definition at line 705 of file internal.h.

◆ RSTRUCT_EMBED_LEN_MASK

#define RSTRUCT_EMBED_LEN_MASK   RSTRUCT_EMBED_LEN_MASK

Definition at line 680 of file internal.h.

◆ RSTRUCT_EMBED_LEN_MAX

#define RSTRUCT_EMBED_LEN_MAX   RSTRUCT_EMBED_LEN_MAX

Definition at line 679 of file internal.h.

◆ RSTRUCT_EMBED_LEN_SHIFT

#define RSTRUCT_EMBED_LEN_SHIFT   RSTRUCT_EMBED_LEN_SHIFT

Definition at line 681 of file internal.h.

◆ RSTRUCT_GET

#define RSTRUCT_GET (   st,
  idx 
)    (RSTRUCT_CONST_PTR(st)[idx])

Definition at line 713 of file internal.h.

◆ RSTRUCT_LEN

#define RSTRUCT_LEN (   st)    rb_struct_len(st)

Definition at line 708 of file internal.h.

◆ RSTRUCT_LENINT

#define RSTRUCT_LENINT (   st)    rb_long2int(RSTRUCT_LEN(st))

Definition at line 709 of file internal.h.

◆ RSTRUCT_PTR

#define RSTRUCT_PTR (   st)    ((VALUE *)RSTRUCT_CONST_PTR(RB_OBJ_WB_UNPROTECT_FOR(STRUCT, st)))

Definition at line 711 of file internal.h.

◆ RSTRUCT_SET

#define RSTRUCT_SET (   st,
  idx,
 
)    RB_OBJ_WRITE(st, &RSTRUCT_CONST_PTR(st)[idx], (v))

Definition at line 712 of file internal.h.

◆ RUBY_BIT_ROTL

#define RUBY_BIT_ROTL (   v,
 
)    (((v) << (n)) | ((v) >> ((sizeof(v) * 8) - n)))

Definition at line 1378 of file internal.h.

◆ RUBY_BIT_ROTR

#define RUBY_BIT_ROTR (   v,
 
)    (((v) >> (n)) | ((v) << ((sizeof(v) * 8) - n)))

Definition at line 1379 of file internal.h.

◆ RUBY_DTRACE_CREATE_HOOK

#define RUBY_DTRACE_CREATE_HOOK (   name,
  arg 
)    RUBY_DTRACE_HOOK(name##_CREATE, arg)

Definition at line 1932 of file internal.h.

Referenced by rb_str_resurrect().

◆ RUBY_DTRACE_HOOK

#define RUBY_DTRACE_HOOK (   name,
  arg 
)
Value:
do { \
if (UNLIKELY(RUBY_DTRACE_##name##_ENABLED())) { \
int dtrace_line; \
const char *dtrace_file = rb_source_loc(&dtrace_line); \
if (!dtrace_file) dtrace_file = ""; \
RUBY_DTRACE_##name(arg, dtrace_file, dtrace_line); \
} \
} while (0)
const char * rb_source_loc(int *pline)
Definition: vm.c:1313
#define UNLIKELY(x)
Definition: internal.h:43
const char * name
Definition: nkf.c:208

Definition at line 1934 of file internal.h.

Referenced by rb_clear_method_cache_by_class(), and rb_require_internal().

◆ SERIALT2NUM

#define SERIALT2NUM   ULONG2NUM

Definition at line 752 of file internal.h.

◆ SIGNED_INTEGER_MAX

#define SIGNED_INTEGER_MAX (   sint_type)
Value:
(sint_type) \
((((sint_type)1) << (sizeof(sint_type) * CHAR_BIT - 2)) | \
((((sint_type)1) << (sizeof(sint_type) * CHAR_BIT - 2)) - 1))
#define CHAR_BIT
Definition: ruby.h:196

Definition at line 83 of file internal.h.

◆ SIGNED_INTEGER_MIN

#define SIGNED_INTEGER_MIN (   sint_type)    (-SIGNED_INTEGER_MAX(sint_type)-1)

Definition at line 87 of file internal.h.

◆ SIGNED_INTEGER_TYPE_P

#define SIGNED_INTEGER_TYPE_P (   int_type)    (0 > ((int_type)0)-1)

Definition at line 82 of file internal.h.

◆ SIZED_REALLOC_N

#define SIZED_REALLOC_N (   var,
  type,
  n,
  old_n 
)    ((var)=(type*)ruby_sized_xrealloc((char*)(var), (n) * sizeof(type), (old_n) * sizeof(type)))

Definition at line 1244 of file internal.h.

◆ SIZEOF_ACTUAL_BDIGIT

#define SIZEOF_ACTUAL_BDIGIT   SIZEOF_BDIGIT

Definition at line 557 of file internal.h.

◆ SIZEOF_BDIGIT

#define SIZEOF_BDIGIT   SIZEOF_INT

Definition at line 527 of file internal.h.

◆ STATIC_ASSERT

#define STATIC_ASSERT (   name,
  expr 
)    typedef int static_assert_##name##_check[1 - 2*!(expr)]

Definition at line 79 of file internal.h.

◆ STR_EMBED_P

#define STR_EMBED_P (   str)    (!FL_TEST_RAW((str), STR_NOEMBED))

Definition at line 1652 of file internal.h.

Referenced by rb_fstring(), rb_str_free(), and rb_str_tmp_frozen_release().

◆ STR_NOEMBED

#define STR_NOEMBED   FL_USER1

Definition at line 1650 of file internal.h.

Referenced by rb_str_memsize().

◆ STR_SHARED

#define STR_SHARED   FL_USER2 /* = ELTS_SHARED */

Definition at line 1651 of file internal.h.

Referenced by rb_str_free(), rb_str_memsize(), and rb_str_tmp_frozen_release().

◆ STR_SHARED_P

#define STR_SHARED_P (   s)    FL_ALL_RAW((s), STR_NOEMBED|ELTS_SHARED)

Definition at line 1653 of file internal.h.

◆ STRING_P

#define STRING_P (   s)    (RB_TYPE_P((s), T_STRING) && CLASS_OF(s) == rb_cString)

Definition at line 975 of file internal.h.

◆ swap16

#define swap16 (   x)    ((uint16_t)((((x)&0xFF)<<8) | (((x)>>8)&0xFF)))

Definition at line 142 of file internal.h.

◆ swap32

#define swap32 (   x)
Value:
((uint32_t)((((x)&0xFF)<<24) \
|(((x)>>24)&0xFF) \
|(((x)&0x0000FF00)<<8) \
|(((x)&0x00FF0000)>>8) ))
unsigned int uint32_t
Definition: sha2.h:101

Definition at line 152 of file internal.h.

◆ THROW_DATA_CONSUMED

#define THROW_DATA_CONSUMED   IMEMO_FL_USER0

Definition at line 892 of file internal.h.

◆ THROW_DATA_P

#define THROW_DATA_P (   err)    RB_TYPE_P((VALUE)(err), T_IMEMO)

Definition at line 903 of file internal.h.

◆ TIMET_MAX_PLUS_ONE

#define TIMET_MAX_PLUS_ONE   (2*(double)(TIMET_MAX/2+1))

Definition at line 97 of file internal.h.

◆ true

#define true   1

Definition at line 37 of file internal.h.

◆ type_roomof

#define type_roomof (   x,
 
)    roomof(sizeof(x), sizeof(y))

Definition at line 966 of file internal.h.

◆ UNLIKELY

#define UNLIKELY (   x)    RB_UNLIKELY(x)

◆ UNSIGNED_INTEGER_MAX

#define UNSIGNED_INTEGER_MAX (   uint_type)    (~(uint_type)0)

Definition at line 88 of file internal.h.

◆ USE_SYMBOL_GC

#define USE_SYMBOL_GC   1

Definition at line 1478 of file internal.h.

◆ VALGRIND_MAKE_MEM_DEFINED

#define VALGRIND_MAKE_MEM_DEFINED (   p,
 
)    0

Definition at line 62 of file internal.h.

◆ VALGRIND_MAKE_MEM_UNDEFINED

#define VALGRIND_MAKE_MEM_UNDEFINED (   p,
 
)    0

Definition at line 63 of file internal.h.

◆ WARN_UNUSED_RESULT

#define WARN_UNUSED_RESULT (   x )    x

Definition at line 50 of file internal.h.

Typedef Documentation

◆ rb_check_funcall_hook

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

Definition at line 1777 of file internal.h.

◆ rb_classext_t

Definition at line 774 of file internal.h.

◆ rb_imemo_alloc_t

◆ rb_serial_t

typedef unsigned long rb_serial_t

Definition at line 751 of file internal.h.

◆ rb_subclass_entry_t

Definition at line 737 of file internal.h.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
RSTRUCT_EMBED_LEN_MAX 
RSTRUCT_EMBED_LEN_MASK 
RSTRUCT_EMBED_LEN_SHIFT 
RSTRUCT_ENUM_END 

Definition at line 682 of file internal.h.

◆ anonymous enum

anonymous enum
Enumerator
cmp_opt_Fixnum 
cmp_opt_String 
cmp_opt_Float 
cmp_optimizable_count 

Definition at line 982 of file internal.h.

◆ imemo_type

enum imemo_type
Enumerator
imemo_env 
imemo_cref 

class reference

imemo_svar 

special variable

imemo_throw_data 
imemo_ifunc 

iterator function

imemo_memo 
imemo_ment 
imemo_iseq 
imemo_alloc 

Definition at line 838 of file internal.h.

◆ rb_int_parse_flags

Enumerator
RB_INT_PARSE_SIGN 
RB_INT_PARSE_UNDERSCORE 
RB_INT_PARSE_PREFIX 
RB_INT_PARSE_ALL 
RB_INT_PARSE_DEFAULT 

Definition at line 1834 of file internal.h.

◆ ruby_num_rounding_mode

Enumerator
RUBY_NUM_ROUND_HALF_UP 
RUBY_NUM_ROUND_HALF_EVEN 
RUBY_NUM_ROUND_HALF_DOWN 
RUBY_NUM_ROUND_DEFAULT 

Definition at line 1325 of file internal.h.

Function Documentation

◆ CONSTFUNC() [1/4]

CONSTFUNC ( const char *  rb_insns_nameint i)

◆ CONSTFUNC() [2/4]

CONSTFUNC ( void   rb_gc_mark_encodingsvoid)

◆ CONSTFUNC() [3/4]

CONSTFUNC ( VALUE   rb_obj_equalVALUE obj1, VALUE obj2)

◆ CONSTFUNC() [4/4]

CONSTFUNC ( VALUE   rb_obj_notVALUE obj)

◆ Init_BareVM()

void Init_BareVM ( void  )

Definition at line 3122 of file vm.c.

References EXIT_FAILURE, MEMZERO, rb_thread_set_current_raw, and ruby_mimmalloc().

Referenced by ruby_setup().

◆ Init_enc()

void Init_enc ( void  )

Definition at line 5 of file dmyenc.c.

References rb_encdb_alias(), rb_encdb_declare(), and require.

◆ Init_enc_set_filesystem_encoding()

int Init_enc_set_filesystem_encoding ( void  )

◆ Init_eval_method()

void Init_eval_method ( void  )

Definition at line 2086 of file vm_method.c.

References rb_define_method(), and rb_mKernel.

◆ Init_ext()

void Init_ext ( void  )

Definition at line 2 of file dmyext.c.

◆ Init_File()

void Init_File ( void  )

Definition at line 6081 of file file.c.

References rb_cFile, rb_cIO, rb_define_class(), rb_define_module(), and rb_mFileTest.

◆ Init_heap()

void Init_heap ( void  )

Definition at line 2381 of file gc.c.

References rb_objspace.

Referenced by ruby_setup().

◆ Init_native_thread()

void Init_native_thread ( void  )

◆ Init_newline()

void Init_newline ( void  )

◆ Init_prelude()

void Init_prelude ( void  )

◆ Init_vm_backtrace()

void Init_vm_backtrace ( void  )

Definition at line 986 of file vm_backtrace.c.

◆ Init_vm_eval()

void Init_vm_eval ( void  )

Definition at line 2155 of file vm_eval.c.

References rb_define_global_function(), and rb_f_eval().

◆ Init_vm_objects()

void Init_vm_objects ( void  )

◆ NORETURN() [1/5]

NORETURN ( void   rb_async_bug_errnoconst char *, int)

◆ NORETURN() [2/5]

NORETURN ( void   ruby_deprecated_internal_featureconst char *)

◆ NORETURN() [3/5]

NORETURN ( void   rb_load_failVALUE, const char *)

◆ NORETURN() [4/5]

NORETURN ( void   rb_undefined_allocVALUE klass)

◆ NORETURN() [5/5]

NORETURN ( void   rb_unexpected_typeVALUE, int)

◆ PRINTF_ARGS() [1/5]

PRINTF_ARGS ( void   ruby_debug_printfconst char *,...,
,
 
)

◆ PRINTF_ARGS() [2/5]

PRINTF_ARGS ( void   rb_sys_warnconst char *fmt,...,
,
 
)

◆ PRINTF_ARGS() [3/5]

PRINTF_ARGS ( void   rb_syserr_warnint err, const char *fmt,...,
,
 
)

◆ PRINTF_ARGS() [4/5]

PRINTF_ARGS ( void   rb_enc_warnrb_encoding *enc, const char *fmt,...,
,
 
)

◆ PRINTF_ARGS() [5/5]

PRINTF_ARGS ( void   rb_syserr_enc_warnint err, rb_encoding *enc, const char *fmt,...,
,
 
)

◆ PUREFUNC() [1/4]

PUREFUNC ( int   rb_data_is_encodingVALUE obj)

◆ PUREFUNC() [2/4]

PUREFUNC ( int   rb_is_const_symVALUE sym)

◆ PUREFUNC() [3/4]

PUREFUNC ( VALUE   rb_vm_top_selfvoid)

◆ PUREFUNC() [4/4]

PUREFUNC ( st_table rb_vm_fstring_tablevoid)

◆ rb_ary_at()

VALUE rb_ary_at ( VALUE  ,
VALUE   
)

Definition at line 1332 of file array.c.

References NUM2LONG, and rb_ary_entry().

Referenced by rb_ary_dig().

◆ rb_ary_delete_same()

void rb_ary_delete_same ( VALUE  ,
VALUE   
)

Definition at line 3036 of file array.c.

References RARRAY_AREF, RARRAY_LEN, and rb_ary_store().

◆ rb_ary_last()

VALUE rb_ary_last ( int  ,
const VALUE ,
VALUE   
)

Definition at line 1380 of file array.c.

References Qnil, RARRAY_AREF, and RARRAY_LEN.

Referenced by rb_gc_register_mark_object().

◆ rb_ary_memsize()

size_t rb_ary_memsize ( VALUE  )

Definition at line 571 of file array.c.

References ARY_CAPA, and ARY_OWNS_HEAP_P.

◆ rb_ary_set_len()

void rb_ary_set_len ( VALUE  ,
long   
)

Definition at line 1625 of file array.c.

Referenced by rb_hash_keys(), and rb_hash_values().

◆ rb_ary_tmp_new_fill()

VALUE rb_ary_tmp_new_fill ( long  capa)

Definition at line 550 of file array.c.

◆ rb_attr_delete()

VALUE rb_attr_delete ( VALUE  ,
ID   
)

Definition at line 1266 of file variable.c.

◆ rb_autoload_str()

void rb_autoload_str ( VALUE  mod,
ID  id,
VALUE  file 
)

◆ rb_backref_set_string()

void rb_backref_set_string ( VALUE  string,
long  pos,
long  len 
)

Definition at line 1300 of file re.c.

◆ rb_backtrace_each()

void rb_backtrace_each ( VALUE(*)(VALUE recv, VALUE str)  iter,
VALUE  output 
)

Definition at line 796 of file vm_backtrace.c.

◆ rb_backtrace_p()

int rb_backtrace_p ( VALUE  obj)

Definition at line 410 of file vm_backtrace.c.

References rb_typeddata_is_kind_of().

Referenced by rb_check_backtrace().

◆ rb_backtrace_print_as_bugreport()

void rb_backtrace_print_as_bugreport ( void  )

Definition at line 754 of file vm_backtrace.c.

References oldbt_arg::func.

Referenced by rb_vm_bugreport().

◆ rb_backtrace_to_location_ary()

VALUE rb_backtrace_to_location_ary ( VALUE  obj)

Definition at line 625 of file vm_backtrace.c.

References GetCoreDataFromValue, and rb_backtrace_struct::locary.

◆ rb_backtrace_to_str_ary()

VALUE rb_backtrace_to_str_ary ( VALUE  obj)

◆ rb_big2str_generic()

VALUE rb_big2str_generic ( VALUE  x,
int  base 
)

Definition at line 4975 of file bignum.c.

◆ rb_big2str_poweroftwo()

VALUE rb_big2str_poweroftwo ( VALUE  x,
int  base 
)

Definition at line 4892 of file bignum.c.

◆ rb_big_abs()

VALUE rb_big_abs ( VALUE  x)

Definition at line 6700 of file bignum.c.

References BIGNUM_NEGATIVE_P, BIGNUM_SET_POSITIVE_SIGN, and rb_big_clone().

◆ rb_big_aref()

VALUE rb_big_aref ( VALUE  x,
VALUE  y 
)

Definition at line 6619 of file bignum.c.

References BDIGIT.

◆ rb_big_bit_length()

VALUE rb_big_bit_length ( VALUE  big)

◆ rb_big_comp()

VALUE rb_big_comp ( VALUE  x)

Definition at line 5512 of file bignum.c.

References BDIGIT, BDIGITS, BIGNUM_LEN, BIGNUM_POSITIVE_P, INT2FIX, and rb_big_clone().

◆ rb_big_divrem_normal()

VALUE rb_big_divrem_normal ( VALUE  x,
VALUE  y 
)

◆ rb_big_even_p()

VALUE rb_big_even_p ( VALUE  )

Definition at line 6778 of file bignum.c.

References BDIGIT, BDIGIT_DBL, BDIGITS, BIGNUM_LEN, Qfalse, Qtrue, rb_bdigit_dbl_isqrt, and rb_ulong_isqrt().

◆ rb_big_fdiv_double()

double rb_big_fdiv_double ( VALUE  x,
VALUE  y 
)

Definition at line 6154 of file bignum.c.

Referenced by rb_big_fdiv().

◆ rb_big_ge()

VALUE rb_big_ge ( VALUE  x,
VALUE  y 
)

Definition at line 5443 of file bignum.c.

◆ rb_big_gt()

VALUE rb_big_gt ( VALUE  x,
VALUE  y 
)

Definition at line 5437 of file bignum.c.

◆ rb_big_hash()

VALUE rb_big_hash ( VALUE  )

Definition at line 6664 of file bignum.c.

◆ rb_big_le()

VALUE rb_big_le ( VALUE  x,
VALUE  y 
)

Definition at line 5455 of file bignum.c.

◆ rb_big_lt()

VALUE rb_big_lt ( VALUE  x,
VALUE  y 
)

Definition at line 5449 of file bignum.c.

◆ rb_big_mul_balance()

VALUE rb_big_mul_balance ( VALUE  x,
VALUE  y 
)

Definition at line 1671 of file bignum.c.

References bignew, BIGNUM_LEN, and BIGNUM_SIGN.

◆ rb_big_mul_karatsuba()

VALUE rb_big_mul_karatsuba ( VALUE  x,
VALUE  y 
)

Definition at line 1852 of file bignum.c.

References bignew, BIGNUM_LEN, BIGNUM_SIGN, KARATSUBA_BALANCED, rb_eArgError, and rb_raise().

◆ rb_big_mul_normal()

VALUE rb_big_mul_normal ( VALUE  x,
VALUE  y 
)

Definition at line 1543 of file bignum.c.

References bignew, BIGNUM_LEN, and BIGNUM_SIGN.

◆ rb_big_mul_toom3()

VALUE rb_big_mul_toom3 ( VALUE  x,
VALUE  y 
)

Definition at line 2249 of file bignum.c.

References bignew, BIGNUM_LEN, BIGNUM_SIGN, rb_eArgError, rb_raise(), and TOOM3_BALANCED.

◆ rb_big_odd_p()

VALUE rb_big_odd_p ( VALUE  )

Definition at line 6769 of file bignum.c.

References BDIGITS, BIGNUM_LEN, Qfalse, and Qtrue.

◆ rb_big_remainder()

VALUE rb_big_remainder ( VALUE  x,
VALUE  y 
)

Definition at line 6064 of file bignum.c.

References FIX2LONG, FIXNUM_P, RB_BIGNUM_TYPE_P, rb_int2big(), rb_intern, and rb_num_coerce_bin().

◆ rb_big_size()

size_t rb_big_size ( VALUE  )

Definition at line 6716 of file bignum.c.

References BIGSIZE.

Referenced by rb_big_size_m().

◆ rb_big_size_m()

VALUE rb_big_size_m ( VALUE  big)

Definition at line 6722 of file bignum.c.

References rb_big_size(), and SIZET2NUM.

◆ rb_big_sq_fast()

VALUE rb_big_sq_fast ( VALUE  x)

Definition at line 1612 of file bignum.c.

References bignew, and BIGNUM_LEN.

◆ rb_big_uminus()

VALUE rb_big_uminus ( VALUE  x)

Definition at line 5502 of file bignum.c.

References BIGNUM_NEGATE, and rb_big_clone().

◆ rb_block_arity()

int rb_block_arity ( void  )

Definition at line 1036 of file proc.c.

◆ rb_block_min_max_arity()

int rb_block_min_max_arity ( int *  max)

◆ rb_block_to_s()

VALUE rb_block_to_s ( VALUE  self,
const struct rb_block block,
const char *  additional_info 
)

Definition at line 1248 of file proc.c.

References PRIsVALUE, rb_obj_class(), and rb_sprintf().

◆ rb_call_end_proc()

void rb_call_end_proc ( VALUE  data)

Definition at line 11 of file eval_jump.c.

References rb_ary_new(), and rb_proc_call().

◆ rb_call_inits()

void rb_call_inits ( void  )

Definition at line 17 of file inits.c.

References CALL, and sym.

Referenced by ruby_setup().

◆ rb_check_block_call()

VALUE rb_check_block_call ( VALUE  ,
ID  ,
int  ,
const VALUE ,
rb_block_call_func_t  ,
VALUE   
)

◆ rb_check_funcall_default()

VALUE rb_check_funcall_default ( VALUE  ,
ID  ,
int  ,
const VALUE ,
VALUE   
)

Definition at line 395 of file vm_eval.c.

References CLASS_OF, GET_THREAD, and rescue_funcall_args::me.

Referenced by rb_check_funcall(), and rb_get_path_check_to_string().

◆ rb_check_funcall_with_hook()

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

Definition at line 417 of file vm_eval.c.

References CLASS_OF, GET_THREAD, and rescue_funcall_args::me.

◆ rb_check_realpath()

VALUE rb_check_realpath ( VALUE  basedir,
VALUE  path 
)

Definition at line 4086 of file file.c.

Referenced by rb_file_s_absolute_path().

◆ rb_class_ivar_set()

int rb_class_ivar_set ( VALUE  klass,
ID  vid,
VALUE  value 
)

Definition at line 3104 of file variable.c.

References RCLASS_IV_TBL.

Referenced by rb_singleton_class_attached().

◆ rb_clear_trace_func()

void rb_clear_trace_func ( void  )

Definition at line 206 of file vm_trace.c.

References GET_VM, and rb_vm_struct::living_threads.

Referenced by ruby_options().

◆ rb_complex_abs()

VALUE rb_complex_abs ( VALUE  x)

Definition at line 1469 of file complex.c.

◆ rb_complex_mul()

VALUE rb_complex_mul ( VALUE  ,
VALUE   
)

Definition at line 787 of file complex.c.

References get_dat2, RB_TYPE_P, and T_COMPLEX.

◆ rb_complex_plus()

VALUE rb_complex_plus ( VALUE  ,
VALUE   
)

Definition at line 706 of file complex.c.

References get_dat2, RB_TYPE_P, and T_COMPLEX.

◆ rb_complex_sqrt()

VALUE rb_complex_sqrt ( VALUE  x)

◆ rb_const_missing()

VALUE rb_const_missing ( VALUE  klass,
VALUE  name 
)

Definition at line 1747 of file variable.c.

References rb_funcallv, rb_intern, and rb_vm_inc_const_missing_count().

◆ rb_copy_wb_protected_attribute()

void rb_copy_wb_protected_attribute ( VALUE  dest,
VALUE  obj 
)

Definition at line 6104 of file gc.c.

References rb_objspace.

◆ rb_cstr_parse_inum()

VALUE rb_cstr_parse_inum ( const char *  str,
ssize_t  len,
char **  endp,
int  base 
)

Definition at line 4219 of file bignum.c.

References NULL, rb_int_parse_cstr(), and RB_INT_PARSE_DEFAULT.

Referenced by rb_cstr_to_inum(), and rb_str_to_inum().

◆ rb_cstr_to_rat()

VALUE rb_cstr_to_rat ( const char *  ,
int   
)

Definition at line 2559 of file rational.c.

◆ rb_current_realfilepath()

VALUE rb_current_realfilepath ( void  )

Definition at line 2145 of file vm_eval.c.

References rb_execution_context_struct::cfp, rb_thread_struct::ec, and GET_THREAD.

Referenced by rb_f_require_relative().

◆ rb_dbl_hash()

VALUE rb_dbl_hash ( double  d)

Definition at line 1419 of file numeric.c.

References LONG2FIX, and rb_dbl_long_hash().

◆ rb_dbl_long_hash()

long rb_dbl_long_hash ( double  d)

Definition at line 144 of file hash.c.

References rb_hash_start(), rb_memhash(), and rb_objid_hash().

Referenced by rb_dbl_hash().

◆ rb_default_coverage()

VALUE rb_default_coverage ( int  )

Definition at line 5081 of file thread.c.

◆ rb_default_home_dir()

VALUE rb_default_home_dir ( VALUE  result)

Definition at line 3327 of file file.c.

Referenced by rb_file_expand_path_internal().

◆ rb_deprecate_constant()

void rb_deprecate_constant ( VALUE  mod,
const char *  name 
)

◆ rb_dir_getwd_ospath()

VALUE rb_dir_getwd_ospath ( void  )

◆ rb_divert_reserved_fd()

int rb_divert_reserved_fd ( int  fd)

◆ rb_dvar_defined()

int rb_dvar_defined ( ID  ,
const struct rb_block  
)

Definition at line 7492 of file compile.c.

◆ rb_econv_memsize()

size_t rb_econv_memsize ( rb_econv_t )

◆ rb_enc_check_str()

rb_encoding* rb_enc_check_str ( VALUE  str1,
VALUE  str2 
)

Definition at line 868 of file encoding.c.

Referenced by rb_str_plus().

◆ rb_enc_get_from_index()

rb_encoding* rb_enc_get_from_index ( int  index)

Definition at line 628 of file encoding.c.

◆ rb_enc_set_base()

void rb_enc_set_base ( const char *  name,
const char *  orig 
)

Definition at line 389 of file encoding.c.

References rb_enc_registered().

◆ rb_enc_set_dummy()

int rb_enc_set_dummy ( int  index)

Definition at line 400 of file encoding.c.

◆ rb_encdb_alias()

int rb_encdb_alias ( const char *  alias,
const char *  orig 
)

Definition at line 572 of file encoding.c.

◆ rb_encdb_declare()

void rb_encdb_declare ( const char *  name)

Definition at line 357 of file encoding.c.

◆ rb_encdb_dummy()

int rb_encdb_dummy ( const char *  name)

Definition at line 476 of file encoding.c.

◆ rb_encdb_replicate()

int rb_encdb_replicate ( const char *  alias,
const char *  orig 
)

Definition at line 454 of file encoding.c.

References rb_enc_registered().

◆ rb_encdb_set_unicode()

void rb_encdb_set_unicode ( int  index)

Definition at line 583 of file encoding.c.

References ONIGENC_FLAG_UNICODE, and rb_enc_from_index().

◆ rb_eql_opt()

VALUE rb_eql_opt ( VALUE  obj1,
VALUE  obj2 
)

◆ rb_equal_opt()

VALUE rb_equal_opt ( VALUE  obj1,
VALUE  obj2 
)

◆ rb_exec_async_signal_safe()

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

Definition at line 3150 of file process.c.

References NULL, rb_execarg_run_options(), and rb_execarg::use_shell.

◆ rb_execarg_addopt()

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

◆ rb_execarg_extract_options()

VALUE rb_execarg_extract_options ( VALUE  execarg_obj,
VALUE  opthash 
)

Definition at line 1928 of file process.c.

References Qnil, rb_hash_tbl_raw(), RHASH_EMPTY_P, and st_foreach.

◆ rb_execarg_get()

struct rb_execarg* rb_execarg_get ( VALUE  execarg_obj)

Definition at line 2268 of file process.c.

References TypedData_Get_Struct.

Referenced by rb_execarg_addopt(), rb_execarg_init(), rb_execarg_setenv(), and rb_f_exec().

◆ rb_execarg_init()

VALUE rb_execarg_init ( int  argc,
const VALUE argv,
int  accept_shell,
VALUE  execarg_obj 
)

Definition at line 2276 of file process.c.

References ALLOCV_N, argv, rb_execarg::argv_buf, env, MEMCPY, Qnil, and rb_execarg_get().

◆ rb_execarg_new()

VALUE rb_execarg_new ( int  argc,
const VALUE argv,
int  accept_shell 
)

Definition at line 2257 of file process.c.

References rb_cData, and TypedData_Make_Struct.

Referenced by rb_f_exec().

◆ rb_execarg_parent_end()

void rb_execarg_parent_end ( VALUE  execarg_obj)

Definition at line 2496 of file process.c.

◆ rb_execarg_parent_start()

void rb_execarg_parent_start ( VALUE  execarg_obj)

Definition at line 2457 of file process.c.

References rb_protect().

◆ rb_execarg_run_options()

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

◆ rb_execarg_setenv()

void rb_execarg_setenv ( VALUE  execarg_obj,
VALUE  env 
)

Definition at line 2293 of file process.c.

References NIL_P, and rb_execarg_get().

◆ rb_f_send()

VALUE rb_f_send ( int  argc,
VALUE argv,
VALUE  recv 
)

Definition at line 933 of file vm_eval.c.

◆ rb_fiber_reset_root_local_storage()

void rb_fiber_reset_root_local_storage ( VALUE  )

Definition at line 1612 of file cont.c.

Referenced by ruby_vm_destruct().

◆ rb_file_const()

void rb_file_const ( const char *  ,
VALUE   
)

Definition at line 5713 of file file.c.

References rb_define_const().

◆ rb_file_expand_path_fast()

VALUE rb_file_expand_path_fast ( VALUE  ,
VALUE   
)

Definition at line 3782 of file file.c.

References expand_path, and EXPAND_PATH_BUFFER.

Referenced by rb_feature_provided().

◆ rb_file_expand_path_internal()

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

◆ rb_file_load_ok()

int rb_file_load_ok ( const char *  )

◆ rb_fix_plus()

VALUE rb_fix_plus ( VALUE  x,
VALUE  y 
)

Definition at line 3513 of file numeric.c.

◆ rb_float_abs()

VALUE rb_float_abs ( VALUE  flt)

Definition at line 1692 of file numeric.c.

References DBL2NUM, RFLOAT_VALUE, and val.

◆ rb_float_cmp()

int rb_float_cmp ( VALUE  x,
VALUE  y 
)

Definition at line 1481 of file numeric.c.

References NUM2INT.

◆ rb_float_eql()

VALUE rb_float_eql ( VALUE  x,
VALUE  y 
)

Definition at line 1648 of file numeric.c.

References isnan, Qfalse, Qtrue, RB_TYPE_P, RFLOAT_VALUE, and T_FLOAT.

◆ rb_float_equal()

VALUE rb_float_equal ( VALUE  x,
VALUE  y 
)

Definition at line 1378 of file numeric.c.

References isnan, Qfalse, rb_integer_float_eq(), RB_TYPE_P, RFLOAT_VALUE, T_BIGNUM, T_FIXNUM, and T_FLOAT.

◆ rb_float_gt()

VALUE rb_float_gt ( VALUE  x,
VALUE  y 
)

◆ rb_float_pow()

VALUE rb_float_pow ( VALUE  x,
VALUE  y 
)

Definition at line 1293 of file numeric.c.

References FIX2LONG, rb_big2dbl(), RB_TYPE_P, RFLOAT_VALUE, round(), T_BIGNUM, T_FIXNUM, and T_FLOAT.

◆ rb_float_uminus()

VALUE rb_float_uminus ( VALUE  num)

Definition at line 1038 of file numeric.c.

References DBL2NUM, and RFLOAT_VALUE.

◆ rb_fork_async_signal_safe()

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 
)

◆ rb_fork_ruby()

rb_pid_t rb_fork_ruby ( int *  status)

◆ rb_fstring()

VALUE rb_fstring ( VALUE  )

Definition at line 306 of file string.c.

References BARE_STRING_P, Check_Type, FL_TEST, OBJ_FREEZE_RAW, RSTRING_FSTR, STR_EMBED_P, and T_STRING.

Referenced by rb_iseq_pathobj_new().

◆ rb_fstring_cstr()

VALUE rb_fstring_cstr ( const char *  str)

Definition at line 388 of file string.c.

References rb_fstring_new(), and strlen().

Referenced by rb_autoload(), rb_insns_name_array(), rb_iseq_new_main(), and ruby_set_inplace_mode().

◆ rb_fstring_new()

VALUE rb_fstring_new ( const char *  ptr,
long  len 
)

Definition at line 374 of file string.c.

Referenced by rb_deprecate_constant(), and rb_fstring_cstr().

◆ rb_func_lambda_new()

VALUE rb_func_lambda_new ( rb_block_call_func_t  func,
VALUE  val,
int  min_argc,
int  max_argc 
)

Definition at line 676 of file proc.c.

References rb_vm_ifunc_new().

◆ rb_func_proc_new()

VALUE rb_func_proc_new ( rb_block_call_func_t  func,
VALUE  val 
)

Definition at line 669 of file proc.c.

◆ rb_gc_for_fd()

int rb_gc_for_fd ( int  err)

Definition at line 878 of file io.c.

References rb_gc().

Referenced by rb_fdopen(), and rb_pipe().

◆ rb_gc_free_dsymbol()

void rb_gc_free_dsymbol ( VALUE  )

Definition at line 629 of file symbol.c.

References RSYMBOL.

◆ rb_gc_mark_global_tbl()

void rb_gc_mark_global_tbl ( void  )

Definition at line 594 of file variable.c.

References rb_id_table_foreach_values().

◆ rb_gc_mark_values()

void rb_gc_mark_values ( long  n,
const VALUE values 
)

Definition at line 4097 of file gc.c.

References rb_objspace.

Referenced by rb_execution_context_mark(), and rb_vm_mark().

◆ rb_gc_verify_internal_consistency()

void rb_gc_verify_internal_consistency ( void  )

Definition at line 5379 of file gc.c.

◆ rb_gc_writebarrier_remember()

void rb_gc_writebarrier_remember ( VALUE  obj)

Definition at line 6041 of file gc.c.

References gc_report, and rb_objspace.

Referenced by rb_hash_keys(), and rb_hash_values().

◆ rb_gcd()

VALUE rb_gcd ( VALUE  x,
VALUE  y 
)

Definition at line 1922 of file rational.c.

Referenced by rb_int_fdiv_double().

◆ rb_gcd_normal()

VALUE rb_gcd_normal ( VALUE  self,
VALUE  other 
)

Definition at line 355 of file rational.c.

◆ rb_generic_ivar_memsize()

size_t rb_generic_ivar_memsize ( VALUE  )

Definition at line 1150 of file variable.c.

◆ rb_get_coverages()

VALUE rb_get_coverages ( void  )

Definition at line 5044 of file thread.c.

◆ rb_get_expanded_load_path()

VALUE rb_get_expanded_load_path ( void  )

◆ rb_get_load_path()

VALUE rb_get_load_path ( void  )

Definition at line 30 of file load.c.

References GET_VM.

◆ rb_get_next_signal()

int rb_get_next_signal ( void  )

Definition at line 741 of file signal.c.

◆ rb_get_path_check()

VALUE rb_get_path_check ( VALUE  ,
int   
)

◆ rb_get_path_check_convert()

VALUE rb_get_path_check_convert ( VALUE  ,
VALUE  ,
int   
)

Definition at line 197 of file file.c.

Referenced by rb_get_path_check().

◆ rb_get_path_check_to_string()

VALUE rb_get_path_check_to_string ( VALUE  ,
int   
)

◆ rb_global_entry()

◆ rb_gvar_defined()

VALUE rb_gvar_defined ( struct rb_global_entry )

◆ rb_gvar_get()

VALUE rb_gvar_get ( struct rb_global_entry )

◆ rb_gvar_set()

VALUE rb_gvar_set ( struct rb_global_entry ,
VALUE   
)

◆ rb_hash_add_new_element()

int rb_hash_add_new_element ( VALUE  hash,
VALUE  key,
VALUE  val 
)

Definition at line 3150 of file hash.c.

References rb_hash_tbl_raw().

◆ rb_hash_bulk_insert()

void rb_hash_bulk_insert ( long  ,
const VALUE ,
VALUE   
)

◆ rb_hash_compare_by_id_p()

VALUE rb_hash_compare_by_id_p ( VALUE  hash)

Definition at line 2913 of file hash.c.

References Qfalse, Qtrue, and RHASH.

◆ rb_hash_default_value()

VALUE rb_hash_default_value ( VALUE  hash,
VALUE  key 
)

Definition at line 803 of file hash.c.

References CLASS_OF, and rb_method_basic_definition_p().

Referenced by rb_hash_aref().

◆ rb_hash_delete_entry()

VALUE rb_hash_delete_entry ( VALUE  hash,
VALUE  key 
)

Definition at line 1098 of file hash.c.

References Qundef, RHASH, st_data_t, st_delete, and val.

Referenced by rb_hash_delete().

◆ rb_hash_has_key()

VALUE rb_hash_has_key ( VALUE  hash,
VALUE  key 
)

Definition at line 2219 of file hash.c.

References Qfalse, Qtrue, RHASH, and st_lookup.

◆ rb_hash_keys()

VALUE rb_hash_keys ( VALUE  hash)

◆ rb_hash_new_with_size()

VALUE rb_hash_new_with_size ( st_index_t  size)

Definition at line 430 of file hash.c.

References rb_hash_new(), RHASH, and st_init_table_with_size.

Referenced by rb_hash_bulk_insert().

◆ rb_hash_proc()

st_index_t rb_hash_proc ( st_index_t  hash,
VALUE  proc 
)

Definition at line 1188 of file proc.c.

◆ rb_hash_rehash()

VALUE rb_hash_rehash ( VALUE  hash)

Definition at line 779 of file hash.c.

References rb_eRuntimeError, rb_raise(), and RHASH_ITER_LEV.

◆ rb_hash_set_default_proc()

VALUE rb_hash_set_default_proc ( VALUE  hash,
VALUE  proc 
)

Definition at line 1025 of file hash.c.

◆ rb_hash_tbl_raw()

struct st_table* rb_hash_tbl_raw ( VALUE  hash)

Definition at line 482 of file hash.c.

Referenced by rb_execarg_extract_options(), rb_hash_add_new_element(), and rb_reset_coverages().

◆ rb_hash_values()

VALUE rb_hash_values ( VALUE  hash)

◆ rb_home_dir_of()

VALUE rb_home_dir_of ( VALUE  user,
VALUE  result 
)

Definition at line 3287 of file file.c.

Referenced by rb_file_expand_path_internal().

◆ rb_id_attrget()

ID rb_id_attrget ( ID  id)

Definition at line 158 of file symbol.c.

◆ rb_id_encoding()

ID rb_id_encoding ( void  )

Definition at line 753 of file encoding.c.

References CONST_ID.

◆ rb_id_quote_unprintable()

VALUE rb_id_quote_unprintable ( ID  )

Definition at line 10129 of file string.c.

References rb_id2str, and rb_str_quote_unprintable().

◆ rb_ident_hash_new()

VALUE rb_ident_hash_new ( void  )

Definition at line 2924 of file hash.c.

References rb_hash_new(), RHASH, and st_init_table.

Referenced by Init_sym(), and rb_uninterruptible().

◆ rb_imemo_new()

VALUE rb_imemo_new ( enum imemo_type  type,
VALUE  v1,
VALUE  v2,
VALUE  v3,
VALUE  v0 
)

Definition at line 2020 of file gc.c.

References FL_USHIFT, and T_IMEMO.

Referenced by rb_alloc_tmp_buffer_with_count().

◆ rb_init_identtable()

st_table* rb_init_identtable ( void  )

Definition at line 2932 of file hash.c.

References st_init_table.

◆ rb_init_identtable_with_size()

st_table* rb_init_identtable_with_size ( st_index_t  size)

Definition at line 2938 of file hash.c.

References st_init_table_with_size.

◆ rb_insns_name_array()

VALUE rb_insns_name_array ( void  )

Definition at line 6976 of file compile.c.

References rb_ary_new(), rb_ary_push(), rb_fstring_cstr(), and rb_obj_freeze().

◆ rb_int2str()

VALUE rb_int2str ( VALUE  num,
int  base 
)

Definition at line 3471 of file numeric.c.

References FIXNUM_P, rb_any_to_s(), rb_big2str(), rb_fix2str(), RB_TYPE_P, and T_BIGNUM.

◆ rb_int_abs()

VALUE rb_int_abs ( VALUE  num)

Definition at line 4635 of file numeric.c.

References FIXNUM_P.

Referenced by rb_rational_abs().

◆ rb_int_and()

VALUE rb_int_and ( VALUE  x,
VALUE  y 
)

Definition at line 4350 of file numeric.c.

References FIXNUM_P.

◆ rb_int_cmp()

VALUE rb_int_cmp ( VALUE  x,
VALUE  y 
)

Definition at line 4095 of file numeric.c.

References FIXNUM_P.

Referenced by rb_rational_cmp().

◆ rb_int_div()

VALUE rb_int_div ( VALUE  x,
VALUE  y 
)

Definition at line 3726 of file numeric.c.

References FIXNUM_P.

◆ rb_int_divmod()

VALUE rb_int_divmod ( VALUE  x,
VALUE  y 
)

Definition at line 3873 of file numeric.c.

References FIXNUM_P.

◆ rb_int_equal()

VALUE rb_int_equal ( VALUE  x,
VALUE  y 
)

Definition at line 4045 of file numeric.c.

References FIXNUM_P.

◆ rb_int_fdiv_double()

double rb_int_fdiv_double ( VALUE  x,
VALUE  y 
)

Definition at line 3637 of file numeric.c.

References FIXNUM_P, FIXNUM_ZERO_P, rb_gcd(), rb_int_idiv(), and RB_INTEGER_TYPE_P.

Referenced by rb_int_fdiv().

◆ rb_int_ge()

VALUE rb_int_ge ( VALUE  x,
VALUE  y 
)

Definition at line 4175 of file numeric.c.

References FIXNUM_P.

◆ rb_int_gt()

VALUE rb_int_gt ( VALUE  x,
VALUE  y 
)

Definition at line 4135 of file numeric.c.

References FIXNUM_P.

◆ rb_int_idiv()

VALUE rb_int_idiv ( VALUE  x,
VALUE  y 
)

Definition at line 3753 of file numeric.c.

References FIXNUM_P.

Referenced by rb_int_fdiv_double().

◆ rb_int_lshift()

VALUE rb_int_lshift ( VALUE  x,
VALUE  y 
)

Definition at line 4466 of file numeric.c.

References FIXNUM_P.

◆ rb_int_minus()

VALUE rb_int_minus ( VALUE  x,
VALUE  y 
)

Definition at line 3558 of file numeric.c.

References FIXNUM_P.

◆ rb_int_modulo()

VALUE rb_int_modulo ( VALUE  x,
VALUE  y 
)

Definition at line 3796 of file numeric.c.

References FIXNUM_P.

◆ rb_int_mul()

VALUE rb_int_mul ( VALUE  x,
VALUE  y 
)

Definition at line 3608 of file numeric.c.

References FIXNUM_P.

◆ rb_int_parse_cstr()

VALUE rb_int_parse_cstr ( const char *  str,
ssize_t  len,
char **  endp,
size_t *  ndigits,
int  base,
int  flags 
)

Definition at line 4021 of file bignum.c.

References ADV, ASSERT_LEN, bad, ISSPACE, len, Qnil, RB_INT_PARSE_PREFIX, RB_INT_PARSE_SIGN, and val.

Referenced by rb_cstr_parse_inum().

◆ rb_int_plus()

VALUE rb_int_plus ( VALUE  x,
VALUE  y 
)

Definition at line 3519 of file numeric.c.

References FIXNUM_P.

◆ rb_int_positive_pow()

VALUE rb_int_positive_pow ( long  x,
unsigned long  y 
)

Definition at line 3942 of file numeric.c.

◆ rb_int_pow()

VALUE rb_int_pow ( VALUE  x,
VALUE  y 
)

Definition at line 4004 of file numeric.c.

References FIXNUM_P.

◆ rb_int_pred()

VALUE rb_int_pred ( VALUE  num)

Definition at line 3255 of file numeric.c.

References FIX2LONG, FIXNUM_P, INT2FIX, LONG2NUM, rb_big_minus(), RB_TYPE_P, and T_BIGNUM.

◆ rb_int_round()

VALUE rb_int_round ( VALUE  num,
int  ndigits,
enum ruby_num_rounding_mode  mode 
)

Definition at line 2094 of file numeric.c.

References f.

◆ rb_int_succ()

VALUE rb_int_succ ( VALUE  num)

Definition at line 3229 of file numeric.c.

References FIX2LONG, FIXNUM_P, INT2FIX, LONG2NUM, rb_big_plus(), RB_TYPE_P, and T_BIGNUM.

◆ rb_int_uminus()

VALUE rb_int_uminus ( VALUE  num)

Definition at line 3388 of file numeric.c.

References FIXNUM_P.

◆ rb_integer_float_cmp()

VALUE rb_integer_float_cmp ( VALUE  x,
VALUE  y 
)

◆ rb_integer_float_eq()

VALUE rb_integer_float_eq ( VALUE  x,
VALUE  y 
)

◆ rb_invcmp()

VALUE rb_invcmp ( VALUE  ,
VALUE   
)

Definition at line 46 of file compar.c.

References rb_exec_recursive().

◆ rb_io_bufread()

ssize_t rb_io_bufread ( VALUE  io,
void *  buf,
size_t  size 
)

Definition at line 2178 of file io.c.

References bufread_arg::fptr, GetOpenFile, and rb_io_check_readable().

◆ rb_io_flush_raw()

VALUE rb_io_flush_raw ( VALUE  ,
int   
)

Definition at line 1553 of file io.c.

References binwrite_arg::fptr, rb_funcall(), RB_TYPE_P, and T_FILE.

Referenced by rb_io_flush().

◆ rb_io_memsize()

size_t rb_io_memsize ( const rb_io_t )

◆ rb_is_attrset_name()

int rb_is_attrset_name ( VALUE  name)

Definition at line 1100 of file symbol.c.

◆ rb_is_class_name()

int rb_is_class_name ( VALUE  name)

Definition at line 1082 of file symbol.c.

◆ rb_is_const_name()

int rb_is_const_name ( VALUE  name)

Definition at line 1076 of file symbol.c.

◆ rb_is_global_name()

int rb_is_global_name ( VALUE  name)

Definition at line 1088 of file symbol.c.

◆ rb_is_instance_name()

int rb_is_instance_name ( VALUE  name)

Definition at line 1094 of file symbol.c.

◆ rb_is_junk_name()

int rb_is_junk_name ( VALUE  name)

Definition at line 1122 of file symbol.c.

◆ rb_is_local_name()

int rb_is_local_name ( VALUE  name)

Definition at line 1106 of file symbol.c.

◆ rb_is_method_name()

int rb_is_method_name ( VALUE  name)

Definition at line 1112 of file symbol.c.

◆ rb_ivar_lookup()

VALUE rb_ivar_lookup ( VALUE  obj,
ID  id,
VALUE  undef 
)

◆ rb_lambda_call()

VALUE rb_lambda_call ( VALUE  obj,
ID  mid,
int  argc,
const VALUE argv,
rb_block_call_func_t  bl_proc,
int  min_argc,
int  max_argc,
VALUE  data2 
)

◆ rb_last_status_clear()

void rb_last_status_clear ( void  )

Definition at line 494 of file process.c.

References GET_THREAD, and Qnil.

◆ rb_lcm()

VALUE rb_lcm ( VALUE  x,
VALUE  y 
)

Definition at line 1941 of file rational.c.

◆ rb_local_defined()

int rb_local_defined ( ID  ,
const struct rb_block  
)

Definition at line 7517 of file compile.c.

◆ rb_make_backtrace()

VALUE rb_make_backtrace ( void  )

Definition at line 813 of file vm_backtrace.c.

References GET_THREAD, and rb_threadptr_backtrace_str_ary().

◆ rb_make_internal_id()

ID rb_make_internal_id ( void  )

Definition at line 760 of file symbol.c.

◆ rb_mark_end_proc()

void rb_mark_end_proc ( void  )

Definition at line 80 of file eval_jump.c.

References link().

◆ rb_mark_generic_ivar()

void rb_mark_generic_ivar ( VALUE  )

Definition at line 1123 of file variable.c.

◆ rb_match_count()

int rb_match_count ( VALUE  match)

Definition at line 1258 of file re.c.

◆ rb_match_nth_defined()

int rb_match_nth_defined ( int  nth,
VALUE  match 
)

Definition at line 1268 of file re.c.

◆ rb_math_atan2()

VALUE rb_math_atan2 ( VALUE  ,
VALUE   
)

◆ rb_math_cos()

VALUE rb_math_cos ( VALUE  )

◆ rb_math_cosh()

VALUE rb_math_cosh ( VALUE  )

◆ rb_math_exp()

VALUE rb_math_exp ( VALUE  )

◆ rb_math_hypot()

VALUE rb_math_hypot ( VALUE  ,
VALUE   
)

◆ rb_math_log()

VALUE rb_math_log ( int  argc,
const VALUE argv 
)

Referenced by imp1().

◆ rb_math_sin()

VALUE rb_math_sin ( VALUE  )

◆ rb_math_sinh()

VALUE rb_math_sinh ( VALUE  )

◆ rb_math_sqrt()

VALUE rb_math_sqrt ( VALUE  )

Definition at line 627 of file math.c.

References neg, RB_TYPE_P, and T_COMPLEX.

◆ rb_maygvl_fd_fix_cloexec()

void rb_maygvl_fd_fix_cloexec ( int  fd)

◆ rb_method_defined_by()

int rb_method_defined_by ( VALUE  obj,
ID  mid,
VALUE(*)(ANYARGS cfunc 
)

◆ rb_mutex_allow_trap()

void rb_mutex_allow_trap ( VALUE  self,
int  val 
)

Definition at line 511 of file thread_sync.c.

References Check_TypedStruct, FL_SET_RAW, FL_UNSET_RAW, and MUTEX_ALLOW_TRAP.

◆ rb_mutex_owned_p()

VALUE rb_mutex_owned_p ( VALUE  self)

Definition at line 306 of file thread_sync.c.

References GET_THREAD, GetMutexPtr, Qfalse, Qtrue, and rb_mutex_struct::th.

◆ rb_next_class_serial()

rb_serial_t rb_next_class_serial ( void  )

Definition at line 309 of file vm.c.

References NEXT_CLASS_SERIAL.

◆ rb_nmin_run()

VALUE rb_nmin_run ( VALUE  obj,
VALUE  num,
int  by,
int  rev,
int  ary 
)

Definition at line 1417 of file enum.c.

◆ rb_num_get_rounding_option()

enum ruby_num_rounding_mode rb_num_get_rounding_option ( VALUE  opts)

◆ rb_num_negative_p()

int rb_num_negative_p ( VALUE  )

Definition at line 342 of file numeric.c.

◆ rb_num_to_uint()

int rb_num_to_uint ( VALUE  val,
unsigned int *  ret 
)

◆ rb_numeric_quo()

VALUE rb_numeric_quo ( VALUE  x,
VALUE  y 
)

◆ rb_obj_gc_flags()

size_t rb_obj_gc_flags ( VALUE  ,
ID  [],
size_t   
)

◆ rb_obj_is_fiber()

VALUE rb_obj_is_fiber ( VALUE  )

Definition at line 425 of file cont.c.

References Qfalse, Qtrue, and rb_typeddata_is_kind_of().

◆ rb_obj_is_mutex()

VALUE rb_obj_is_mutex ( VALUE  obj)

Definition at line 127 of file thread_sync.c.

References Qfalse, Qtrue, and rb_typeddata_is_kind_of().

◆ rb_obj_is_thread()

VALUE rb_obj_is_thread ( VALUE  obj)

Definition at line 2506 of file vm.c.

References Qfalse, Qtrue, rb_typeddata_is_kind_of(), and thread_data_type.

◆ rb_obj_memsize_of()

size_t rb_obj_memsize_of ( VALUE  )

Definition at line 3327 of file gc.c.

◆ rb_objid_hash()

long rb_objid_hash ( st_index_t  index)

Definition at line 246 of file hash.c.

Referenced by rb_dbl_long_hash().

◆ rb_objspace_data_type_name()

RUBY_SYMBOL_EXPORT_BEGIN const char* rb_objspace_data_type_name ( VALUE  obj)

Definition at line 2091 of file gc.c.

References PUREFUNC(), RTYPEDDATA_P, and RTYPEDDATA_TYPE.

◆ rb_objspace_set_event_hook()

void rb_objspace_set_event_hook ( const rb_event_flag_t  event)

◆ rb_parser_get_yydebug()

VALUE rb_parser_get_yydebug ( VALUE  )

Definition at line 17442 of file ripper.c.

◆ rb_parser_load_file()

void* rb_parser_load_file ( VALUE  parser,
VALUE  name 
)

Definition at line 2036 of file ruby.c.

References load_file_arg::opt.

Referenced by rb_load_file_str().

◆ rb_parser_set_context()

VALUE rb_parser_set_context ( VALUE  ,
const struct rb_block ,
int   
)

◆ rb_parser_set_yydebug()

VALUE rb_parser_set_yydebug ( VALUE  ,
VALUE   
)

Definition at line 17457 of file ripper.c.

◆ rb_print_backtrace()

void rb_print_backtrace ( void  )

Definition at line 698 of file vm_dump.c.

References buf, cnt, ERR, free(), NULL, rb_dump_machine_register, and snprintf.

Referenced by rb_vm_bugreport(), and ruby_deprecated_internal_feature().

◆ rb_proc_location()

VALUE rb_proc_location ( VALUE  self)

Definition at line 1142 of file proc.c.

◆ rb_rational_abs()

VALUE rb_rational_abs ( VALUE  self)

Definition at line 1302 of file rational.c.

References get_dat1, INT_NEGATIVE_P, and rb_int_abs().

◆ rb_rational_cmp()

VALUE rb_rational_cmp ( VALUE  self,
VALUE  other 
)

Definition at line 1115 of file rational.c.

References get_dat1, LONG2FIX, rb_int_cmp(), and RB_INTEGER_TYPE_P.

◆ rb_rational_plus()

VALUE rb_rational_plus ( VALUE  self,
VALUE  other 
)

Definition at line 767 of file rational.c.

References get_dat1, and RB_INTEGER_TYPE_P.

◆ rb_rational_reciprocal()

VALUE rb_rational_reciprocal ( VALUE  x)

Definition at line 1903 of file rational.c.

References get_dat1.

◆ rb_rational_uminus()

VALUE rb_rational_uminus ( VALUE  self)

Definition at line 661 of file rational.c.

References assert, get_dat1, RB_TYPE_P, and T_RATIONAL.

◆ rb_realpath_internal()

VALUE rb_realpath_internal ( VALUE  basedir,
VALUE  path,
int  strict 
)

Definition at line 4078 of file file.c.

References RB_REALPATH_DIR, and RB_REALPATH_STRICT.

Referenced by rb_file_s_absolute_path().

◆ rb_refinement_module_get_refined_class()

VALUE rb_refinement_module_get_refined_class ( VALUE  module)

Definition at line 1388 of file eval.c.

References CONST_ID, and rb_attr_get().

◆ rb_reg_check_preprocess()

VALUE rb_reg_check_preprocess ( VALUE  )

Definition at line 2672 of file re.c.

References buf, err, rb_enc_get(), RSTRING_LEN, RSTRING_PTR, and StringValue.

◆ rb_reg_compile()

VALUE rb_reg_compile ( VALUE  str,
int  options,
const char *  sourcefile,
int  sourceline 
)

Definition at line 2919 of file re.c.

Referenced by rb_parser_reg_compile().

◆ rb_reg_match_p()

VALUE rb_reg_match_p ( VALUE  re,
VALUE  str,
long  pos 
)

Definition at line 3303 of file re.c.

References err.

◆ rb_reg_search0()

long rb_reg_search0 ( VALUE  ,
VALUE  ,
long  ,
int  ,
int   
)

Definition at line 1489 of file re.c.

Referenced by rb_reg_search().

◆ rb_reg_start_with_p()

bool rb_reg_start_with_p ( VALUE  re,
VALUE  str 
)

Definition at line 1584 of file re.c.

◆ rb_require_internal()

int rb_require_internal ( VALUE  fname,
int  safe 
)

◆ rb_search_class_path()

VALUE rb_search_class_path ( VALUE  )

Definition at line 337 of file variable.c.

Referenced by rb_vm_bugreport().

◆ rb_sigaltstack_size()

int rb_sigaltstack_size ( void  )

◆ rb_source_loc()

const char* rb_source_loc ( int *  pline)

Definition at line 1313 of file vm.c.

References rb_source_location(), and RSTRING_PTR.

Referenced by rb_bug(), and rb_bug_context().

◆ rb_source_location()

VALUE rb_source_location ( int *  pline)

◆ rb_sourcefilename()

VALUE rb_sourcefilename ( void  )

◆ rb_st_copy()

st_table* rb_st_copy ( VALUE  obj,
struct st_table orig_tbl 
)

Definition at line 3120 of file variable.c.

References st_copy, and st_foreach.

◆ rb_stderr_tty_p()

int rb_stderr_tty_p ( void  )

Definition at line 7602 of file io.c.

References rb_stderr.

Referenced by rb_threadptr_error_print().

◆ rb_stdio_set_default_encoding()

void rb_stdio_set_default_encoding ( void  )

Definition at line 11284 of file io.c.

References Qnil.

◆ rb_str2big_karatsuba()

VALUE rb_str2big_karatsuba ( VALUE  arg,
int  base,
int  badcheck 
)

Definition at line 4323 of file bignum.c.

References len.

◆ rb_str2big_normal()

VALUE rb_str2big_normal ( VALUE  arg,
int  base,
int  badcheck 
)

Definition at line 4281 of file bignum.c.

References len.

◆ rb_str2big_poweroftwo()

VALUE rb_str2big_poweroftwo ( VALUE  arg,
int  base,
int  badcheck 
)

Definition at line 4245 of file bignum.c.

References len.

◆ rb_str_buf_cat_escaped_char()

int rb_str_buf_cat_escaped_char ( VALUE  result,
unsigned int  c,
int  unicode_p 
)

Definition at line 5704 of file string.c.

◆ rb_str_change_terminator_length()

void rb_str_change_terminator_length ( VALUE  str,
const int  oldtermlen,
const int  termlen 
)

Definition at line 2162 of file string.c.

References RString::capa.

◆ rb_str_chomp_string()

VALUE rb_str_chomp_string ( VALUE  str,
VALUE  chomp 
)

Definition at line 8342 of file string.c.

References RSTRING_LEN.

◆ rb_str_eql()

VALUE rb_str_eql ( VALUE  str1,
VALUE  str2 
)

Definition at line 3234 of file string.c.

References Qfalse, Qtrue, RB_TYPE_P, and T_STRING.

◆ rb_str_fill_terminator()

char* rb_str_fill_terminator ( VALUE  str,
const int  termlen 
)

Definition at line 2238 of file string.c.

References RSTRING_LEN, and RSTRING_PTR.

◆ rb_str_locktmp_ensure()

VALUE rb_str_locktmp_ensure ( VALUE  str,
VALUE(*)(VALUE func,
VALUE  arg 
)

Definition at line 2620 of file string.c.

References rb_ensure(), rb_str_locktmp(), and rb_str_unlocktmp().

◆ rb_str_memsize()

size_t rb_str_memsize ( VALUE  )

Definition at line 1338 of file string.c.

References FL_TEST, STR_HEAP_SIZE, STR_NOEMBED, STR_NOFREE, and STR_SHARED.

◆ rb_str_quote_unprintable()

VALUE rb_str_quote_unprintable ( VALUE  )

◆ rb_str_symname_p()

int rb_str_symname_p ( VALUE  )

◆ rb_str_tmp_frozen_acquire()

VALUE rb_str_tmp_frozen_acquire ( VALUE  str)

Definition at line 1170 of file string.c.

References OBJ_FROZEN_RAW.

◆ rb_str_tmp_frozen_release()

void rb_str_tmp_frozen_release ( VALUE  str,
VALUE  tmp 
)

◆ rb_str_to_cstr()

char* rb_str_to_cstr ( VALUE  str)

Definition at line 2216 of file string.c.

◆ rb_struct_init_copy()

VALUE rb_struct_init_copy ( VALUE  copy,
VALUE  s 
)

Definition at line 809 of file struct.c.

References len, OBJ_INIT_COPY, rb_eTypeError, rb_raise(), RSTRUCT_GET, RSTRUCT_LEN, and RSTRUCT_SET.

◆ rb_struct_lookup()

VALUE rb_struct_lookup ( VALUE  s,
VALUE  idx 
)

Definition at line 936 of file struct.c.

◆ rb_suppress_tracing()

VALUE rb_suppress_tracing ( VALUE(*)(VALUE func,
VALUE  arg 
)

Definition at line 376 of file vm_trace.c.

◆ rb_sym_intern_ascii()

VALUE rb_sym_intern_ascii ( const char *  ptr,
long  len 
)

Definition at line 1036 of file symbol.c.

References rb_sym_intern(), and rb_usascii_encoding().

Referenced by rb_sym_intern_ascii_cstr().

◆ rb_sym_intern_ascii_cstr()

VALUE rb_sym_intern_ascii_cstr ( const char *  ptr)

Definition at line 1042 of file symbol.c.

References rb_sym_intern_ascii(), and strlen().

Referenced by rb_catch(), and rb_throw().

◆ rb_sym_proc_call()

VALUE rb_sym_proc_call ( ID  mid,
int  argc,
const VALUE argv,
VALUE  passed_proc 
)

Definition at line 10206 of file string.c.

References rb_eArgError, rb_funcall_with_block(), rb_raise(), and rb_sym_to_proc().

◆ rb_sym_to_proc()

VALUE rb_sym_to_proc ( VALUE  sym)

Definition at line 1198 of file proc.c.

References id, Qfalse, Qnil, RARRAY_PTR, rb_ary_store(), rb_ary_tmp_new(), rb_gc_register_mark_object(), and SYM2ID.

Referenced by rb_sym_proc_call().

◆ rb_thread_execute_interrupts()

void rb_thread_execute_interrupts ( VALUE  th)

Definition at line 2107 of file thread.c.

References rb_threadptr_execute_interrupts().

◆ rb_thread_io_blocking_region()

VALUE rb_thread_io_blocking_region ( rb_blocking_function_t func,
void *  data1,
int  fd 
)

◆ rb_thread_recycle_stack_release()

void rb_thread_recycle_stack_release ( VALUE )

Definition at line 2355 of file vm.c.

References NULL, rb_fiber_mark_self(), RECYCLE_MAX, ruby_xfree(), and VM_ASSERT.

◆ rb_thread_shield_destroy()

VALUE rb_thread_shield_destroy ( VALUE  self)

Definition at line 4478 of file thread.c.

◆ rb_thread_shield_new()

VALUE rb_thread_shield_new ( void  )

Definition at line 4422 of file thread.c.

◆ rb_thread_shield_release()

VALUE rb_thread_shield_release ( VALUE  self)

Definition at line 4467 of file thread.c.

◆ rb_thread_shield_wait()

VALUE rb_thread_shield_wait ( VALUE  self)

Definition at line 4438 of file thread.c.

References GET_THREAD, GetMutexPtr, GetThreadShieldPtr, Qfalse, Qnil, and rb_mutex_struct::th.

◆ rb_thread_to_be_killed()

int rb_thread_to_be_killed ( VALUE  thread)

Definition at line 2302 of file thread.c.

◆ rb_time_timeval()

struct timeval rb_time_timeval ( VALUE  )

Definition at line 2305 of file time.c.

References GetTimeval, and IsTimeval.

◆ rb_uninterruptible()

VALUE rb_uninterruptible ( VALUE(*)(ANYARGS b_proc,
VALUE  data 
)

Definition at line 5128 of file thread.c.

References GET_THREAD, rb_cObject, rb_hash_aset(), and rb_ident_hash_new().

◆ rb_vm_add_root_module()

int rb_vm_add_root_module ( ID  id,
VALUE  module 
)

Definition at line 2172 of file vm.c.

References rb_vm_struct::defined_module_hash, GET_VM, ID2SYM, rb_hash_aset(), and TRUE.

Referenced by rb_define_class(), and rb_define_module().

◆ rb_vm_change_state()

void rb_vm_change_state ( void  )

◆ rb_vm_check_redefinition_by_prepend()

void rb_vm_check_redefinition_by_prepend ( VALUE  klass)

Definition at line 1552 of file vm.c.

◆ rb_vm_get_insns_address_table()

const void** rb_vm_get_insns_address_table ( void  )

Definition at line 130 of file vm_exec.c.

Referenced by rb_iseq_translate_threaded_code().

◆ rb_vm_ifunc_new()

struct vm_ifunc* rb_vm_ifunc_new ( VALUE(*)(ANYARGS func,
const void *  data,
int  min_argc,
int  max_argc 
)

Definition at line 640 of file proc.c.

References CHAR_BIT, IFUNC_NEW, rb_eRangeError, rb_raise(), SIZEOF_VALUE, and UNLIMITED_ARGUMENTS.

Referenced by rb_func_lambda_new(), and rb_lambda_call().

◆ rb_vm_inc_const_missing_count()

void rb_vm_inc_const_missing_count ( void  )

Definition at line 330 of file vm.c.

Referenced by rb_const_missing().

◆ rb_vm_mark()

void rb_vm_mark ( void *  ptr)

◆ rb_vm_pop_cfunc_frame()

void rb_vm_pop_cfunc_frame ( void  )

◆ rb_vm_thread_backtrace()

VALUE rb_vm_thread_backtrace ( int  argc,
const VALUE argv,
VALUE  thval 
)

Definition at line 901 of file vm_backtrace.c.

◆ rb_vm_thread_backtrace_locations()

VALUE rb_vm_thread_backtrace_locations ( int  argc,
const VALUE argv,
VALUE  thval 
)

Definition at line 907 of file vm_backtrace.c.

◆ rb_wb_protected_newobj_of()

VALUE rb_wb_protected_newobj_of ( VALUE  ,
VALUE   
)

Definition at line 1989 of file gc.c.

References FL_WB_PROTECTED, and GC_ASSERT.

◆ rb_wb_unprotected_newobj_of()

VALUE rb_wb_unprotected_newobj_of ( VALUE  ,
VALUE   
)

Definition at line 1982 of file gc.c.

References FL_WB_PROTECTED, and GC_ASSERT.

◆ rb_write_error_str()

void rb_write_error_str ( VALUE  mesg)

Definition at line 7580 of file io.c.

References rb_stderr.

◆ rb_yield_1()

VALUE rb_yield_1 ( VALUE  val)

Definition at line 967 of file vm_eval.c.

◆ rb_yield_force_blockarg()

VALUE rb_yield_force_blockarg ( VALUE  values)

Definition at line 1026 of file vm_eval.c.

◆ rb_yield_refine_block()

VALUE rb_yield_refine_block ( VALUE  refinement,
VALUE  refinements 
)

Definition at line 1584 of file vm_eval.c.

References GET_THREAD.

◆ ruby_dtoa()

char* ruby_dtoa ( double  d_,
int  mode,
int  ndigits,
int *  decpt,
int *  sign,
char **  rve 
)

Definition at line 3144 of file util.c.

References dval, Exp_mask, Flt_Rounds, Bigint::k, rv_strdup, S, Sign_bit, word0, word1, and Bigint::x.

◆ ruby_float_mod()

double ruby_float_mod ( double  x,
double  y 
)

Definition at line 1202 of file numeric.c.

References mod.

◆ ruby_float_step()

int ruby_float_step ( VALUE  from,
VALUE  to,
VALUE  step,
int  excl 
)

Definition at line 2513 of file numeric.c.

References NUM2DBL, RB_TYPE_P, and T_FLOAT.

◆ ruby_gc_set_params()

void ruby_gc_set_params ( int  safe_level)

Definition at line 7553 of file gc.c.

◆ ruby_get_inplace_mode()

const char* ruby_get_inplace_mode ( void  )

Definition at line 12375 of file io.c.

References ARGF, and RSTRING_PTR.

◆ ruby_hdtoa()

char* ruby_hdtoa ( double  d,
const char *  xdigs,
int  ndigits,
int *  decpt,
int *  sign,
char **  rve 
)

◆ ruby_init_setproctitle()

void ruby_init_setproctitle ( int  argc,
char *  argv[] 
)

◆ ruby_is_fd_loadable()

int ruby_is_fd_loadable ( int  fd)

Definition at line 5825 of file file.c.

References errno, fstat, S_ISDIR, and S_ISREG.

Referenced by rb_file_load_ok().

◆ ruby_mimfree()

void ruby_mimfree ( void *  ptr)

Definition at line 8110 of file gc.c.

References free().

◆ ruby_mimmalloc()

void* ruby_mimmalloc ( size_t  size)

Definition at line 8094 of file gc.c.

References malloc.

Referenced by Init_BareVM().

◆ ruby_num_interval_step_size()

VALUE ruby_num_interval_step_size ( VALUE  from,
VALUE  to,
VALUE  step,
int  excl 
)

Definition at line 2544 of file numeric.c.

References FIXNUM_P.

◆ ruby_register_rollback_func_for_ensure()

void ruby_register_rollback_func_for_ensure ( VALUE(*)(ANYARGS ensure_func,
VALUE(*)(ANYARGS rollback_func 
)

Definition at line 1034 of file cont.c.

References GET_VM, NULL, st_data_t, st_init_numtable, st_insert, and UNLIKELY.

◆ ruby_scan_digits()

unsigned long ruby_scan_digits ( const char *  str,
ssize_t  len,
int  base,
size_t *  retlen,
int *  overflow 
)

Definition at line 84 of file util.c.

References ruby_digit36_to_number_table.

Referenced by ruby_strtoul().

◆ ruby_set_inplace_mode()

void ruby_set_inplace_mode ( const char *  )

Definition at line 12381 of file io.c.

References ARGF, Qfalse, Qnil, and rb_fstring_cstr().

◆ ruby_sized_xfree()

void void ruby_sized_xfree ( void *  x,
size_t  size 
)

Definition at line 8077 of file gc.c.

Referenced by rb_ary_free(), rb_str_free(), and ruby_xfree().

◆ ruby_sized_xrealloc()

void* ruby_sized_xrealloc ( void *  ptr,
size_t  new_size,
size_t  old_size 
)

Definition at line 8039 of file gc.c.

Referenced by ruby_xrealloc().

◆ ruby_sized_xrealloc2()

void* ruby_sized_xrealloc2 ( void *  ptr,
size_t  new_count,
size_t  element_size,
size_t  old_count 
)

◆ ruby_thread_has_gvl_p()

int ruby_thread_has_gvl_p ( void  )

Definition at line 1543 of file thread.c.

References rb_thread_struct::blocking_region_buffer.

◆ ruby_vm_special_exception_copy()

VALUE ruby_vm_special_exception_copy ( VALUE  )

Variable Documentation

◆ OnigEncodingUS_ASCII

rb_encoding OnigEncodingUS_ASCII

◆ OnigEncodingUTF_8

rb_encoding OnigEncodingUTF_8

Definition at line 201 of file onigmo.h.

◆ rb_cEncodingConverter

VALUE rb_cEncodingConverter

Definition at line 23 of file transcode.c.

◆ ruby_digit36_to_number_table

const signed char ruby_digit36_to_number_table[]

Definition at line 6 of file escape.c.

Referenced by ruby_scan_digits().

◆ ruby_digitmap

const char ruby_digitmap[]

Definition at line 38 of file bignum.c.

Referenced by rb_fix2str().

◆ ruby_disable_gc

int ruby_disable_gc

Definition at line 832 of file gc.c.

◆ ruby_enable_coredump

int ruby_enable_coredump

Definition at line 1449 of file signal.c.

Referenced by ruby_env_debug_option().

◆ ruby_engine

const char ruby_engine[]

Definition at line 35 of file version.c.

Referenced by ruby_process_options().

◆ ruby_exec_prefix

const char ruby_exec_prefix[]

Definition at line 59 of file loadpath.c.

◆ ruby_hexdigits

const char ruby_hexdigits[]

Definition at line 5 of file escape.c.

◆ ruby_initial_gc_stress_ptr

VALUE* ruby_initial_gc_stress_ptr

Definition at line 738 of file gc.c.

Referenced by ruby_env_debug_option().

◆ ruby_initial_load_paths

const char ruby_initial_load_paths[]

Definition at line 62 of file loadpath.c.

Referenced by ruby_init_loadpath_safe().