# File lib/asciidoctor/parser.rb, line 91
  def self.parse(reader, document, options = {})
    block_attributes = parse_document_header(reader, document)

    while reader.has_more_lines?
      new_section, block_attributes = next_section(reader, document, block_attributes)
      document << new_section if new_section
    end unless options[:header_only]

    document
  end