module Grape::Extensions::DeepSymbolizeHash
Public Class Methods
deep_symbolize_keys_in(object)
click to toggle source
# File lib/grape/extensions/deep_symbolize_hash.rb, line 6 def self.deep_symbolize_keys_in(object) case object when ::Hash object.each_with_object({}) do |(key, value), new_hash| new_hash[symbolize_key(key)] = deep_symbolize_keys_in(value) end when ::Array object.map { |element| deep_symbolize_keys_in(element) } else object end end
symbolize_key(key)
click to toggle source
# File lib/grape/extensions/deep_symbolize_hash.rb, line 19 def self.symbolize_key(key) if key.is_a?(Symbol) key elsif key.is_a?(String) key.to_sym elsif key.respond_to?(:to_sym) key.to_sym else key end end