Module: UsefulUtilities::Hash
Overview
Hash utilities
Instance Method Summary collapse
Instance Method Details
#group_by_keys(*list) ⇒ Object
15 16 17 18 19 20 21 22 |
# File 'lib/useful_utilities/hash.rb', line 15 def group_by_keys(*list) collect_keys(*list).inject({}) do |result, key| result[key] = [] list.each { |item| result[key] << item[key] if item.has_key?(key) } result end end |
#sum_values(*list) ⇒ Object
6 7 8 9 10 11 12 13 |
# File 'lib/useful_utilities/hash.rb', line 6 def sum_values(*list) collect_keys(*list).inject({}) do |result, key| result[key] = 0 list.each { |item| result[key] += item[key] if item.has_key?(key) } result end end |