CancelToken constructor
CancelToken()
Implementation
CancelToken() {
_refController.stream.listen((ref) {
switch (_state) {
case CancelState.idle:
_refs.add(ref);
break;
case CancelState.waitingForRef:
// "complete" adds a microtask,
// so we need to set the state first to avoid completing twice.
_state = CancelState.cancelling;
_firstRef.complete(ref);
break;
case CancelState.cancelling:
case CancelState.done:
rust.cancelRequest(token: ref);
break;
}
});
}