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/