From 73bd9e566b081941e9e7f158cbf4f5fd1c2461a8 Mon Sep 17 00:00:00 2001 From: ayumin Date: Sun, 25 Sep 2011 12:05:02 +0000 Subject: * lib/yaml/dbm/dbm.rb: fix #update, add #key for using istead #index. [Bug #5305][ruby-dev:44485] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33329 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ lib/yaml/dbm.rb | 14 ++++++++++++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index aeabc95b76..eb6f353f73 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Sun Sep 25 20:54:10 2011 Ayumu AIZAWA + + * lib/yaml/dbm/dbm.rb: fix #update, add #key for using istead #index. + [Bug #5305][ruby-dev:44485] + Sun Sep 25 16:54:33 2011 Nobuyoshi Nakada * encoding.c (require_enc): reject only loading from untrusted diff --git a/lib/yaml/dbm.rb b/lib/yaml/dbm.rb index 07441f53ad..976fdb3bb6 100644 --- a/lib/yaml/dbm.rb +++ b/lib/yaml/dbm.rb @@ -57,10 +57,20 @@ class DBM < ::DBM end # Deprecated, used YAML::DBM#key instead. + # ---- + # Note: + # YAML::DBM#index makes warning from internal of ::DBM#index. + # It says 'DBM#index is deprecated; use DBM#key', but DBM#key + # behaves not same as DBM#index. + # def index( keystr ) super( keystr.to_yaml ) end + def key( keystr ) + invert[keystr] + end + # Returns an array containing the values associated with the given keys. def values_at( *keys ) keys.collect { |k| fetch( k ) } @@ -185,8 +195,8 @@ class DBM < ::DBM # # Returns +self+. def update( hsh ) - hsh.keys.each do |k| - self.store( k, hsh.fetch( k ) ) + hsh.each_pair do |k,v| + self.store( k, v ) end self end -- cgit v1.2.3