Sha256: 7b579321fdee92e388d3f9fbde3dd145b0b22bbcf72ef29ed20af6273e99ed04
Contents?: true
Size: 276 Bytes
Versions: 11
Compression:
Stored size: 276 Bytes
Contents
class ::Hash def deep_merge(second) merger = proc do |key, v1, v2| Hash === v1 && Hash === v2 ? v1.merge(v2, &merger) : Array === v1 && Array === v2 ? v1 | v2 : [:undefined, nil, :nil].include?(v2) ? v1 : v2 end self.merge(second.to_h, &merger) end end
Version data entries
11 entries across 11 versions & 1 rubygems