Class: Hanami::Utils::Callbacks::Callback Private

Inherits:
Object
  • Object
show all
Defined in:
lib/hanami/utils/callbacks.rb

Overview

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

Proc callback It wraps an object that responds to #call

Since:

  • 0.1.0

Direct Known Subclasses

MethodCallback

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(callback) ⇒ Callback

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Initialize by wrapping the given callback

Parameters:

  • callback (Object)

    the original callback that needs to be wrapped

Since:

  • 0.1.0



254
255
256
# File 'lib/hanami/utils/callbacks.rb', line 254

def initialize(callback)
  @callback = callback
end

Instance Attribute Details

#callbackObject (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Since:

  • 0.1.0



244
245
246
# File 'lib/hanami/utils/callbacks.rb', line 244

def callback
  @callback
end

Instance Method Details

#call(context, *args) ⇒ void, Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Executes the callback within the given context and passing the given arguments.

Parameters:

  • context (Object)

    the context within we want to execute the callback.

  • args (Array)

    an array of arguments that will be available within the execution.

Returns:

  • (void, Object)

    It may return a value, it depends on the callback.

See Also:

Since:

  • 0.1.0



269
270
271
# File 'lib/hanami/utils/callbacks.rb', line 269

def call(context, *args)
  context.instance_exec(*args, &callback)
end