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

ruby-changes:8636

From: knu <ko1@a...>
Date: Mon, 10 Nov 2008 18:19:56 +0900 (JST)
Subject: [ruby-changes:8636] Ruby:r20171 (ruby_1_8): * ext/dbm/dbm.c (fdbm_key): Rename #index to #key. Emit a warning

knu	2008-11-10 18:18:23 +0900 (Mon, 10 Nov 2008)

  New Revision: 20171

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

  Log:
    * ext/dbm/dbm.c (fdbm_key): Rename #index to #key.  Emit a warning
      when #index is called.
      (fdbm_indexes): Emit a deprecation warning.
    * ext/gdbm/gdbm.c: Ditto.
    
    * ext/sdbm/init.c: Ditto.

  Modified files:
    branches/ruby_1_8/ChangeLog
    branches/ruby_1_8/NEWS
    branches/ruby_1_8/ext/dbm/dbm.c
    branches/ruby_1_8/ext/gdbm/gdbm.c
    branches/ruby_1_8/ext/sdbm/init.c
    branches/ruby_1_8/test/dbm/test_dbm.rb
    branches/ruby_1_8/test/gdbm/test_gdbm.rb
    branches/ruby_1_8/test/sdbm/test_sdbm.rb

Index: ruby_1_8/ext/sdbm/init.c
===================================================================
--- ruby_1_8/ext/sdbm/init.c	(revision 20170)
+++ ruby_1_8/ext/sdbm/init.c	(revision 20171)
@@ -193,7 +193,7 @@
 }
 
 static VALUE
-fsdbm_index(obj, valstr)
+fsdbm_key(obj, valstr)
     VALUE obj, valstr;
 {
     datum key, val;
@@ -215,6 +215,14 @@
 }
 
 static VALUE
+fsdbm_index(hash, value)
+    VALUE hash, value;
+{
+    rb_warning("SDBM#index is deprecated; use SDBM#key");
+    return fsdbm_key(hash, value);
+}
+
+static VALUE
 fsdbm_indexes(argc, argv, obj)
     int argc;
     VALUE *argv;
@@ -223,6 +231,8 @@
     VALUE new;
     int i;
 
+    rb_warn("SDBM#%s is deprecated; use SDBM#values_at",
+	    rb_id2name(rb_frame_last_func()));
     new = rb_ary_new2(argc);
     for (i=0; i<argc; i++) {
 	rb_ary_push(new, fsdbm_fetch(obj, argv[i], Qnil));
@@ -753,6 +763,7 @@
     rb_define_method(rb_cDBM, "[]=", fsdbm_store, 2);
     rb_define_method(rb_cDBM, "store", fsdbm_store, 2);
     rb_define_method(rb_cDBM, "index",  fsdbm_index, 1);
+    rb_define_method(rb_cDBM, "key",  fsdbm_key, 1);
     rb_define_method(rb_cDBM, "indexes",  fsdbm_indexes, -1);
     rb_define_method(rb_cDBM, "indices",  fsdbm_indexes, -1);
     rb_define_method(rb_cDBM, "select",  fsdbm_select, -1);
Index: ruby_1_8/ext/dbm/dbm.c
===================================================================
--- ruby_1_8/ext/dbm/dbm.c	(revision 20170)
+++ ruby_1_8/ext/dbm/dbm.c	(revision 20171)
@@ -215,7 +215,7 @@
 }
 
 static VALUE
-fdbm_index(obj, valstr)
+fdbm_key(obj, valstr)
     VALUE obj, valstr;
 {
     datum key, val;
@@ -238,6 +238,14 @@
 }
 
 static VALUE
+fdbm_index(hash, value)
+    VALUE hash, value;
+{
+    rb_warning("DBM#index is deprecated; use DBM#key");
+    return fdbm_key(hash, value);
+}
+
+static VALUE
 fdbm_indexes(argc, argv, obj)
     int argc;
     VALUE *argv;
@@ -246,6 +254,8 @@
     VALUE new;
     int i;
 
+    rb_warn("DBM#%s is deprecated; use DBM#values_at",
+	    rb_id2name(rb_frame_last_func()));
     new = rb_ary_new2(argc);
     for (i=0; i<argc; i++) {
 	rb_ary_push(new, fdbm_fetch(obj, argv[i], Qnil));
@@ -771,6 +781,7 @@
     rb_define_method(rb_cDBM, "[]=", fdbm_store, 2);
     rb_define_method(rb_cDBM, "store", fdbm_store, 2);
     rb_define_method(rb_cDBM, "index",  fdbm_index, 1);
+    rb_define_method(rb_cDBM, "key",  fdbm_key, 1);
     rb_define_method(rb_cDBM, "indexes",  fdbm_indexes, -1);
     rb_define_method(rb_cDBM, "indices",  fdbm_indexes, -1);
     rb_define_method(rb_cDBM, "select",  fdbm_select, -1);
Index: ruby_1_8/ext/gdbm/gdbm.c
===================================================================
--- ruby_1_8/ext/gdbm/gdbm.c	(revision 20170)
+++ ruby_1_8/ext/gdbm/gdbm.c	(revision 20171)
@@ -436,13 +436,13 @@
 
 /*
  * call-seq:
- *      gdbm.index(value) -> key
+ *      gdbm.key(value) -> key
  *
  * Returns the _key_ for a given _value_. If several keys may map to the
  * same value, the key that is found first will be returned.
  */
 static VALUE
-fgdbm_index(obj, valstr)
+fgdbm_key(obj, valstr)
     VALUE obj, valstr;
 {
     struct dbmdata *dbmp;
@@ -465,7 +465,16 @@
     return Qnil;
 }
 
+/* :nodoc: */
 static VALUE
+fgdbm_index(obj, value)
+    VALUE obj, value;
+{
+    rb_warning("GDBM#index is deprecated; use GDBM#key");
+    return fgdbm_key(obj, value);
+}
+
+static VALUE
 fgdbm_indexes(argc, argv, obj)
     int argc;
     VALUE *argv;
@@ -474,6 +483,8 @@
     VALUE new;
     int i;
 
+    rb_warn("GDBM#%s is deprecated; use GDBM#values_at",
+	    rb_id2name(rb_frame_last_func()));
     new = rb_ary_new2(argc);
     for (i=0; i<argc; i++) {
 	rb_ary_push(new, rb_gdbm_fetch3(obj, argv[i]));
@@ -1291,6 +1302,7 @@
     rb_define_method(rb_cGDBM, "[]=", fgdbm_store, 2);
     rb_define_method(rb_cGDBM, "store", fgdbm_store, 2);
     rb_define_method(rb_cGDBM, "index",  fgdbm_index, 1);
+    rb_define_method(rb_cGDBM, "key",  fgdbm_key, 1);
     rb_define_method(rb_cGDBM, "indexes",  fgdbm_indexes, -1);
     rb_define_method(rb_cGDBM, "indices",  fgdbm_indexes, -1);
     rb_define_method(rb_cGDBM, "select",  fgdbm_select, -1);
Index: ruby_1_8/NEWS
===================================================================
--- ruby_1_8/NEWS	(revision 20170)
+++ ruby_1_8/NEWS	(revision 20171)
@@ -38,6 +38,24 @@
 
     Renamed from ENV.index.
 
+* dbm
+
+  DBM#key
+
+    Renamed from DBM#index.
+
+* gdbm
+
+  GDBM#key
+
+    Renamed from GDBM#index.
+
+* sdbm
+
+  SDBM#key
+
+    Renamed from SDBM#index.
+
 * set
 
   Set#classify
Index: ruby_1_8/ChangeLog
===================================================================
--- ruby_1_8/ChangeLog	(revision 20170)
+++ ruby_1_8/ChangeLog	(revision 20171)
@@ -1,3 +1,13 @@
+Mon Nov 10 18:06:51 2008  Akinori MUSHA  <knu@i...>
+
+	* ext/dbm/dbm.c (fdbm_key): Rename #index to #key.  Emit a warning
+	  when #index is called.
+	  (fdbm_indexes): Emit a deprecation warning.
+
+	* ext/gdbm/gdbm.c: Ditto.
+
+	* ext/sdbm/init.c: Ditto.
+
 Mon Nov 10 09:56:11 2008  NAKAMURA Usaku  <usa@r...>
 
 	* win32/win32.c (ifs_open_socket): should retry without proto_buffer
Index: ruby_1_8/test/sdbm/test_sdbm.rb
===================================================================
--- ruby_1_8/test/sdbm/test_sdbm.rb	(revision 20170)
+++ ruby_1_8/test/sdbm/test_sdbm.rb	(revision 20171)
@@ -198,9 +198,9 @@
     }
   end
 
-  def test_index
+  def test_key
     assert_equal('bar', @sdbm['foo'] = 'bar')
-    assert_equal('foo', @sdbm.index('bar'))
+    assert_equal('foo', @sdbm.key('bar'))
     assert_nil(@sdbm['bar'])
   end
 
@@ -283,7 +283,7 @@
 
     n = 0
     ret = @sdbm.each_value {|val|
-      assert_not_nil(key = @sdbm.index(val))
+      assert_not_nil(key = @sdbm.key(val))
       assert_not_nil(i = keys.index(key))
       assert_equal(val, values[i])
 
Index: ruby_1_8/test/dbm/test_dbm.rb
===================================================================
--- ruby_1_8/test/dbm/test_dbm.rb	(revision 20170)
+++ ruby_1_8/test/dbm/test_dbm.rb	(revision 20171)
@@ -158,19 +158,12 @@
       }
     end
 
-    def test_index
+    def test_key
       assert_equal('bar', @dbm['foo'] = 'bar')
-      assert_equal('foo', @dbm.index('bar'))
+      assert_equal('foo', @dbm.key('bar'))
       assert_nil(@dbm['bar'])
     end
 
-    def test_indexes
-      keys = %w(foo bar baz)
-      values = %w(FOO BAR BAZ)
-      @dbm[keys[0]], @dbm[keys[1]], @dbm[keys[2]] = values
-      assert_equal(values.reverse, @dbm.indexes(*keys.reverse))
-    end
-
     def test_values_at
       keys = %w(foo bar baz)
       values = %w(FOO BAR BAZ)
@@ -243,7 +236,7 @@
 
       n = 0
       ret = @dbm.each_value {|val|
-        assert_not_nil(key = @dbm.index(val))
+        assert_not_nil(key = @dbm.key(val))
         assert_not_nil(i = keys.index(key))
         assert_equal(val, values[i])
 
Index: ruby_1_8/test/gdbm/test_gdbm.rb
===================================================================
--- ruby_1_8/test/gdbm/test_gdbm.rb	(revision 20170)
+++ ruby_1_8/test/gdbm/test_gdbm.rb	(revision 20171)
@@ -275,9 +275,9 @@
       }
     end
 
-    def test_index
+    def test_key
       assert_equal('bar', @gdbm['foo'] = 'bar')
-      assert_equal('foo', @gdbm.index('bar'))
+      assert_equal('foo', @gdbm.key('bar'))
       assert_nil(@gdbm['bar'])
     end
 
@@ -353,7 +353,7 @@
 
       n = 0
       ret = @gdbm.each_value {|val|
-        assert_not_nil(key = @gdbm.index(val))
+        assert_not_nil(key = @gdbm.key(val))
         assert_not_nil(i = keys.index(key))
         assert_equal(val, values[i])
 

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

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