Methods
Attributes
[R] name
Public Class methods
new(name, &block)
    # File lib/event.rb, line 8
 8:       def initialize(name, &block)
 9:         @name = name
10:         @transitions = []
11:         instance_eval(&block) if block
12:       end
Public Instance methods
fire(obj)
    # File lib/event.rb, line 14
14:       def fire(obj)
15:         transitions = @transitions.select { |t| t.from == obj.aasm_current_state }
16:         raise AASM::InvalidTransition if transitions.size == 0
17: 
18:         next_state = nil
19:         transitions.each do |transition|
20:           if transition.perform(obj)
21:             next_state = transition.to
22:             break
23:           end
24:         end
25:         next_state
26:       end
transitions_from_state?(state)
    # File lib/event.rb, line 28
28:       def transitions_from_state?(state)
29:         @transitions.any? { |t| t.from == state }
30:       end