Class: Hash

Inherits:
Object
  • Object
show all
Defined in:
lib/extensions/hash.rb

Direct Known Subclasses

Render::DottableHash

Instance Method Summary collapse

Instance Method Details

#recursive_stringify_keys!Object



13
14
15
16
17
18
19
# File 'lib/extensions/hash.rb', line 13

def recursive_stringify_keys!
  stringify_keys!
  values.each do |value|
    value.recursive_stringify_keys! if value.respond_to?(:recursive_stringify_keys!)
  end
  self
end

#recursive_symbolize_keys!Object



28
29
30
31
32
33
34
# File 'lib/extensions/hash.rb', line 28

def recursive_symbolize_keys!
  symbolize_keys!
  values.each do |value|
    value.recursive_symbolize_keys! if value.respond_to?(:recursive_symbolize_keys!)
  end
  self
end

#stringify_keysObject



9
10
11
# File 'lib/extensions/hash.rb', line 9

def stringify_keys
  dup.stringify_keys!
end

#stringify_keys!Object



2
3
4
5
6
7
# File 'lib/extensions/hash.rb', line 2

def stringify_keys!
  keys.each do |key|
    self[key.to_s] = delete(key)
  end
  self
end

#symbolize_keysObject



36
37
38
# File 'lib/extensions/hash.rb', line 36

def symbolize_keys
  dup.symbolize_keys!
end

#symbolize_keys!Object



21
22
23
24
25
26
# File 'lib/extensions/hash.rb', line 21

def symbolize_keys!
  keys.each do |key|
    self[(key.to_sym rescue key) || key] = delete(key)
  end
  self
end