SynchronousFuture<T> class

A Future whose then implementation calls the callback immediately.

This is similar to Future.value, except that the value is available in the same event-loop iteration.

⚠ This class is useful in cases where you want to expose a single API, where you normally want to have everything execute synchronously, but where on rare occasions you want the ability to switch to an asynchronous model. In general use of this class should be avoided as it is very difficult to debug such bimodal behavior.

A SynchronousFuture will never complete with an error.

Implemented types
Available extensions

Constructors

SynchronousFuture(T _value)
Creates a synchronous future.

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
toJS JSPromise<T>

Available on Future<T>, provided by the FutureOfJSAnyToJSPromise extension

A JSPromise that either resolves with the result of the completed Future or rejects with an object that contains its error.
no setter
toJS JSPromise<JSAny?>

Available on Future<void>, provided by the FutureOfVoidToJSPromise extension

A JSPromise that either resolves once this Future completes or rejects with an object that contains its error.
no setter

Methods

asStream() Stream<T>
Creates a Stream containing the result of this future.
override
catchError(Function onError, {bool test(Object error)?}) Future<T>
Handles errors emitted by this Future.
override
ignore() → void

Available on Future<T>, provided by the FutureExtensions extension

Completely ignores this future and its result.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
onError<E extends Object>(FutureOr<T> handleError(E error, StackTrace stackTrace), {bool test(E error)?}) Future<T>

Available on Future<T>, provided by the FutureExtensions extension

Handles errors on this future.
then<R>(FutureOr<R> onValue(T value), {Function? onError}) Future<R>
Register callbacks to be called when this future completes.
override
timeout(Duration timeLimit, {FutureOr<T> onTimeout()?}) Future<T>
Stop waiting for this future after timeLimit has passed.
override
toString() String
A string representation of this object.
inherited
whenComplete(FutureOr action()) Future<T>
Registers a function to be called when this future completes.
override

Operators

operator ==(Object other) bool
The equality operator.
inherited