# 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