Module: Nebulous::Input::Reader

Included in:
Parser
Defined in:
lib/nebulous/input/reader.rb

Instance Method Summary collapse

Instance Method Details

#encodingObject



24
25
26
# File 'lib/nebulous/input/reader.rb', line 24

def encoding
  options.encoding
end

#line_terminatorObject



20
21
22
# File 'lib/nebulous/input/reader.rb', line 20

def line_terminator
  options.row_sep
end

#read_complete_lineObject



8
9
10
11
12
13
14
# File 'lib/nebulous/input/reader.rb', line 8

def read_complete_line
  ln = readline
  while ln.count(options.quote_char) % 2 == 1
    ln += readline
  end
  ln
end

#read_input(input) ⇒ Object



4
5
6
# File 'lib/nebulous/input/reader.rb', line 4

def read_input(input)
  input.respond_to?(:readline) ? input : File.open(input, "r:#{encoding}")
end

#readlineObject



16
17
18
# File 'lib/nebulous/input/reader.rb', line 16

def readline
  file.readline(line_terminator).encode(encoding, invalid: :replace).chomp
end