Ruby
2.4.2p198(2017-09-14revision59899)
|
Go to the source code of this file.
Data Structures | |
struct | local_var_list |
struct | rescue_funcall_args |
struct | iter_method_arg |
struct | eval_string_from_file_arg |
Macros | |
#define | id_mesg idMesg |
#define | PRIV Qfalse /* TODO: for rubyspec now, should be Qtrue */ |
#define | type_case(t) case t: return #t; |
Typedefs | |
typedef enum call_type | call_type |
Enumerations | |
enum | call_type { CALL_PUBLIC, CALL_FCALL, CALL_VCALL, CALL_TYPE_MAX } |
Variables | |
static VALUE | rb_eUncaughtThrow |
static ID | id_result |
static ID | id_tag |
static ID | id_value |
#define id_mesg idMesg |
Definition at line 29 of file vm_eval.c.
Referenced by adjust_backtrace_in_eval(), and uncaught_throw_to_s().
Definition at line 366 of file vm_eval.c.
Referenced by check_funcall_missing().
#define type_case | ( | t | ) | case t: return #t; |
Referenced by rb_type_str().
enum call_type |
|
static |
Definition at line 1285 of file vm_eval.c.
References id_mesg, RARRAY_AREF, RARRAY_ASET, RARRAY_LEN, rb_attr_get(), rb_get_backtrace(), rb_ivar_set(), RB_TYPE_P, rb_vm_backtrace_str_ary(), RSTRING_LEN, T_ARRAY, and T_STRING.
Referenced by eval_string_with_cref().
|
static |
Definition at line 399 of file vm_eval.c.
References CALL_FCALL, rb_thread_struct::cfp, MISSING_NONE, rb_method_call_status(), and rb_control_frame_struct::self.
Referenced by rb_check_funcall_default(), and rb_check_funcall_with_hook().
|
static |
Definition at line 359 of file vm_eval.c.
References rescue_funcall_args::argc, rescue_funcall_args::argv, call_method_entry(), rescue_funcall_args::defined_class, rescue_funcall_args::me, rescue_funcall_args::recv, and rescue_funcall_args::th.
Referenced by check_funcall_missing().
|
static |
Definition at line 369 of file vm_eval.c.
References BOUND_PRIVATE, BOUND_RESPONDS, rescue_funcall_args::defined_class, FALSE, rescue_funcall_args::mid, Qundef, rb_exc_raise(), rb_method_boundp(), rescue_funcall_args::respond, rescue_funcall_args::respond_to_missing, and TRUE.
Referenced by check_funcall_missing().
|
static |
Definition at line 405 of file vm_eval.c.
References ALLOCV_END, ALLOCV_N, rescue_funcall_args::argc, rescue_funcall_args::argv, basic_obj_respond_to_missing(), check_funcall_exec(), check_funcall_failed(), rescue_funcall_args::defined_class, ID2SYM, rescue_funcall_args::me, MEMCPY, METHOD_ENTRY_BASIC, method_entry_get(), rb_thread_struct::method_missing_reason, rescue_funcall_args::mid, MISSING_NOENTRY, new_args, PRIV, Qundef, rb_eNoMethodError, rb_rescue2(), rescue_funcall_args::recv, rescue_funcall_args::respond, rescue_funcall_args::respond_to_missing, RTEST, and rescue_funcall_args::th.
Referenced by rb_check_funcall_default(), and rb_check_funcall_with_hook().
|
static |
Definition at line 393 of file vm_eval.c.
References TRUE, and vm_respond_to().
Referenced by rb_check_funcall_default(), and rb_check_funcall_with_hook().
|
static |
Definition at line 891 of file vm_eval.c.
References rb_thread_struct::cfp, NULL, RUBY_VM_CONTROL_FRAME_STACK_OVERFLOW_P, RUBY_VM_PREVIOUS_CONTROL_FRAME, and rb_control_frame_struct::sp.
Referenced by send_internal().
Definition at line 1412 of file vm_eval.c.
References eval_string_with_cref().
Referenced by eval_string_from_file_helper(), rb_eval_cmd(), rb_f_eval(), and ruby_eval_string_from_file().
Definition at line 1470 of file vm_eval.c.
References eval_string(), eval_string_from_file_arg::filename, Qnil, rb_vm_top_self(), and eval_string_from_file_arg::str.
Referenced by ruby_eval_string_from_file_protect().
|
static |
Definition at line 1302 of file vm_eval.c.
References adjust_backtrace_in_eval(), rb_block::as, rb_binding_t::block, block_type_iseq, rb_iseq_struct::body, rb_block::captured, rb_thread_struct::cfp, Check_TypedStruct, rb_captured_block::code, rb_thread_struct::errinfo, rb_binding_t::first_lineno, GET_THREAD, INT2FIX, rb_captured_block::iseq, rb_control_frame_struct::iseq, rb_iseq_constant_body::local_table_size, NIL_P, NULL, rb_binding_t::path, Qnil, Qundef, rb_current_realfilepath(), rb_eRuntimeError, rb_exc_raise(), rb_fstring(), rb_iseq_compile_with_option(), rb_iseq_disasm(), rb_raise(), rb_source_location(), rb_usascii_str_new_cstr(), rb_vm_get_cref(), rb_vm_get_ruby_level_next_cfp(), result, RTEST, ruby_binding_data_type, rb_captured_block::self, StringValuePtr, TAG_RAISE, TH_EXEC_TAG, TH_JUMP_TAG, TH_POP_TAG, TH_PUSH_TAG, rb_block::type, rb_captured_block::val, vm_bind_update_env(), vm_block_ep(), VM_CFP_TO_CAPTURED_BLOCK(), vm_cref_dup(), vm_exec(), vm_make_env_object(), and vm_set_eval_stack().
Referenced by eval_string(), and eval_under().
Definition at line 1658 of file vm_eval.c.
References eval_string_with_cref(), GET_THREAD, NIL_P, NULL, Qnil, SafeStringValue, SPECIAL_CONST_P, and vm_cref_push().
Referenced by specific_eval().
void Init_vm_eval | ( | void | ) |
Definition at line 2209 of file vm_eval.c.
References id_result, id_tag, id_value, METHOD_VISI_PUBLIC, rb_add_method(), rb_cBasicObject, rb_cModule, rb_define_class(), rb_define_global_function(), rb_define_method(), rb_define_private_method(), rb_eArgError, rb_eUncaughtThrow, rb_f_block_given_p(), rb_f_catch(), rb_f_eval(), rb_f_local_variables(), rb_f_loop(), rb_f_public_send(), rb_f_send(), rb_f_throw(), rb_intern, rb_intern_const, rb_method_missing(), rb_mKernel, rb_mod_module_eval(), rb_mod_module_exec(), rb_obj_instance_eval(), rb_obj_instance_exec(), uncaught_throw_init(), uncaught_throw_tag(), uncaught_throw_to_s(), uncaught_throw_value(), and VM_METHOD_TYPE_OPTIMIZED.
Referenced by Init_eval().
Definition at line 1257 of file vm_eval.c.
References iter_method_arg::argc, iter_method_arg::argv, iter_method_arg::mid, iter_method_arg::obj, and rb_check_funcall().
Referenced by rb_check_block_call().
Definition at line 1218 of file vm_eval.c.
References iter_method_arg::argc, iter_method_arg::argv, CALL_FCALL, iter_method_arg::mid, iter_method_arg::obj, and rb_call().
Referenced by rb_block_call(), and rb_lambda_call().
|
static |
Definition at line 2102 of file vm_eval.c.
References ID2SYM, local_var_list_update(), rb_is_local_id(), RHASH_TBL_RAW, st_data_t, st_update(), and local_var_list::tbl.
Referenced by collect_local_variables_in_iseq(), and rb_f_local_variables().
|
static |
Definition at line 2084 of file vm_eval.c.
References rb_hash_clear(), rb_hash_keys(), and local_var_list::tbl.
Referenced by rb_f_local_variables(), rb_iseq_local_variables(), and rb_vm_env_local_variables().
|
static |
Definition at line 2076 of file vm_eval.c.
References rb_hash_new(), RBASIC_CLEAR_CLASS, RHASH, st_init_numtable, and local_var_list::tbl.
Referenced by rb_f_local_variables(), rb_iseq_local_variables(), and rb_vm_env_local_variables().
|
static |
Definition at line 2094 of file vm_eval.c.
References Qtrue, ST_CONTINUE, st_data_t, and ST_STOP.
Referenced by local_var_list_add().
|
static |
Definition at line 1085 of file vm_eval.c.
References Qnil, and rb_yield_0().
Referenced by rb_f_loop().
Definition at line 1094 of file vm_eval.c.
References id_result, and rb_attr_get().
Referenced by rb_f_loop().
|
static |
Definition at line 677 of file vm_eval.c.
References Qfalse, Qtrue, rb_ary_new4, rb_class_new_instance(), rb_eNoMethodError, rb_fstring_cstr(), and rb_name_err_mesg_new().
Referenced by raise_method_missing(), send_internal(), and vm_call_opt_send().
|
inlinestatic |
Definition at line 745 of file vm_eval.c.
References ALLOCV_END, ALLOCV_N, argc, CLASS_OF, GET_THREAD, ID2SYM, rescue_funcall_args::me, MEMCPY, METHOD_ENTRY_BASIC, rb_thread_struct::method_missing_reason, MISSING_MISSING, raise_method_missing(), rb_callable_method_entry(), result, vm_call0(), vm_passed_block_handler(), and vm_passed_block_handler_set().
Referenced by rb_call0(), vm_call0_body(), and vm_call_super().
NORETURN | ( | static void | raise_method_missingrb_thread_t *th, int argc, const VALUE *argv, VALUE obj, enum method_missing_reason call_status | ) |
Referenced by rb_call().
|
static |
Definition at line 703 of file vm_eval.c.
References make_no_method_exception(), MISSING_FCALL, MISSING_MISSING, MISSING_PRIVATE, MISSING_PROTECTED, MISSING_SUPER, MISSING_VCALL, PRIsVALUE, rb_eArgError, rb_eNameError, rb_eNoMethodError, rb_exc_raise(), rb_fstring_cstr(), rb_obj_class(), rb_raise(), rb_vm_pop_cfunc_frame(), stack_check(), SYMBOL_P, and UNLIKELY.
Referenced by method_missing(), rb_call(), rb_method_missing(), and rb_raise_method_missing().
Calls a method.
recv | receiver of the method |
mid | an ID that represents the name of the method |
args | an Array object which contains method arguments |
Definition at line 792 of file vm_eval.c.
References ALLOCA_N, argc, argv, CALL_FCALL, MEMCPY, OBJ_FREEZE, RARRAY_CONST_PTR, RARRAY_LENINT, rb_ary_subseq(), rb_call(), RB_GC_GUARD, and RBASIC_CLEAR_CLASS.
Referenced by exec_callback().
VALUE rb_block_call | ( | VALUE | obj, |
ID | mid, | ||
int | argc, | ||
const VALUE * | argv, | ||
VALUE(*)(ANYARGS) | bl_proc, | ||
VALUE | data2 | ||
) |
Definition at line 1227 of file vm_eval.c.
References argc, iter_method_arg::argc, argv, iter_method_arg::argv, iterate_method(), iter_method_arg::mid, iter_method_arg::obj, and rb_iterate().
|
inlinestatic |
calls the specified method.
This function is called by functions in rb_call* family.
recv | receiver |
mid | an ID that represents the name of the method |
argc | the number of method arguments |
argv | a pointer to an array of method arguments |
scope |
Definition at line 626 of file vm_eval.c.
References argc, argv, rb_thread_struct::cfp, GET_THREAD, NORETURN(), raise_method_missing(), rb_call0(), and rb_control_frame_struct::self.
Referenced by iterate_method(), rb_apply(), rb_each(), rb_funcall(), rb_funcall_passing_block(), rb_funcall_with_block(), rb_funcallv(), and rb_funcallv_public().
|
inlinestatic |
calls the specified method.
This function is called by functions in rb_call* family.
recv | receiver of the method |
mid | an ID that represents the name of the method |
argc | the number of method arguments |
argv | a pointer to an array of method arguments |
scope | |
self | self in the caller. Qundef means no self is considered and protected methods cannot be called |
Definition at line 332 of file vm_eval.c.
References GET_THREAD, method_missing(), MISSING_NONE, rb_method_call_status(), rb_search_method_entry(), stack_check(), and vm_call0().
Referenced by rb_call(), and send_internal().
Definition at line 287 of file vm_eval.c.
References GET_THREAD, PASS_PASSED_BLOCK_HANDLER_TH, and vm_call_super().
Referenced by cgiesc_escape(), cgiesc_escape_html(), cgiesc_unescape(), cgiesc_unescape_html(), esignal_init(), exit_initialize(), fole_initialize(), gzfile_error_inspect(), interrupt_init(), lazy_super(), lazy_zip(), name_err_initialize(), ossl_ssl_initialize(), path_freeze(), path_taint(), path_untaint(), range_include(), range_max(), range_min(), strio_initialize(), syntax_error_initialize(), syserr_initialize(), and uncaught_throw_init().
Definition at line 2021 of file vm_eval.c.
References func, rb_catch_obj(), rb_cObject, rb_obj_alloc(), rb_sym_intern_ascii_cstr(), and vm_catch_protect().
Definition at line 2030 of file vm_eval.c.
References func, GET_THREAD, TH_JUMP_TAG, val, and vm_catch_protect().
Referenced by rb_catch(), and rb_f_catch().
VALUE rb_catch_protect | ( | VALUE | t, |
rb_block_call_func * | func, | ||
VALUE | data, | ||
int * | stateptr | ||
) |
Definition at line 2041 of file vm_eval.c.
References GET_THREAD, and vm_catch_protect().
Referenced by exec_recursive().
VALUE rb_check_block_call | ( | VALUE | obj, |
ID | mid, | ||
int | argc, | ||
const VALUE * | argv, | ||
VALUE(*)(ANYARGS) | bl_proc, | ||
VALUE | data2 | ||
) |
Definition at line 1266 of file vm_eval.c.
References argc, iter_method_arg::argc, argv, iter_method_arg::argv, iterate_check_method(), iter_method_arg::mid, iter_method_arg::obj, and rb_iterate().
Definition at line 439 of file vm_eval.c.
References Qundef, and rb_check_funcall_default().
Referenced by check_respond_to_missing(), compare_with_zero(), convert_type(), enum_size(), enum_size_over_p(), enumerator_rewind(), enumerator_size(), exc_equal(), flo_cmp(), io_call_close(), io_close(), is_integer_p(), iterate_check_method(), limit_by_enum_size(), make_exception(), num_exact(), num_funcall_bit_1(), num_step_compare_with_zero(), path_initialize(), rb_fiddle_ptr_s_to_ptr(), rb_get_path_check_to_string(), rb_iseq_load_iseq(), rb_marshal_load_with_proc(), rb_str_cmp_m(), rb_threadptr_error_print(), run_single_final(), set_backtrace(), time_timespec(), and try_convert_to_exception().
Definition at line 445 of file vm_eval.c.
References check_funcall_callable(), check_funcall_missing(), check_funcall_respond_to(), CLASS_OF, GET_THREAD, rescue_funcall_args::me, rb_search_method_entry(), rescue_funcall_args::respond, stack_check(), and vm_call0().
Referenced by rb_check_funcall().
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 465 of file vm_eval.c.
References argc, argv, check_funcall_callable(), check_funcall_missing(), check_funcall_respond_to(), CLASS_OF, FALSE, GET_THREAD, rescue_funcall_args::me, rescue_funcall_args::mid, Qundef, rb_search_method_entry(), rescue_funcall_args::recv, rescue_funcall_args::respond, stack_check(), TRUE, and vm_call0().
Referenced by rb_obj_dig().
VALUE rb_current_realfilepath | ( | void | ) |
Definition at line 2199 of file vm_eval.c.
References rb_iseq_location_struct::absolute_path, rb_iseq_struct::body, rb_thread_struct::cfp, GET_THREAD, rb_control_frame_struct::iseq, rb_iseq_constant_body::location, Qnil, RUBY_VM_PREVIOUS_CONTROL_FRAME, and vm_get_ruby_level_caller_cfp().
Referenced by eval_string_with_cref(), f_current_dirname(), and rb_f_require_relative().
VALUE rb_current_receiver | ( | void | ) |
Definition at line 295 of file vm_eval.c.
References rb_thread_struct::cfp, GET_THREAD, rb_eRuntimeError, rb_raise(), and rb_control_frame_struct::self.
Definition at line 1279 of file vm_eval.c.
References CALL_FCALL, and rb_call().
Referenced by ssl_renegotiation_cb().
Definition at line 1558 of file vm_eval.c.
References eval_string(), GET_THREAD, OBJ_TAINTED, Qnil, RARRAY_CONST_PTR, RARRAY_LENINT, rb_funcallv(), rb_safe_level(), rb_set_safe_level_force(), RB_TYPE_P, rb_vm_top_self(), RUBY_SAFE_LEVEL_MAX, T_STRING, TH_EXEC_TAG, TH_JUMP_TAG, TH_POP_TAG, TH_PUSH_TAG, val, and VAR_NOCLOBBERED.
Referenced by rb_trace_eval(), and signal_exec().
Evaluates the given string in an isolated binding.
Here "isolated" means the binding does not inherit any other binding. This behaves same as the binding for required libraries.
FILE will be "(eval)", and LINE starts from 1 in the evaluation.
str | Ruby code to evaluate. |
Exception | Raises an exception on error. |
Definition at line 1498 of file vm_eval.c.
References ruby_eval_string_from_file().
Referenced by foletype_s_typelibs(), and rb_eval_string_protect().
Evaluates the given string in an isolated binding.
FILE will be "(eval)", and LINE starts from 1 in the evaluation.
str | Ruby code to evaluate. |
state | Being set to zero if succeeded. Nonzero if an error occurred. |
Definition at line 1514 of file vm_eval.c.
References rb_eval_string(), and rb_protect().
Referenced by rb_eval_string_wrap().
Evaluates the given string under a module binding in an isolated binding.
This is same as the binding for loaded libraries on "load('foo', true)".
FILE will be "(eval)", and LINE starts from 1 in the evaluation.
str | Ruby code to evaluate. |
state | Being set to zero if succeeded. Nonzero if an error occurred. |
Definition at line 1531 of file vm_eval.c.
References GET_THREAD, rb_eval_string_protect(), rb_extend_object(), rb_module_new(), rb_obj_clone(), rb_vm_top_self(), TH_JUMP_TAG, rb_thread_struct::top_self, rb_thread_struct::top_wrapper, and val.
VALUE rb_f_block_given_p | ( | void | ) |
Definition at line 2184 of file vm_eval.c.
References rb_thread_struct::cfp, GET_THREAD, NULL, Qfalse, Qtrue, RUBY_VM_PREVIOUS_CONTROL_FRAME, VM_BLOCK_HANDLER_NONE, VM_CF_BLOCK_HANDLER(), and vm_get_ruby_level_caller_cfp().
Referenced by Init_vm_eval().
Definition at line 2007 of file vm_eval.c.
References catch_i(), rb_catch_obj(), rb_cObject, rb_obj_alloc(), rb_scan_args(), and rb_vm_tag::tag.
Referenced by Init_vm_eval().
Definition at line 1436 of file vm_eval.c.
References eval_string(), NIL_P, NUM2INT, Qundef, rb_scan_args(), SafeStringValue, and StringValue.
Referenced by bind_eval(), and Init_vm_eval().
|
static |
Definition at line 2126 of file vm_eval.c.
References rb_iseq_struct::body, rb_control_frame_struct::ep, GET_THREAD, rb_control_frame_struct::iseq, rb_iseq_constant_body::local_table, rb_iseq_constant_body::local_table_size, local_var_list_add(), local_var_list_finish(), local_var_list_init(), RUBY_VM_PREVIOUS_CONTROL_FRAME, VM_CF_PREV_EP(), vm_collect_local_variables_in_heap(), VM_ENV_LOCAL_P(), and vm_get_ruby_level_caller_cfp().
Referenced by Init_vm_eval().
Definition at line 1136 of file vm_eval.c.
References loop_i(), loop_stop(), rb_eStopIteration, rb_f_loop_size(), rb_rescue2(), and RETURN_SIZED_ENUMERATOR.
Referenced by Init_vm_eval().
Definition at line 1100 of file vm_eval.c.
References DBL2NUM, and INFINITY.
Referenced by rb_f_loop().
Definition at line 1000 of file vm_eval.c.
References CALL_PUBLIC, and send_internal().
Referenced by Init_vm_eval().
Definition at line 980 of file vm_eval.c.
References CALL_FCALL, and send_internal().
Referenced by Init_vm_eval().
Definition at line 1909 of file vm_eval.c.
References rb_scan_args(), rb_throw_obj(), and UNREACHABLE.
Referenced by Init_vm_eval().
Calls a method.
recv | receiver of the method |
mid | an ID that represents the name of the method |
n | the number of arguments |
... | arbitrary number of method arguments |
Definition at line 821 of file vm_eval.c.
References ALLOCA_N, argv, CALL_FCALL, rb_call(), and va_init_list.
Referenced by add(), ary_inject_op(), asn1time_to_time(), autoload_require(), BigDecimal_power(), BigDecimal_to_i(), BigDecimal_to_r(), bsock_setsockopt(), call_next(), call_verify_cb_proc(), call_verify_certificate_identity(), chunk_i(), chunk_ii(), cmp(), coerce_body(), copy_stream_fallback_body(), cParser_initialize(), cState_aref(), cState_aset(), cState_from_state_s(), datetime_to_time(), default_inspect(), define_final0(), divmodv(), DupConfigPtr(), enum_cycle_size(), enum_each_cons_size(), enum_each_slice_size(), enum_zip(), eq(), f_abs(), f_add(), f_cmp(), f_div(), f_eqeq_p(), f_ge_p(), f_gt_p(), f_le_p(), f_lt_p(), f_mul(), f_negative_p(), f_odd_p(), f_sub(), f_to_f(), f_zero_p(), fole_s_show_help(), foletype_s_ole_classes(), folevariant_value(), fun1(), function_call(), generate_json(), generate_json_bignum(), generate_json_float(), generate_json_object(), generate_json_string(), generic_to_value(), GetVpValueWithPrec(), grep_i(), grep_iter_i(), gzfile_close(), gzfile_read_raw_partial(), gzfile_read_raw_rescue(), gzfile_reader_rewind(), gzfile_write_raw(), Init_generator(), Init_syslog(), Init_win32ole_variant(), initialize(), inject_op_i(), int_dotimes(), int_dotimes_size(), int_downto(), int_even_p(), int_odd_p(), int_round_zero_p(), int_upto(), io_reader(), io_write(), is_negative(), is_one(), is_zero(), iseq_translate(), JSON_parse_array(), JSON_parse_object(), JSON_parse_string(), lazy_drop_size(), lazy_flat_map_proc(), lazy_flat_map_to_ary(), lazy_grep_iter_proc(), lazy_grep_proc(), lazy_grep_v_func(), lazy_grep_v_iter(), lazy_zip_arrays_func(), lazy_zip_func(), lexer_iter(), load_file_internal(), make_exception(), match_i(), max_by_i(), min_by_i(), minmax_by_i(), minmax_by_i_update(), mObject_to_json(), mod(), mString_Extend_json_create(), mString_included_s(), mString_to_json_raw_object(), mul(), nmin_cmp(), num_div(), num_fdiv(), num_funcall_op_0(), num_funcall_op_1(), num_modulo(), num_remainder(), num_step(), numeric_quo(), nurat_fdiv(), ossl_call_client_cert_cb(), ossl_call_session_get_cb(), ossl_call_session_new_cb(), ossl_call_session_remove_cb(), ossl_call_tmp_dh_callback(), ossl_ssl_initialize(), ossl_ssl_read_internal(), ossl_ssl_session_get_time(), ossl_ssl_session_set_time(), ossl_ssl_write_internal(), ossl_sslctx_add_extra_chain_cert_i(), ossl_sslctx_flush_sessions(), ossl_to_der(), ossl_x509attr_get_value(), ossl_x509attr_initialize(), ossl_x509ext_initialize(), ossl_x509store_verify(), parse(), parse_main(), parser_compile_error(), path_atime(), path_basename(), path_blockdev_p(), path_chardev_p(), path_chmod(), path_chown(), path_ctime(), path_directory_p(), path_dirname(), path_empty_p(), path_entries(), path_executable_p(), path_executable_real_p(), path_exist_p(), path_expand_path(), path_extname(), path_file_p(), path_fnmatch(), path_ftype(), path_grpowned_p(), path_lchmod(), path_lchown(), path_lstat(), path_make_link(), path_make_symlink(), path_mkdir(), path_mtime(), path_owned_p(), path_pipe_p(), path_readable_p(), path_readable_real_p(), path_readlink(), path_realdirpath(), path_realpath(), path_rename(), path_rmdir(), path_s_getwd(), path_setgid_p(), path_setuid_p(), path_size(), path_size_p(), path_socket_p(), path_split(), path_stat(), path_sticky_p(), path_symlink_p(), path_truncate(), path_utime(), path_world_readable_p(), path_world_writable_p(), path_writable_p(), path_writable_real_p(), path_zero_p(), protected_alias(), protected_empty(), protected_end_document(), protected_end_mapping(), protected_end_sequence(), protected_end_stream(), protected_start_stream(), quo(), r_less(), range_bsearch(), range_check(), range_eqq(), range_max(), range_min(), range_step(), rb_ary_sum(), rb_big_pow(), rb_class_inherited(), rb_cmpint(), rb_complex_finite_p(), rb_complex_infinite_p(), rb_digest_class_s_digest(), rb_digest_instance_bubblebabble(), rb_digest_instance_digest(), rb_digest_instance_digest_bang(), rb_digest_instance_hexdigest(), rb_digest_instance_hexdigest_bang(), rb_digest_instance_length(), rb_digest_instance_new(), rb_digest_instance_to_s(), rb_eql(), rb_equal(), rb_exc_new(), rb_exc_new_str(), rb_get_backtrace(), rb_gzreader_initialize(), rb_gzwriter_flush(), rb_gzwriter_initialize(), rb_hash_default_value(), rb_io_flush_raw(), rb_mod_include(), rb_mod_prepend(), rb_mod_s_used_modules(), rb_num_coerce_bin(), rb_num_coerce_cmp(), rb_num_coerce_relop(), rb_obj_as_string(), rb_obj_clone2(), rb_obj_dup(), rb_obj_extend(), rb_obj_init_dup_clone(), rb_obj_not_equal(), rb_obj_not_match(), rb_range_values(), rb_rational_den(), rb_rational_num(), rb_str_match(), rb_str_sum(), rb_strftime_with_timespec(), rb_write_warning_str(), rbtime2vtdate(), readline_attempted_completion_function(), readline_s_set_output(), reduce0(), rescue_callback(), respond_to_missing_p(), rt_complete_frags(), ruby_num_interval_step_size(), set_option_encoding_once(), set_state_ivars(), shift(), sliceafter_i(), sliceafter_ii(), slicebefore_i(), slicebefore_ii(), slicewhen_i(), slicewhen_ii(), sockopt_unpack(), sort_by_cmp(), ssl_renegotiation_cb(), step_i(), str_upto_each(), strscan_get_charpos(), sub(), sum_iter(), sym_step_i(), time_timespec(), timetick2integer(), transcode_io(), unlink_body(), unlink_rescue(), vtdate2rbtime(), wadd(), wcmp(), weq(), with_gvl_callback(), writer(), and wsub().
Definition at line 873 of file vm_eval.c.
References CALL_PUBLIC, PASS_PASSED_BLOCK_HANDLER, and rb_call().
Referenced by rb_f_chomp(), rb_f_chop(), rb_f_gsub(), and rb_f_sub().
VALUE rb_funcall_with_block | ( | VALUE | recv, |
ID | mid, | ||
int | argc, | ||
const VALUE * | argv, | ||
VALUE | passed_procval | ||
) |
Definition at line 880 of file vm_eval.c.
References CALL_PUBLIC, GET_THREAD, NIL_P, rb_call(), and vm_passed_block_handler_set().
Referenced by rb_sym_proc_call().
Calls a method.
recv | receiver of the method |
mid | an ID that represents the name of the method |
argc | the number of arguments |
argv | pointer to an array of method arguments |
Definition at line 852 of file vm_eval.c.
References CALL_FCALL, and rb_call().
Referenced by rb_eval_cmd().
Calls a method.
Same as rb_funcallv but this function can call only public methods.
recv | receiver of the method |
mid | an ID that represents the name of the method |
argc | the number of arguments |
argv | pointer to an array of method arguments |
Definition at line 867 of file vm_eval.c.
References CALL_PUBLIC, and rb_call().
Referenced by obj_random_bytes(), parser_compile_error(), and rb_random_ulong_limited().
Definition at line 1202 of file vm_eval.c.
References GET_THREAD, rb_iterate0(), and rb_vm_ifunc_proc_new().
Referenced by call_lexer(), method_to_proc(), rb_block_call(), rb_check_block_call(), rb_proc_new(), and ssl_renegotiation_cb().
|
static |
Definition at line 1148 of file vm_eval.c.
References rb_thread_struct::cfp, rb_captured_block::code, err, rb_thread_struct::errinfo, rb_captured_block::ifunc, Qnil, rb_vm_rewind_cfp(), SDR, rb_thread_struct::state, TAG_BREAK, TAG_RETRY, TH_EXEC_TAG, TH_JUMP_TAG, TH_POP_TAG, TH_PUSH_TAG, THROW_DATA_CATCH_FRAME(), THROW_DATA_VAL(), VM_BH_FROM_IFUNC_BLOCK(), VM_CF_BLOCK_HANDLER(), VM_CFP_TO_CAPTURED_BLOCK(), and vm_passed_block_handler_set().
Referenced by rb_iterate(), and 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 | ||
) |
Definition at line 1240 of file vm_eval.c.
References argc, iter_method_arg::argc, argv, iter_method_arg::argv, GET_THREAD, iterate_method(), iter_method_arg::mid, iter_method_arg::obj, rb_eArgError, rb_iterate0(), rb_raise(), and rb_vm_ifunc_new().
Referenced by enum_collect().
|
inlinestatic |
Definition at line 569 of file vm_eval.c.
References CALL_PUBLIC, CALL_VCALL, rb_callable_method_entry_struct::def, rescue_funcall_args::defined_class, METHOD_ENTRY_VISI, METHOD_VISI_PRIVATE, METHOD_VISI_PROTECTED, METHOD_VISI_PUBLIC, MISSING_NOENTRY, MISSING_NONE, MISSING_PRIVATE, MISSING_PROTECTED, MISSING_VCALL, rb_method_definition_struct::original_id, rb_callable_method_entry_struct::owner, Qnil, Qundef, rb_obj_is_kind_of(), rb_resolve_refined_method_callable(), RB_TYPE_P, RBASIC, T_ICLASS, rb_method_definition_struct::type, undefined, UNDEFINED_METHOD_ENTRY_P, UNLIKELY, and VM_METHOD_TYPE_REFINED.
Referenced by check_funcall_callable(), rb_call0(), and stack_check().
Definition at line 669 of file vm_eval.c.
References GET_THREAD, rb_thread_struct::method_missing_reason, raise_method_missing(), and UNREACHABLE.
Referenced by Init_vm_eval().
Definition at line 1799 of file vm_eval.c.
References specific_eval().
Referenced by Init_vm_eval(), and rb_struct_s_def().
Definition at line 1827 of file vm_eval.c.
References yield_under().
Referenced by Init_vm_eval(), and rb_mod_initialize().
Definition at line 1740 of file vm_eval.c.
References singleton_class_for_eval(), and specific_eval().
Referenced by Init_vm_eval().
Definition at line 1765 of file vm_eval.c.
References singleton_class_for_eval(), and yield_under().
Referenced by Init_vm_eval().
void rb_raise_method_missing | ( | rb_thread_t * | th, |
int | argc, | ||
const VALUE * | argv, | ||
VALUE | obj, | ||
int | call_status | ||
) |
Definition at line 776 of file vm_eval.c.
References MISSING_MISSING, raise_method_missing(), VM_BLOCK_HANDLER_NONE, and vm_passed_block_handler_set().
Referenced by vm_call_method_nome().
|
inlinestatic |
Definition at line 527 of file vm_eval.c.
References BUILTIN_TYPE, CLASS_OF, PRIsVALUE, PRIxVALUE, rb_callable_method_entry(), rb_eNotImpError, rb_id2str, rb_raise(), rb_type_str(), RBASIC, SPECIAL_CONST_P, T_NIL, and T_OBJECT.
Referenced by rb_call0(), rb_check_funcall_default(), rb_check_funcall_with_hook(), and stack_check().
Definition at line 1944 of file vm_eval.c.
References rb_sym_intern_ascii_cstr(), and rb_throw_obj().
Definition at line 1919 of file vm_eval.c.
References rb_thread_struct::errinfo, GET_THREAD, NULL, numberof, rb_vm_tag::prev, rb_class_new_instance(), rb_eUncaughtThrow, rb_exc_raise(), rb_str_new_cstr(), rb_vm_tag::retval, rb_vm_tag::tag, rb_thread_struct::tag, TAG_THROW, TH_JUMP_TAG, and THROW_DATA_NEW().
Referenced by exec_recursive(), rb_f_throw(), and rb_throw().
|
static |
Definition at line 491 of file vm_eval.c.
References NULL, T_ARRAY, T_BIGNUM, T_CLASS, T_COMPLEX, T_DATA, T_FALSE, T_FILE, T_FIXNUM, T_FLOAT, T_HASH, T_ICLASS, T_IMEMO, T_MATCH, T_MODULE, T_NIL, T_NODE, T_NONE, T_OBJECT, T_RATIONAL, T_REGEXP, T_STRING, T_STRUCT, T_SYMBOL, T_TRUE, T_UNDEF, T_ZOMBIE, and type_case.
Referenced by rb_search_method_entry().
VALUE rb_vm_backtrace_str_ary | ( | rb_thread_t * | th, |
int | lev, | ||
int | n | ||
) |
Referenced by adjust_backtrace_in_eval().
VALUE rb_vm_call | ( | rb_thread_t * | th, |
VALUE | recv, | ||
VALUE | id, | ||
int | argc, | ||
const VALUE * | argv, | ||
const rb_callable_method_entry_t * | me | ||
) |
Definition at line 1020 of file vm_eval.c.
References Qundef, rb_yield_0(), and rb_yield_1().
Referenced by any_p_i(), ary_add_hash_by(), ary_reject(), BigDecimal_save_exception_mode(), BigDecimal_save_limit(), BigDecimal_save_rounding_mode(), chdir_yield(), console_cooked(), console_noecho(), console_raw(), d_lite_downto(), d_lite_step(), d_lite_upto(), dir_each(), dir_s_open(), each_cons_i(), each_entry_i(), each_i(), each_key_i(), each_pair_i(), each_slice_i(), each_value_i(), enc_str_scrub(), enum_each_slice(), enum_reverse_each(), enum_yield(), enum_yield_array(), env_delete_m(), env_each_key(), env_each_pair(), env_each_value(), env_fetch(), etc_getgrnam(), etc_getpwnam(), fdbm_delete(), fdbm_delete_if(), fdbm_each_key(), fdbm_each_pair(), fdbm_each_value(), fdbm_fetch(), fdbm_s_open(), fdbm_select(), fgdbm_delete_if(), fgdbm_each_key(), fgdbm_each_pair(), fgdbm_each_value(), fgdbm_fetch(), fgdbm_s_open(), fgdbm_select(), fsdbm_delete(), fsdbm_delete_if(), fsdbm_each_key(), fsdbm_each_pair(), fsdbm_each_value(), fsdbm_fetch(), fsdbm_s_open(), fsdbm_select(), glob_i(), gzfile_wrap(), hist_each(), int_dotimes(), int_downto(), int_upto(), io_s_foreach(), lazy_grep_v_iter(), mSyslog_open(), num_step(), ole_each_sub(), os_obj_of_i(), ossl_asn1_decode0(), ossl_engine_s_by_id(), ossl_generate_cb_2(), ossl_pem_passwd_cb0(), p_gid_have_saved_id(), p_gid_switch(), p_uid_have_saved_id(), p_uid_switch(), pty_getpty(), pty_open(), range_each(), range_step(), rb_ary_any_p(), rb_ary_bsearch_index(), rb_ary_collect(), rb_ary_collect_bang(), rb_ary_combination(), rb_ary_count(), rb_ary_cycle(), rb_ary_delete(), rb_ary_drop_while(), rb_ary_each(), rb_ary_each_index(), rb_ary_fetch(), rb_ary_fill(), rb_ary_index(), rb_ary_initialize(), rb_ary_permutation(), rb_ary_product(), rb_ary_repeated_combination(), rb_ary_repeated_permutation(), rb_ary_reverse_each(), rb_ary_rindex(), rb_ary_select(), rb_ary_sum(), rb_ary_take_while(), rb_ary_zip(), rb_callcc(), rb_exec_async_signal_safe(), rb_f_open(), rb_fiddle_handle_initialize(), rb_gzreader_each(), rb_gzreader_each_byte(), rb_gzreader_each_char(), rb_hash_delete_m(), rb_hash_fetch_m(), rb_io_each_byte(), rb_io_each_char(), rb_io_each_codepoint(), rb_io_each_line(), rb_io_s_open(), rb_io_s_pipe(), rb_io_s_popen(), rb_mutex_synchronize_m(), rb_obj_tap(), rb_reg_match_m(), rb_str_enumerate_bytes(), rb_str_enumerate_chars(), rb_str_enumerate_codepoints(), rb_str_enumerate_lines(), rb_str_match_m(), rb_str_scan(), rb_str_sub_bang(), rb_struct_each(), rb_struct_each_pair(), rb_struct_select(), rb_thread_s_handle_interrupt(), reject_bang_i(), ruby_float_step(), select_bang_i(), sock_initialize(), sort_by_i(), step_i(), str_gsub(), str_upto_i(), strio_each(), strio_each_byte(), strio_each_char(), strio_each_codepoint(), strio_s_open(), sum_iter(), sym_each_i(), sym_step_i(), trace_object_allocations(), tracepoint_disable_m(), tracepoint_enable_m(), transform_values_i(), wmap_each_key_i(), wmap_each_value_i(), yield_indexed_values(), zstream_detach_buffer(), and zstream_expand_buffer().
Definition at line 1008 of file vm_eval.c.
References GET_THREAD, and vm_yield().
Referenced by catch_i(), loop_i(), rb_yield(), rb_yield_1(), rb_yield_splat(), rb_yield_values(), and rb_yield_values2().
Definition at line 1014 of file vm_eval.c.
References rb_yield_0().
Referenced by int_dotimes(), and rb_yield().
Definition at line 1078 of file vm_eval.c.
References GET_THREAD, NIL_P, VM_BLOCK_HANDLER_NONE, and vm_yield_with_block().
Definition at line 1072 of file vm_eval.c.
References GET_THREAD, and vm_yield_lambda_splattable().
Referenced by enum_yield(), and enum_yield_array().
Definition at line 1635 of file vm_eval.c.
References block_handler_type_iseq, rb_thread_struct::cfp, CREF_REFINEMENTS_SET(), rb_captured_block::ep, FALSE, GET_THREAD, NULL, rb_bug(), rb_captured_block::self, TRUE, VM_BH_FROM_ISEQ_BLOCK(), VM_BH_TO_ISEQ_BLOCK(), vm_block_handler_type(), VM_CF_BLOCK_HANDLER(), VM_CF_LEP(), vm_cref_push(), VM_ENV_DATA_INDEX_SPECVAL, VM_FORCE_WRITE_SPECIAL_CONST(), and vm_yield_with_cref().
Referenced by rb_mod_refine().
Definition at line 1059 of file vm_eval.c.
References NIL_P, RARRAY_CONST_PTR, RARRAY_LENINT, rb_check_array_type(), rb_eArgError, RB_GC_GUARD, rb_raise(), and rb_yield_0().
VALUE rb_yield_values | ( | int | n, |
... | |||
) |
Definition at line 1031 of file vm_eval.c.
References ALLOCA_N, argv, rb_yield_0(), and va_init_list.
Referenced by any_p_i_fast(), delete_if_i(), each_with_index_i(), each_with_object_i(), enumerator_with_index_i(), enumerator_with_object_i(), env_each_pair(), env_reject_bang(), env_select(), env_select_bang(), env_update_i(), inject_i(), keep_if_i(), max_ii(), min_ii(), minmax_ii(), minmax_ii_update(), nmin_block_cmp(), rb_ary_max(), rb_ary_min(), rb_hash_update_block_callback(), rb_struct_each_pair(), reject_i(), select_i(), sort_1(), and wmap_each_i().
Definition at line 1053 of file vm_eval.c.
References rb_yield_0().
Referenced by argf_block_call_i(), collect_i(), count_iter_i(), each_pair_i_fast(), enum_yield(), enum_yield_array(), find_index_iter_i(), flat_map_i(), lazy_flat_map_proc(), lazy_init_iterator(), lazy_uniq_iter(), rb_ary_zip(), take_while_i(), uniq_iter(), and yielder_yield_i().
Definition at line 1458 of file vm_eval.c.
References eval_string(), Qnil, rb_str_new2, rb_str_new_cstr(), and rb_vm_top_self().
Referenced by rb_eval_string().
Definition at line 1477 of file vm_eval.c.
References eval_string_from_file_helper(), eval_string_from_file_arg::filename, rb_protect(), rb_str_new_cstr(), and eval_string_from_file_arg::str.
Referenced by pruby_eval().
Definition at line 900 of file vm_eval.c.
References ALLOCV_END, ALLOCV_N, argv, CALL_PUBLIC, rb_thread_struct::cfp, CLASS_OF, current_vm_stack_arg(), GET_THREAD, id, make_no_method_exception(), MEMCPY, rb_thread_struct::method_missing_reason, MISSING_NOENTRY, PASS_PASSED_BLOCK_HANDLER_TH, Qundef, rb_call0(), rb_check_id(), rb_eArgError, rb_eNoMethodError, rb_exc_raise(), rb_method_basic_definition_p(), rb_raise(), rb_str_intern(), RUBY_VM_PREVIOUS_CONTROL_FRAME, and SYMBOL_P.
Referenced by rb_f_public_send(), rb_f_send(), and vm_call0_body().
Definition at line 1691 of file vm_eval.c.
References BUILTIN_TYPE, FL_TEST_RAW, Qnil, rb_singleton_class(), rb_special_singleton_class(), RSTRING_FSTR, SPECIAL_CONST_P, T_BIGNUM, T_FLOAT, T_STRING, and T_SYMBOL.
Referenced by rb_obj_instance_eval(), and rb_obj_instance_exec().
Definition at line 1666 of file vm_eval.c.
References rb_captured_block::code, eval_under(), NIL_P, NUM2INT, Qundef, rb_block_given_p(), rb_check_arity, SafeStringValue, StringValue, and yield_under().
Referenced by rb_mod_module_eval(), and rb_obj_instance_eval().
|
inlinestatic |
Definition at line 305 of file vm_eval.c.
References rb_call_cache::me, RAISED_STACKOVERFLOW, rb_exc_raise(), rb_method_call_status(), rb_search_method_entry(), rb_thread_raised_p, rb_thread_raised_set, ruby_stack_check(), and sysstack_error.
Referenced by raise_method_missing(), rb_call0(), rb_check_funcall_default(), and rb_check_funcall_with_hook().
Definition at line 1846 of file vm_eval.c.
References id_tag, id_value, rb_call_super(), rb_check_arity, rb_ivar_set(), and UNLIMITED_ARGUMENTS.
Referenced by Init_vm_eval().
Definition at line 1863 of file vm_eval.c.
References id_tag, and rb_ivar_get().
Referenced by Init_vm_eval(), and uncaught_throw_to_s().
Definition at line 1889 of file vm_eval.c.
References id_mesg, rb_attr_get(), rb_str_format(), and uncaught_throw_tag().
Referenced by Init_vm_eval().
Definition at line 1876 of file vm_eval.c.
References id_value, and rb_ivar_get().
Referenced by Init_vm_eval().
|
static |
Definition at line 46 of file vm_eval.c.
References rb_method_cfunc_struct::argc, argc, rb_calling_info::argc, argv, rb_call_cache::aux, rb_method_definition_struct::body, rb_thread_struct::cfp, rb_method_definition_struct::cfunc, rb_callable_method_entry_struct::def, EXEC_EVENT_HOOK, rb_call_info::flag, rb_method_cfunc_struct::func, id, rb_call_cache::inc_sp, rb_method_cfunc_struct::invoker, len, rb_call_cache::me, rb_call_info::mid, rb_callable_method_entry_struct::owner, Qnil, rb_bug(), rb_check_arity, rb_vm_pop_frame(), rb_calling_info::recv, RUBY_DTRACE_CMETHOD_ENTRY_HOOK, RUBY_DTRACE_CMETHOD_RETURN_HOOK, RUBY_EVENT_C_CALL, RUBY_EVENT_C_RETURN, UNLIKELY, val, vm_call0_body(), vm_call0_cfunc(), and VM_PROFILE_UP.
Referenced by call_method_entry(), method_missing(), rb_call0(), rb_check_funcall_default(), rb_check_funcall_with_hook(), rb_vm_call(), refine_sym_proc_call(), and vm_call_super().
|
static |
Definition at line 155 of file vm_eval.c.
References aliased_callable_method_entry(), rb_calling_info::argc, rb_method_definition_struct::attr, rb_calling_info::block_handler, rb_method_definition_struct::body, CALL_FCALL, rb_thread_struct::cfp, CHECK_VM_STACK_OVERFLOW, rb_callable_method_entry_struct::def, rb_callable_method_entry_struct::defined_class, rb_control_frame_struct::ep, GetProcPtr, rb_method_attr_struct::id, rb_call_cache::me, method_missing(), rb_call_info::mid, MISSING_NOENTRY, MISSING_SUPER, rb_method_definition_struct::optimize_type, rb_method_refined_struct::orig_me, Qundef, rb_attr_get(), rb_bug(), rb_callable_method_entry(), rb_check_arity, rb_ivar_set(), rb_vm_invoke_proc(), RCLASS_ORIGIN, RCLASS_SUPER, rb_calling_info::recv, rb_method_definition_struct::refined, refined_method_callable_without_refinement(), RUBY_VM_CHECK_INTS, send_internal(), rb_control_frame_struct::sp, rb_method_definition_struct::type, vm_call0_cfunc(), vm_call_bmethod_body(), vm_call_iseq_setup(), VM_ENV_FLAGS_SET(), vm_exec(), VM_FRAME_FLAG_FINISH, VM_METHOD_TYPE_ALIAS, VM_METHOD_TYPE_ATTRSET, VM_METHOD_TYPE_BMETHOD, VM_METHOD_TYPE_CFUNC, VM_METHOD_TYPE_ISEQ, VM_METHOD_TYPE_IVAR, VM_METHOD_TYPE_MISSING, VM_METHOD_TYPE_NOTIMPLEMENTED, VM_METHOD_TYPE_OPTIMIZED, VM_METHOD_TYPE_REFINED, VM_METHOD_TYPE_UNDEF, VM_METHOD_TYPE_ZSUPER, vm_passed_block_handler(), and vm_passed_block_handler_set().
Referenced by vm_call0().
|
static |
Definition at line 147 of file vm_eval.c.
References vm_call0_cfunc_with_frame().
Referenced by vm_call0(), and vm_call0_body().
|
static |
Definition at line 109 of file vm_eval.c.
References rb_method_cfunc_struct::argc, argc, rb_calling_info::argc, rb_calling_info::block_handler, rb_method_definition_struct::body, rb_thread_struct::cfp, rb_method_definition_struct::cfunc, rb_callable_method_entry_struct::def, EXEC_EVENT_HOOK, rb_method_cfunc_struct::func, rb_method_cfunc_struct::invoker, len, rb_call_cache::me, rb_call_info::mid, rb_method_definition_struct::original_id, rb_callable_method_entry_struct::owner, Qnil, rb_bug(), rb_check_arity, rb_vm_pop_frame(), rb_calling_info::recv, RUBY_DTRACE_CMETHOD_ENTRY_HOOK, RUBY_DTRACE_CMETHOD_RETURN_HOOK, RUBY_EVENT_C_CALL, RUBY_EVENT_C_RETURN, rb_control_frame_struct::sp, UNLIKELY, val, VM_ENV_FLAG_LOCAL, VM_FRAME_FLAG_CFRAME, VM_FRAME_MAGIC_CFUNC, VM_PROFILE_UP, and vm_push_frame().
Referenced by vm_call0_cfunc().
|
inlinestatic |
Definition at line 261 of file vm_eval.c.
References rb_thread_struct::cfp, rb_callable_method_entry_struct::def, rb_callable_method_entry_struct::defined_class, id, rb_call_cache::me, method_missing(), MISSING_SUPER, rb_method_definition_struct::original_id, rb_bug(), rb_callable_method_entry(), rb_vm_frame_method_entry(), RCLASS_ORIGIN, RCLASS_SUPER, rb_control_frame_struct::self, vm_call0(), and VM_FRAME_RUBYFRAME_P().
Referenced by rb_call_super().
|
static |
Definition at line 2047 of file vm_eval.c.
References rb_thread_struct::cfp, rb_thread_struct::errinfo, Qnil, rb_vm_rewind_cfp(), rb_vm_tag::retval, rb_vm_tag::tag, rb_thread_struct::tag, TAG_THROW, TH_EXEC_TAG, TH_POP_TAG, TH_PUSH_TAG, THROW_DATA_VAL(), and val.
Referenced by rb_catch(), rb_catch_obj(), and rb_catch_protect().
|
static |
Referenced by rb_f_local_variables().
|
static |
Referenced by eval_string_with_cref(), and vm_call0_body().
|
static |
Referenced by eval_string_with_cref().
|
inlinestatic |
Referenced by rb_yield_0().
|
inlinestatic |
Referenced by rb_yield_lambda().
|
inlinestatic |
Referenced by rb_yield_block().
|
inlinestatic |
Referenced by rb_yield_refine_block(), and yield_under().
Definition at line 1590 of file vm_eval.c.
References block_handler_type_ifunc, block_handler_type_iseq, block_handler_type_proc, block_handler_type_symbol, rb_thread_struct::cfp, rb_captured_block::ep, FALSE, GET_THREAD, NULL, Qfalse, rb_proc_lambda_p(), rb_sym_proc_call(), rb_captured_block::self, SYM2ID, TRUE, VM_BH_FROM_IFUNC_BLOCK(), VM_BH_FROM_ISEQ_BLOCK(), VM_BH_TO_CAPT_BLOCK(), VM_BH_TO_PROC(), VM_BH_TO_SYMBOL(), VM_BLOCK_HANDLER_NONE, vm_block_handler_type(), VM_CF_BLOCK_HANDLER(), VM_CF_LEP(), vm_cref_push(), VM_ENV_DATA_INDEX_SPECVAL, VM_FORCE_WRITE_SPECIAL_CONST(), vm_proc_to_block_handler(), and vm_yield_with_cref().
Referenced by rb_mod_module_exec(), rb_obj_instance_exec(), and specific_eval().
|
static |
Definition at line 28 of file vm_eval.c.
Referenced by Init_vm_eval(), and loop_stop().
|
static |
Definition at line 28 of file vm_eval.c.
Referenced by Init_vm_eval(), uncaught_throw_init(), and uncaught_throw_tag().
|
static |
Definition at line 28 of file vm_eval.c.
Referenced by Init_vm_eval(), uncaught_throw_init(), and uncaught_throw_value().
|
static |
Definition at line 27 of file vm_eval.c.
Referenced by Init_vm_eval(), and rb_throw_obj().