object.c File Reference

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

Include dependency graph for object.c:

Go to the source code of this file.

Data Structures

struct  conv_method_tbl

Defines

#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)
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 (ID id, VALUE value, VALUE str)
static VALUE inspect_obj (VALUE obj, VALUE str, int recur)
static VALUE rb_obj_inspect (VALUE obj)
VALUE rb_obj_is_instance_of (VALUE obj, VALUE c)
VALUE rb_obj_is_kind_of (VALUE obj, 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_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)
static VALUE rb_class_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)
VALUE rb_obj_methods (int argc, VALUE *argv, VALUE obj)
VALUE rb_obj_protected_methods (int argc, VALUE *argv, VALUE obj)
VALUE rb_obj_private_methods (int argc, VALUE *argv, VALUE obj)
VALUE rb_obj_public_methods (int argc, VALUE *argv, VALUE obj)
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)
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)
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)
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 st_tableimmediate_frozen_tbl = 0
static struct conv_method_tbl conv_method_names []


Define Documentation

 
#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 convert_type ( VALUE  val,
const char *  tname,
const char *  method,
int  raise 
) [static]

Definition at line 1944 of file object.c.

References conv_method_names, conv_method_tbl::method, NIL_P, Qfalse, Qnil, Qtrue, Qundef, rb_check_funcall(), rb_eTypeError, rb_intern, rb_obj_classname(), and rb_raise().

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

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

Definition at line 1061 of file object.c.

References Qfalse.

Referenced by Init_Object().

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

Definition at line 1077 of file object.c.

References Qfalse, Qtrue, and RTEST.

Referenced by Init_Object().

static VALUE false_to_s ( VALUE  obj  )  [static]

Definition at line 1045 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 1096 of file object.c.

References Qfalse, Qtrue, and RTEST.

Referenced by Init_Object().

static void init_copy ( VALUE  dest,
VALUE  obj 
) [static]

Definition at line 187 of file object.c.

References ALLOC_N, FL_EXIVAR, FL_TAINT, FL_UNTRUSTED, len, MEMCPY, OBJ_FROZEN, rb_copy_generic_ivar(), rb_eTypeError, rb_gc_copy_finalizer(), rb_obj_classname(), rb_raise(), RBASIC, RCLASS_IV_TBL, ROBJECT, ROBJECT_EMBED, ROBJECT_EMBED_LEN_MAX, ROBJECT_IVPTR, st_copy, st_free_table, T_CLASS, T_MASK, T_MODULE, T_OBJECT, TYPE, and xfree.

Referenced by rb_obj_clone(), and rb_obj_dup().

static int inspect_i ( ID  id,
VALUE  value,
VALUE  str 
) [static]

Definition at line 355 of file object.c.

References CLASS_OF, OBJ_INFECT, rb_id2name(), rb_inspect(), rb_is_instance_id(), rb_str_append(), rb_str_cat2(), RSTRING_PTR, and ST_CONTINUE.

static VALUE inspect_obj ( VALUE  obj,
VALUE  str,
int  recur 
) [static]

Definition at line 381 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 945 of file object.c.

References rb_usascii_str_new2.

Referenced by Init_Object().

static VALUE nil_to_a ( VALUE  obj  )  [static]

Definition at line 932 of file object.c.

References rb_ary_new2().

Referenced by Init_Object().

static VALUE nil_to_f ( VALUE  obj  )  [static]

Definition at line 902 of file object.c.

References DBL2NUM.

Referenced by Init_Object().

static VALUE nil_to_i ( VALUE  obj  )  [static]

Definition at line 887 of file object.c.

References INT2FIX.

Referenced by Init_Object().

static VALUE nil_to_s ( VALUE  obj  )  [static]

Definition at line 915 of file object.c.

References rb_usascii_str_new().

Referenced by Init_Object().

VALUE rb_any_to_s ( VALUE  obj  ) 

Definition at line 337 of file object.c.

References OBJ_INFECT, rb_obj_classname(), and rb_sprintf().

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

VALUE rb_Array ( VALUE  val  ) 

Definition at line 2355 of file object.c.

References NIL_P, rb_ary_new3(), rb_check_array_type(), rb_check_convert_type(), and T_ARRAY.

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

VALUE rb_check_convert_type ( VALUE  val,
int  type,
const char *  tname,
const char *  method 
)

Definition at line 1989 of file object.c.

References convert_type(), FALSE, NIL_P, Qnil, rb_eTypeError, rb_obj_classname(), rb_raise(), T_DATA, and TYPE.

Referenced by ary_join_1(), caller_setup_args(), check_exec_redirect_fd(), get_hash(), pop_last_hash(), rb_Array(), rb_check_array_type(), rb_check_regexp_type(), rb_check_string_type(), rb_check_to_float(), rb_exec_getargs(), rb_file_initialize(), rb_gzreader_initialize(), rb_gzwriter_initialize(), rb_hash_s_try_convert(), rb_hash_set_default_proc(), rb_io_check_io(), rb_stat(), rb_str_sub_bang(), str_gsub(), str_transcode(), syck_map_initialize(), syck_map_value_set(), syck_merge_i(), and yaml_org_handler().

VALUE rb_check_to_float ( VALUE  val  ) 

Definition at line 2298 of file object.c.

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

Referenced by random_rand().

VALUE rb_check_to_integer ( VALUE  val,
const char *  method 
)

Definition at line 2023 of file object.c.

References convert_type(), FALSE, FIXNUM_P, Qnil, rb_cInteger, rb_obj_is_kind_of(), T_BIGNUM, and TYPE.

Referenced by econv_args(), econv_primitive_convert(), esignal_init(), num_exact(), random_rand(), range_include(), range_step(), rb_io_extract_modeenc(), rb_io_s_sysopen(), and sockopt_s_linger().

static VALUE rb_class_allocate_instance ( VALUE  klass  )  [static]

Definition at line 1520 of file object.c.

References NEWOBJ, OBJSETUP, and T_OBJECT.

Referenced by Init_Object().

VALUE rb_class_inherited_p ( VALUE  mod,
VALUE  arg 
)

Definition at line 1275 of file object.c.

References Qfalse, Qnil, Qtrue, rb_eTypeError, rb_raise(), RCLASS_M_TBL, RCLASS_SUPER, T_CLASS, T_MODULE, and TYPE.

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

static VALUE rb_class_initialize ( int  argc,
VALUE argv,
VALUE  klass 
) [static]

Definition at line 1457 of file object.c.

References rb_cBasicObject, rb_check_inheritable(), rb_class_inherited(), rb_cObject, rb_eTypeError, rb_make_metaclass(), rb_mod_initialize(), rb_raise(), rb_scan_args(), RBASIC, and RCLASS_SUPER.

Referenced by Init_Object().

VALUE rb_class_new_instance ( int  argc,
VALUE argv,
VALUE  klass 
)

Definition at line 1540 of file object.c.

References rb_obj_alloc(), and rb_obj_call_init().

Referenced by copy_stream_body(), cState_generate(), float_value(), iconv_fail(), Init_Exception(), Init_IO(), Init_Object(), Init_Regexp(), io_new_instance(), JSON_parse_array(), JSON_parse_object(), make_errno_exc(), make_struct(), process_sflag(), raise_method_missing(), rb_dl_dlopen(), rb_exit(), rb_f_abort(), rb_gzfile_s_wrap(), rb_io_initialize(), rb_io_s_new(), rb_io_s_open(), rb_name_error(), rb_reg_s_union(), rb_struct_alloc(), rb_struct_new(), strio_s_open(), time_s_now(), and tk_s_new().

VALUE rb_class_real ( VALUE  cl  ) 

Definition at line 135 of file object.c.

References BUILTIN_TYPE, FL_SINGLETON, RBASIC, RCLASS_SUPER, and T_ICLASS.

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

static VALUE rb_class_s_alloc ( VALUE  klass  )  [static]

Definition at line 1407 of file object.c.

References rb_class_boot().

Referenced by Init_Object().

static VALUE rb_class_superclass ( VALUE  klass  )  [static]

Definition at line 1570 of file object.c.

References Qnil, rb_cBasicObject, rb_eTypeError, rb_raise(), RCLASS_SUPER, T_ICLASS, and TYPE.

Referenced by Init_Object().

static VALUE rb_convert_to_integer ( VALUE  val,
int  base 
) [static]

Definition at line 2043 of file object.c.

References convert_type(), FALSE, FIXNUM_MAX, FIXNUM_MIN, NIL_P, rb_check_string_type(), rb_dbl2big(), rb_eArgError, rb_eTypeError, rb_raise(), rb_str_to_inum(), rb_to_integer(), RFLOAT_VALUE, T_BIGNUM, T_FIXNUM, T_FLOAT, T_NIL, T_STRING, TRUE, and TYPE.

Referenced by rb_f_integer(), and rb_Integer().

VALUE rb_convert_type ( VALUE  val,
int  type,
const char *  tname,
const char *  method 
)

Definition at line 1974 of file object.c.

References convert_type(), rb_eTypeError, rb_obj_classname(), rb_raise(), TRUE, and TYPE.

Referenced by addrinfo_mload(), cParser_initialize(), cState_configure(), dir_initialize(), econv_args(), econv_primitive_convert(), iseq_build_body(), iseq_build_exception(), nucomp_s_convert(), nurat_s_convert(), open_key_args(), rb_econv_prepare_opts(), rb_Float(), rb_io_get_io(), rb_str_to_str(), rb_String(), rb_to_float(), register_label(), strio_copy(), tk_symbolkey2str(), to_ary(), and to_hash().

double rb_cstr_to_dbl ( const char *  p,
int  badcheck 
)

Definition at line 2133 of file object.c.

References bad, buf, DBL_DIG, errno, ISDIGIT, ISSPACE, OutOfRange, rb_eArgError, rb_invalid_str(), rb_raise(), rb_warning(), and strtod.

Referenced by rb_str_to_dbl(), and tkstr_to_float().

int rb_eql ( VALUE  obj1,
VALUE  obj2 
)

Definition at line 58 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 
)

Definition at line 47 of file object.c.

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

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

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

Definition at line 2379 of file object.c.

References rb_Array().

Referenced by Init_Object().

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

Definition at line 2278 of file object.c.

References rb_Float().

Referenced by Init_Object().

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

Definition at line 2114 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 2349 of file object.c.

References rb_String().

Referenced by Init_Object().

static VALUE rb_false ( VALUE  obj  )  [static]

Definition at line 1124 of file object.c.

References Qfalse.

Referenced by Init_Object().

VALUE rb_Float ( VALUE  val  ) 

Definition at line 2241 of file object.c.

References DBL2NUM, FIX2LONG, rb_big2dbl(), rb_convert_type(), rb_eTypeError, rb_raise(), rb_str_to_dbl(), T_BIGNUM, T_FIXNUM, T_FLOAT, T_NIL, T_STRING, TRUE, and TYPE.

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

VALUE rb_inspect ( VALUE  obj  ) 

Definition at line 349 of file object.c.

References id_inspect, rb_funcall(), and rb_obj_as_string().

Referenced by coerce_rescue(), control_frame_dump(), env_inspect(), get_exception_sym2type(), get_iconv_opt_i(), GetVpValue(), iconv_fail(), iconv_failure_inspect(), insn_data_to_s_detail(), insn_operand_intern(), inspect_ary(), inspect_enumerator(), inspect_i(), inspect_range(), inspect_struct(), iseq_build_body(), method_inspect(), name_err_mesg_to_str(), ossl_config_inspect(), ossl_x509_inspect(), rb_cmperr(), rb_hash_fetch_m(), rb_mod_to_s(), rb_p(), rb_stat_inspect(), rb_str_format(), rb_throw_obj(), rb_to_id(), rb_vmdebug_debug_print_post(), rb_vmdebug_proc_dump_raw(), recursive_pop(), ruby_debug_print_value(), and vm_check_if_namespace().

VALUE rb_Integer ( VALUE  val  ) 

Definition at line 2088 of file object.c.

References rb_convert_to_integer().

Referenced by function_call(), get_freefunc(), JSON_parse_integer(), ossl_x509stctx_set_time(), rb_dlcfunc_initialize(), rb_dlptr_initialize(), rb_dlptr_s_to_ptr(), rb_gzfile_set_mtime(), rb_str_format(), time_mdump(), time_to_time_t(), and value_to_generic().

VALUE rb_mod_attr ( int  argc,
VALUE argv,
VALUE  klass 
)

Definition at line 1609 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 1654 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 1598 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 1628 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 1376 of file object.c.

References cmp, INT2FIX, NIL_P, Qnil, rb_class_inherited_p(), T_CLASS, T_MODULE, and TYPE.

Referenced by Init_Object().

static VALUE rb_mod_const_defined ( int  argc,
VALUE argv,
VALUE  mod 
) [static]

Definition at line 1733 of file object.c.

References id, name, Qtrue, rb_const_defined(), rb_const_defined_at(), rb_id2name(), rb_is_const_id(), rb_name_error(), rb_scan_args(), rb_to_id(), and RTEST.

Referenced by Init_Object().

static VALUE rb_mod_const_get ( int  argc,
VALUE argv,
VALUE  mod 
) [static]

Definition at line 1677 of file object.c.

References id, name, Qtrue, rb_const_get(), rb_const_get_at(), rb_id2name(), rb_is_const_id(), rb_name_error(), rb_scan_args(), rb_to_id(), and RTEST.

Referenced by Init_Object().

static VALUE rb_mod_const_set ( VALUE  mod,
VALUE  name,
VALUE  value 
) [static]

Definition at line 1709 of file object.c.

References rb_const_set(), rb_id2name(), 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]

Definition at line 1917 of file object.c.

References rb_cvar_defined(), rb_id2name(), rb_is_class_id(), rb_name_error(), and rb_to_id().

Referenced by Init_Object().

static VALUE rb_mod_cvar_get ( VALUE  obj,
VALUE  iv 
) [static]

Definition at line 1863 of file object.c.

References rb_cvar_get(), rb_id2name(), rb_is_class_id(), rb_name_error(), and rb_to_id().

Referenced by Init_Object().

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

Definition at line 1891 of file object.c.

References rb_cvar_set(), rb_id2name(), 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 1257 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 1240 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 1333 of file object.c.

References rb_class_inherited_p(), rb_eTypeError, rb_raise(), T_CLASS, T_MODULE, and TYPE.

Referenced by Init_Object(), and rb_mod_gt().

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

Definition at line 1358 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 1436 of file object.c.

References argc, argv, mod, 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 1313 of file object.c.

References Qfalse, and rb_class_inherited_p().

Referenced by Init_Object().

static VALUE rb_mod_to_s ( VALUE  klass  )  [static]

Definition at line 1208 of file object.c.

References FL_SINGLETON, FL_TEST, rb_any_to_s(), rb_class_name(), rb_inspect(), rb_iv_get(), rb_str_append(), rb_str_cat2(), rb_str_dup(), rb_usascii_str_new2, T_CLASS, T_MODULE, and TYPE.

Referenced by Init_Object().

static VALUE rb_module_s_alloc ( VALUE  klass  )  [static]

Definition at line 1398 of file object.c.

References mod, rb_module_new(), and RBASIC.

Referenced by Init_Object().

double rb_num2dbl ( VALUE  val  ) 

Definition at line 2308 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  ) 

Definition at line 1502 of file object.c.

References FL_SINGLETON, FL_TEST, ID_ALLOCATOR, rb_cBasicObject, rb_class_real(), rb_eTypeError, rb_funcall(), rb_obj_class(), rb_raise(), and RCLASS_SUPER.

Referenced by bsock_s_for_fd(), build_exception(), enum_chunk(), enum_slice_before(), Init_Hash(), Init_Object(), Init_readline(), Init_Thread(), Init_tkutil(), Init_top_self(), obj_alloc_by_path(), ossl_sslctx_session_new_cb(), ossl_sslctx_session_remove_cb(), prep_window(), pty_getpty(), pty_open(), r_object0(), rb_catch(), rb_class_new_instance(), rb_digest_class_s_digest(), rb_f_catch(), rb_io_s_for_fd(), rb_last_status_set(), rb_obj_clone(), rb_obj_dup(), rb_range_new(), rsock_s_accept(), rsock_s_accept_nonblock(), and syck_resolver_transfer().

VALUE rb_obj_class ( VALUE  obj  ) 

Definition at line 158 of file object.c.

References CLASS_OF, and rb_class_real().

Referenced by ary_make_shared_copy(), cbsubst_initialize(), copy_path_class(), exc_equal(), Init_Object(), inspect_struct(), io_reopen(), ip_eval(), ip_invoke_with_position(), match_init_copy(), mString_to_json_raw_object(), name_err_mesg_equal(), ossl_cipher_init(), ossl_config_inspect(), ossl_x509_inspect(), random_equal(), rb_ary_slice_bang(), rb_ary_subseq(), rb_ary_times(), rb_ary_to_a(), rb_ary_uniq(), rb_class_path(), rb_digest_base_block_length(), rb_digest_base_copy(), rb_digest_base_digest_length(), rb_digest_base_finish(), rb_digest_base_reset(), rb_digest_base_update(), rb_hash_aset(), rb_ivar_set(), rb_obj_alloc(), rb_obj_clone(), rb_obj_dup(), rb_obj_init_copy(), rb_obj_is_instance_of(), rb_reg_init_copy(), rb_stat_cmp(), rb_stat_init_copy(), rb_str_dup(), rb_str_encode(), rb_str_new_frozen(), rb_str_new_shared(), rb_str_substr(), rb_str_to_s(), rb_struct_eql(), rb_struct_equal(), rb_struct_init_copy(), rb_struct_initialize_m(), rb_struct_members(), rb_struct_members_m(), recursive_hash(), RUBY_ALIAS_FUNCTION(), str_encode(), str_gsub(), syserr_initialize(), tcl_protect_core(), tk_funcall(), and window_subwin().

VALUE rb_obj_clone ( VALUE  obj  ) 

Definition at line 256 of file object.c.

References FL_FINALIZE, FL_FREEZE, FL_TAINT, FL_TEST, FL_UNTRUSTED, id_init_clone, init_copy(), rb_eTypeError, rb_funcall(), rb_obj_alloc(), rb_obj_class(), rb_obj_classname(), rb_raise(), rb_singleton_class_clone(), rb_special_const_p(), and RBASIC.

Referenced by exc_exception(), Init_Object(), rb_digest_instance_digest(), rb_digest_instance_hexdigest(), rb_digest_instance_new(), rb_eval_string_wrap(), and rb_load_internal().

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

Definition at line 1163 of file object.c.

References INT2FIX, Qnil, and rb_equal().

Referenced by Init_Object().

static VALUE rb_obj_dummy ( void   )  [static]

Definition at line 681 of file object.c.

References Qnil.

Referenced by Init_Object().

VALUE rb_obj_dup ( VALUE  obj  ) 

Definition at line 292 of file object.c.

References id_init_dup, init_copy(), rb_eTypeError, rb_funcall(), rb_obj_alloc(), rb_obj_class(), rb_obj_classname(), rb_raise(), and rb_special_const_p().

Referenced by argf_initialize_copy(), chunk_i(), iconv_fail(), Init_Object(), lib_fromUTF8_core(), rb_hash_merge(), rb_hash_reject(), rb_io_init_copy(), setup_exception(), and slicebefore_i().

VALUE rb_obj_equal ( VALUE  obj1,
VALUE  obj2 
)

Definition at line 93 of file object.c.

References Qfalse, and Qtrue.

Referenced by Init_Object(), and opt_eq_func().

VALUE rb_obj_freeze ( VALUE  obj  ) 

Definition at line 830 of file object.c.

References immediate_frozen_tbl, OBJ_FREEZE, OBJ_FROZEN, OBJ_UNTRUSTED, Qtrue, rb_eSecurityError, rb_raise(), rb_safe_level, SPECIAL_CONST_P, st_init_numtable, and st_insert.

Referenced by add_modules(), env_str_new(), Init_eval(), Init_File(), Init_GC(), Init_Object(), Init_ossl_ssl(), Init_Proc(), Init_strscan(), Init_tcltklib(), Init_tkutil(), Init_VM(), ossl_sslctx_setup(), prep_io(), process_options(), pty_getpty(), pty_open(), rb_ary_flatten_bang(), rb_ary_freeze(), rb_f_getenv(), rb_get_expanded_load_path(), rb_hash_freeze(), rb_insns_name_array(), rb_mod_freeze(), rb_str_freeze(), rb_str_upto(), ruby_init_loadpath_safe(), ruby_script(), run_finalizer(), set_arg0(), and tcltklib_compile_info().

VALUE rb_obj_frozen_p ( VALUE  obj  ) 

Definition at line 859 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 100 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 801 of file object.c.

References OBJ_INFECT.

VALUE rb_obj_init_copy ( VALUE  obj,
VALUE  orig 
)

Definition at line 308 of file object.c.

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

Referenced by Init_Object(), and rb_mod_init_copy().

VALUE rb_obj_init_dup_clone ( VALUE  obj,
VALUE  orig 
)

Definition at line 320 of file object.c.

References id_init_copy, and rb_funcall().

Referenced by Init_Object().

static VALUE rb_obj_inspect ( VALUE  obj  )  [static]

Definition at line 411 of file object.c.

References inspect_obj(), len, Qundef, rb_any_to_s(), rb_exec_recursive(), rb_funcall(), rb_intern, rb_obj_basic_to_s_p(), rb_obj_classname(), rb_sprintf(), ROBJECT_IVPTR, ROBJECT_NUMIV, T_OBJECT, and TYPE.

Referenced by Init_Object().

VALUE rb_obj_is_instance_of ( VALUE  obj,
VALUE  c 
)

Definition at line 450 of file object.c.

References Qfalse, Qtrue, rb_eTypeError, rb_obj_class(), rb_raise(), T_CLASS, T_ICLASS, T_MODULE, and TYPE.

Referenced by error_handle(), Init_Object(), match_init_copy(), ossl_pkey_initialize(), ossl_ssl_session_initialize(), ossl_sslctx_flush_sessions(), ossl_sslctx_session_get_cb(), rb_reg_init_copy(), rb_stat_init_copy(), rb_struct_init_copy(), and syck_resolver_transfer().

VALUE rb_obj_is_kind_of ( VALUE  obj,
VALUE  c 
)

Definition at line 493 of file object.c.

References CLASS_OF, Qfalse, Qtrue, rb_eTypeError, rb_raise(), RCLASS_M_TBL, RCLASS_SUPER, T_CLASS, T_ICLASS, T_MODULE, and TYPE.

Referenced by case_when_optimizable_literal(), 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_asn1_decode0(), ossl_asn1_default_tag(), ossl_asn1data_to_der(), ossl_bn_coerce(), ossl_bn_initialize(), pending_exception_check0(), pending_exception_check1(), range_eq(), range_eql(), range_include(), range_max(), range_step(), 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_method_call_status(), rb_mod_eqq(), rb_range_values(), rb_rescue2(), rb_set_errinfo(), rb_stat_cmp(), rb_to_float(), rb_to_integer(), ruby_cleanup(), setup_exception(), STACK_OF(), syck_resolver_node_import(), syserr_eqq(), tcl_protect_core(), thread_start_func_2(), tk_funcall(), umethod_bind(), vm_call_method(), and yaml_org_handler().

static VALUE rb_obj_ivar_defined ( VALUE  obj,
VALUE  iv 
) [static]

Definition at line 1838 of file object.c.

References rb_id2name(), rb_is_instance_id(), rb_ivar_defined(), rb_name_error(), and rb_to_id().

Referenced by Init_Object().

static VALUE rb_obj_ivar_get ( VALUE  obj,
VALUE  iv 
) [static]

Definition at line 1778 of file object.c.

References rb_id2name(), rb_is_instance_id(), rb_ivar_get(), rb_name_error(), and rb_to_id().

Referenced by Init_Object().

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

Definition at line 1809 of file object.c.

References rb_id2name(), 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 1140 of file object.c.

References Qnil.

Referenced by Init_Object().

VALUE rb_obj_not ( VALUE  obj  ) 

Definition at line 115 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 128 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 1154 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 181 of file object.c.

References rb_singleton_class().

Referenced by Init_Object().

VALUE rb_obj_taint ( VALUE  obj  ) 

Definition at line 711 of file object.c.

References OBJ_FROZEN, OBJ_TAINT, OBJ_TAINTED, rb_error_frozen(), and rb_secure().

Referenced by Init_Object(), pack_pack(), rb_file_path(), rsock_s_recvfrom(), rsock_s_recvfrom_nonblock(), and tk_obj_untrust().

VALUE rb_obj_tainted ( VALUE  obj  ) 

Definition at line 694 of file object.c.

References OBJ_TAINTED, Qfalse, and Qtrue.

Referenced by Init_Object().

VALUE rb_obj_tap ( VALUE  obj  ) 

Definition at line 532 of file object.c.

References rb_yield().

Referenced by Init_Object().

VALUE rb_obj_trust ( VALUE  obj  ) 

Definition at line 788 of file object.c.

References FL_UNSET, FL_UNTRUSTED, OBJ_FROZEN, OBJ_UNTRUSTED, rb_error_frozen(), and rb_secure().

Referenced by Init_Object().

VALUE rb_obj_untaint ( VALUE  obj  ) 

Definition at line 732 of file object.c.

References FL_TAINT, FL_UNSET, OBJ_FROZEN, OBJ_TAINTED, rb_error_frozen(), and rb_secure().

Referenced by Init_Object().

VALUE rb_obj_untrust ( VALUE  obj  ) 

Definition at line 767 of file object.c.

References OBJ_FROZEN, OBJ_UNTRUST, OBJ_UNTRUSTED, rb_error_frozen(), and rb_secure().

Referenced by Init_Object(), and tk_obj_untrust().

VALUE rb_obj_untrusted ( VALUE  obj  ) 

Definition at line 752 of file object.c.

References OBJ_UNTRUSTED, Qfalse, and Qtrue.

Referenced by Init_Object().

double rb_str_to_dbl ( VALUE  str,
int  badcheck 
)

Definition at line 2217 of file object.c.

References ALLOCA_N, len, MEMCPY, rb_cstr_to_dbl(), rb_eArgError, rb_raise(), RSTRING_LEN, RSTRING_PTR, and StringValue.

Referenced by rb_Float(), and rb_str_to_f().

VALUE rb_String ( VALUE  val  ) 

Definition at line 2330 of file object.c.

References rb_convert_type(), and T_STRING.

Referenced by GetBNPtr(), make_version_str(), ossl_sslctx_set_ciphers(), and rb_f_string().

VALUE rb_to_float ( VALUE  val  ) 

Definition at line 2284 of file object.c.

References NIL_P, Qfalse, Qtrue, rb_cNumeric, rb_convert_type(), rb_eTypeError, rb_obj_classname(), rb_obj_is_kind_of(), rb_raise(), T_FLOAT, and TYPE.

VALUE rb_to_int ( VALUE  val  ) 

Definition at line 2037 of file object.c.

References rb_to_integer().

Referenced by bit_coerce(), check_exec_redirect(), fix_aref(), obj2vint(), pack_pack(), rand_init(), random_bytes(), random_load(), range_step(), rb_big_lshift(), rb_big_pack(), rb_big_rshift(), rb_dlcfunc_call(), rb_exec_arg_addopt(), rb_f_rand(), rb_hash(), rb_num2long(), rb_num2ulong(), rb_quad_pack(), time_nsec(), time_round(), and time_usec().

static VALUE rb_to_integer ( VALUE  val,
const char *  method 
) [static]

Definition at line 2007 of file object.c.

References convert_type(), FIXNUM_P, rb_cInteger, rb_eTypeError, rb_obj_classname(), rb_obj_is_kind_of(), rb_raise(), T_BIGNUM, TRUE, and TYPE.

Referenced by rb_convert_to_integer(), and rb_to_int().

static VALUE rb_true ( VALUE  obj  )  [static]

Definition at line 1109 of file object.c.

References Qtrue.

Referenced by Init_Object().

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

Definition at line 983 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 1005 of file object.c.

References Qtrue.

Referenced by Init_Object().

static VALUE true_to_s ( VALUE  obj  )  [static]

Definition at line 968 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 1021 of file object.c.

References Qfalse, Qtrue, and RTEST.

Referenced by Init_Object().


Variable Documentation

struct conv_method_tbl conv_method_names[] [static]

Referenced by convert_type(), and Init_Object().

ID id_eq [static]

Definition at line 34 of file object.c.

ID id_eql [static]

Definition at line 34 of file object.c.

Referenced by Init_Object(), and rb_eql().

ID id_init_clone [static]

Definition at line 35 of file object.c.

Referenced by Init_Object(), and rb_obj_clone().

ID id_init_copy [static]

Definition at line 35 of file object.c.

Referenced by Init_Object(), and rb_obj_init_dup_clone().

ID id_init_dup [static]

Definition at line 35 of file object.c.

Referenced by Init_Object(), and rb_obj_dup().

ID id_inspect [static]

Definition at line 34 of file object.c.

ID id_match [static]

Definition at line 34 of file object.c.

st_table* immediate_frozen_tbl = 0 [static]

Definition at line 806 of file object.c.

Referenced by rb_obj_freeze(), and rb_obj_frozen_p().

VALUE rb_cBasicObject

Definition at line 23 of file object.c.

VALUE rb_cClass

Definition at line 27 of file object.c.

VALUE rb_cData

Definition at line 28 of file object.c.

VALUE rb_cFalseClass

Definition at line 32 of file object.c.

VALUE rb_cModule

Definition at line 26 of file object.c.

VALUE rb_cNilClass

Definition at line 30 of file object.c.

VALUE rb_cObject

Definition at line 25 of file object.c.

VALUE rb_cTrueClass

Definition at line 31 of file object.c.

VALUE rb_mKernel

Definition at line 24 of file object.c.


Generated on Wed Aug 10 09:18:53 2011 for Ruby by  doxygen 1.4.7