class PowerTypes::Observer
Attributes
object[R]
Public Class Methods
add_trigger(_type, _event, _handler = nil, _options = {}, &_block)
click to toggle source
# File lib/power_types/patterns/observer/observer.rb, line 19 def self.add_trigger(_type, _event, _handler = nil, _options = {}, &_block) triggers << PowerTypes::Trigger.new( _type, _event, (_handler || _block), _options ) triggers.last end
new(_object)
click to toggle source
# File lib/power_types/patterns/observer/observer.rb, line 34 def initialize(_object) @object = _object end
trigger(_type, _event, _object)
click to toggle source
# File lib/power_types/patterns/observer/observer.rb, line 13 def self.trigger(_type, _event, _object) triggers.select { |t| t.type == _type && t.event == _event }.each do |trigger| trigger.call(new(_object)) end end
triggers()
click to toggle source
# File lib/power_types/patterns/observer/observer.rb, line 30 def self.triggers @triggers ||= [] end