0.0
No commit activity in last 3 years
No release in over 3 years
ObjectFlatten converts the hash to an array of key-value pairs.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies

Development

>= 0
>= 3.0.0
 Project Readme

ObjectFlatten

ObjectFlatten converts the hash to an array of key-value pairs.

Gem Version Build Status

Installation

Add this line to your application's Gemfile:

gem 'object_flatten'

And then execute:

$ bundle

Or install it yourself as:

$ gem install object_flatten

Usage

ObjectFlatten.flatten({"foo"=>"bar", "bar"=>"zoo"})
#=> [
#     {"foo"=>"bar"},
#     {"bar"=>"zoo"}
#   ]

ObjectFlatten.flatten({"foo"=>["bar", "zoo"]})
#=> [
#     {"foo"=>"bar"},
#     {"foo"=>"zoo"}
#   ]

ObjectFlatten.flatten({"foo"=>{"bar1"=>"zoo", "bar2"=>"baz"}})
#=> [
#     {"foo.bar1"=>"zoo"},
#     {"foo.bar2"=>"baz"}
#   ]

ObjectFlatten.flatten({"foo"=>{"bar1"=>"zoo", "bar2"=>"baz"}}, separator: '/')
#=> [
#     {"foo/bar1"=>"zoo"},
#     {"foo/bar2"=>"baz"}
#   ]

ObjectFlatten.flatten({"foo bar"=>{"zoo"=>"baz"}}, tr: [' ', '_'])
#=> [
#     {"foo_bar.zoo"=>"baz"}
#   ]

ObjectFlatten.flatten({
  "foo1"=>{"bar1"=>"zoo", "bar2"=>"baz"},
  "foo2"=>{"bar"=>["zoo", "baz"], "zoo"=>"baz"}
})
#=> [
#     {"foo1.bar1"=>"zoo"},
#     {"foo1.bar2"=>"baz"},
#     {"foo2.bar"=>"zoo"},
#     {"foo2.bar"=>"baz"},
#     {"foo2.zoo"=>"baz"}
#   ]