module MagicLamp::Callbacks
Attributes
configuration[RW]
Public Class Methods
new(configuration)
click to toggle source
# File lib/magic_lamp/callbacks.rb, line 7 def initialize(configuration) self.configuration = configuration end
Public Instance Methods
execute_after_each_callback()
click to toggle source
# File lib/magic_lamp/callbacks.rb, line 15 def execute_after_each_callback execute_callback(:after) end
execute_before_each_callback()
click to toggle source
# File lib/magic_lamp/callbacks.rb, line 11 def execute_before_each_callback execute_callback(:before) end
execute_callbacks_around() { || ... }
click to toggle source
# File lib/magic_lamp/callbacks.rb, line 19 def execute_callbacks_around(&block) if block.nil? raise ArgumentError, "#{self.class.name}##{__method__} requires a block" end execute_before_each_callback value = yield execute_after_each_callback value end
Private Instance Methods
execute_callback(type)
click to toggle source
# File lib/magic_lamp/callbacks.rb, line 32 def execute_callback(type) callback = configuration.send("#{type}_each_proc") callback.call if callback end