Class: RDoc::Markup::Document
| Relationships & Source Files | |
| Super Chains via Extension / Inclusion / Inheritance | |
| Instance Chain: 
          self,
          Enumerable
         | |
| Inherits: | Object | 
| Defined in: | lib/rdoc/markup/document.rb | 
Overview
A Document containing lists, headings, paragraphs, etc.
Class Method Summary
- 
    
      .new(*parts)  ⇒ Document 
    
    constructor
    Creates a new Documentwith #parts
Instance Attribute Summary
- 
    
      #file  
    
    rw
    The file this document was created from. 
- 
    
      #file=(location)  
    
    rw
    The file this Documentwas created from.
- 
    
      #omit_headings_below  
    
    rw
    If a heading is below the given level it will be omitted from the table_of_contents. 
- 
    
      #empty?  ⇒ Boolean 
    
    readonly
    Does this document have no parts? 
- 
    
      #merged?  ⇒ Boolean 
    
    readonly
    Does this Documentcontain other Documents?
- 
    
      #parts  
    
    readonly
    The parts of the Document.
Instance Method Summary
- 
    
      #<<(part)  
    
    Appends partto the document.
- 
    
      #accept(visitor)  
    
    Runs this document and all its #itemsthroughvisitor
- 
    
      #concat(parts)  
    
    Concatenates the given #parts onto the document. 
- 
    
      #each(&block)  
    
    Enumerator for the parts of this document. 
- 
    
      #merge(other)  
    
    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 otherwhen the file matches and adds documents fromotherwhen the files do not.
- 
    
      #push(*parts)  
    
    Appends #parts to the document. 
- 
    
      #table_of_contents  
    
    Returns an Array of headings in the document. 
Constructor Details
    .new(*parts)  ⇒ Document 
  
Creates a new Document with #parts
Instance Attribute Details
    #empty?  ⇒ Boolean  (readonly)
  
Does this document have no parts?
# File 'lib/rdoc/markup/document.rb', line 89
def empty? @parts.empty? or (@parts.length == 1 and merged? and @parts.first.empty?) end
#file (rw)
The file this document was created from. See also ClassModule#add_comment
# File 'lib/rdoc/markup/document.rb', line 12
attr_reader :file
#file=(location) (rw)
The file this Document was created from.
    #merged?  ⇒ Boolean  (readonly)
  
Does this Document contain other Documents?
#omit_headings_below (rw)
If a heading is below the given level it will be omitted from the table_of_contents
# File 'lib/rdoc/markup/document.rb', line 18
attr_accessor :omit_headings_below
#parts (readonly)
The parts of the Document
# File 'lib/rdoc/markup/document.rb', line 23
attr_reader :parts
Instance Method Details
#<<(part)
Appends part to the document
# File 'lib/rdoc/markup/document.rb', line 39
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
#accept(visitor)
Runs this document and all its #items through visitor
# File 'lib/rdoc/markup/document.rb', line 64
def accept visitor visitor.start_accepting visitor.accept_document self visitor.end_accepting end
#concat(parts)
Concatenates the given #parts onto the document
#each(&block)
Enumerator for the parts of this document
# File 'lib/rdoc/markup/document.rb', line 82
def each &block @parts.each(&block) end
#merge(other)
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
#push(*parts)
Appends #parts to the document
#table_of_contents
Returns an Array of headings in the document.
::RDoc::Require 'rdoc/markup/formatter' before calling this method.
# File 'lib/rdoc/markup/document.rb', line 159
def table_of_contents accept RDoc::Markup::ToTableOfContents.to_toc end