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:
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
Creates a new ListItem with an optional
label
containing parts
# File rdoc/markup/list_item.rb, line 27 def initialize label = nil, *parts @label = label @parts = [] @parts.concat parts end
Appends part
to the ListItem
# File rdoc/markup/list_item.rb, line 36 def << part @parts << part end
Runs this list item and all its parts through
visitor
# File 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
Is the ListItem empty?
# File rdoc/markup/list_item.rb, line 62 def empty? @parts.empty? end
Length of parts in the ListItem
# File rdoc/markup/list_item.rb, line 69 def length @parts.length end
Adds parts
to the ListItem
# File rdoc/markup/list_item.rb, line 95 def push *parts @parts.concat parts end