Method: Hash#delete_values
- Defined in:
- lib/core/facets/hash/delete_values.rb
permalink #delete_values(*values) ⇒ Object
Minor modification to Ruby’s Hash#delete method allowing it to take multiple keys.
hsh = { :a => 1, :b => 2 }
hsh.delete_values(1)
hsh #=> { :b => 2 }
Returns a list of keys of the deleted entries.
CREDIT: Daniel Schierbeck
14 15 16 17 18 19 20 21 22 23 |
# File 'lib/core/facets/hash/delete_values.rb', line 14 def delete_values(*values) deleted_keys = [] keys.each do |key| if values.include?(fetch(key)) deleted_keys << key delete(key) end end deleted_keys end |