[前][次][番号順一覧][スレッド一覧]

ruby-changes:7186

From: knu <ko1@a...>
Date: Tue, 19 Aug 2008 20:44:51 +0900 (JST)
Subject: [ruby-changes:7186] Ruby:r18705 (ruby_1_8): * enumerator.c (Init_Enumerator): Rename Enumerable::Enumerator to

knu	2008-08-19 20:44:34 +0900 (Tue, 19 Aug 2008)

  New Revision: 18705

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=18705

  Log:
    * enumerator.c (Init_Enumerator): Rename Enumerable::Enumerator to
      just Enumerator and redefine the former as an alias for backward
      compatibility.
    
    * lib/set.rb (TC_Set#test_each),
      test/ruby/test_enumerator.rb (TestEnumerator#test_initialize):
      Enumerable::Enumerator is now called Enumerator.

  Modified files:
    branches/ruby_1_8/ChangeLog
    branches/ruby_1_8/enumerator.c
    branches/ruby_1_8/lib/set.rb
    branches/ruby_1_8/test/ruby/test_enumerator.rb

Index: ruby_1_8/ChangeLog
===================================================================
--- ruby_1_8/ChangeLog	(revision 18704)
+++ ruby_1_8/ChangeLog	(revision 18705)
@@ -1,3 +1,13 @@
+Tue Aug 19 20:32:48 2008  Akinori MUSHA  <knu@i...>
+
+	* enumerator.c (Init_Enumerator): Rename Enumerable::Enumerator to
+	  just Enumerator and redefine the former as an alias for backward
+	  compatibility.
+
+	* lib/set.rb (TC_Set#test_each),
+	  test/ruby/test_enumerator.rb (TestEnumerator#test_initialize):
+	  Enumerable::Enumerator is now called Enumerator.
+
 Mon Aug 18 02:25:11 2008  GOTOU Yuuzou  <gotoyuzo@n...>
 
 	* lib/webrick/cgi.rb (WEBrick::CGI::Socket#eof?): added lacked method.
Index: ruby_1_8/enumerator.c
===================================================================
--- ruby_1_8/enumerator.c	(revision 18704)
+++ ruby_1_8/enumerator.c	(revision 18705)
@@ -15,7 +15,7 @@
 #include "ruby.h"
 
 /*
- * Document-class: Enumerable::Enumerator
+ * Document-class: Enumerator
  *
  * A class which provides a method `each' to be used as an Enumerable
  * object.
@@ -66,7 +66,7 @@
  *    obj.to_enum(method = :each, *args)
  *    obj.enum_for(method = :each, *args)
  *
- *  Returns Enumerable::Enumerator.new(self, method, *args).
+ *  Returns Enumerator.new(self, method, *args).
  *
  *  e.g.:
  *
@@ -258,11 +258,11 @@
 
 /*
  *  call-seq:
- *    Enumerable::Enumerator.new(obj, method = :each, *args)
+ *    Enumerator.new(obj, method = :each, *args)
  *
- *  Creates a new Enumerable::Enumerator object, which is to be
- *  used as an Enumerable object using the given object's given
- *  method with the given arguments.
+ *  Creates a new Enumerator object, which is to be used as an
+ *  Enumerable object using the given object's given method with the
+ *  given arguments.
  *
  *  Use of this method is discouraged.  Use Kernel#enum_for() instead.
  */
@@ -430,9 +430,8 @@
     rb_define_method(rb_mEnumerable, "each_cons", enum_each_cons, 1);
     rb_define_method(rb_mEnumerable, "enum_cons", enum_each_cons, 1);
 
-    rb_cEnumerator = rb_define_class_under(rb_mEnumerable, "Enumerator", rb_cObject);
+    rb_cEnumerator = rb_define_class("Enumerator", rb_cObject);
     rb_include_module(rb_cEnumerator, rb_mEnumerable);
-    rb_define_global_const("Enumerator", rb_cEnumerator);
 
     rb_define_alloc_func(rb_cEnumerator, enumerator_allocate);
     rb_define_method(rb_cEnumerator, "initialize", enumerator_initialize, -1);
@@ -447,5 +446,7 @@
 
     sym_each	 	= ID2SYM(rb_intern("each"));
 
-    rb_provide("enumerator.so");	/* for backward compatibility */
+    /* backward compatibility */
+    rb_provide("enumerator.so");
+    rb_define_const(rb_mEnumerable, "Enumerator", rb_cEnumerator);
 }
Index: ruby_1_8/lib/set.rb
===================================================================
--- ruby_1_8/lib/set.rb	(revision 18704)
+++ ruby_1_8/lib/set.rb	(revision 18705)
@@ -934,7 +934,7 @@
     assert_same(set, ret)
 
     e = set.each
-    assert_instance_of(Enumerable::Enumerator, e)
+    assert_instance_of(Enumerator, e)
 
     assert_nothing_raised {
       set.each { |o|
Index: ruby_1_8/test/ruby/test_enumerator.rb
===================================================================
--- ruby_1_8/test/ruby/test_enumerator.rb	(revision 18704)
+++ ruby_1_8/test/ruby/test_enumerator.rb	(revision 18705)
@@ -57,8 +57,8 @@
 
   def test_initialize
     assert_equal([1, 2, 3], @obj.to_enum(:foo, 1, 2, 3).to_a)
-    assert_equal([1, 2, 3], Enumerable::Enumerator.new(@obj, :foo, 1, 2, 3).to_a)
-    assert_raise(ArgumentError) { Enumerable::Enumerator.new }
+    assert_equal([1, 2, 3], Enumerator.new(@obj, :foo, 1, 2, 3).to_a)
+    assert_raise(ArgumentError) { Enumerator.new }
   end
 
   def test_initialize_copy

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]