Module: Separa::Obj

Defined in:
lib/Separa/obj.rb

Class Method Summary collapse

Class Method Details

.call(text, opts) ⇒ Object



4
5
6
7
8
# File 'lib/Separa/obj.rb', line 4

def self.call(text, opts)
  divider = opts[:divider] || ':'
  res = wonderflat(text)
  res.map{|k, v| "#{k.to_s}#{divider}#{v.to_s}"}
end

.wonderflat(hash, k = []) ⇒ Object



10
11
12
13
# File 'lib/Separa/obj.rb', line 10

def self.wonderflat(hash, k = [])
  return {k.join('.') => hash} unless hash.is_a?(Hash)
  hash.inject({}){ |h, v| h.merge! self.wonderflat(v[-1], k + [v[0]]) }
end