ruby-changes:4447
From: ko1@a...
Date: Wed, 9 Apr 2008 21:21:44 +0900 (JST)
Subject: [ruby-changes:4447] knu - Ruby:r15938 (ruby_1_8): * array.c (rb_ary_each, rb_ary_each_index, rb_ary_reverse_each,
knu 2008-04-09 21:21:25 +0900 (Wed, 09 Apr 2008) New Revision: 15938 Modified files: branches/ruby_1_8/ChangeLog branches/ruby_1_8/array.c Log: * array.c (rb_ary_each, rb_ary_each_index, rb_ary_reverse_each, rb_ary_reject_bang): Calling Array#each, #each_index, #reverse_each, #reject! or #delete_if without a block now returns an enumerator; backported from 1.9. http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/branches/ruby_1_8/ChangeLog?r1=15938&r2=15937&diff_format=u http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/branches/ruby_1_8/array.c?r1=15938&r2=15937&diff_format=u Index: ruby_1_8/array.c =================================================================== --- ruby_1_8/array.c (revision 15937) +++ ruby_1_8/array.c (revision 15938) @@ -1162,6 +1162,7 @@ { long i; + RETURN_ENUMERATOR(ary, 0, 0) for (i=0; i<RARRAY(ary)->len; i++) { rb_yield(RARRAY(ary)->ptr[i]); } @@ -1189,6 +1190,7 @@ { long i; + RETURN_ENUMERATOR(ary, 0, 0); for (i=0; i<RARRAY(ary)->len; i++) { rb_yield(LONG2NUM(i)); } @@ -1214,8 +1216,10 @@ rb_ary_reverse_each(ary) VALUE ary; { - long len = RARRAY(ary)->len; + long len; + RETURN_ENUMERATOR(ary, 0, 0); + len = RARRAY(ary)->len; while (len--) { rb_yield(RARRAY(ary)->ptr[len]); if (RARRAY(ary)->len < len) { @@ -2033,6 +2037,7 @@ { long i1, i2; + RETURN_ENUMERATOR(ary, 0, 0); rb_ary_modify(ary); for (i1 = i2 = 0; i1 < RARRAY(ary)->len; i1++) { VALUE v = RARRAY(ary)->ptr[i1]; Index: ruby_1_8/ChangeLog =================================================================== --- ruby_1_8/ChangeLog (revision 15937) +++ ruby_1_8/ChangeLog (revision 15938) @@ -1,3 +1,10 @@ +Wed Apr 9 21:13:05 2008 Akinori MUSHA <knu@i...> + + * array.c (rb_ary_each, rb_ary_each_index, rb_ary_reverse_each, + rb_ary_reject_bang): Calling Array#each, #each_index, + #reverse_each, #reject! or #delete_if without a block now + returns an enumerator; backported from 1.9. + Wed Apr 9 20:47:16 2008 Akinori MUSHA <knu@i...> * array.c (rb_ary_index, rb_ary_index): Array#index and #rindex -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/