Ruby
2.1.10p492(2016-04-01revision54464)
|
Go to the source code of this file.
Data Structures | |
struct | enumerator |
struct | generator |
struct | yielder |
Macros | |
#define | enumerator_free RUBY_TYPED_DEFAULT_FREE |
#define | yielder_free RUBY_TYPED_DEFAULT_FREE |
#define | generator_free RUBY_TYPED_DEFAULT_FREE |
#define enumerator_free RUBY_TYPED_DEFAULT_FREE |
Definition at line 156 of file enumerator.c.
#define generator_free RUBY_TYPED_DEFAULT_FREE |
Definition at line 1171 of file enumerator.c.
#define yielder_free RUBY_TYPED_DEFAULT_FREE |
Definition at line 1065 of file enumerator.c.
Definition at line 972 of file enumerator.c.
References arg, argc, argv, Check_Type(), id_arguments, id_method, method, NIL_P(), OBJ_INFECT, Qfalse, RARRAY_CONST_PTR, RARRAY_LEN, rb_attr_get(), rb_id2str(), rb_inspect(), rb_str_append(), rb_str_buf_append(), rb_str_buf_cat2(), str, SYM2ID, and T_SYMBOL.
Referenced by inspect_enumerator().
Definition at line 730 of file enumerator.c.
References args, Qnil, RARRAY_AREF, RARRAY_LEN, rb_ary_dup(), RB_TYPE_P, and T_ARRAY.
Referenced by enumerator_next(), and enumerator_peek().
Definition at line 1693 of file enumerator.c.
References id_next, and rb_funcall().
Definition at line 1296 of file enumerator.c.
References id_size, Qnil, Qundef, r, and rb_check_funcall().
Referenced by lazy_size(), and lazyenum_size().
Definition at line 1452 of file enumerator.c.
References id_method, lazy_to_enum_i(), lazyenum_size(), Qfalse, rb_ivar_set(), result, and sym_each.
Referenced by InitVM_Enumerator(), and lazy_super().
Definition at line 258 of file enumerator.c.
References enumerator_data_type, enumerator::obj, ptr, Qundef, and TypedData_Make_Struct.
Referenced by InitVM_Enumerator(), lazy_to_enum_i(), and rb_enumeratorize_with_size().
|
static |
Definition at line 422 of file enumerator.c.
References argc, enumerator::args, argv, e, enumerator_ptr(), enumerator::meth, enumerator::obj, RARRAY_LENINT, RARRAY_PTR(), and rb_block_call().
Referenced by enumerator_each(), enumerator_with_index(), and enumerator_with_object().
Definition at line 473 of file enumerator.c.
References enumerator::args, args, e, enumerator_block_call(), enumerator_ptr(), obj, RARRAY_LEN, rb_ary_cat(), rb_ary_dup(), rb_ary_new4, rb_block_given_p(), rb_long2int, and rb_obj_dup().
Referenced by InitVM_Enumerator().
Definition at line 554 of file enumerator.c.
References enumerator_with_index(), and NULL.
Referenced by InitVM_Enumerator().
Definition at line 512 of file enumerator.c.
References enumerator_size().
Referenced by enumerator_with_index(), and enumerator_with_object().
Definition at line 899 of file enumerator.c.
References enumerator_ptr(), enumerator::feedvalue, Qnil, Qundef, rb_eTypeError, rb_raise(), and v.
Referenced by InitVM_Enumerator().
|
static |
Definition at line 270 of file enumerator.c.
References enumerator::args, enumerator::dst, enumerator_data_type, enumerator::feedvalue, enumerator::fib, enumerator::lookahead, enumerator::meth, enumerator::obj, obj, ptr, Qfalse, Qnil, Qundef, rb_ary_new4, rb_check_frozen, rb_eArgError, rb_raise(), rb_to_id(), size, enumerator::size, enumerator::size_fn, enumerator::stop_exc, and TypedData_Get_Struct.
Referenced by enumerator_initialize(), lazy_initialize(), lazy_to_enum_i(), and rb_enumeratorize_with_size().
Definition at line 368 of file enumerator.c.
References enumerator::args, enumerator_data_type, enumerator_ptr(), enumerator::feedvalue, enumerator::fib, enumerator::lookahead, enumerator::meth, enumerator::obj, obj, OBJ_INIT_COPY, Qundef, rb_eArgError, rb_eTypeError, rb_raise(), enumerator::size, enumerator::size_fn, and TypedData_Get_Struct.
Referenced by InitVM_Enumerator().
Definition at line 334 of file enumerator.c.
References argc, enumerator_init(), generator_allocate(), generator_init(), id_call, INFINITY, enumerator::meth, NIL_P(), Qnil, rb_block_given_p(), rb_block_proc(), rb_cGenerator, rb_check_arity, rb_respond_to(), rb_to_int(), RB_TYPE_P, rb_warn(), RFLOAT_VALUE, size, sym_each, T_FLOAT, and UNLIMITED_ARGUMENTS.
Referenced by InitVM_Enumerator().
Definition at line 1019 of file enumerator.c.
References inspect_enumerator(), and rb_exec_recursive().
Referenced by InitVM_Enumerator().
Definition at line 143 of file enumerator.c.
References enumerator::args, enumerator::dst, enumerator::feedvalue, enumerator::fib, enumerator::lookahead, enumerator::obj, p, ptr, rb_gc_mark(), enumerator::size, and enumerator::stop_exc.
Definition at line 159 of file enumerator.c.
Definition at line 772 of file enumerator.c.
References ary2sv(), and enumerator_next_values().
Referenced by InitVM_Enumerator().
Definition at line 715 of file enumerator.c.
References enumerator_ptr(), get_next_values(), enumerator::lookahead, and Qundef.
Referenced by enumerator_next(), and InitVM_Enumerator().
Definition at line 846 of file enumerator.c.
References ary2sv(), and enumerator_peek_values().
Referenced by InitVM_Enumerator().
Definition at line 779 of file enumerator.c.
References enumerator_ptr(), get_next_values(), enumerator::lookahead, and Qundef.
Referenced by enumerator_peek(), and enumerator_peek_values_m().
Definition at line 818 of file enumerator.c.
References enumerator_peek_values(), and rb_ary_dup().
Referenced by InitVM_Enumerator().
|
static |
Definition at line 175 of file enumerator.c.
References enumerator_data_type, enumerator::obj, ptr, Qundef, rb_eArgError, rb_raise(), and TypedData_Get_Struct.
Referenced by enumerator_block_call(), enumerator_each(), enumerator_feed(), enumerator_init_copy(), enumerator_next_values(), enumerator_peek_values(), enumerator_rewind(), enumerator_size(), lazy_set_method(), lazy_to_enum(), next_i(), and obj_to_enum().
Definition at line 921 of file enumerator.c.
References enumerator::dst, enumerator_ptr(), enumerator::feedvalue, enumerator::fib, id_rewind, enumerator::lookahead, enumerator::obj, obj, Qfalse, Qnil, Qundef, rb_check_funcall(), and enumerator::stop_exc.
Referenced by InitVM_Enumerator().
Definition at line 1036 of file enumerator.c.
References argc, enumerator::args, argv, enumerator_ptr(), id_call, int, NULL, enumerator::obj, obj, Qundef, RARRAY_CONST_PTR, RARRAY_LEN, rb_check_funcall(), size, enumerator::size, and enumerator::size_fn.
Referenced by enumerator_enum_size(), and InitVM_Enumerator().
Definition at line 530 of file enumerator.c.
References enumerator_block_call(), enumerator_enum_size(), INT2FIX, memo, NEW_MEMO, NIL_P(), rb_scan_args(), rb_to_int(), and RETURN_SIZED_ENUMERATOR.
Referenced by enumerator_each_with_index(), and InitVM_Enumerator().
Definition at line 598 of file enumerator.c.
References enumerator_block_call(), enumerator_enum_size(), memo, and RETURN_SIZED_ENUMERATOR.
Referenced by InitVM_Enumerator().
for | ( | ) |
Definition at line 1716 of file enumerator.c.
Definition at line 1203 of file enumerator.c.
References generator_data_type, obj, generator::proc, ptr, Qundef, and TypedData_Make_Struct.
Referenced by enumerator_initialize(), InitVM_Enumerator(), and lazy_initialize().
Definition at line 1281 of file enumerator.c.
References generator_ptr(), generator::proc, ptr, rb_ary_cat(), rb_ary_new2, rb_ary_push(), rb_proc_call(), and yielder_new().
Referenced by InitVM_Enumerator().
Definition at line 1215 of file enumerator.c.
References generator_data_type, obj, generator::proc, proc, ptr, rb_check_frozen, rb_eArgError, rb_raise(), and TypedData_Get_Struct.
Referenced by enumerator_initialize(), and generator_initialize().
Definition at line 1260 of file enumerator.c.
References generator_data_type, generator_ptr(), obj, OBJ_INIT_COPY, generator::proc, rb_eArgError, rb_raise(), and TypedData_Get_Struct.
Referenced by InitVM_Enumerator().
Definition at line 1233 of file enumerator.c.
References generator_init(), proc, rb_block_given_p(), rb_block_proc(), rb_eTypeError, rb_need_block(), rb_obj_classname(), rb_obj_is_proc(), rb_raise(), rb_scan_args(), and rb_warn().
Referenced by InitVM_Enumerator().
Definition at line 1165 of file enumerator.c.
References p, generator::proc, ptr, and rb_gc_mark().
Definition at line 1174 of file enumerator.c.
Definition at line 1190 of file enumerator.c.
References generator_data_type, generator::proc, ptr, Qundef, rb_eArgError, rb_raise(), and TypedData_Get_Struct.
Referenced by generator_each(), and generator_init_copy().
|
static |
Definition at line 643 of file enumerator.c.
References enumerator::dst, enumerator::feedvalue, enumerator::fib, enumerator::lookahead, next_init(), Qnil, Qundef, rb_exc_raise(), rb_fiber_alive_p(), rb_fiber_current(), rb_fiber_resume(), and enumerator::stop_exc.
Referenced by enumerator_next_values(), and enumerator_peek_values().
Definition at line 613 of file enumerator.c.
References enumerator::feedvalue, and Qundef.
if | ( | argc | = = 1 | ) |
Definition at line 1324 of file enumerator.c.
References m, rb_yield_values2(), and val.
if | ( | argc | , |
0 | |||
) |
Definition at line 1336 of file enumerator.c.
References argc, argv, and rb_ary_cat().
Definition at line 1342 of file enumerator.c.
Definition at line 1560 of file enumerator.c.
References argv, i, id_yield, RARRAY_AREF, RARRAY_LEN, and rb_funcall().
Definition at line 1617 of file enumerator.c.
References argv, id_yield, and rb_funcall().
if | ( | ! | RTESTrb_yield(element) | ) |
Definition at line 1640 of file enumerator.c.
References argv, id_yield, and rb_funcall().
Definition at line 1664 of file enumerator.c.
References argv, id_yield, and rb_funcall().
Definition at line 1732 of file enumerator.c.
References id_memo, id_to_enum, RARRAY_AREF, RARRAY_LEN, rb_ary_new2, rb_ary_push(), rb_funcall(), and rb_ivar_set().
if | ( | -- | argc, |
0 | |||
) |
Definition at line 1742 of file enumerator.c.
References argc, argv, and rb_ary_new_from_values().
Definition at line 1794 of file enumerator.c.
References args.
Definition at line 1799 of file enumerator.c.
References Qundef.
if | ( | ! | RTESTresult | ) |
Definition at line 1880 of file enumerator.c.
References argc, argv, id_yield, and rb_funcall2().
Definition at line 1906 of file enumerator.c.
References argv, id_memo, Qtrue, and rb_ivar_set().
Definition at line 1909 of file enumerator.c.
References argc, argv, id_yield, and rb_funcall2().
Definition at line 2064 of file enumerator.c.
References ID2SYM, id_arguments, id_call, id_each, id_eqq, id_force, id_initialize, id_lazy, id_memo, id_method, id_new, id_next, id_receiver, id_result, id_rewind, id_size, id_to_enum, id_yield, InitVM, rb_intern, sym_cycle, and sym_each.
Definition at line 1992 of file enumerator.c.
References enumerable_lazy(), enumerator_allocate(), enumerator_each(), enumerator_each_with_index(), enumerator_feed(), enumerator_init_copy(), enumerator_initialize(), enumerator_inspect(), enumerator_next(), enumerator_next_values(), enumerator_peek(), enumerator_peek_values_m(), enumerator_rewind(), enumerator_size(), enumerator_with_index(), enumerator_with_object(), generator_allocate(), generator_each(), generator_init_copy(), generator_initialize(), lazy_drop(), lazy_drop_while(), lazy_flat_map(), lazy_grep(), lazy_initialize(), lazy_lazy(), lazy_map(), lazy_reject(), lazy_select(), lazy_super(), lazy_take(), lazy_take_while(), lazy_to_enum(), lazy_zip(), obj_to_enum(), rb_cEnumerator, rb_cGenerator, rb_cLazy, rb_cObject, rb_cYielder, rb_define_alias(), rb_define_alloc_func(), rb_define_class(), rb_define_class_under(), rb_define_method(), rb_eIndexError, rb_eStopIteration, rb_include_module(), rb_mEnumerable, rb_mKernel, rb_provide(), stop_result(), yielder_allocate(), yielder_initialize(), yielder_yield(), and yielder_yield_push().
Definition at line 938 of file enumerator.c.
References append_method(), enumerator::args, e, enumerator_data_type, id_receiver, enumerator::meth, NIL_P(), enumerator::obj, OBJ_TAINT, PRIsVALUE, Qundef, rb_attr_get(), rb_class_path(), rb_obj_class(), rb_sprintf(), rb_str_buf_cat2(), str, and TypedData_Get_Struct.
Referenced by enumerator_inspect().
Definition at line 1890 of file enumerator.c.
References id_new, lazy_drop_size(), lazy_set_method(), NUM2LONG, rb_ary_new3, rb_block_call(), rb_cLazy, rb_eArgError, and rb_raise().
Referenced by InitVM_Enumerator().
Definition at line 1859 of file enumerator.c.
References FIX2LONG, FIXNUM_P, id_arguments, lazy_size(), len, LONG2FIX, LONG2NUM, NIL_P(), NUM2LONG, RARRAY_AREF, rb_funcall(), rb_ivar_get(), and receiver.
Referenced by lazy_drop().
Definition at line 1916 of file enumerator.c.
References id_new, lazy_set_method(), Qnil, rb_block_call(), rb_block_given_p(), rb_cLazy, rb_eArgError, and rb_raise().
Referenced by InitVM_Enumerator().
Definition at line 1601 of file enumerator.c.
References id_new, lazy_set_method(), Qnil, rb_block_call(), rb_block_given_p(), rb_cLazy, rb_eArgError, and rb_raise().
Referenced by InitVM_Enumerator().
Definition at line 1534 of file enumerator.c.
References id_each, Qnil, and rb_block_call().
Definition at line 1541 of file enumerator.c.
References ary, i, id_yield, NIL_P(), Qnil, RARRAY_AREF, RARRAY_LEN, rb_check_array_type(), and rb_funcall().
Definition at line 1683 of file enumerator.c.
References id_new, lazy_set_method(), rb_ary_new3, rb_block_call(), rb_block_given_p(), and rb_cLazy.
Referenced by InitVM_Enumerator().
Definition at line 1382 of file enumerator.c.
References enumerator_init(), generator_allocate(), id_initialize, id_receiver, obj, Qnil, rb_block_call(), rb_block_given_p(), rb_cGenerator, rb_check_arity, rb_eArgError, rb_ivar_set(), rb_raise(), size, and sym_each.
Referenced by InitVM_Enumerator().
Definition at line 1516 of file enumerator.c.
References id_new, lazy_receiver_size(), lazy_set_method(), Qnil, rb_block_call(), rb_block_given_p(), rb_cLazy, rb_eArgError, and rb_raise().
Referenced by InitVM_Enumerator().
Definition at line 1315 of file enumerator.c.
References lazy_size().
Referenced by lazy_map(), and lazy_zip().
Definition at line 1647 of file enumerator.c.
References id_new, lazy_set_method(), Qnil, rb_block_call(), rb_block_given_p(), rb_cLazy, rb_eArgError, and rb_raise().
Referenced by InitVM_Enumerator().
Definition at line 1624 of file enumerator.c.
References id_new, lazy_set_method(), Qnil, rb_block_call(), rb_block_given_p(), rb_cLazy, rb_eArgError, and rb_raise().
Referenced by InitVM_Enumerator().
|
static |
Definition at line 1404 of file enumerator.c.
References enumerator_ptr(), ID2SYM, id_arguments, id_method, NIL_P(), Qfalse, rb_frame_this_func(), rb_ivar_set(), and enumerator::size_fn.
Referenced by lazy_drop(), lazy_drop_while(), lazy_flat_map(), lazy_grep(), lazy_map(), lazy_reject(), lazy_select(), lazy_take(), lazy_take_while(), and lazy_zip().
Definition at line 1309 of file enumerator.c.
References enum_size(), id_receiver, and rb_ivar_get().
Referenced by lazy_drop_size(), lazy_receiver_size(), and lazy_take_size().
Definition at line 1927 of file enumerator.c.
References enumerable_lazy(), and rb_call_super().
Referenced by InitVM_Enumerator().
Definition at line 1819 of file enumerator.c.
References id_new, INT2FIX, lazy_set_method(), lazy_take_size(), lazy_to_enum_i(), NUM2LONG, rb_ary_new3, rb_block_call(), rb_cLazy, rb_eArgError, rb_raise(), and sym_cycle.
Referenced by InitVM_Enumerator().
Definition at line 1809 of file enumerator.c.
References FIX2LONG, FIXNUM_P, id_arguments, lazy_size(), LONG2NUM, NIL_P(), NUM2LONG, RARRAY_AREF, rb_ivar_get(), and receiver.
Referenced by lazy_take().
Definition at line 1848 of file enumerator.c.
References id_new, lazy_set_method(), Qnil, rb_block_call(), rb_block_given_p(), rb_cLazy, rb_eArgError, and rb_raise().
Referenced by InitVM_Enumerator().
Definition at line 1491 of file enumerator.c.
References argc, enumerator_ptr(), lazy_to_enum_i(), enumerator::meth, rb_block_given_p(), rb_block_proc(), enumerator::size, and sym_each.
Referenced by InitVM_Enumerator().
|
static |
Definition at line 1461 of file enumerator.c.
References enumerator_allocate(), enumerator_init(), Qnil, and rb_cLazy.
Referenced by enumerable_lazy(), lazy_take(), lazy_to_enum(), and rb_enumeratorize_with_size().
Definition at line 1757 of file enumerator.c.
References argc, ary, func, i, id_each, id_new, lazy_receiver_size(), lazy_set_method(), NIL_P(), rb_ary_new2, rb_ary_new4, rb_ary_push(), rb_block_call(), rb_block_given_p(), rb_call_super(), rb_check_array_type(), rb_cLazy, rb_eTypeError, rb_obj_classname(), rb_raise(), rb_respond_to(), and v.
Referenced by InitVM_Enumerator().
Definition at line 1303 of file enumerator.c.
References enum_size().
Referenced by enumerable_lazy().
Definition at line 621 of file enumerator.c.
References enumerator_ptr(), id_each, id_result, Qnil, rb_block_call(), rb_eStopIteration, rb_exc_new2, rb_fiber_yield(), rb_ivar_set(), result, and enumerator::stop_exc.
Referenced by next_init().
|
static |
Definition at line 634 of file enumerator.c.
References enumerator::dst, enumerator::fib, enumerator::lookahead, next_i(), Qundef, rb_fiber_current(), and rb_fiber_new().
Referenced by get_next_values().
Definition at line 1699 of file enumerator.c.
References Qnil.
Definition at line 242 of file enumerator.c.
References argc, enumerator_ptr(), enumerator::meth, rb_block_given_p(), rb_block_proc(), rb_enumeratorize_with_size, enumerator::size, and sym_each.
Referenced by InitVM_Enumerator().
Definition at line 401 of file enumerator.c.
References rb_enumeratorize_with_size.
Referenced by argf_bytes(), argf_chars(), argf_codepoints(), argf_lines(), rb_gzreader_bytes(), rb_gzreader_lines(), rb_io_bytes(), rb_io_chars(), rb_io_codepoints(), rb_io_lines(), strio_bytes(), strio_chars(), strio_codepoints(), and strio_lines().
VALUE rb_enumeratorize_with_size | ( | VALUE | obj, |
VALUE | meth, | ||
int | argc, | ||
VALUE * | argv, | ||
rb_enumerator_size_func * | size_fn | ||
) |
Definition at line 410 of file enumerator.c.
References enumerator_allocate(), enumerator_init(), lazy_to_enum_i(), Qnil, rb_cEnumerator, rb_cLazy, rb_obj_is_kind_of(), and RTEST.
rb_fiber_yield | ( | 1 | , |
& | args | ||
) |
Referenced by asn1time_to_time(), basic_obj_respond_to(), callback(), check_funcall_exec(), check_match(), cleanup_iseq_build(), dir_open_dir(), do_sleep(), getc_call(), if(), io_getch(), method_missing(), mproc(), nucomp_f_complex(), nucomp_rationalize(), nurat_f_rational(), obj_respond_to(), path_binread(), path_binwrite(), path_each_line(), path_open(), path_read(), path_readlines(), path_s_glob(), path_sub(), path_sysopen(), path_write(), r_byte(), r_byte1_buffered(), r_bytes1(), r_bytes1_buffered(), r_object0(), rand_range(), random_equal(), range_values(), rb_digest_class_s_bubblebabble(), rb_digest_class_s_hexdigest(), rb_eval_cmd(), rb_f_gets(), rb_f_open(), rb_f_putc(), rb_f_puts(), rb_f_readline(), rb_f_readlines(), rb_hash_flatten(), rb_io_set_encoding(), rb_obj_call_init(), rb_obj_respond_to(), rb_random_bytes(), rb_random_int32(), rb_random_real(), rb_random_ulong_limited(), rb_str_match_m(), require_libraries(), strio_readbyte(), strio_readchar(), strio_readline(), strio_sysread(), vm_call0_body(), and w_object().
RB_GC_GUARD | ( | args | ) |
Referenced by ary_recycle_hash(), backtrace_to_location_ary(), backtrace_to_str_ary(), big2str_generic(), big_shift3(), bigadd_int(), bigand_int(), BigDecimal_power(), BigMath_s_exp(), BigMath_s_log(), bigmul0(), bigor_int(), bigsq(), bigsub_int(), bigxor_int(), bmcall(), callback(), check_funcall_exec(), clone_method(), d_lite_inspect(), date_zone_to_diff(), econv_init(), establishShell(), eval_string_with_cref(), file_s_fnmatch(), iseq_build_from_ary_body(), iseq_build_from_ary_exception(), marshal_dump(), marshal_load(), mk_inspect(), ossl_asn1_decode(), ossl_asn1_decode_all(), ossl_asn1_traverse(), parse_ddd_cb(), parser_compile_string(), path_check_0(), proc_call(), push_glob(), rand_int(), rb_apply(), rb_ary_sample(), rb_ary_splice(), rb_autoload_load(), rb_big_and(), rb_big_divrem_normal(), rb_big_mul_balance(), rb_big_mul_karatsuba(), rb_big_mul_normal(), rb_big_mul_toom3(), rb_big_or(), rb_big_sq_fast(), rb_big_xor(), rb_check_id(), rb_define_hooked_variable(), rb_econv_substr_append(), rb_exec_fillarg(), rb_execarg_addopt(), rb_execarg_fixup(), rb_execarg_init(), rb_f_exec(), rb_f_spawn(), rb_file_s_basename(), rb_find_file_ext_safe(), rb_find_file_safe(), rb_integer_pack(), rb_io_s_sysopen(), rb_io_syswrite(), rb_iseq_eval(), rb_iseq_eval_main(), rb_load_internal0(), rb_mod_define_method(), rb_name_err_mesg_new(), rb_parser_compile_file_path(), rb_path_to_class(), rb_proc_call(), rb_proc_call_with_block(), rb_reg_check_preprocess(), rb_reg_initialize(), rb_reg_initialize_str(), rb_reg_prepare_re(), rb_spawn_internal(), rb_str2big_karatsuba(), rb_str2big_normal(), rb_str2big_poweroftwo(), rb_str_enumerate_chars(), rb_str_enumerate_codepoints(), rb_str_enumerate_lines(), rb_str_format(), rb_str_intern(), rb_str_subpos(), rb_str_subseq(), rb_str_substr(), rb_str_symname_type(), rb_w32_write_console(), rb_write_error_str(), rb_yield_splat(), realpath_rec(), rmpd_power_by_big_decimal(), strio_ungetbyte(), strio_write(), transcode_string(), vm_backtrace_to_ary(), vm_call0_body(), vm_define_method(), vm_expandarray(), w_object(), and zstream_run().
Referenced by add_event_call_back(), copy_ivar_i(), cState_aset(), enc_set_index(), enum_chunk(), enum_slice_before(), enumerable_lazy(), eval_string_with_cref(), exc_setup_cause(), fev_initialize(), fev_set_handler(), gzfile_raise(), if(), Init_md5(), Init_rmd160(), Init_sha1(), initialize_params(), int_ossl_asn1_decode0_prim(), lazy_initialize(), lazy_set_method(), make_econv_exception(), next_i(), nucomp_marshal_load(), nurat_marshal_load(), ole_method_params(), ole_variables(), olemethod_set_member(), oleparam_ole_param_from_index(), oletype_set_member(), ossl_sslctx_session_get_cb(), ossl_sslctx_session_new_cb(), ossl_start_ssl(), parse_main(), pipe_open(), r_ivar(), raise_loaderror(), range_dumper(), rb_class2name(), rb_class_path(), rb_inflate_s_allocate(), rb_io_init_copy(), rb_iv_set(), rb_mod_refine(), rb_name_class(), rb_obj_ivar_set(), rb_set_class_path(), rb_set_class_path_string(), readline_s_set_completion_case_fold(), readline_s_set_completion_proc(), ruby_init_loadpath_safe(), ruby_thread_init(), set_strpath(), setup_struct(), sockopt_initialize(), struct_define_without_accessor(), time_mdump(), time_mload(), vm_call0_body(), and vm_setivar().
return rb_yield_values | ( | 2 | , |
rb_ary_new4(argc, argv) | , | ||
idx | |||
) |
return rb_yield_values | ( | 2 | , |
rb_ary_new4(argc, argv) | , | ||
memo | |||
) |
Definition at line 1986 of file enumerator.c.
References id_result, and rb_attr_get().
Referenced by InitVM_Enumerator().
Definition at line 1097 of file enumerator.c.
References obj, yielder::proc, ptr, Qundef, TypedData_Make_Struct, and yielder_data_type.
Referenced by InitVM_Enumerator(), and yielder_new().
Definition at line 1109 of file enumerator.c.
References obj, yielder::proc, proc, ptr, rb_eArgError, rb_raise(), TypedData_Get_Struct, and yielder_data_type.
Referenced by yielder_initialize(), and yielder_new().
Definition at line 1126 of file enumerator.c.
References rb_block_proc(), rb_need_block(), and yielder_init().
Referenced by InitVM_Enumerator().
Definition at line 1059 of file enumerator.c.
References p, yielder::proc, ptr, and rb_gc_mark().
Definition at line 1068 of file enumerator.c.
Definition at line 1156 of file enumerator.c.
References rb_cYielder, rb_proc_new(), yielder_allocate(), and yielder_init().
Referenced by generator_each().
Definition at line 1084 of file enumerator.c.
References yielder::proc, ptr, Qundef, rb_eArgError, rb_raise(), TypedData_Get_Struct, and yielder_data_type.
Referenced by yielder_yield().
Definition at line 1135 of file enumerator.c.
References yielder::proc, ptr, rb_proc_call(), and yielder_ptr().
Referenced by InitVM_Enumerator(), and yielder_yield_push().
Definition at line 1143 of file enumerator.c.
References obj, and yielder_yield().
Referenced by InitVM_Enumerator().
arg = rb_attr_get(yielder, id_memo) |
Definition at line 1731 of file enumerator.c.
args = rb_ary_new4(argc, argv) |
Definition at line 611 of file enumerator.c.
ary = rb_ary_new2(RARRAY_LEN(arrays) + 1) |
Definition at line 1714 of file enumerator.c.
else |
Definition at line 1330 of file enumerator.c.
|
static |
Definition at line 164 of file enumerator.c.
Referenced by enumerator_allocate(), enumerator_init(), enumerator_init_copy(), enumerator_ptr(), and inspect_enumerator().
Definition at line 610 of file enumerator.c.
|
static |
Definition at line 1179 of file enumerator.c.
Referenced by generator_allocate(), generator_init(), generator_init_copy(), and generator_ptr().
long i |
Definition at line 1708 of file enumerator.c.
|
static |
Definition at line 108 of file enumerator.c.
Referenced by append_method(), Init_Enumerator(), lazy_drop_size(), lazy_set_method(), and lazy_take_size().
|
static |
Definition at line 107 of file enumerator.c.
Referenced by enumerator_initialize(), enumerator_size(), and Init_Enumerator().
|
static |
Definition at line 107 of file enumerator.c.
Referenced by Init_Enumerator(), lazy_flat_map_each(), lazy_zip(), and next_i().
|
static |
Definition at line 108 of file enumerator.c.
Referenced by Init_Enumerator().
|
static |
Definition at line 108 of file enumerator.c.
Referenced by Init_Enumerator().
|
static |
Definition at line 107 of file enumerator.c.
Referenced by Init_Enumerator(), and lazy_initialize().
|
static |
Definition at line 108 of file enumerator.c.
Referenced by Init_Enumerator().
|
static |
Definition at line 108 of file enumerator.c.
Referenced by if(), and Init_Enumerator().
|
static |
Definition at line 108 of file enumerator.c.
Referenced by append_method(), enumerable_lazy(), Init_Enumerator(), and lazy_set_method().
|
static |
Definition at line 107 of file enumerator.c.
Referenced by Init_Enumerator(), lazy_drop(), lazy_drop_while(), lazy_flat_map(), lazy_grep(), lazy_map(), lazy_reject(), lazy_select(), lazy_take(), lazy_take_while(), and lazy_zip().
|
static |
Definition at line 108 of file enumerator.c.
Referenced by call_next(), and Init_Enumerator().
|
static |
Definition at line 108 of file enumerator.c.
Referenced by Init_Enumerator(), inspect_enumerator(), lazy_initialize(), and lazy_size().
|
static |
Definition at line 108 of file enumerator.c.
Referenced by Init_Enumerator(), next_i(), and stop_result().
|
static |
Definition at line 107 of file enumerator.c.
Referenced by enumerator_rewind(), and Init_Enumerator().
|
static |
Definition at line 107 of file enumerator.c.
Referenced by enum_size(), and Init_Enumerator().
|
static |
Definition at line 107 of file enumerator.c.
Referenced by if(), and Init_Enumerator().
|
static |
Definition at line 107 of file enumerator.c.
Referenced by if(), Init_Enumerator(), and lazy_flat_map_to_ary().
Definition at line 499 of file enumerator.c.
Referenced by allocate_cbsubst_info(), code_page_i(), enc_alias(), enc_find(), enc_replicate_with_index(), foleparam_initialize(), get_dyna_var_idx(), get_local_var_idx(), id2encidx(), if(), Init_enc_set_filesystem_encoding(), io_set_encoding_by_bom(), iseq_compile_each(), iseq_data_to_ary(), load_encoding(), make_dummy_encoding(), make_econv_exception(), match_aref(), nkf_enc_find(), nkf_enc_from_index(), ole_cp2encoding(), opendir_internal(), pack_pack(), parse_mode_enc(), parser_set_encode(), r_ivar(), r_object0(), r_prepare(), r_symreal(), rb_ary_fetch(), rb_ary_push(), rb_ary_sample(), rb_enc_alias(), rb_enc_aliases_enc_i(), rb_enc_find(), rb_enc_from_encoding(), rb_enc_registered(), rb_enc_replicate(), rb_enc_set_base(), rb_encdb_alias(), rb_encdb_declare(), rb_encdb_replicate(), rb_filesystem_encindex(), rb_find_encoding(), rb_io_extract_encoding_option(), rb_locale_encindex(), rb_nkf_enc_get(), rb_obj_encoding(), rb_str_aref(), rb_str_aset(), rb_str_split_m(), rb_to_encoding_index(), reg_fragment_setenc_gen(), register_label(), rt_complete_frags(), str_byte_aref(), str_find_encindex(), and str_to_encindex().
register unsigned int len = rb_long2int((long)argc + 1) |
Definition at line 1332 of file enumerator.c.
Referenced by add_compile_string_length(), addrinfo_mload(), allocate_converted_string(), alt_merge_opt_exact_info(), append_utf8(), appendline(), ary_ensure_room_for_unshift(), ary_len_of_dim(), ary_make_shared(), ary_make_substitution(), ary_resize_capa(), ary_take_first_or_last(), Balloc(), big2str_2bdigits(), big2str_karatsuba(), bigadd(), BigDecimal_split(), bignew_1(), bigtrunc(), BSD__sfvwrite(), bsock_getpeername(), bsock_getsockname(), bsock_getsockopt(), bsock_local_address(), bsock_remote_address(), bytes_2comp(), check_dirname(), check_type_val2variant(), clsid_from_remote(), coderange_scan(), compile_anchor_node(), compile_array_(), compile_enclose_node(), compile_length_anchor_node(), compile_length_cclass_node(), compile_length_enclose_node(), compile_length_quantifier_node(), compile_length_string_node(), compile_length_tree(), compile_string_node(), compile_tree(), concat_opt_exact_info(), concat_opt_exact_info_str(), CONF_get1_default_config_file(), constat_parse(), convert_encoding(), convert_mb_to_wchar(), convert_UTF32_to_UTF8(), convert_UTF8_to_JSON(), convert_wchar_to_mb(), copy_stream_body(), cState_array_nl_set(), cState_configure(), cState_indent_set(), cState_object_nl_set(), cState_space_before_set(), cState_space_set(), date_strftime_alloc(), date_strftime_internal(), decode_bstr(), decorate_convpath(), dimension(), dlhandle_sym(), enum_cycle(), enum_drop(), enum_take(), env_has_value(), env_key(), env_rassoc(), envix(), error_print(), etc_systmpdir(), expand_case_fold_string(), expand_case_fold_string_alt(), fbuffer_append(), fdbm_delete(), fdbm_fetch(), fdbm_has_key(), fdbm_has_value(), fdbm_key(), fgdbm_has_key(), fiddle_handle_sym(), flo_to_s(), fole_s_create_guid(), foletypelib_guid(), foletypelib_initialize(), folevariant_initialize(), fun_so_universal_newline(), get_char_length_tree1(), get_system_directory(), getnameinfo(), global_id(), gzfile_getc(), gzfile_read_header(), gzfile_ungets(), hash2ptr_dispparams(), home_dir(), i_apply_case_fold(), if(), init_addrinfo(), init_env(), inspect1(), inspect2(), inspect_struct(), intern_str(), io_binwrite(), io_bufread(), io_fread(), io_fwrite(), io_getpartial(), io_nread(), io_read(), io_shift_cbuf(), io_ungetbyte(), ioctl_narg_len(), ip_addr(), ip_peeraddr(), ip_s_getaddress(), is_batch(), is_not_included(), iseq_build_from_ary_body(), iseq_data_to_ary(), iseq_set_sequence(), join_argv(), JSON_parse_float(), JSON_parse_integer(), lazy_drop_size(), limited_big_rand(), load_transcoder_entry(), loaded_feature_path(), make_replacement(), make_seed_value(), make_unique_str(), match_at(), match_inspect(), memcmp(), mime_putc(), mk_ary_of_str(), more_output_buffer(), moreswitches(), nfc_getc(), nkf_buf_at(), nogvl_copy_stream_read_write(), ole_const_load(), ole_mb2wc(), ole_method_params(), ole_search_event(), ole_search_event_at(), ole_type_guid(), ole_val2olevariantdata(), ole_variables(), ole_vstr2wc(), oleparam_ole_param_from_index(), onig_is_code_in_cc(), onig_strcpy(), onigenc_mbn_mbc_case_fold(), onigenc_mbn_mbc_to_code(), onigenc_minimum_property_name_to_ctype(), onigenc_str_bytelen_null(), onigenc_strlen_null(), open_dir_handle(), opendir_internal(), ossl_asn1_decode(), ossl_asn1_decode0(), ossl_asn1_decode_all(), ossl_asn1_traverse(), ossl_asn1prim_to_der(), ossl_bn_initialize(), ossl_bn_to_s(), ossl_dh_compute_key(), ossl_dh_to_der(), ossl_dsa_to_der(), ossl_pem_passwd_cb(), ossl_pkcs12_to_der(), ossl_pkcs7_add_data(), ossl_pkcs7_to_der(), ossl_rsa_to_der(), ossl_spki_to_der(), ossl_ssl_read_internal(), ossl_ssl_session_to_der(), ossl_x509_to_der(), ossl_x509attr_to_der(), ossl_x509ext_to_der(), ossl_x509name_to_der(), ossl_x509req_to_der(), overlapped_socket_io(), pack_pack(), pack_unpack(), parse_char_class(), parse_exp(), parse_mode_enc(), parse_numvar(), parser_encode_length(), parser_here_document(), parser_heredoc_identifier(), parser_magic_comment(), parser_tokadd_mbchar(), parser_tokaddmbc(), parser_whole_match_p(), parser_yyerror(), pruby_var_equal_to_cstr_p(), pruby_var_prefixed_p(), pruby_var_to_cstr(), r_bytes0(), r_bytes1_buffered(), r_ivar(), r_object0(), rand_init(), rb_ary_aref(), rb_ary_aset(), rb_ary_cmp(), rb_ary_combination(), rb_ary_delete_at(), rb_ary_dup(), rb_ary_elt(), rb_ary_fill(), rb_ary_index(), rb_ary_initialize(), rb_ary_join(), rb_ary_last(), rb_ary_length(), rb_ary_modify(), rb_ary_plus(), rb_ary_repeated_combination(), rb_ary_reverse(), rb_ary_reverse_each(), rb_ary_reverse_m(), rb_ary_rindex(), rb_ary_rotate(), rb_ary_rotate_m(), rb_ary_sample(), rb_ary_shift(), rb_ary_shuffle_bang(), rb_ary_slice_bang(), rb_ary_sort_bang(), rb_ary_splice(), rb_ary_store(), rb_ary_take(), rb_ary_times(), rb_ary_unshift_m(), rb_ary_zip(), rb_big_clone(), rb_cstr_to_inum(), rb_dlptr_aref(), rb_dlptr_aset(), rb_dlptr_to_s(), rb_dlptr_to_str(), rb_econv_append(), rb_econv_convert0(), rb_econv_insert_output(), rb_econv_set_replacement(), rb_enc_symname_type(), rb_execarg_fixup(), rb_execarg_run_options(), rb_feature_p(), rb_fiddle_ptr_aref(), rb_fiddle_ptr_aset(), rb_fiddle_ptr_to_s(), rb_fiddle_ptr_to_str(), rb_file_expand_path_internal(), rb_file_join(), rb_file_load_ok(), rb_file_s_extname(), rb_gdbm_delete(), rb_gdbm_fetch2(), rb_gdbm_nextkey(), rb_get_values_at(), rb_gzreader_read(), rb_gzreader_readpartial(), rb_io_advise(), rb_io_getline_fast(), rb_io_s_popen(), rb_io_sysread(), rb_io_ungetc(), rb_iseq_disasm_insn(), rb_iseq_translate_threaded_code(), rb_ivar_lookup(), rb_ivar_set(), rb_load_file(), rb_mod_const_defined(), rb_mod_const_get(), rb_obj_copy_ivar(), rb_queue_length(), rb_queue_num_waiting(), rb_random_bytes(), rb_range_beg_len(), rb_realpath_internal(), rb_reg_expr_str(), rb_reg_init_copy(), rb_reg_initialize_m(), rb_reg_nth_match(), rb_reg_to_s(), rb_str2big_karatsuba(), rb_str2big_normal(), rb_str2big_poweroftwo(), rb_str_append(), rb_str_aref(), rb_str_aset(), rb_str_buf_cat_ascii(), rb_str_buf_new_cstr(), rb_str_casecmp(), rb_str_cat(), rb_str_chomp_bang(), rb_str_chop_bang(), rb_str_concat(), rb_str_conv_enc_opts(), rb_str_drop_bytes(), rb_str_dump(), rb_str_enumerate_chars(), rb_str_enumerate_lines(), rb_str_fill_terminator(), rb_str_format(), rb_str_hash_cmp(), rb_str_index(), rb_str_justify(), rb_str_length(), rb_str_modify_expand(), rb_str_quote_unprintable(), rb_str_resize(), rb_str_rindex(), rb_str_rindex_m(), rb_str_rstrip_bang(), rb_str_scan(), rb_str_split_m(), rb_str_sub_bang(), rb_str_subpat_set(), rb_str_subpos(), rb_str_substr(), rb_str_sum(), rb_str_symname_p(), rb_str_symname_type(), rb_str_times(), rb_str_to_dbl(), rb_str_to_inum(), rb_strftime_alloc(), rb_string_value_cstr(), rb_struct_aref_id(), rb_struct_aset_id(), rb_struct_getmember(), rb_struct_hash(), rb_struct_init_copy(), rb_struct_set(), rb_szqueue_num_waiting(), rb_vm_bugreport(), rb_w32_cmdvector(), rb_w32_conv_from_wchar(), rb_w32_conv_from_wstr(), rb_w32_getcwd(), rb_w32_getppid(), rb_w32_mbstr_to_wstr(), rb_w32_read(), rb_w32_wrap_io_handle(), rb_w32_write(), rb_w32_write_console(), rb_w32_wstr_to_mbstr(), rb_write_error_str(), read_escaped_byte(), recursive_cmp(), recursive_eql(), recursive_equal(), recvmsg(), reduce0(), reg_get_val(), reg_named_capture_assign_iter(), report_bug(), rotate_count(), rsock_connect(), rsock_inspect_sockaddr(), rsock_s_accept(), rsock_s_recvfrom(), rsock_s_recvfrom_nonblock(), ruby__sfvwrite(), ruby_each_words(), ruby_setenv(), ruby_strdup(), ruby_strtoul(), sendmsg(), set_bm_backward_skip(), set_bm_skip(), set_encoding_const(), setproctitle(), setup_fake_str(), setup_look_behind(), setup_narg(), setup_struct(), setup_tree(), SHA1_Update(), sock_accept(), sock_accept_nonblock(), sock_sysaccept(), socketpair_internal(), sockopt_bool(), str_buf_cat(), str_byte_aref(), str_byte_substr(), str_end_with_asciichar(), str_eql(), str_gsub(), str_make_independent_expand(), str_new0(), str_null_char(), str_replace(), str_strlen(), strftimev(), string2hex(), strio_getc(), strio_read(), strio_truncate(), strio_ungetc(), strio_write(), strscan_getch(), strscan_peek(), swap_node(), switch(), sym_inspect(), time_mdump(), time_mload(), time_strftime(), to_ascii(), trans_sweep(), unescape_unicode_bmp(), unescape_unicode_list(), universal_newline_finish(), update_string_node_case_fold(), vm_backtrace_to_ary(), vm_call_cfunc_with_frame(), vm_caller_setup_args(), vm_expandarray(), vm_getivar(), vm_setivar(), vm_yield_setup_block_args_complex(), w32_aspawn_flags(), w32_getenv(), w32_spawn(), w_long(), w_object(), w_objivar(), wstati64(), xmalloc2_size(), zstream_append_buffer(), zstream_buffer_ungets(), zstream_expand_buffer_without_gvl(), and zstream_shift_buffer().
VALUE memo = rb_attr_get(yielder, id_memo) |
Definition at line 1711 of file enumerator.c.
return Qnil |
Definition at line 1512 of file enumerator.c.
VALUE rb_cEnumerator |
Definition at line 105 of file enumerator.c.
Referenced by enum_chunk(), enum_slice_before(), InitVM_Enumerator(), and rb_enumeratorize_with_size().
|
static |
Definition at line 126 of file enumerator.c.
Referenced by enumerator_initialize(), InitVM_Enumerator(), and lazy_initialize().
VALUE rb_cLazy |
Definition at line 106 of file enumerator.c.
Referenced by InitVM_Enumerator(), lazy_drop(), lazy_drop_while(), lazy_flat_map(), lazy_grep(), lazy_map(), lazy_reject(), lazy_select(), lazy_take(), lazy_take_while(), lazy_to_enum_i(), lazy_zip(), and rb_enumeratorize_with_size().
|
static |
Definition at line 126 of file enumerator.c.
Referenced by InitVM_Enumerator(), and yielder_new().
VALUE rb_eStopIteration |
Definition at line 111 of file enumerator.c.
Referenced by InitVM_Enumerator(), next_i(), and rb_f_loop().
VALUE result = rb_yield_values2(len, RARRAY_CONST_PTR(args)) |
Definition at line 1339 of file enumerator.c.
|
static |
Definition at line 109 of file enumerator.c.
Referenced by Init_Enumerator(), and lazy_take().
|
static |
Definition at line 109 of file enumerator.c.
Referenced by enumerable_lazy(), enumerator_initialize(), Init_Enumerator(), lazy_initialize(), lazy_to_enum(), and obj_to_enum().
v = Qnil |
Definition at line 1741 of file enumerator.c.
|
static |
Definition at line 497 of file enumerator.c.
memo u1 value = rb_int_succ(idx) |
Definition at line 500 of file enumerator.c.
Definition at line 1710 of file enumerator.c.
|
static |
Definition at line 1073 of file enumerator.c.
Referenced by yielder_allocate(), yielder_init(), and yielder_ptr().