Class: Hash

Inherits:
Object
  • Object
show all
Defined in:
lib/rsmp/helpers/deep_merge.rb

Overview

Extensions to Hash providing a ‘deep_merge` helper.

Instance Method Summary collapse

Instance Method Details

#deep_merge(other_hash) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
# File 'lib/rsmp/helpers/deep_merge.rb', line 3

def deep_merge(other_hash)
  return self unless other_hash

  merge(other_hash) do |_key, old, fresh|
    if old.is_a?(Hash) && fresh.is_a?(Hash)
      old.deep_merge(fresh)
    else
      fresh
    end
  end
end