module Hashie::Extensions::SymbolizeKeys
Public Instance Methods
symbolize_keys()
click to toggle source
Return a new hash with all keys converted to symbols.
# File lib/hashie/extensions/key_conversion.rb, line 61 def symbolize_keys dup.symbolize_keys! end
symbolize_keys!()
click to toggle source
Convert all keys in the hash to symbols.
@example
test = {'abc' => 'def'} test.symbolize_keys! test # => {:abc => 'def'}
# File lib/hashie/extensions/key_conversion.rb, line 51 def symbolize_keys! keys.each do |k| symbolize_keys_recursively!(self[k]) self[k.to_sym] = self.delete(k) end self end
Protected Instance Methods
symbolize_keys_recursively!(object)
click to toggle source
Symbolize all keys recursively within nested hashes and arrays.
# File lib/hashie/extensions/key_conversion.rb, line 69 def symbolize_keys_recursively!(object) if self.class === object object.symbolize_keys! elsif ::Array === object object.each do |i| symbolize_keys_recursively!(i) end object elsif object.respond_to?(:symbolize_keys!) object.symbolize_keys! else object end end