module ParamsCollector::Marshaler::DeepSymbolizeKeys
Public Instance Methods
symbolize(data)
click to toggle source
# File lib/params_collector/marshaler/deep_symbolize_keys.rb, line 23 def symbolize(data) if data.is_a?(Hash) build_symbolized_hash(data) elsif data.is_a?(Array) build_symbolized_array(data) else data end end
Private Instance Methods
build_symbolized_array(data)
click to toggle source
# File lib/params_collector/marshaler/deep_symbolize_keys.rb, line 42 def build_symbolized_array(data) data.each_with_object([]) do |v, memo| memo << symbolize(v) memo end end
build_symbolized_hash(data)
click to toggle source
# File lib/params_collector/marshaler/deep_symbolize_keys.rb, line 35 def build_symbolized_hash(data) data.each_with_object({}) do |(k, v), memo| memo[k.to_sym] = symbolize(v) memo end end