Sha256: 4627e4dc8af78386381d5451d8a4de0cd3ec4d5ddb452f1f48fe6864e9b3c3b0
Contents?: true
Size: 918 Bytes
Versions: 4
Compression:
Stored size: 918 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| # rubocop: disable Performance/HashEachMethods 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
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
anyway_config-1.1.3 | lib/anyway/ext/hash.rb |
anyway_config-1.1.2 | lib/anyway/ext/hash.rb |
anyway_config-1.1.1 | lib/anyway/ext/hash.rb |
anyway_config-1.1.0 | lib/anyway/ext/hash.rb |