class Hash
Public Instance Methods
deep_transform_keys(&block)
click to toggle source
# File lib/extensions.rb, line 36 def deep_transform_keys(&block) _deep_transform_keys_in_object(self, &block) end
symbolize_keys()
click to toggle source
# File lib/extensions.rb, line 20 def symbolize_keys transform_keys { |key| key.to_sym rescue key } end
to_query(namespace = nil)
click to toggle source
# File lib/extensions.rb, line 24 def to_query(namespace = nil) query = collect do |key, value| unless (value.is_a?(Hash) || value.is_a?(Array)) && value.empty? value.to_query(namespace ? "#{namespace}[#{key}]" : key) end end.compact query.sort! unless namespace.to_s.include?("[]") query.join("&") end
Also aliased as: to_param
Private Instance Methods
_deep_transform_keys_in_object(object) { |key| ... }
click to toggle source
# File lib/extensions.rb, line 42 def _deep_transform_keys_in_object(object, &block) case object when Hash object.each_with_object({}) do |(key, value), result| result[yield(key)] = _deep_transform_keys_in_object(value, &block) end when Array object.map { |e| _deep_transform_keys_in_object(e, &block) } else object end end