Support for the Ruby 2.4 series has ended. See here for reference.
Object
A Document containing lists, headings, paragraphs, etc.
If a heading is below the given level it will be omitted from the table_of_contents
Creates a new Document with parts
 
               # File rdoc/markup/document.rb, line 29
def initialize *parts
  @parts = []
  @parts.concat parts
  @file = nil
  @omit_headings_from_table_of_contents_below = nil
end
             
            Appends part to the document
 
               # File rdoc/markup/document.rb, line 40
def << part
  case part
  when RDoc::Markup::Document then
    unless part.empty? then
      parts.concat part.parts
      parts << RDoc::Markup::BlankLine.new
    end
  when String then
    raise ArgumentError,
          "expected RDoc::Markup::Document and friends, got String" unless
      part.empty?
  else
    parts << part
  end
end
             
            Runs this document and all its items through visitor
 
               # File rdoc/markup/document.rb, line 65
def accept visitor
  visitor.start_accepting
  visitor.accept_document self
  visitor.end_accepting
end
             
            Concatenates the given parts onto the document
 
               # File rdoc/markup/document.rb, line 76
def concat parts
  self.parts.concat parts
end
             
            Enumerator for the parts of this document
 
               # File rdoc/markup/document.rb, line 83
def each &block
  @parts.each(&block)
end
             
            Does this document have no parts?
 
               # File rdoc/markup/document.rb, line 90
def empty?
  @parts.empty? or (@parts.length == 1 and merged? and @parts.first.empty?)
end
             
            The file this Document was created from.
 
               # File rdoc/markup/document.rb, line 97
def file= location
  @file = case location
          when RDoc::TopLevel then
            location.relative_name
          else
            location
          end
end
             
            When this is a collection of documents (file is not set and this document contains only other documents as its direct children) merge replaces documents in this class with documents from other when the file matches and adds documents from other when the files do not.
The information in other is preferred over the receiver
 
               # File rdoc/markup/document.rb, line 114
def merge other
  if empty? then
    @parts = other.parts
    return self
  end
  other.parts.each do |other_part|
    self.parts.delete_if do |self_part|
      self_part.file and self_part.file == other_part.file
    end
    self.parts << other_part
  end
  self
end
             
            Does this Document contain other Documents?
 
               # File rdoc/markup/document.rb, line 134
def merged?
  RDoc::Markup::Document === @parts.first
end