Class: RDoc::Markup::List
- Inherits:
-
Object
- Object
- RDoc::Markup::List
- Defined in:
- lib/rdoc/markup/list.rb
Overview
A List of ListItems
Instance Attribute Summary collapse
-
#items ⇒ Object
readonly
Items in the list.
-
#type ⇒ Object
The list's type.
Instance Method Summary collapse
-
#<<(item) ⇒ Object
Appends
item
to the list. -
#==(other) ⇒ Object
:nodoc:.
-
#accept(visitor) ⇒ Object
Runs this list and all its #items through
visitor
. -
#empty? ⇒ Boolean
Is the list empty?.
-
#initialize(type = nil, *items) ⇒ List
constructor
Creates a new list of
type
withitems
. -
#last ⇒ Object
Returns the last item in the list.
-
#pretty_print(q) ⇒ Object
:nodoc:.
-
#push(*items) ⇒ Object
Appends
items
to the list.
Constructor Details
#initialize(type = nil, *items) ⇒ List
Creates a new list of type
with items
19 20 21 22 23 |
# File 'lib/rdoc/markup/list.rb', line 19 def initialize type = nil, *items @type = type @items = [] @items.push(*items) end |
Instance Attribute Details
#items ⇒ Object (readonly)
Items in the list
14 15 16 |
# File 'lib/rdoc/markup/list.rb', line 14 def items @items end |
#type ⇒ Object
The list's type
9 10 11 |
# File 'lib/rdoc/markup/list.rb', line 9 def type @type end |
Instance Method Details
#<<(item) ⇒ Object
Appends item
to the list
28 29 30 |
# File 'lib/rdoc/markup/list.rb', line 28 def << item @items << item end |
#==(other) ⇒ Object
:nodoc:
32 33 34 35 36 |
# File 'lib/rdoc/markup/list.rb', line 32 def == other # :nodoc: self.class == other.class and @type == other.type and @items == other.items end |
#accept(visitor) ⇒ Object
Runs this list and all its #items through visitor
41 42 43 44 45 46 47 48 49 |
# File 'lib/rdoc/markup/list.rb', line 41 def accept visitor visitor.accept_list_start self @items.each do |item| item.accept visitor end visitor.accept_list_end self end |
#empty? ⇒ Boolean
Is the list empty?
54 55 56 |
# File 'lib/rdoc/markup/list.rb', line 54 def empty? @items.empty? end |
#last ⇒ Object
Returns the last item in the list
61 62 63 |
# File 'lib/rdoc/markup/list.rb', line 61 def last @items.last end |
#pretty_print(q) ⇒ Object
:nodoc:
65 66 67 68 69 70 71 |
# File 'lib/rdoc/markup/list.rb', line 65 def pretty_print q # :nodoc: q.group 2, "[list: #{@type} ", ']' do q.seplist @items do |item| q.pp item end end end |
#push(*items) ⇒ Object
Appends items
to the list
76 77 78 |
# File 'lib/rdoc/markup/list.rb', line 76 def push *items @items.push(*items) end |