sync<T> static method
Future<T>
sync<T>(
- FutureOr<
T> computation(), - CancellationToken? cancellationToken, {
- OnCancelCallback? onCancel,
Returns a future containing the result of immediately calling
computation
, unless cancelled.
This is the cancellable equivalent to Future.sync()
.
If the cancellationToken
has already been cancelled when this is called,
the computation
will not run.
Implementation
static Future<T> sync<T>(
FutureOr<T> Function() computation,
CancellationToken? cancellationToken, {
OnCancelCallback? onCancel,
}) {
if (cancellationToken?.isCancelled ?? false) {
return Future<T>.error(cancellationToken!.exception!);
} else {
return CancellableFuture<T>._(
Future.sync(computation),
cancellationToken,
onCancel: onCancel,
).future;
}
}