Class: Render::Extensions::SymbolizableHash

Inherits:
Hash
  • Object
show all
Defined in:
lib/render/extensions/symbolizable_hash.rb

Direct Known Subclasses

DottableHash

Instance Method Summary collapse

Constructor Details

#initializeSymbolizableHash

Returns a new instance of SymbolizableHash.



4
5
6
# File 'lib/render/extensions/symbolizable_hash.rb', line 4

def initialize
  super()
end

Instance Method Details

#recursively_symbolize_keys!Object



19
20
21
22
23
24
25
# File 'lib/render/extensions/symbolizable_hash.rb', line 19

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

#symbolize_keysObject



15
16
17
# File 'lib/render/extensions/symbolizable_hash.rb', line 15

def symbolize_keys
  dup.symbolize_keys!
end

#symbolize_keys!Object



8
9
10
11
12
13
# File 'lib/render/extensions/symbolizable_hash.rb', line 8

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