Sha256: 17365ced99cb60859cb713332adb292706c5e0534ddd44e0008c69f5e630460c
Contents?: true
Size: 871 Bytes
Versions: 3
Compression:
Stored size: 871 Bytes
Contents
# frozen_string_literal: true module Anyway module Ext # Extend Hash through refinements module Hash refine ::Hash do # From ActiveSupport http://api.rubyonrails.org/classes/Hash.html#method-i-deep_merge def deep_merge!(other_hash) other_hash.each_pair do |current_key, other_value| this_value = self[current_key] if this_value.is_a?(::Hash) && other_value.is_a?(::Hash) this_value.deep_merge!(other_value) this_value else self[current_key] = other_value end end self end def stringify_keys! keys.each do |key| value = delete(key) value.stringify_keys! if value.is_a?(::Hash) self[key.to_s] = value end end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
anyway_config-1.0.0 | lib/anyway/ext/hash.rb |
anyway_config-1.0.0.rc1 | lib/anyway/ext/hash.rb |
anyway_config-0.5.1.rc1 | lib/anyway/ext/hash.rb |