class CSV::Parser::Scanner

Public Class Methods

new(*args) click to toggle source
Calls superclass method StringScanner::new
# File lib/csv/parser.rb, line 21
def initialize(*args)
  super
  @keeps = []
end

Public Instance Methods

each_line(row_separator) { |line| ... } click to toggle source
# File lib/csv/parser.rb, line 26
def each_line(row_separator)
  position = pos
  rest.each_line(row_separator) do |line|
    position += line.bytesize
    self.pos = position
    yield(line)
  end
end
keep_back() click to toggle source
# File lib/csv/parser.rb, line 44
def keep_back
  self.pos = @keeps.pop
end
keep_drop() click to toggle source
# File lib/csv/parser.rb, line 48
def keep_drop
  @keeps.pop
end
keep_end() click to toggle source
# File lib/csv/parser.rb, line 39
def keep_end
  start = @keeps.pop
  string[start, pos - start]
end
keep_start() click to toggle source
# File lib/csv/parser.rb, line 35
def keep_start
  @keeps.push(pos)
end