Class: IOSegmenter::Writer

Inherits:
Object
  • Object
show all
Defined in:
lib/io-segmenter/writer.rb

Overview

Used to add a separator after the first write call

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(io, separator) ⇒ Writer

Returns a new instance of Writer.



12
13
14
15
16
# File 'lib/io-segmenter/writer.rb', line 12

def initialize(io, separator)
  @io = io
  @separator = separator
  @add_separator = false
end

Class Method Details

.write(io, header, footer, separator) {|new(io, separator)| ... } ⇒ Object

Yields:

  • (new(io, separator))


6
7
8
9
10
# File 'lib/io-segmenter/writer.rb', line 6

def self.write(io, header, footer, separator)
  io.write(header) if header
  yield new(io, separator)
  io.write(footer) if footer
end

Instance Method Details

#write(str) ⇒ Object



18
19
20
21
22
# File 'lib/io-segmenter/writer.rb', line 18

def write(str)
  @io.write(@separator) if @separator && @add_separator
  @io.write(str)
  @add_separator = true
end