class Faraday::Request::Multipart

def process_params(params, prefix = nil, pieces = nil, &block)

Parameters:
  • pieces (Array) --
  • prefix (String) --
  • params (Hash) --
def process_params(params, prefix = nil, pieces = nil, &block)
  params.inject(pieces || []) do |all, (key, value)|
    if prefix
      key = @options[:flat_encode] ? prefix.to_s : "#{prefix}[#{key}]"
    end
    case value
    when Array
      values = value.inject([]) { |a, v| a << [nil, v] }
      process_params(values, key, all, &block)
    when Hash
      process_params(value, key, all, &block)
    else
      # rubocop:disable Performance/RedundantBlockCall
      all << block.call(key, value)
      # rubocop:enable Performance/RedundantBlockCall
    end
  end
end