Class: Hash
- Inherits:
-
Object
- Object
- Hash
- Defined in:
- lib/na/hash.rb
Direct Known Subclasses
Instance Method Summary collapse
-
#deep_freeze ⇒ Object
Freeze all values in a hash.
- #deep_freeze! ⇒ Object
- #deep_thaw ⇒ Object
- #deep_thaw! ⇒ Object
- #symbolize_keys ⇒ Object
Instance Method Details
#deep_freeze ⇒ Object
Freeze all values in a hash
13 14 15 16 17 18 19 20 |
# File 'lib/na/hash.rb', line 13 def deep_freeze chilled = {} each do |k, v| chilled[k] = v.is_a?(Hash) ? v.deep_freeze : v.freeze end chilled.freeze end |
#deep_freeze! ⇒ Object
22 23 24 |
# File 'lib/na/hash.rb', line 22 def deep_freeze! replace deep_thaw.deep_freeze end |
#deep_thaw ⇒ Object
26 27 28 29 30 31 32 33 |
# File 'lib/na/hash.rb', line 26 def deep_thaw chilled = {} each do |k, v| chilled[k] = v.is_a?(Hash) ? v.deep_thaw : v.dup end chilled.dup end |
#deep_thaw! ⇒ Object
35 36 37 |
# File 'lib/na/hash.rb', line 35 def deep_thaw! replace deep_thaw end |
#symbolize_keys ⇒ Object
4 5 6 |
# File 'lib/na/hash.rb', line 4 def symbolize_keys each_with_object({}) { |(k, v), hsh| hsh[k.to_sym] = v.is_a?(Hash) ? v.symbolize_keys : v } end |