module ExMachina::Machine::ClassMethods
Public Instance Methods
events()
click to toggle source
# File lib/ex_machina/machine.rb, line 9 def events @events ||= [] end
has_events(*event_classes)
click to toggle source
# File lib/ex_machina/machine.rb, line 12 def has_events(*event_classes) event_classes.each do |event_class| events << event_class define_method "#{event_class.event}" do event_class.fire(self) end define_method "#{event_class.event}!" do event_class.fire!(self) end define_method "can_#{event_class.event}?" do event_class.can_fire?(self) end events << event_class end end