Module: Airrecord::QueryString::Encodings

Defined in:
lib/airrecord/query_string.rb

Constant Summary collapse

TYPES =
{
  Array => lambda { |prefix, array|
    array.each_with_index.map do |value, index|
      self[value].call("#{prefix}[#{index}]", value)
    end
  },
  Hash => lambda { |prefix, hash|
    hash.map do |key, value|
      self[value].call("#{prefix}[#{key}]", value)
    end
  },
}.freeze
DEFAULT =
lambda do |key, value|
  "#{QueryString.escape(key)}=#{QueryString.escape(value)}"
end

Class Method Summary collapse

Class Method Details

.[](value) ⇒ Object



23
24
25
# File 'lib/airrecord/query_string.rb', line 23

def self.[](value)
  TYPES.fetch(value.class, DEFAULT)
end