ruby-changes:8613
From: matz <ko1@a...>
Date: Sat, 8 Nov 2008 12:16:55 +0900 (JST)
Subject: [ruby-changes:8613] Ruby:r20148 (trunk): * ext/gdbm/gdbm.c (fgdbm_index): make #index warn like Hash.
matz 2008-11-08 12:15:28 +0900 (Sat, 08 Nov 2008) New Revision: 20148 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=20148 Log: * ext/gdbm/gdbm.c (fgdbm_index): make #index warn like Hash. [ruby-dev:37039] * ext/sdbm/init.c (Init_sdbm): typo fixed. [ruby-dev:37039] Modified files: trunk/ChangeLog trunk/ext/gdbm/gdbm.c trunk/ext/sdbm/init.c trunk/test/dbm/test_dbm.rb trunk/test/gdbm/test_gdbm.rb Index: ChangeLog =================================================================== --- ChangeLog (revision 20147) +++ ChangeLog (revision 20148) @@ -1,3 +1,10 @@ +Sat Nov 8 12:10:15 2008 Yukihiro Matsumoto <matz@r...> + + * ext/gdbm/gdbm.c (fgdbm_index): make #index warn like Hash. + [ruby-dev:37039] + + * ext/sdbm/init.c (Init_sdbm): typo fixed. [ruby-dev:37039] + Sat Nov 8 07:07:48 2008 Yukihiro Matsumoto <matz@r...> * configure.in: detect stdio buffer pointers for uClibc. a patch Index: ext/sdbm/init.c =================================================================== --- ext/sdbm/init.c (revision 20147) +++ ext/sdbm/init.c (revision 20148) @@ -678,7 +678,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, "index", fsdbm_key, 1); + rb_define_method(rb_cDBM, "key", fsdbm_key, 1); rb_define_method(rb_cDBM, "select", fsdbm_select, 0); rb_define_method(rb_cDBM, "values_at", fsdbm_values_at, -1); rb_define_method(rb_cDBM, "length", fsdbm_length, 0); Index: ext/gdbm/gdbm.c =================================================================== --- ext/gdbm/gdbm.c (revision 20147) +++ ext/gdbm/gdbm.c (revision 20148) @@ -396,13 +396,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(VALUE obj, VALUE valstr) +fgdbm_key(VALUE obj, VALUE valstr) { struct dbmdata *dbmp; GDBM_FILE dbm; @@ -424,6 +424,14 @@ return Qnil; } +/* :nodoc: */ +static VALUE +fgdbm_index(VALUE obj, VALUE value) +{ + rb_warn("GDBM#index is deprecated; use GDBM#key"); + return fgdbm_key(obj, value); +} + /* * call-seq: * gdbm.select { |value| block } -> array @@ -1180,6 +1188,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, "select", fgdbm_select, 0); rb_define_method(rb_cGDBM, "values_at", fgdbm_values_at, -1); rb_define_method(rb_cGDBM, "length", fgdbm_length, 0); Index: test/dbm/test_dbm.rb =================================================================== --- test/dbm/test_dbm.rb (revision 20147) +++ test/dbm/test_dbm.rb (revision 20148) @@ -217,7 +217,7 @@ n = 0 ret = @dbm.each_pair {|key, val| - assert_not_nil(i = keys.key(key)) + assert_not_nil(i = keys.index(key)) assert_equal(val, values[i]) n += 1 @@ -239,7 +239,7 @@ n = 0 ret = @dbm.each_value {|val| assert_not_nil(key = @dbm.key(val)) - assert_not_nil(i = keys.key(key)) + assert_not_nil(i = keys.index(key)) assert_equal(val, values[i]) n += 1 @@ -260,7 +260,7 @@ n = 0 ret = @dbm.each_key {|key| - assert_not_nil(i = keys.key(key)) + assert_not_nil(i = keys.index(key)) assert_equal(@dbm[key], values[i]) n += 1 Index: test/gdbm/test_gdbm.rb =================================================================== --- test/gdbm/test_gdbm.rb (revision 20147) +++ test/gdbm/test_gdbm.rb (revision 20148) @@ -276,9 +276,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 @@ -354,7 +354,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/