Class: Hash
- Inherits:
-
Object
- Object
- Hash
- Defined in:
- lib/sapience/core_ext/hash.rb
Instance Method Summary collapse
- #_deep_transform_keyz_in_object!(object, &block) ⇒ Object (also: #_deep_transform_keys_in_object!)
-
#deep_symbolize_keyz! ⇒ Object
(also: #deep_symbolize_keys!)
Returns a Hash with all keys symbolized.
- #deep_transform_keyz!(&block) ⇒ Object (also: #deep_transform_keys!)
Instance Method Details
#_deep_transform_keyz_in_object!(object, &block) ⇒ Object Also known as: _deep_transform_keys_in_object!
14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/sapience/core_ext/hash.rb', line 14 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 |
#deep_symbolize_keyz! ⇒ Object Also known as: deep_symbolize_keys!
Returns a Hash with all keys symbolized
4 5 6 |
# File 'lib/sapience/core_ext/hash.rb', line 4 def deep_symbolize_keyz! deep_transform_keyz! { |key| key.to_sym rescue key } # rubocop:disable RescueModifier end |
#deep_transform_keyz!(&block) ⇒ Object Also known as: deep_transform_keys!
9 10 11 |
# File 'lib/sapience/core_ext/hash.rb', line 9 def deep_transform_keyz!(&block) _deep_transform_keyz_in_object!(self, &block) end |