class DeepCount::Adapter
Attributes
input[R]
output[R]
Public Class Methods
new(input)
click to toggle source
# File lib/deep_count/adapter.rb, line 5 def initialize(input) @input = input @output = {} end
Public Instance Methods
add_to(object, array, value)
click to toggle source
# File lib/deep_count/adapter.rb, line 23 def add_to(object, array, value) key = array.shift if array.any? add_to object[key] ||= {}, array, value else object[key] = value end end
call()
click to toggle source
# File lib/deep_count/adapter.rb, line 10 def call if input.is_a?(Hash) && input.keys.first.is_a?(Array) prepare_output output else input end end
prepare_output()
click to toggle source
# File lib/deep_count/adapter.rb, line 19 def prepare_output input.each { |arr, value| add_to output, arr, value } end