mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* enumerator.c: Introduce id_each to save rb_itern() and SYM2ID()
calls. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@21977 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
c737e6d90d
commit
301a7c8c73
2 changed files with 11 additions and 5 deletions
|
@ -1,3 +1,8 @@
|
|||
Mon Feb 2 20:49:24 2009 Akinori MUSHA <knu@iDaemons.org>
|
||||
|
||||
* enumerator.c: Introduce id_each to save rb_itern() and SYM2ID()
|
||||
calls.
|
||||
|
||||
Sun Feb 1 16:14:37 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
|
||||
* lib/optparse.rb (Switch#summarize): strips an equal sign from
|
||||
|
|
11
enumerator.c
11
enumerator.c
|
@ -21,8 +21,8 @@
|
|||
* object.
|
||||
*/
|
||||
VALUE rb_cEnumerator;
|
||||
static ID id_rewind, id_each;
|
||||
static VALUE sym_each;
|
||||
static ID id_rewind;
|
||||
|
||||
VALUE rb_eStopIteration;
|
||||
|
||||
|
@ -162,7 +162,7 @@ enum_each_slice(obj, n)
|
|||
args[0] = rb_ary_new2(size);
|
||||
args[1] = (VALUE)size;
|
||||
|
||||
rb_block_call(obj, SYM2ID(sym_each), 0, 0, each_slice_i, (VALUE)args);
|
||||
rb_block_call(obj, id_each, 0, 0, each_slice_i, (VALUE)args);
|
||||
|
||||
ary = args[0];
|
||||
if (RARRAY_LEN(ary) > 0) rb_yield(ary);
|
||||
|
@ -222,7 +222,7 @@ enum_each_cons(obj, n)
|
|||
args[0] = rb_ary_new2(size);
|
||||
args[1] = (VALUE)size;
|
||||
|
||||
rb_block_call(obj, SYM2ID(sym_each), 0, 0, each_cons_i, (VALUE)args);
|
||||
rb_block_call(obj, id_each, 0, 0, each_cons_i, (VALUE)args);
|
||||
|
||||
return Qnil;
|
||||
}
|
||||
|
@ -255,7 +255,7 @@ enum_each_with_object(obj, memo)
|
|||
{
|
||||
RETURN_ENUMERATOR(obj, 1, &memo);
|
||||
|
||||
rb_block_call(obj, SYM2ID(sym_each), 0, 0, each_with_object_i, memo);
|
||||
rb_block_call(obj, id_each, 0, 0, each_with_object_i, memo);
|
||||
|
||||
return memo;
|
||||
}
|
||||
|
@ -923,8 +923,9 @@ Init_Enumerator()
|
|||
rb_define_method(rb_cYielder, "yield", yielder_yield, -2);
|
||||
rb_define_method(rb_cYielder, "<<", yielder_yield, -2);
|
||||
|
||||
sym_each = ID2SYM(rb_intern("each"));
|
||||
id_rewind = rb_intern("rewind");
|
||||
id_each = rb_intern("each");
|
||||
sym_each = ID2SYM(id_each);
|
||||
|
||||
/* backward compatibility */
|
||||
rb_provide("enumerator.so");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue