Class: Trainers::CallbackHandler

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

Overview

Dispatches callback events to all registered callbacks

Instance Method Summary collapse

Constructor Details

#initialize(callbacks) ⇒ CallbackHandler

Returns a new instance of CallbackHandler.



117
118
119
# File 'lib/trainers/callbacks.rb', line 117

def initialize(callbacks)
  @callbacks = callbacks
end

Instance Method Details

#fire(event, args, state, control, **kwargs) ⇒ Object



121
122
123
124
125
126
# File 'lib/trainers/callbacks.rb', line 121

def fire(event, args, state, control, **kwargs)
  @callbacks.each do |cb|
    cb.send(event, args, state, control, **kwargs) if cb.respond_to?(event)
  end
  control
end