# File lib/asciidoctor/reader.rb, line 243
  def peek_lines(number = 1)
    lines = []
    idx = 0
    (1..number).each do
      if @preprocess_source && !@next_line_preprocessed
        advanced = preprocess_next_line
        break if advanced.nil? || @eof || (@eof = @lines.empty?)
        idx = 0 if advanced
      end
      break if idx >= @lines.size
      # QUESTION do we need to dup?
      lines << @lines[idx].dup
      idx += 1
    end
    lines
  end