class JSONTransformer

Public Instance Methods

flatten(json, prefix) click to toggle source
# File lib/transform/flatten.rb, line 6
def flatten(json, prefix)
  json.keys.each do |key|
    if prefix.empty?
      full_path = key
    else
      full_path = [prefix, key].join('.')
    end

    if json[key].is_a?(Hash)
      value = json[key]
      json.delete key
      json.merge! flatten(value, full_path)
    else
      value = json[key]
      json.delete key
      json[full_path] = value
    end
  end
  return json
end
transform(json) click to toggle source
# File lib/transform/flatten.rb, line 2
def transform(json)
  return flatten(json, "")
end