Sha256: 8e4aecfb663809959ccd21a3cdd816de117f375d0bdfd00c1ef906be3fd497ac
Contents?: true
Size: 408 Bytes
Versions: 2
Compression:
Stored size: 408 Bytes
Contents
class Hash def deep_fetch(key, default = nil) keys = key.to_s.split('.') value = dig(*keys) rescue default value.nil? ? default : value # value can be false (Boolean) end end class Array def deep_fetch(index, default = nil) indexes = index.to_s.split('.').map(&:to_i) value = dig(*indexes) rescue default value.nil? ? default : value # value can be false (Boolean) end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
json_logic-0.4.4 | lib/core_ext/deep_fetch.rb |
json_logic-0.4.3 | lib/core_ext/deep_fetch.rb |