Class: RDoc::Markup::ListItem
| Relationships & Source Files | |
| Inherits: | Object | 
| Defined in: | lib/rdoc/markup/list_item.rb | 
Overview
An item within a List that contains paragraphs, headings, etc.
For BULLET, NUMBER, LALPHA and UALPHA lists, the label will always be nil. For NOTE and LABEL lists, the list label may contain:
- 
a single String for a single label 
- 
an Array of Strings for a list item with multiple terms 
- 
nil for an extra description attached to a previously labeled list item 
Class Method Summary
- .new(label = nil, *parts) ⇒ ListItem constructor
Instance Attribute Summary
- 
    
      #empty?  ⇒ Boolean 
    
    readonly
    Is the ListItemempty?
- 
    
      #label  
    
    rw
    The label for the ListItem.
- 
    
      #parts  
    
    readonly
    Parts of the ListItem.
Instance Method Summary
- 
    
      #<<(part)  
    
    Appends partto theListItem.
- 
    
      #accept(visitor)  
    
    Runs this list item and all its #parts through visitor
- 
    
      #length  
    
    Length of parts in the ListItem.
- 
    
      #push(*parts)  
    
    Adds #parts to the ListItem.
- #==(other) Internal use only
- #pretty_print(q) Internal use only
Constructor Details
    .new(label = nil, *parts)  ⇒ ListItem 
  
  [ GitHub ]
Instance Attribute Details
    #empty?  ⇒ Boolean  (readonly)
  
Is the ListItem empty?
# File 'lib/rdoc/markup/list_item.rb', line 62
def empty? @parts.empty? end
#label (rw)
The label for the ListItem
# File 'lib/rdoc/markup/list_item.rb', line 17
attr_accessor :label
#parts (readonly)
Parts of the ListItem
# File 'lib/rdoc/markup/list_item.rb', line 22
attr_reader :parts
Instance Method Details
#<<(part)
Appends part to the ListItem
# File 'lib/rdoc/markup/list_item.rb', line 36
def <<(part) @parts << part end
#==(other)
#accept(visitor)
Runs this list item and all its #parts through visitor
# File 'lib/rdoc/markup/list_item.rb', line 49
def accept(visitor) visitor.accept_list_item_start self @parts.each do |part| part.accept visitor end visitor.accept_list_item_end self end
#length
Length of parts in the ListItem
# File 'lib/rdoc/markup/list_item.rb', line 69
def length @parts.length end
#pretty_print(q)
# File 'lib/rdoc/markup/list_item.rb', line 73
def pretty_print(q) # :nodoc: q.group 2, '[item: ', ']' do case @label when Array then q.pp @label q.text ';' q.breakable when String then q.pp @label q.text ';' q.breakable end q.seplist @parts do |part| q.pp part end end end
#push(*parts)
Adds #parts to the ListItem