diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-11-07 22:07:05 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-11-07 22:07:05 +0000 |
commit | 474b71deafe74d62972fc6a62f484c1e8dcddbea (patch) | |
tree | 8507f1c371bc65d90da52feb0bb437e0719e0356 | |
parent | 66f96e9c6520fd3e76ef9925d3f27ec50b18cc4b (diff) | |
download | ruby-474b71deafe74d62972fc6a62f484c1e8dcddbea.tar.gz ruby-474b71deafe74d62972fc6a62f484c1e8dcddbea.tar.xz ruby-474b71deafe74d62972fc6a62f484c1e8dcddbea.zip |
* ext/dbm/dbm.c (fdbm_index): make #index warn like Hash.
* ext/dbm/dbm.c (fdbm_key): new method.
* ext/sdbm/init.c: ditto.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@20146 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | ext/dbm/dbm.c | 10 | ||||
-rw-r--r-- | ext/sdbm/init.c | 10 | ||||
-rw-r--r-- | test/dbm/test_dbm.rb | 12 |
4 files changed, 32 insertions, 8 deletions
@@ -1,3 +1,11 @@ +Sat Nov 8 06:51:42 2008 Yukihiro Matsumoto <matz@ruby-lang.org> + + * ext/dbm/dbm.c (fdbm_index): make #index warn like Hash. + + * ext/dbm/dbm.c (fdbm_key): new method. + + * ext/sdbm/init.c: ditto. + Sat Nov 8 06:20:42 2008 Yukihiro Matsumoto <matz@ruby-lang.org> * ext/curses/curses.c: curses encoding should obey locale. diff --git a/ext/dbm/dbm.c b/ext/dbm/dbm.c index 47975cffc..7a78f8dad 100644 --- a/ext/dbm/dbm.c +++ b/ext/dbm/dbm.c @@ -198,7 +198,7 @@ fdbm_fetch_m(int argc, VALUE *argv, VALUE obj) } static VALUE -fdbm_index(VALUE obj, VALUE valstr) +fdbm_key(VALUE obj, VALUE valstr) { datum key, val; struct dbmdata *dbmp; @@ -220,6 +220,13 @@ fdbm_index(VALUE obj, VALUE valstr) } static VALUE +fdbm_index(VALUE hash, VALUE value) +{ + rb_warn("DBM#index is deprecated; use DBM#key"); + return fdbm_key(hash, value); +} + +static VALUE fdbm_select(VALUE obj) { VALUE new = rb_ary_new(); @@ -692,6 +699,7 @@ Init_dbm(void) 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, "select", fdbm_select, 0); rb_define_method(rb_cDBM, "values_at", fdbm_values_at, -1); rb_define_method(rb_cDBM, "length", fdbm_length, 0); diff --git a/ext/sdbm/init.c b/ext/sdbm/init.c index ecedd6318..b697ca738 100644 --- a/ext/sdbm/init.c +++ b/ext/sdbm/init.c @@ -176,7 +176,7 @@ fsdbm_fetch_m(int argc, VALUE *argv, VALUE obj) } static VALUE -fsdbm_index(VALUE obj, VALUE valstr) +fsdbm_key(VALUE obj, VALUE valstr) { datum key, val; struct dbmdata *dbmp; @@ -197,6 +197,13 @@ fsdbm_index(VALUE obj, VALUE valstr) } static VALUE +fsdbm_index(VALUE hash, VALUE value) +{ + rb_warn("SDBM#index is deprecated; use SDBM#key"); + return fsdbm_key(hash, value); +} + +static VALUE fsdbm_select(VALUE obj) { VALUE new = rb_ary_new(); @@ -671,6 +678,7 @@ Init_sdbm() 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, "select", fsdbm_select, 0); rb_define_method(rb_cDBM, "values_at", fsdbm_values_at, -1); rb_define_method(rb_cDBM, "length", fsdbm_length, 0); diff --git a/test/dbm/test_dbm.rb b/test/dbm/test_dbm.rb index 546e969e5..5cf8acb68 100644 --- a/test/dbm/test_dbm.rb +++ b/test/dbm/test_dbm.rb @@ -160,9 +160,9 @@ if defined? DBM } 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 @@ -217,7 +217,7 @@ if defined? DBM n = 0 ret = @dbm.each_pair {|key, val| - assert_not_nil(i = keys.index(key)) + assert_not_nil(i = keys.key(key)) assert_equal(val, values[i]) n += 1 @@ -238,8 +238,8 @@ if defined? DBM n = 0 ret = @dbm.each_value {|val| - assert_not_nil(key = @dbm.index(val)) - assert_not_nil(i = keys.index(key)) + assert_not_nil(key = @dbm.key(val)) + assert_not_nil(i = keys.key(key)) assert_equal(val, values[i]) n += 1 @@ -260,7 +260,7 @@ if defined? DBM n = 0 ret = @dbm.each_key {|key| - assert_not_nil(i = keys.index(key)) + assert_not_nil(i = keys.key(key)) assert_equal(@dbm[key], values[i]) n += 1 |