Class: Kruskal::JsonIO

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/kruskal/json_io.rb

Instance Method Summary collapse

Constructor Details

#initialize(an_io) ⇒ JsonIO

Returns a new instance of JsonIO.



7
8
9
10
# File 'lib/kruskal/json_io.rb', line 7

def initialize(an_io)
  @origin = an_io
  @first = true
end

Instance Method Details

#<<(object) ⇒ Object



18
19
20
21
22
23
24
25
26
# File 'lib/kruskal/json_io.rb', line 18

def <<(object)
  a_string = if @first
               @first = false
               JSON.generate(object)
             else
               "\n#{JSON.generate(object)}"
             end
  @origin << a_string
end

#eachObject



12
13
14
15
16
# File 'lib/kruskal/json_io.rb', line 12

def each
  @origin.each_line do |it|
    yield JSON.parse(it)
  end
end