Class: DTC::Utils::Visitor::Forwarder
- Inherits:
-
Object
- Object
- DTC::Utils::Visitor::Forwarder
- Defined in:
- lib/dtc/utils/visitor.rb
Overview
Forward visitor events to current value of ‘next_visitor`. Defaults to returning `true` for all `enter()`
Direct Known Subclasses
Instance Attribute Summary collapse
-
#next_visitor ⇒ Object
Returns the value of attribute next_visitor.
Instance Method Summary collapse
- #add(*args) ⇒ Object
- #enter(*args) ⇒ Object
-
#initialize(next_visitor = nil) ⇒ Forwarder
constructor
A new instance of Forwarder.
- #leave ⇒ Object
Constructor Details
#initialize(next_visitor = nil) ⇒ Forwarder
Returns a new instance of Forwarder.
17 18 19 |
# File 'lib/dtc/utils/visitor.rb', line 17 def initialize next_visitor = nil self.next_visitor = next_visitor if next_visitor end |
Instance Attribute Details
#next_visitor ⇒ Object
Returns the value of attribute next_visitor.
16 17 18 |
# File 'lib/dtc/utils/visitor.rb', line 16 def next_visitor @next_visitor end |
Instance Method Details
#add(*args) ⇒ Object
23 24 25 |
# File 'lib/dtc/utils/visitor.rb', line 23 def add *args next_visitor.add(*args) if next_visitor end |
#enter(*args) ⇒ Object
20 21 22 |
# File 'lib/dtc/utils/visitor.rb', line 20 def enter *args next_visitor ? next_visitor.enter(*args) : true end |
#leave ⇒ Object
26 27 28 |
# File 'lib/dtc/utils/visitor.rb', line 26 def leave next_visitor.leave if next_visitor end |