In: |
yaml/dbm.rb
|
Parent: | ::DBM |
VERSION | = | "0.1" |
# File yaml/dbm.rb, line 35 def delete( key ) v = super( key ) if String === v v = YAML::load( v ) end v end
# File yaml/dbm.rb, line 42 def delete_if del_keys = keys.dup del_keys.delete_if { |k| yield( k, fetch( k ) ) == false } del_keys.each { |k| delete( k ) } self end
# File yaml/dbm.rb, line 17 def fetch( keystr, ifnone = nil ) begin val = super( keystr ) return YAML::load( val ) if String === val rescue IndexError end if block_given? yield keystr else ifnone end end
# File yaml/dbm.rb, line 63 def has_value?( val ) each_value { |v| return true if v == val } return false end
# File yaml/dbm.rb, line 81 def select( *keys ) if block_given? self.keys.collect { |k| v = self[k]; [k, v] if yield k, v }.compact else values_at( *keys ) end end
# File yaml/dbm.rb, line 92 def update( hsh ) hsh.keys.each do |k| self.store( k, hsh.fetch( k ) ) end self end