Module: HashRecursiveMerge

Included in:
Hash
Defined in:
lib/hash_recursive.rb

Instance Method Summary collapse

Instance Method Details

#rmerge(other_hash) ⇒ Object



8
9
10
11
12
13
# File 'lib/hash_recursive.rb', line 8

def rmerge(other_hash)
  r = {}
  merge(other_hash)  do |key, oldval, newval|
    r[key] = oldval.class == self.class ? oldval.rmerge(newval) : newval
  end
end

#rmerge!(other_hash) ⇒ Object



2
3
4
5
6
# File 'lib/hash_recursive.rb', line 2

def rmerge!(other_hash)
  merge!(other_hash) do |key, oldval, newval|
      oldval.class == self.class ? oldval.rmerge!(newval) : newval
  end
end