Class: ConvenientService::Support::Middleware::StackBuilder::Entities::Builders::Custom
- Inherits:
-
Object
- Object
- ConvenientService::Support::Middleware::StackBuilder::Entities::Builders::Custom
show all
- Includes:
- AbstractMethod
- Defined in:
- lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb,
lib/convenient_service/support/middleware/stack_builder/entities/builders/custom/constants.rb,
lib/convenient_service/support/middleware/stack_builder/entities/builders/custom/exceptions.rb,
lib/convenient_service/support/middleware/stack_builder/entities/builders/custom/entities/proc_with_new.rb
Defined Under Namespace
Modules: Constants, Entities, Exceptions
Instance Attribute Summary collapse
Instance Method Summary
collapse
abstract_method
Constructor Details
#initialize(**kwargs) ⇒ void
47
48
49
50
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 47
def initialize(**kwargs)
@name = kwargs.fetch(:name) { "Stack" }
@stack = kwargs.fetch(:stack) { [] }
end
|
Instance Attribute Details
#name ⇒ Object
Returns the value of attribute name.
31
32
33
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 31
def name
@name
end
|
#stack ⇒ Object
Returns the value of attribute stack.
25
26
27
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 25
def stack
@stack
end
|
Instance Method Details
#==(other) ⇒ Boolean?
195
196
197
198
199
200
201
202
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 195
def ==(other)
return unless other.instance_of?(self.class)
return false if name != other.name
return false if stack != other.stack
true
end
|
#call ⇒ Object
41
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 41
abstract_method :call
|
#call_with_original ⇒ Object
36
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 36
abstract_method :call_with_original
|
#clear ⇒ Boolean
70
71
72
73
74
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 70
def clear
stack.clear
self
end
|
178
179
180
181
182
183
184
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 178
def delete(index_or_middleware)
index = cast_index(index_or_middleware)
stack.delete_at(index)
self
end
|
214
215
216
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 214
def dup
self.class.new(name: name.dup, stack: stack.dup)
end
|
#empty? ⇒ Boolean
55
56
57
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 55
def empty?
stack.empty?
end
|
#has?(some_middleware) ⇒ Boolean
63
64
65
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 63
def has?(some_middleware)
stack.any? { |middleware| middleware == some_middleware }
end
|
112
113
114
115
116
117
118
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 112
def insert(index_or_middleware, other_middleware)
index = cast_index(index_or_middleware)
stack.insert(index, other_middleware)
self
end
|
131
132
133
134
135
136
137
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 131
def insert_after(index_or_middleware, other_middleware)
index = cast_index(index_or_middleware)
stack.insert(index + 1, other_middleware)
self
end
|
153
154
155
156
157
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 153
def insert_after_each(other_middleware)
@stack = stack.reduce([]) { |stack, middleware| stack.push(middleware, other_middleware) }
self
end
|
143
144
145
146
147
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 143
def insert_before_each(other_middleware)
@stack = stack.reduce([]) { |stack, middleware| stack.push(other_middleware, middleware) }
self
end
|
165
166
167
168
169
170
171
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 165
def replace(index_or_middleware, other_middleware)
index = cast_index(index_or_middleware)
stack[index] = other_middleware
self
end
|
#to_a ⇒ Array
207
208
209
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 207
def to_a
stack
end
|
80
81
82
83
84
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 80
def unshift(middleware)
stack.unshift(middleware)
self
end
|
95
96
97
98
99
|
# File 'lib/convenient_service/support/middleware/stack_builder/entities/builders/custom.rb', line 95
def use(middleware)
stack << middleware
self
end
|