Class: Droonga::LineBuffer
- Inherits:
-
Object
- Object
- Droonga::LineBuffer
- Defined in:
- lib/droonga/line_buffer.rb
Instance Method Summary collapse
- #feed(data) ⇒ Object
-
#initialize ⇒ LineBuffer
constructor
A new instance of LineBuffer.
Constructor Details
#initialize ⇒ LineBuffer
Returns a new instance of LineBuffer.
18 19 20 |
# File 'lib/droonga/line_buffer.rb', line 18 def initialize @buffer = "" end |
Instance Method Details
#feed(data) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/droonga/line_buffer.rb', line 22 def feed(data) position = 0 loop do new_line_position = data.index("\n", position) if new_line_position.nil? @buffer << data[position..-1] break end line = data[position..new_line_position] if position.zero? yield(@buffer + line) @buffer.clear else yield(line) end position = new_line_position + 1 end end |