class Json::Streamer::Aggregator

Public Class Methods

new() click to toggle source
# File lib/json/streamer/aggregator.rb, line 9
def initialize
  @aggregator = []
end

Public Instance Methods

get() click to toggle source
# File lib/json/streamer/aggregator.rb, line 13
def get
  @aggregator
end
key() click to toggle source
# File lib/json/streamer/aggregator.rb, line 21
def key
  @aggregator.last[:key] unless @aggregator.last.nil?
end
key=(k) click to toggle source
# File lib/json/streamer/aggregator.rb, line 25
def key=(k)
  @aggregator.last[:key] = k
end
key_for_level(level) click to toggle source
# File lib/json/streamer/aggregator.rb, line 41
def key_for_level(level)
  @aggregator[level - 1][:key] unless @aggregator[level - 1].nil?
end
level() click to toggle source
# File lib/json/streamer/aggregator.rb, line 17
def level
  @aggregator.size
end
value() click to toggle source
# File lib/json/streamer/aggregator.rb, line 29
def value
  @aggregator.last[:value]
end
value=(d) click to toggle source
# File lib/json/streamer/aggregator.rb, line 33
def value=(d)
  if array_level?
    value << d
  else
    value[key] = d
  end
end
value_for_level(level) click to toggle source
# File lib/json/streamer/aggregator.rb, line 45
def value_for_level(level)
  @aggregator[level - 1][:key] unless @aggregator[level - 1].nil?
end

Private Instance Methods

array_level?() click to toggle source
# File lib/json/streamer/aggregator.rb, line 51
def array_level?
  value.is_a?(Array)
end