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



249
250
251
# File 'lib/hanami/utils/callbacks.rb', line 249

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



239
240
241
# File 'lib/hanami/utils/callbacks.rb', line 239

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



264
265
266
# File 'lib/hanami/utils/callbacks.rb', line 264

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