Class: Hash
- Inherits:
-
Object
- Object
- Hash
- Defined in:
- lib/buildizer/core_ext/hash.rb
Instance Method Summary collapse
- #net_status_message ⇒ Object
- #zymbolize_keys ⇒ Object
- #zymbolize_keys! ⇒ Object
- #zymbolize_keys_deep ⇒ Object
- #zymbolize_keys_deep! ⇒ Object
Instance Method Details
#net_status_message ⇒ Object
39 40 41 |
# File 'lib/buildizer/core_ext/hash.rb', line 39 def [self[:error], self[:message]].compact.join(': ') end |
#zymbolize_keys ⇒ Object
2 3 4 5 6 |
# File 'lib/buildizer/core_ext/hash.rb', line 2 def zymbolize_keys map do |key, value| [_zymbolize(key), value] end.to_h end |
#zymbolize_keys! ⇒ Object
8 9 10 11 12 13 |
# File 'lib/buildizer/core_ext/hash.rb', line 8 def zymbolize_keys! keys.each do |key| self[_zymbolize(key)] = delete(key) end self end |
#zymbolize_keys_deep ⇒ Object
15 16 17 18 19 20 21 22 23 |
# File 'lib/buildizer/core_ext/hash.rb', line 15 def zymbolize_keys_deep map do |key, value| [_zymbolize(key), if value.is_a? Hash value.zymbolize_keys_deep else value end] end.to_h end |
#zymbolize_keys_deep! ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/buildizer/core_ext/hash.rb', line 25 def zymbolize_keys_deep! queue = [self] visited = Set.new while hash = queue.shift visited.add hash hash.keys.each do |key| value = hash.delete(key) hash[_zymbolize(key)] = value queue << value if value.is_a? Hash and not visited.include? hash end end self end |