object.c File Reference

#include "ruby/ruby.h"
#include "ruby/st.h"
#include "ruby/util.h"
#include "ruby/encoding.h"
#include <stdio.h>
#include <errno.h>
#include <ctype.h>
#include <math.h>
#include <float.h>
#include "constant.h"
#include "internal.h"
#include "probes.h"

Go to the source code of this file.

Data Structures

struct  conv_method_tbl

Defines

#define CLASS_OR_MODULE_P(obj)
#define IMPLICIT_CONVERSIONS   7
#define OutOfRange()
#define rb_intern(str)   rb_intern_const(str)

Functions

VALUE rb_equal (VALUE obj1, VALUE obj2)
int rb_eql (VALUE obj1, VALUE obj2)
VALUE rb_obj_equal (VALUE obj1, VALUE obj2)
VALUE rb_obj_hash (VALUE obj)
VALUE rb_obj_not (VALUE obj)
VALUE rb_obj_not_equal (VALUE obj1, VALUE obj2)
VALUE rb_class_real (VALUE cl)
VALUE rb_obj_class (VALUE obj)
static VALUE rb_obj_singleton_class (VALUE obj)
void rb_obj_copy_ivar (VALUE dest, VALUE obj)
static void init_copy (VALUE dest, VALUE obj)
VALUE rb_obj_clone (VALUE obj)
VALUE rb_obj_dup (VALUE obj)
VALUE rb_obj_init_copy (VALUE obj, VALUE orig)
VALUE rb_obj_init_dup_clone (VALUE obj, VALUE orig)
VALUE rb_any_to_s (VALUE obj)
VALUE rb_inspect (VALUE obj)
static int inspect_i (st_data_t k, st_data_t v, st_data_t a)
static VALUE inspect_obj (VALUE obj, VALUE str, int recur)
static VALUE rb_obj_inspect (VALUE obj)
static VALUE class_or_module_required (VALUE c)
static VALUE class_search_ancestor (VALUE cl, VALUE c)
VALUE rb_obj_is_instance_of (VALUE obj, VALUE c)
VALUE rb_obj_is_kind_of (VALUE obj, VALUE c)
VALUE rb_class_search_ancestor (VALUE cl, VALUE c)
VALUE rb_obj_tap (VALUE obj)
static VALUE rb_obj_dummy (void)
VALUE rb_obj_tainted (VALUE obj)
VALUE rb_obj_taint (VALUE obj)
VALUE rb_obj_untaint (VALUE obj)
VALUE rb_obj_untrusted (VALUE obj)
VALUE rb_obj_untrust (VALUE obj)
VALUE rb_obj_trust (VALUE obj)
void rb_obj_infect (VALUE obj1, VALUE obj2)
VALUE rb_obj_freeze (VALUE obj)
VALUE rb_obj_frozen_p (VALUE obj)
static VALUE nil_to_i (VALUE obj)
static VALUE nil_to_f (VALUE obj)
static VALUE nil_to_s (VALUE obj)
static VALUE nil_to_a (VALUE obj)
static VALUE nil_to_h (VALUE obj)
static VALUE nil_inspect (VALUE obj)
static VALUE true_to_s (VALUE obj)
static VALUE true_and (VALUE obj, VALUE obj2)
static VALUE true_or (VALUE obj, VALUE obj2)
static VALUE true_xor (VALUE obj, VALUE obj2)
static VALUE false_to_s (VALUE obj)
static VALUE false_and (VALUE obj, VALUE obj2)
static VALUE false_or (VALUE obj, VALUE obj2)
static VALUE false_xor (VALUE obj, VALUE obj2)
static VALUE rb_true (VALUE obj)
static VALUE rb_false (VALUE obj)
static VALUE rb_obj_match (VALUE obj1, VALUE obj2)
static VALUE rb_obj_not_match (VALUE obj1, VALUE obj2)
static VALUE rb_obj_cmp (VALUE obj1, VALUE obj2)
static VALUE rb_mod_to_s (VALUE klass)
static VALUE rb_mod_freeze (VALUE mod)
static VALUE rb_mod_eqq (VALUE mod, VALUE arg)
VALUE rb_class_inherited_p (VALUE mod, VALUE arg)
static VALUE rb_mod_lt (VALUE mod, VALUE arg)
static VALUE rb_mod_ge (VALUE mod, VALUE arg)
static VALUE rb_mod_gt (VALUE mod, VALUE arg)
static VALUE rb_mod_cmp (VALUE mod, VALUE arg)
static VALUE rb_module_s_alloc (VALUE klass)
static VALUE rb_class_s_alloc (VALUE klass)
static VALUE rb_mod_initialize (VALUE module)
static VALUE rb_class_initialize (int argc, VALUE *argv, VALUE klass)
VALUE rb_obj_alloc (VALUE klass)
static VALUE rb_class_allocate_instance (VALUE klass)
VALUE rb_class_new_instance (int argc, VALUE *argv, VALUE klass)
VALUE rb_class_superclass (VALUE klass)
VALUE rb_class_get_superclass (VALUE klass)
static VALUE rb_mod_attr_reader (int argc, VALUE *argv, VALUE klass)
VALUE rb_mod_attr (int argc, VALUE *argv, VALUE klass)
static VALUE rb_mod_attr_writer (int argc, VALUE *argv, VALUE klass)
static VALUE rb_mod_attr_accessor (int argc, VALUE *argv, VALUE klass)
static VALUE rb_mod_const_get (int argc, VALUE *argv, VALUE mod)
static VALUE rb_mod_const_set (VALUE mod, VALUE name, VALUE value)
static VALUE rb_mod_const_defined (int argc, VALUE *argv, VALUE mod)
static VALUE rb_obj_ivar_get (VALUE obj, VALUE iv)
static VALUE rb_obj_ivar_set (VALUE obj, VALUE iv, VALUE val)
static VALUE rb_obj_ivar_defined (VALUE obj, VALUE iv)
static VALUE rb_mod_cvar_get (VALUE obj, VALUE iv)
static VALUE rb_mod_cvar_set (VALUE obj, VALUE iv, VALUE val)
static VALUE rb_mod_cvar_defined (VALUE obj, VALUE iv)
static VALUE convert_type (VALUE val, const char *tname, const char *method, int raise)
 NORETURN (static void conversion_mismatch(VALUE, const char *, const char *, VALUE))
static void conversion_mismatch (VALUE val, const char *tname, const char *method, VALUE result)
VALUE rb_convert_type (VALUE val, int type, const char *tname, const char *method)
VALUE rb_check_convert_type (VALUE val, int type, const char *tname, const char *method)
static VALUE rb_to_integer (VALUE val, const char *method)
VALUE rb_check_to_integer (VALUE val, const char *method)
VALUE rb_to_int (VALUE val)
VALUE rb_check_to_int (VALUE val)
static VALUE rb_convert_to_integer (VALUE val, int base)
VALUE rb_Integer (VALUE val)
static VALUE rb_f_integer (int argc, VALUE *argv, VALUE obj)
double rb_cstr_to_dbl (const char *p, int badcheck)
double rb_str_to_dbl (VALUE str, int badcheck)
VALUE rb_Float (VALUE val)
static VALUE rb_f_float (VALUE obj, VALUE arg)
VALUE rb_to_float (VALUE val)
VALUE rb_check_to_float (VALUE val)
double rb_num2dbl (VALUE val)
VALUE rb_String (VALUE val)
static VALUE rb_f_string (VALUE obj, VALUE arg)
VALUE rb_Array (VALUE val)
static VALUE rb_f_array (VALUE obj, VALUE arg)
VALUE rb_Hash (VALUE val)
static VALUE rb_f_hash (VALUE obj, VALUE arg)
void Init_Object (void)
 Initializes the world of objects and classes.

Variables

VALUE rb_cBasicObject
VALUE rb_mKernel
VALUE rb_cObject
VALUE rb_cModule
VALUE rb_cClass
VALUE rb_cData
VALUE rb_cNilClass
VALUE rb_cTrueClass
VALUE rb_cFalseClass
static ID id_eq
static ID id_eql
static ID id_match
static ID id_inspect
static ID id_init_copy
static ID id_init_clone
static ID id_init_dup
static ID id_const_missing
static st_table * immediate_frozen_tbl = 0
static struct conv_method_tbl conv_method_names []

Define Documentation

#define CLASS_OR_MODULE_P ( obj   ) 
Value:
(!SPECIAL_CONST_P(obj) && \
     (BUILTIN_TYPE(obj) == T_CLASS || BUILTIN_TYPE(obj) == T_MODULE))

Definition at line 42 of file object.c.

Referenced by rb_class_inherited_p(), rb_mod_cmp(), rb_mod_ge(), and rb_mod_to_s().

#define IMPLICIT_CONVERSIONS   7

Definition at line 2377 of file object.c.

Referenced by convert_type().

 
#define OutOfRange (  ) 
Value:
((end - p > max_width) ? \
                      (w = max_width, ellipsis = "...") : \
                      (w = (int)(end - p), ellipsis = ""))

Referenced by rb_cstr_to_dbl().

#define rb_intern ( str   )     rb_intern_const(str)

Function Documentation

static VALUE class_or_module_required ( VALUE  c  )  [static]
static VALUE class_search_ancestor ( VALUE  cl,
VALUE  c 
) [static]

Definition at line 602 of file object.c.

References RCLASS_M_TBL, and RCLASS_SUPER.

Referenced by rb_class_inherited_p(), rb_class_search_ancestor(), and rb_obj_is_kind_of().

static void conversion_mismatch ( VALUE  val,
const char *  tname,
const char *  method,
VALUE  result 
) [static]

Definition at line 2416 of file object.c.

References PRIsVALUE, rb_eTypeError, rb_obj_class(), and rb_raise().

Referenced by rb_check_convert_type(), rb_convert_type(), and rb_to_integer().

static VALUE convert_type ( VALUE  val,
const char *  tname,
const char *  method,
int  raise 
) [static]
static VALUE false_and ( VALUE  obj,
VALUE  obj2 
) [static]

Definition at line 1260 of file object.c.

References Qfalse.

Referenced by Init_Object().

static VALUE false_or ( VALUE  obj,
VALUE  obj2 
) [static]

Definition at line 1276 of file object.c.

References Qfalse, Qtrue, and RTEST.

Referenced by Init_Object().

static VALUE false_to_s ( VALUE  obj  )  [static]

Definition at line 1244 of file object.c.

References rb_usascii_str_new2.

Referenced by Init_Object().

static VALUE false_xor ( VALUE  obj,
VALUE  obj2 
) [static]

Definition at line 1295 of file object.c.

References Qfalse, Qtrue, and RTEST.

Referenced by Init_Object().

static void init_copy ( VALUE  dest,
VALUE  obj 
) [static]
static int inspect_i ( st_data_t  k,
st_data_t  v,
st_data_t  a 
) [static]
static VALUE inspect_obj ( VALUE  obj,
VALUE  str,
int  recur 
) [static]

Definition at line 455 of file object.c.

References inspect_i(), OBJ_INFECT, rb_ivar_foreach(), rb_str_cat2(), and RSTRING_PTR.

Referenced by rb_obj_inspect().

static VALUE nil_inspect ( VALUE  obj  )  [static]

Definition at line 1144 of file object.c.

References rb_usascii_str_new2.

Referenced by Init_Object().

static VALUE nil_to_a ( VALUE  obj  )  [static]

Definition at line 1114 of file object.c.

References rb_ary_new2().

Referenced by Init_Object().

static VALUE nil_to_f ( VALUE  obj  )  [static]

Definition at line 1084 of file object.c.

References DBL2NUM.

Referenced by Init_Object().

static VALUE nil_to_h ( VALUE  obj  )  [static]

Definition at line 1131 of file object.c.

References rb_hash_new().

Referenced by Init_Object().

static VALUE nil_to_i ( VALUE  obj  )  [static]

Definition at line 1069 of file object.c.

References INT2FIX.

Referenced by Init_Object().

static VALUE nil_to_s ( VALUE  obj  )  [static]

Definition at line 1097 of file object.c.

References rb_usascii_str_new().

Referenced by Init_Object().

NORETURN ( static void   conversion_mismatchVALUE, const char *, const char *, VALUE  ) 
VALUE rb_any_to_s ( VALUE  obj  ) 
VALUE rb_Array ( VALUE  val  ) 
VALUE rb_check_convert_type ( VALUE  val,
int  type,
const char *  tname,
const char *  method 
)
VALUE rb_check_to_float ( VALUE  val  ) 

Definition at line 2759 of file object.c.

References Qnil, rb_check_convert_type(), rb_cNumeric, rb_obj_is_kind_of(), RB_TYPE_P, and T_FLOAT.

Referenced by rand_random(), and rand_range().

VALUE rb_check_to_int ( VALUE  val  ) 

Definition at line 2488 of file object.c.

References rb_check_to_integer().

Referenced by exit_initialize().

VALUE rb_check_to_integer ( VALUE  val,
const char *  method 
)
static VALUE rb_class_allocate_instance ( VALUE  klass  )  [static]

Definition at line 1775 of file object.c.

References NEWOBJ_OF, and T_OBJECT.

Referenced by Init_Object().

VALUE rb_class_get_superclass ( VALUE  klass  ) 

Definition at line 1842 of file object.c.

References RCLASS_SUPER.

VALUE rb_class_inherited_p ( VALUE  mod,
VALUE  arg 
)
static VALUE rb_class_initialize ( int  argc,
VALUE *  argv,
VALUE  klass 
) [static]
VALUE rb_class_new_instance ( int  argc,
VALUE *  argv,
VALUE  klass 
)
VALUE rb_class_real ( VALUE  cl  ) 
static VALUE rb_class_s_alloc ( VALUE  klass  )  [static]

Definition at line 1621 of file object.c.

References rb_class_boot().

Referenced by Init_Object().

VALUE rb_class_search_ancestor ( VALUE  cl,
VALUE  c 
)

Definition at line 613 of file object.c.

References class_or_module_required(), class_search_ancestor(), and RCLASS_ORIGIN.

Referenced by umethod_bind().

VALUE rb_class_superclass ( VALUE  klass  ) 
static VALUE rb_convert_to_integer ( VALUE  val,
int  base 
) [static]
VALUE rb_convert_type ( VALUE  val,
int  type,
const char *  tname,
const char *  method 
)
double rb_cstr_to_dbl ( const char *  p,
int  badcheck 
)
int rb_eql ( VALUE  obj1,
VALUE  obj2 
)

Definition at line 67 of file object.c.

References id_eql, rb_funcall(), and RTEST.

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

VALUE rb_equal ( VALUE  obj1,
VALUE  obj2 
)
static VALUE rb_f_array ( VALUE  obj,
VALUE  arg 
) [static]

Definition at line 2845 of file object.c.

References rb_Array().

Referenced by Init_Object().

static VALUE rb_f_float ( VALUE  obj,
VALUE  arg 
) [static]

Definition at line 2739 of file object.c.

References rb_Float().

Referenced by Init_Object().

static VALUE rb_f_hash ( VALUE  obj,
VALUE  arg 
) [static]

Definition at line 2880 of file object.c.

References rb_Hash().

Referenced by Init_Object().

static VALUE rb_f_integer ( int  argc,
VALUE *  argv,
VALUE  obj 
) [static]

Definition at line 2569 of file object.c.

References NULL, NUM2INT, Qnil, rb_convert_to_integer(), and rb_scan_args().

Referenced by Init_Object().

static VALUE rb_f_string ( VALUE  obj,
VALUE  arg 
) [static]

Definition at line 2814 of file object.c.

References rb_String().

Referenced by Init_Object().

static VALUE rb_false ( VALUE  obj  )  [static]

Definition at line 1323 of file object.c.

References Qfalse.

Referenced by Init_Object().

VALUE rb_Float ( VALUE  val  ) 
VALUE rb_Hash ( VALUE  val  ) 
VALUE rb_inspect ( VALUE  obj  ) 
VALUE rb_Integer ( VALUE  val  ) 
VALUE rb_mod_attr ( int  argc,
VALUE *  argv,
VALUE  klass 
)

Definition at line 1869 of file object.c.

References Qfalse, Qnil, Qtrue, rb_attr(), rb_mod_attr_reader(), rb_to_id(), rb_warning(), RTEST, and TRUE.

Referenced by Init_Object().

static VALUE rb_mod_attr_accessor ( int  argc,
VALUE *  argv,
VALUE  klass 
) [static]

Definition at line 1914 of file object.c.

References Qnil, rb_attr(), rb_to_id(), and TRUE.

Referenced by Init_Object().

static VALUE rb_mod_attr_reader ( int  argc,
VALUE *  argv,
VALUE  klass 
) [static]

Definition at line 1858 of file object.c.

References FALSE, Qnil, rb_attr(), rb_to_id(), and TRUE.

Referenced by Init_Object(), and rb_mod_attr().

static VALUE rb_mod_attr_writer ( int  argc,
VALUE *  argv,
VALUE  klass 
) [static]

Definition at line 1888 of file object.c.

References FALSE, Qnil, rb_attr(), rb_to_id(), and TRUE.

Referenced by Init_Object().

static VALUE rb_mod_cmp ( VALUE  mod,
VALUE  arg 
) [static]

Definition at line 1594 of file object.c.

References CLASS_OR_MODULE_P, cmp, INT2FIX, NIL_P, Qnil, and rb_class_inherited_p().

Referenced by Init_Object().

static VALUE rb_mod_const_defined ( int  argc,
VALUE *  argv,
VALUE  mod 
) [static]
static VALUE rb_mod_const_get ( int  argc,
VALUE *  argv,
VALUE  mod 
) [static]
static VALUE rb_mod_const_set ( VALUE  mod,
VALUE  name,
VALUE  value 
) [static]

Definition at line 2068 of file object.c.

References PRIsVALUE, QUOTE_ID, rb_const_set(), rb_is_const_id(), rb_name_error(), and rb_to_id().

Referenced by Init_Object().

static VALUE rb_mod_cvar_defined ( VALUE  obj,
VALUE  iv 
) [static]
static VALUE rb_mod_cvar_get ( VALUE  obj,
VALUE  iv 
) [static]
static VALUE rb_mod_cvar_set ( VALUE  obj,
VALUE  iv,
VALUE  val 
) [static]

Definition at line 2315 of file object.c.

References PRIsVALUE, QUOTE_ID, rb_cvar_set(), rb_is_class_id(), rb_name_error(), and rb_to_id().

Referenced by Init_Object().

static VALUE rb_mod_eqq ( VALUE  mod,
VALUE  arg 
) [static]

Definition at line 1485 of file object.c.

References rb_obj_is_kind_of().

Referenced by Init_Object().

static VALUE rb_mod_freeze ( VALUE  mod  )  [static]

Definition at line 1468 of file object.c.

References rb_class_name(), and rb_obj_freeze().

Referenced by Init_Object().

static VALUE rb_mod_ge ( VALUE  mod,
VALUE  arg 
) [static]

Definition at line 1554 of file object.c.

References CLASS_OR_MODULE_P, rb_class_inherited_p(), rb_eTypeError, and rb_raise().

Referenced by Init_Object(), and rb_mod_gt().

static VALUE rb_mod_gt ( VALUE  mod,
VALUE  arg 
) [static]

Definition at line 1575 of file object.c.

References Qfalse, and rb_mod_ge().

Referenced by Init_Object().

static VALUE rb_mod_initialize ( VALUE  module  )  [static]

Definition at line 1653 of file object.c.

References Qnil, rb_block_given_p(), and rb_mod_module_exec().

Referenced by Init_Object(), and rb_class_initialize().

static VALUE rb_mod_lt ( VALUE  mod,
VALUE  arg 
) [static]

Definition at line 1534 of file object.c.

References Qfalse, and rb_class_inherited_p().

Referenced by Init_Object().

static VALUE rb_mod_to_s ( VALUE  klass  )  [static]
static VALUE rb_module_s_alloc ( VALUE  klass  )  [static]

Definition at line 1612 of file object.c.

References mod, rb_module_new(), and RBASIC.

Referenced by Init_Object().

double rb_num2dbl ( VALUE  val  ) 

Definition at line 2769 of file object.c.

References rb_eTypeError, rb_Float(), rb_raise(), RFLOAT_VALUE, T_FLOAT, T_NIL, T_STRING, and TYPE.

Referenced by thread_join_m().

VALUE rb_obj_alloc ( VALUE  klass  ) 
VALUE rb_obj_class ( VALUE  obj  ) 

Definition at line 194 of file object.c.

References CLASS_OF, and rb_class_real().

Referenced by ary_make_shared_copy(), cannot_be_coerced_into_BigDecimal(), cbsubst_initialize(), coerce_failed(), conversion_mismatch(), convert_type(), copy_path_class(), d_lite_plus(), dup_obj(), dup_obj_as_complex(), encoded_dup(), exc_equal(), extract_user_token(), get_new_timeval(), get_timeval(), Init_Object(), inspect_struct(), io_reopen(), ip_eval(), ip_invoke_with_position(), mString_to_json_raw_object(), mSyslog_log(), name_err_mesg_equal(), NOINSERT_UPDATE_CALLBACK(), num_init_copy(), num_sadded(), ossl_asn1_default_tag(), ossl_cipher_init(), ossl_x509_inspect(), path_basename(), path_dirname(), path_each_entry(), path_entries(), path_expand_path(), path_readlink(), path_realdirpath(), path_realpath(), path_split(), path_sub(), path_sub_ext(), random_equal(), rb_ary_slice_bang(), rb_ary_subseq(), rb_ary_times(), rb_ary_to_a(), rb_ary_uniq(), rb_digest_base_block_length(), rb_digest_base_copy(), rb_digest_base_digest_length(), rb_digest_base_finish(), rb_digest_base_reset(), rb_digest_base_update(), rb_dlptr_inspect(), rb_hash_dup(), rb_hash_to_h(), rb_ivar_set(), rb_obj_alloc(), rb_obj_clone(), rb_obj_dup(), rb_obj_init_copy(), rb_obj_is_instance_of(), rb_stat_cmp(), rb_str_dup(), rb_str_new_frozen(), rb_str_new_shared(), rb_str_substr(), rb_str_to_s(), rb_struct_eql(), rb_struct_equal(), rb_struct_initialize_m(), rb_struct_members(), rb_struct_members_m(), rb_tmp_class_path(), recursive_hash(), RUBY_ALIAS_FUNCTION(), setup_exception(), str_byte_substr(), str_gsub(), strscan_inspect(), syserr_initialize(), tcl_protect_core(), time_dup(), tk_funcall(), vm_search_super_method(), and window_subwin().

VALUE rb_obj_clone ( VALUE  obj  ) 
static VALUE rb_obj_cmp ( VALUE  obj1,
VALUE  obj2 
) [static]

Definition at line 1379 of file object.c.

References INT2FIX, Qnil, and rb_equal().

Referenced by Init_Object().

void rb_obj_copy_ivar ( VALUE  dest,
VALUE  obj 
)

Definition at line 223 of file object.c.

References ALLOC_N, MEMCPY, RBASIC, ROBJECT, ROBJECT_EMBED, ROBJECT_EMBED_LEN_MAX, ROBJECT_IVPTR, and xfree.

Referenced by init_copy().

static VALUE rb_obj_dummy ( void   )  [static]

Definition at line 871 of file object.c.

References Qnil.

Referenced by Init_Object().

VALUE rb_obj_dup ( VALUE  obj  ) 
VALUE rb_obj_equal ( VALUE  obj1,
VALUE  obj2 
)

Definition at line 109 of file object.c.

References Qfalse, and Qtrue.

Referenced by Init_Object(), and opt_eq_func().

VALUE rb_obj_freeze ( VALUE  obj  ) 
VALUE rb_obj_frozen_p ( VALUE  obj  ) 

Definition at line 1041 of file object.c.

References immediate_frozen_tbl, OBJ_FROZEN, Qfalse, Qtrue, SPECIAL_CONST_P, and st_lookup().

Referenced by generic_ivar_set(), and Init_Object().

VALUE rb_obj_hash ( VALUE  obj  ) 

Definition at line 129 of file object.c.

References LONG2FIX, NUM2LONG, rb_hash_end, rb_hash_start(), and rb_obj_id().

Referenced by Init_Object().

void rb_obj_infect ( VALUE  obj1,
VALUE  obj2 
)

Definition at line 983 of file object.c.

References OBJ_INFECT.

VALUE rb_obj_init_copy ( VALUE  obj,
VALUE  orig 
)

Definition at line 363 of file object.c.

References rb_check_frozen, rb_check_trusted, rb_eTypeError, rb_obj_class(), rb_raise(), and TYPE.

Referenced by Init_Object().

VALUE rb_obj_init_dup_clone ( VALUE  obj,
VALUE  orig 
)

Definition at line 376 of file object.c.

References id_init_copy, and rb_funcall().

Referenced by Init_Object().

static VALUE rb_obj_inspect ( VALUE  obj  )  [static]
VALUE rb_obj_is_instance_of ( VALUE  obj,
VALUE  c 
)
VALUE rb_obj_is_kind_of ( VALUE  obj,
VALUE  c 
)

Definition at line 593 of file object.c.

References CLASS_OF, class_or_module_required(), class_search_ancestor(), Qfalse, Qtrue, and RCLASS_ORIGIN.

Referenced by case_when_optimizable_literal(), check_match(), cState_from_state_s(), discrete_object_p(), error_handle(), ev_advise(), eval_string_with_cref(), EVENTSINK_Invoke(), f_kind_of_p(), fole_s_const_load(), fole_s_show_help(), folemethod_initialize(), foleparam_initialize(), folevariant_initialize(), get_eval_string_core(), GetBNPtr(), gzfile_read_raw_rescue(), host_str(), Init_Object(), ip_eval(), ip_invoke_with_position(), ip_is_slave_of_p(), ip_rbTkWaitCommand(), ip_rbUpdateCommand(), ip_rbVwaitCommand(), make_exception(), ole_invoke(), ole_val2variant(), os_obj_of_i(), ossl_asn1cons_to_der(), ossl_asn1data_to_der(), ossl_bn_coerce(), ossl_bn_initialize(), parse(), path_cmp(), path_eq(), pending_exception_check0(), pending_exception_check1(), range_eq(), range_eql(), range_include(), range_max(), range_size(), range_step(), range_step_size(), rb_ary_bsearch(), rb_check_to_float(), rb_check_to_integer(), rb_digest_instance_equal(), rb_dlptr2cptr(), rb_dlptr_aset(), rb_dlptr_cmp(), rb_dlptr_eql(), rb_dlptr_s_to_ptr(), rb_enumeratorize_with_size(), rb_fiddle_ptr2cptr(), rb_fiddle_ptr_aset(), rb_fiddle_ptr_cmp(), rb_fiddle_ptr_eql(), rb_fiddle_ptr_s_to_ptr(), rb_method_call_status(), rb_mod_eqq(), rb_range_values(), rb_rescue2(), rb_set_errinfo(), rb_stat_cmp(), rb_thread_pending_interrupt_p(), rb_to_float(), rb_to_integer(), ruby_cleanup(), setup_exception(), syserr_eqq(), tcl_protect_core(), thread_start_func_2(), tk_funcall(), total_i(), umethod_bind(), vm_call_method(), and vm_search_super_method().

static VALUE rb_obj_ivar_defined ( VALUE  obj,
VALUE  iv 
) [static]
static VALUE rb_obj_ivar_get ( VALUE  obj,
VALUE  iv 
) [static]
static VALUE rb_obj_ivar_set ( VALUE  obj,
VALUE  iv,
VALUE  val 
) [static]

Definition at line 2211 of file object.c.

References PRIsVALUE, QUOTE_ID, rb_is_instance_id(), rb_ivar_set(), rb_name_error(), and rb_to_id().

Referenced by Init_Object().

static VALUE rb_obj_match ( VALUE  obj1,
VALUE  obj2 
) [static]

Definition at line 1339 of file object.c.

References Qnil.

Referenced by Init_Object().

VALUE rb_obj_not ( VALUE  obj  ) 

Definition at line 151 of file object.c.

References Qfalse, Qtrue, and RTEST.

Referenced by Init_Object().

VALUE rb_obj_not_equal ( VALUE  obj1,
VALUE  obj2 
)

Definition at line 164 of file object.c.

References id_eq, Qfalse, Qtrue, rb_funcall(), result, and RTEST.

Referenced by Init_Object().

static VALUE rb_obj_not_match ( VALUE  obj1,
VALUE  obj2 
) [static]

Definition at line 1353 of file object.c.

References id_match, Qfalse, Qtrue, rb_funcall(), result, and RTEST.

Referenced by Init_Object().

static VALUE rb_obj_singleton_class ( VALUE  obj  )  [static]

Definition at line 217 of file object.c.

References rb_singleton_class().

Referenced by Init_Object().

VALUE rb_obj_taint ( VALUE  obj  ) 
VALUE rb_obj_tainted ( VALUE  obj  ) 

Definition at line 884 of file object.c.

References OBJ_TAINTED, Qfalse, and Qtrue.

Referenced by Init_Object().

VALUE rb_obj_tap ( VALUE  obj  ) 

Definition at line 636 of file object.c.

References rb_yield().

Referenced by Init_Object().

VALUE rb_obj_trust ( VALUE  obj  ) 

Definition at line 972 of file object.c.

References FL_UNSET, FL_UNTRUSTED, OBJ_UNTRUSTED, rb_check_frozen, and rb_secure().

Referenced by Init_Object().

VALUE rb_obj_untaint ( VALUE  obj  ) 

Definition at line 920 of file object.c.

References FL_TAINT, FL_UNSET, OBJ_TAINTED, rb_check_frozen, and rb_secure().

Referenced by Init_Object(), path_untaint(), and time_zone().

VALUE rb_obj_untrust ( VALUE  obj  ) 

Definition at line 953 of file object.c.

References OBJ_UNTRUST, OBJ_UNTRUSTED, rb_check_frozen, and rb_secure().

Referenced by Init_Object(), and tk_obj_untrust().

VALUE rb_obj_untrusted ( VALUE  obj  ) 

Definition at line 938 of file object.c.

References OBJ_UNTRUSTED, Qfalse, and Qtrue.

Referenced by Init_Object().

double rb_str_to_dbl ( VALUE  str,
int  badcheck 
)
VALUE rb_String ( VALUE  val  ) 
VALUE rb_to_float ( VALUE  val  ) 
VALUE rb_to_int ( VALUE  val  ) 
static VALUE rb_to_integer ( VALUE  val,
const char *  method 
) [static]
static VALUE rb_true ( VALUE  obj  )  [static]

Definition at line 1308 of file object.c.

References Qtrue.

Referenced by Init_Object().

static VALUE true_and ( VALUE  obj,
VALUE  obj2 
) [static]

Definition at line 1182 of file object.c.

References Qfalse, Qtrue, and RTEST.

Referenced by Init_Object().

static VALUE true_or ( VALUE  obj,
VALUE  obj2 
) [static]

Definition at line 1204 of file object.c.

References Qtrue.

Referenced by Init_Object().

static VALUE true_to_s ( VALUE  obj  )  [static]

Definition at line 1167 of file object.c.

References rb_usascii_str_new2.

Referenced by Init_Object().

static VALUE true_xor ( VALUE  obj,
VALUE  obj2 
) [static]

Definition at line 1220 of file object.c.

References Qfalse, Qtrue, and RTEST.

Referenced by Init_Object().


Variable Documentation

Referenced by convert_type(), and Init_Object().

ID id_const_missing [static]

Definition at line 40 of file object.c.

Referenced by Init_Object(), and rb_mod_const_get().

ID id_eq [static]

Definition at line 38 of file object.c.

Referenced by Init_Object(), rb_equal(), and rb_obj_not_equal().

ID id_eql [static]

Definition at line 38 of file object.c.

Referenced by Init_Object(), and rb_eql().

ID id_init_clone [static]

Definition at line 39 of file object.c.

Referenced by Init_Object(), and rb_obj_clone().

ID id_init_copy [static]

Definition at line 39 of file object.c.

Referenced by Init_Object(), and rb_obj_init_dup_clone().

ID id_init_dup [static]

Definition at line 39 of file object.c.

Referenced by Init_Object(), and rb_obj_dup().

ID id_inspect [static]

Definition at line 38 of file object.c.

Referenced by Init_Object(), and rb_inspect().

ID id_match [static]

Definition at line 38 of file object.c.

Referenced by Init_Object(), and rb_obj_not_match().

st_table* immediate_frozen_tbl = 0 [static]

Definition at line 988 of file object.c.

Referenced by rb_obj_freeze(), and rb_obj_frozen_p().

VALUE rb_cClass
VALUE rb_cData

Definition at line 36 of file object.c.

Referenced by Init_Object(), and special_singleton_class_of().

VALUE rb_cModule
VALUE rb_cNilClass

Definition at line 34 of file object.c.

Referenced by Init_Complex(), Init_Object(), Init_Rational(), and special_singleton_class_of().

VALUE rb_cObject

Definition at line 29 of file object.c.

Referenced by boot_defclass(), classname(), compile_colon2(), compile_cpath(), debug_lines(), fc_path(), find_class_path(), Init_Array(), Init_Binding(), Init_class_hierarchy(), Init_Complex(), Init_Cont(), Init_cparse(), Init_curses(), Init_date_core(), Init_dbm(), Init_digest(), Init_Dir(), Init_dlcfunc(), Init_dlhandle(), Init_dlptr(), Init_Encoding(), Init_Exception(), Init_fiddle_closure(), Init_fiddle_function(), Init_fiddle_handle(), Init_fiddle_pointer(), Init_File(), Init_GC(), Init_gdbm(), Init_generator(), Init_Hash(), Init_IO(), Init_ISeq(), Init_md5(), Init_Numeric(), Init_Object(), Init_objspace(), Init_ossl_asn1(), Init_ossl_cipher(), Init_ossl_config(), Init_ossl_hmac(), Init_ossl_ns_spki(), Init_ossl_pkcs12(), Init_ossl_pkcs7(), Init_ossl_pkey(), Init_ossl_ssl(), Init_ossl_ssl_session(), Init_ossl_x509attr(), Init_ossl_x509cert(), Init_ossl_x509crl(), Init_ossl_x509ext(), Init_ossl_x509name(), Init_ossl_x509req(), Init_ossl_x509revoked(), Init_ossl_x509store(), Init_parser(), Init_pathname(), Init_Proc(), Init_process(), Init_psych_emitter(), Init_psych_parser(), Init_psych_to_ruby(), Init_psych_yaml_tree(), Init_Random(), Init_Range(), Init_Rational(), Init_readline(), Init_Regexp(), Init_rmd160(), Init_sdbm(), Init_sha1(), Init_String(), Init_strscan(), Init_Struct(), Init_tcltklib(), Init_Thread(), Init_Time(), Init_tkutil(), Init_top_self(), Init_VM(), Init_vm_backtrace(), Init_vm_trace(), Init_win32ole(), Init_zlib(), InitVM_Enumerator(), ip_ruby_cmd_receiver_const_get(), iseq_compile_each(), parser_magic_comment(), process_options(), range_dumper(), range_loader(), rb_alias(), rb_catch(), rb_class_inherited(), rb_class_initialize(), rb_const_defined_0(), rb_const_get_0(), rb_const_set(), rb_define_class(), rb_define_class_id(), rb_define_const(), rb_define_global_const(), rb_define_module(), rb_execarg_fixup(), rb_export_method(), rb_f_catch(), rb_method_entry_make(), rb_mod_const_get(), rb_mod_const_of(), rb_mod_modfunc(), rb_path_to_class(), rb_set_class_path(), rb_set_class_path_string(), rb_undef(), rb_uninterruptible(), remove_method(), rsock_init_ancdata(), rsock_init_sockopt(), ruby_Init_Continuation_body(), ruby_init_loadpath_safe(), ruby_init_prelude(), save_env(), set_relation(), top_define_method(), top_include(), top_private(), top_public(), uninitialized_constant(), vm_search_const_defined_class(), vm_set_main_stack(), and vm_set_top_stack().

Definition at line 35 of file object.c.

Referenced by Init_Object(), and special_singleton_class_of().

VALUE rb_mKernel

Generated on 18 May 2020 for Ruby by  doxygen 1.6.1