Method: Hash#_deep_transform_keyz_in_object!

Defined in:
lib/sapience/core_ext/hash.rb

#_deep_transform_keyz_in_object!(object, &block) ⇒ Object Also known as: _deep_transform_keys_in_object!



13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/sapience/core_ext/hash.rb', line 13

def _deep_transform_keyz_in_object!(object, &block)
  case object
  when Hash
    object.keys.each do |key|
      value = object.delete(key)
      object[yield(key)] = _deep_transform_keyz_in_object!(value, &block)
    end
    object
  when Array
    object.map! { |e| _deep_transform_keyz_in_object!(e, &block) }
  else
    object
  end
end