Module: HashExtensions
- Defined in:
- lib/hash_extensions.rb
Instance Method Summary collapse
Instance Method Details
#deep_merge(hash_to_merge) ⇒ Object
12 13 14 15 |
# File 'lib/hash_extensions.rb', line 12 def deep_merge(hash_to_merge) merger = proc { |_, val_1, val_2| val_1.is_a?(Hash) && val_2.is_a?(Hash) ? val_1.merge(val_2, &merger) : val_2 } merge(hash_to_merge, &merger) end |
#to_nested ⇒ Object
4 5 6 7 8 9 10 |
# File 'lib/hash_extensions.rb', line 4 def to_nested self unless contains_dotted_key? keys.reduce({}) do |nested, key| nested.deep_merge(build_nested_object(key, self[key])) end end |