Sha256: 6e68e1d3c0a786fb26f51a84eb85d091bd6864a316023a10bf78dd5c43dbde5c

Contents?: true

Size: 469 Bytes

Versions: 2

Compression:

Stored size: 469 Bytes

Contents

class HashUtil
  def self.to_params(hash)
    params = ''
    stack = []

    hash.each do |k, v|
      if v.is_a?(Hash)
        stack << [k,v]
      else
        params << "#{k}=#{v}&"
      end
    end

    stack.each do |parent, hash|
      hash.each do |k, v|
        if v.is_a?(Hash)
          stack << ["#{parent}[#{k}]", v]
        else
          params << "#{parent}[#{k}]=#{v}&"
        end
      end
    end

    params.chop! # trailing &
    params
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
web_translate_it-2.0.0.rc3 lib/web_translate_it/util/hash_util.rb
web_translate_it-2.0.0.rc2 lib/web_translate_it/util/hash_util.rb