code: func (t transitionerStruct) transition(f *FSM) error {
  	if f.transition == nil {
  		return NotInTransitionError{}
  	}
  	f.transition()
  	f.transition = nil
  	return nil
  }
docs: // Transition completes an asynchrounous state change.
  //
  // The callback for leave_<STATE> must prviously have called Async on its
  // event to have initiated an asynchronous state transition.