Class: Object

Inherits:
BasicObject
Defined in:
lib/i_hash.rb

Overview

Modify Object

Instance Method Summary collapse

Instance Method Details

#deep_stringify_keysObject



63
64
65
66
67
68
69
70
71
# File 'lib/i_hash.rb', line 63

def deep_stringify_keys
  return self.reduce({}) do |memo, (k, v)|
    memo.tap { |m| m[k.to_s] = v.deep_stringify_keys }
  end if self.is_a? Hash
  return self.reduce([]) do |memo, v| 
    memo << v.deep_stringify_keys; memo
  end if self.is_a? Array
  self
end

#deep_symbolize_keysObject



53
54
55
56
57
58
59
60
61
# File 'lib/i_hash.rb', line 53

def deep_symbolize_keys
  return self.reduce({}) do |memo, (k, v)|
    memo.tap { |m| m[k.to_sym] = v.deep_symbolize_keys }
  end if self.is_a? Hash
  return self.reduce([]) do |memo, v| 
    memo << v.deep_symbolize_keys; memo
  end if self.is_a? Array
  self
end