Sha256: eba9666c28cf68d943170a00109a0e10e0688f336bd960499a1519a58f014411
Contents?: true
Size: 630 Bytes
Versions: 10
Compression:
Stored size: 630 Bytes
Contents
class Hash # Same as Hash#merge but recursively merges sub-hashes. def deep_merge(other) hash = self.dup other.each do |key, value| myval = self[key] if value.is_a?(Hash) && myval.is_a?(Hash) hash[key] = myval.deep_merge(value) else hash[key] = value end end hash end # Same as Hash#merge! but recursively merges sub-hashes. def deep_merge!(other) other.each do |key, value| myval = self[key] if value.is_a?(Hash) && myval.is_a?(Hash) myval.deep_merge!(value) else self[key] = value end end self end end
Version data entries
10 entries across 9 versions & 2 rubygems