class RDoc::Markup::ListItem

frozen_string_literal: true

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:

Attributes

label[RW]

The label for the ListItem

parts[R]

Parts of the ListItem

Public Class Methods

new(label = nil, *parts) click to toggle source

Creates a new ListItem with an optional label containing parts

# File lib/rdoc/markup/list_item.rb, line 27
def initialize label = nil, *parts
  @label = label
  @parts = []
  @parts.concat parts
end

Public Instance Methods

<<(part) click to toggle source

Appends part to the ListItem

# File lib/rdoc/markup/list_item.rb, line 36
def << part
  @parts << part
end
accept(visitor) click to toggle source

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
empty?() click to toggle source

Is the ListItem empty?

# File lib/rdoc/markup/list_item.rb, line 62
def empty?
  @parts.empty?
end
length() click to toggle source

Length of parts in the ListItem

# File lib/rdoc/markup/list_item.rb, line 69
def length
  @parts.length
end
push(*parts) click to toggle source

Adds parts to the ListItem

# File lib/rdoc/markup/list_item.rb, line 95
def push *parts
  @parts.concat parts
end