Class: Hanami::Utils::Callbacks::MethodCallback
- Defined in:
- lib/hanami/utils/callbacks.rb
Overview
Method callback It wraps a symbol or a string representing a method name that is implemented by the context within it will be called.
Instance Attribute Summary
Attributes inherited from Callback
Instance Method Summary collapse
-
#call(context, *args) ⇒ void, Object
Executes the callback within the given context and eventually passing the given arguments.
- #eql?(other) ⇒ Boolean
- #hash ⇒ Object
Methods inherited from Callback
Constructor Details
This class inherits a constructor from Hanami::Utils::Callbacks::Callback
Instance Method Details
#call(context, *args) ⇒ void, Object
Executes the callback within the given context and eventually passing the given arguments. Those arguments will be passed according to the arity of the target method.
264 265 266 267 268 269 270 271 272 |
# File 'lib/hanami/utils/callbacks.rb', line 264 def call(context, *args) method = context.method(callback) if method.parameters.any? method.call(*args) else method.call end end |
#eql?(other) ⇒ Boolean
278 279 280 |
# File 'lib/hanami/utils/callbacks.rb', line 278 def eql?(other) hash == other.hash end |
#hash ⇒ Object
274 275 276 |
# File 'lib/hanami/utils/callbacks.rb', line 274 def hash callback.hash end |