class Hash

Public Instance Methods

deep_merge(hash) click to toggle source
# File lib/ebooks/core_ext.rb, line 2
def deep_merge(hash)
  target = dup

  hash.keys.each do |key|
    if hash[key].is_a?(Hash) && self[key].is_a?(Hash)
      target[key] = target[key].deep_merge(hash[key])
    end
    
    target[key] = hash[key]
  end

  target
end