Method: FSM::Observer#wait_for_exit
- Defined in:
- lib/fsm-0.0.0/observer.rb
#wait_for_exit(fstate, &hook) ⇒ Object
137 138 139 140 141 142 143 144 145 |
# File 'lib/fsm-0.0.0/observer.rb', line 137 def wait_for_exit fstate, &hook argv = [fstate] unless fsm.state == fstate q = Queue.new once_on(Event::Exit, fstate){|*a| q.push a } argv.replace q.pop end icall hook, *argv if hook end |