class Hash
Adds `deep_transform_keys` method to Ruby hash
Public Instance Methods
deep_transform_keys(&block)
click to toggle source
# File lib/hash.rb, line 5 def deep_transform_keys(&block) _deep_transform_keys_in_object(self, &block) end
Private Instance Methods
_deep_transform_keys_in_object(object) { |key| ... }
click to toggle source
# File lib/hash.rb, line 11 def _deep_transform_keys_in_object(object, &block) case object when Hash object.each_with_object({}) do |(key, value), result| result[yield(key)] = _deep_transform_keys_in_object(value, &block) end when Array object.map { |e| _deep_transform_keys_in_object(e, &block) } else object end end