Method: Circuitry::Middleware::Chain#invoke
- Defined in:
- lib/circuitry/middleware/chain.rb
#invoke(*args) ⇒ Object
58 59 60 61 62 63 64 65 66 67 68 69 70 |
# File 'lib/circuitry/middleware/chain.rb', line 58 def invoke(*args) chain = build.dup traverse_chain = lambda do if chain.empty? yield else chain.shift.call(*args, &traverse_chain) end end traverse_chain.call end |