module Symbolizer
Constants
- VERSION
Public Class Methods
symbolize(hash)
click to toggle source
Symbolize hash keys
@example
Symbolizer.symbolize('a' => 'b') # => {a: 'b'} Symbolizer.symbolize('a' => {'b' => 'c'}) # => {a: {b: 'c'}} # See specs for more examples
@param [Hash] hash
@return [Hash]
hash with symbolized keys
@api public
# File lib/symbolizer.rb, line 17 def self.symbolize(hash) hash.each_with_object({}) do |(key, value), normalized_hash| normalized_hash[key.to_sym] = normalize_value(value) end end
Private Class Methods
normalize_value(value)
click to toggle source
# File lib/symbolizer.rb, line 23 def self.normalize_value(value) case value when Hash then symbolize(value) when Array then value.map(&method(:normalize_value)) else value end end