Method: FSM::Observer#wait_for_transition
- Defined in:
- lib/fsm-0.0.0/observer.rb
#wait_for_transition(fstate, &hook) ⇒ Object
127 128 129 130 131 132 133 134 135 |
# File 'lib/fsm-0.0.0/observer.rb', line 127 def wait_for_transition fstate, &hook argv = [fstate] unless fsm.state == fstate q = Queue.new once_on(Event::Transition, fstate){|*a| q.push a } argv.replace q.pop end icall hook, *argv if hook end |