Module: Yify::Support::Utils

Included in:
Response
Defined in:
lib/yify/support/utils.rb

Instance Method Summary collapse

Instance Method Details

#symbolize_keys(request) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/yify/support/utils.rb', line 7

def symbolize_keys(request)
  if request.is_a?(Array)
    request.map { |item|  symbolize_keys(item) }
  else
    request.inject({}) do |result, (key, value)|
      new_key = key.class == String ? key.underscore.to_sym : key

      if value.is_a?(Hash)
        new_value = symbolize_keys(value)
      elsif value.is_a?(Array)
        new_value = value.map{ |item| symbolize_keys(item) }
      else
        new_value = value
      end

      result[new_key] = new_value
      result
    end
  end
end