Class: Reins::MiddlewareStack
- Inherits:
-
Object
- Object
- Reins::MiddlewareStack
- Includes:
- Enumerable
- Defined in:
- lib/reins/middleware_stack.rb
Instance Method Summary collapse
- #delete(klass) ⇒ Object
- #each ⇒ Object
- #include?(klass) ⇒ Boolean
-
#initialize ⇒ MiddlewareStack
constructor
A new instance of MiddlewareStack.
- #insert_after(target, klass, *args, &block) ⇒ Object
- #insert_before(target, klass, *args, &block) ⇒ Object
- #to_a ⇒ Object
- #use(klass, *args, &block) ⇒ Object
Constructor Details
#initialize ⇒ MiddlewareStack
Returns a new instance of MiddlewareStack.
5 6 7 |
# File 'lib/reins/middleware_stack.rb', line 5 def initialize @entries = [] end |
Instance Method Details
#delete(klass) ⇒ Object
26 27 28 29 |
# File 'lib/reins/middleware_stack.rb', line 26 def delete(klass) @entries.reject! { |entry| entry[0] == klass } self end |
#each ⇒ Object
31 |
# File 'lib/reins/middleware_stack.rb', line 31 def each(&) = @entries.each(&) |
#include?(klass) ⇒ Boolean
35 36 37 |
# File 'lib/reins/middleware_stack.rb', line 35 def include?(klass) @entries.any? { |entry| entry[0] == klass } end |
#insert_after(target, klass, *args, &block) ⇒ Object
20 21 22 23 24 |
# File 'lib/reins/middleware_stack.rb', line 20 def insert_after(target, klass, *args, &block) idx = index_of(target) @entries.insert(idx + 1, [klass, args, block]) self end |
#insert_before(target, klass, *args, &block) ⇒ Object
14 15 16 17 18 |
# File 'lib/reins/middleware_stack.rb', line 14 def insert_before(target, klass, *args, &block) idx = index_of(target) @entries.insert(idx, [klass, args, block]) self end |
#to_a ⇒ Object
33 |
# File 'lib/reins/middleware_stack.rb', line 33 def to_a = @entries.dup |
#use(klass, *args, &block) ⇒ Object
9 10 11 12 |
# File 'lib/reins/middleware_stack.rb', line 9 def use(klass, *args, &block) @entries << [klass, args, block] self end |