Module: Tins::HashSymbolizeKeysRecursive
- Defined in:
- lib/tins/hash_symbolize_keys_recursive.rb
Instance Method Summary collapse
Instance Method Details
#symbolize_keys_recursive ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/tins/hash_symbolize_keys_recursive.rb', line 3 def symbolize_keys_recursive inject(self.class.new) do |h,(k, v)| k = k.to_s k.empty? and next case v when Hash h[k.to_sym] = v.symbolize_keys_recursive when Array h[k.to_sym] = a = v.dup v.each_with_index do |x, i| Hash === x and a[i] = x.symbolize_keys_recursive end else h[k.to_sym] = v end h end end |
#symbolize_keys_recursive! ⇒ Object
22 23 24 |
# File 'lib/tins/hash_symbolize_keys_recursive.rb', line 22 def symbolize_keys_recursive! replace symbolize_keys_recursive end |