Sha256: 86a1fdd1c2be66adc9023ea2c8e39747fb7370f8c16557f65405f4055c88a7c6
Contents?: true
Size: 458 Bytes
Versions: 2
Compression:
Stored size: 458 Bytes
Contents
require 'set' class Hash unless instance_methods.include?(:dig) def dig(key, *keys) value = self[key] if !value.nil? && !keys.empty? value.dig(*keys) else value end end end def to_struct OpenStruct.new self end def amend(other) other.merge(self) end def diff(other) s1 = Set.new(self) s2 = Set.new(other) { deletions: (s1 - s2).to_h, additions: (s2 - s1).to_h } end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
mumukit-core-1.8.0 | lib/mumukit/core/hash.rb |
mumukit-core-1.7.0 | lib/mumukit/core/hash.rb |