Class: RailroadDiagrams::DiagramMultiContainer
- Inherits:
-
DiagramItem
- Object
- DiagramItem
- RailroadDiagrams::DiagramMultiContainer
- Defined in:
- lib/railroad_diagrams/diagram_multi_container.rb
Direct Known Subclasses
AlternatingSequence, Choice, Diagram, HorizontalChoice, MultipleChoice, Optional, OptionalSequence, Sequence, Stack
Instance Attribute Summary
Attributes inherited from DiagramItem
#attrs, #children, #down, #height, #needs_space, #up, #width
Instance Method Summary collapse
- #format(x, y, width) ⇒ Object
-
#initialize(name, items, attrs = nil, text = nil) ⇒ DiagramMultiContainer
constructor
A new instance of DiagramMultiContainer.
- #to_str ⇒ Object
- #walk(callback) ⇒ Object
Methods inherited from DiagramItem
#add, #text_diagram, #write_svg
Constructor Details
#initialize(name, items, attrs = nil, text = nil) ⇒ DiagramMultiContainer
5 6 7 8 |
# File 'lib/railroad_diagrams/diagram_multi_container.rb', line 5 def initialize(name, items, attrs = nil, text = nil) super(name, attrs: attrs, text: text) @items = items.map { |item| wrap_string(item) } end |
Instance Method Details
#format(x, y, width) ⇒ Object
10 11 12 |
# File 'lib/railroad_diagrams/diagram_multi_container.rb', line 10 def format(x, y, width) raise NotImplementedError end |
#to_str ⇒ Object
19 20 21 |
# File 'lib/railroad_diagrams/diagram_multi_container.rb', line 19 def to_str "DiagramMultiContainer(#{@name}, #{@items}, #{@attrs}, #{@children})" end |
#walk(callback) ⇒ Object
14 15 16 17 |
# File 'lib/railroad_diagrams/diagram_multi_container.rb', line 14 def walk(callback) callback(self) @items.each { |item| item.walk(callback) } end |