fromSubscription function
CancelableOperation<void>
fromSubscription(
- StreamSubscription<
void> subscription, { - bool? cancelOnError,
Implementation
CancelableOperation<void> fromSubscription(
StreamSubscription<void> subscription, {
bool? cancelOnError,
}) {
var completer = CancelableCompleter<void>(onCancel: subscription.cancel);
subscription.onDone(completer.complete);
if (cancelOnError ?? false) {
subscription.onError((Object error, StackTrace stackTrace) {
subscription.cancel().whenComplete(() {
completer.completeError(error, stackTrace);
});
});
}
return completer.operation;
}