Async<T extends Object> class
final
A Monad that represents a Resolvable that holds an asynchronous Result.
The contained value is always a Future.
IMPORTANT:
Await all Futures in the constructor Async.new to ensure errors are properly caught and propagated.
- Inheritance
-
- Object
- Monad<
T> - Resolvable<
T> - Async
- Available extensions
- AsyncNoneSwapX
- AsyncOkSwapX
- AsyncSomeSwapX
- FlattenResolvable2
- FlattenResolvable3
- FlattenResolvable4
- FlattenResolvable5
- FlattenResolvable6
- FlattenResolvable7
- FlattenResolvable8
- FlattenResolvable9
- FlattenResolvableResult2
- FlattenResolvableResulte3
- FlattenResolvableResulte4
- FlattenResolvableResulte5
- FlattenResolvableResulte6
- FlattenResolvableResulte7
- FlattenResolvableResulte8
- FlattenResolvableResulte9
- MapMonad2
- MapMonad3
- MapMonad4
- MapMonad5
- MapMonad6
- MapMonad7
- MapMonad8
- MapMonad9
- MapMonad10
- MapMonad11
- MapMonad12
- MapMonad13
- MapMonad14
- MapMonad15
- MapMonad16
- MapMonad17
- MapMonad18
- ResolvableNoneSwapX
- ResolvableOkSwapX
- ResolvableSomeSwapX
- ToUnitOnObjectAsync
- ToUnitOnObjectMonad
- ToUnitOnObjectResolvable
Constructors
-
Async(@mustBeAnonymous @mustAwaitAllFutures Future<
T> mustAwaitAllFutures(), {@noFuturesAllowed Err<T> onError(Object? error)?, @noFuturesAllowed void onFinalize()?}) -
Creates an Async by executing an asynchronous function
mustAwaitAllFutures
.factory -
Async.unsafe(Future<
Result< value)T> > -
const
-
Async.value(Future<
Result< value)T> > - Creates an Async with a pre-computed Future of a Result.
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
-
props
→ List<
Object?> -
The list of properties that will be used to determine whether
two instances are equal.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- stringify → bool?
-
If set to
true
, the toString method will be overridden to output this instance's props.no setterinherited -
value
→ Future<
Result< T> > -
no setteroverride
Methods
-
asResolvable(
) → Resolvable< T> -
Returns
this
as a base Resolvable type.inherited -
asVoid(
) → Async< void> -
Transforms the contained value to
void
.override -
async(
) → Ok< Async< T> > -
Safely gets the Async instance.
Returns an Ok on Async, or an Err on Sync.
override
-
asyncOr(
Resolvable< T> other) → Async<T> -
Returns this if it's Async, otherwise returns
other
.override -
end(
) → Future< void> -
Suppresses the linter error
must_use_monad
.override -
err(
) → Future< Option< Err< >T> > -
Safely gets the Err instance, resolving any Future.
override
-
errOr(
Resolvable< T> other) → Async<T> -
Returns this if it contains an Err, otherwise returns
other
.override -
flatten(
) → Resolvable< T> -
Available on Resolvable<
Result< , provided by the FlattenResolvableResulte7 extensionResult< >Result< >Result< >Result< >Result< >T> > -
flatten(
) → Resolvable< T> -
Available on Resolvable<
Result< , provided by the FlattenResolvableResulte5 extensionResult< >Result< >Result< >T> > -
flatten(
) → Resolvable< T> -
Available on Resolvable<
Result< , provided by the FlattenResolvableResulte9 extensionResult< >Result< >Result< >Result< >Result< >Result< >Result< >T> > -
flatten(
) → Resolvable< T> -
Available on Resolvable<
Result< , provided by the FlattenResolvableResulte8 extensionResult< >Result< >Result< >Result< >Result< >Result< >T> > -
flatten(
) → Resolvable< T> -
Available on Resolvable<
Resolvable< , provided by the FlattenResolvable2 extensionT> > -
flatten(
) → Resolvable< T> -
Available on Resolvable<
Resolvable< , provided by the FlattenResolvable3 extensionResolvable< >T> > -
flatten(
) → Resolvable< T> -
Available on Resolvable<
Resolvable< , provided by the FlattenResolvable4 extensionResolvable< >Resolvable< >T> > -
flatten(
) → Resolvable< T> -
Available on Resolvable<
Resolvable< , provided by the FlattenResolvable5 extensionResolvable< >Resolvable< >Resolvable< >T> > -
flatten(
) → Resolvable< T> -
Available on Resolvable<
Resolvable< , provided by the FlattenResolvable6 extensionResolvable< >Resolvable< >Resolvable< >Resolvable< >T> > -
flatten(
) → Resolvable< T> -
Available on Resolvable<
Resolvable< , provided by the FlattenResolvable7 extensionResolvable< >Resolvable< >Resolvable< >Resolvable< >Resolvable< >T> > -
flatten(
) → Resolvable< T> -
Available on Resolvable<
Resolvable< , provided by the FlattenResolvable8 extensionResolvable< >Resolvable< >Resolvable< >Resolvable< >Resolvable< >Resolvable< >T> > -
flatten(
) → Resolvable< T> -
Available on Resolvable<
Resolvable< , provided by the FlattenResolvable9 extensionResolvable< >Resolvable< >Resolvable< >Resolvable< >Resolvable< >Resolvable< >Resolvable< >T> > -
flatten(
) → Resolvable< T> -
Available on Resolvable<
Result< , provided by the FlattenResolvableResult2 extensionT> > -
flatten(
) → Resolvable< T> -
Available on Resolvable<
Result< , provided by the FlattenResolvableResulte3 extensionResult< >T> > -
flatten(
) → Resolvable< T> -
Available on Resolvable<
Result< , provided by the FlattenResolvableResulte4 extensionResult< >Result< >T> > -
flatten(
) → Resolvable< T> -
Available on Resolvable<
Result< , provided by the FlattenResolvableResulte6 extensionResult< >Result< >Result< >Result< >T> > -
flatten2(
) → Resolvable< T> -
Available on Resolvable<
Resolvable< , provided by the FlattenResolvable2 extensionT> > -
flatten2(
) → Resolvable< T> -
Available on Resolvable<
Result< , provided by the FlattenResolvableResult2 extensionT> > -
flatten3(
) → Resolvable< T> -
Available on Resolvable<
Resolvable< , provided by the FlattenResolvable3 extensionResolvable< >T> > -
flatten3(
) → Resolvable< T> -
Available on Resolvable<
Result< , provided by the FlattenResolvableResulte3 extensionResult< >T> > -
flatten4(
) → Resolvable< T> -
Available on Resolvable<
Resolvable< , provided by the FlattenResolvable4 extensionResolvable< >Resolvable< >T> > -
flatten4(
) → Resolvable< T> -
Available on Resolvable<
Result< , provided by the FlattenResolvableResulte4 extensionResult< >Result< >T> > -
flatten5(
) → Resolvable< T> -
Available on Resolvable<
Resolvable< , provided by the FlattenResolvable5 extensionResolvable< >Resolvable< >Resolvable< >T> > -
flatten5(
) → Resolvable< T> -
Available on Resolvable<
Result< , provided by the FlattenResolvableResulte5 extensionResult< >Result< >Result< >T> > -
flatten6(
) → Resolvable< T> -
Available on Resolvable<
Resolvable< , provided by the FlattenResolvable6 extensionResolvable< >Resolvable< >Resolvable< >Resolvable< >T> > -
flatten6(
) → Resolvable< T> -
Available on Resolvable<
Result< , provided by the FlattenResolvableResulte6 extensionResult< >Result< >Result< >Result< >T> > -
flatten7(
) → Resolvable< T> -
Available on Resolvable<
Result< , provided by the FlattenResolvableResulte7 extensionResult< >Result< >Result< >Result< >Result< >T> > -
flatten7(
) → Resolvable< T> -
Available on Resolvable<
Resolvable< , provided by the FlattenResolvable7 extensionResolvable< >Resolvable< >Resolvable< >Resolvable< >Resolvable< >T> > -
flatten8(
) → Resolvable< T> -
Available on Resolvable<
Result< , provided by the FlattenResolvableResulte8 extensionResult< >Result< >Result< >Result< >Result< >Result< >T> > -
flatten8(
) → Resolvable< T> -
Available on Resolvable<
Resolvable< , provided by the FlattenResolvable8 extensionResolvable< >Resolvable< >Resolvable< >Resolvable< >Resolvable< >Resolvable< >T> > -
flatten9(
) → Resolvable< T> -
Available on Resolvable<
Result< , provided by the FlattenResolvableResulte9 extensionResult< >Result< >Result< >Result< >Result< >Result< >Result< >T> > -
flatten9(
) → Resolvable< T> -
Available on Resolvable<
Resolvable< , provided by the FlattenResolvable9 extensionResolvable< >Resolvable< >Resolvable< >Resolvable< >Resolvable< >Resolvable< >Resolvable< >T> > -
fold(
Resolvable< Object> ? onSync(Sync<T> sync), Resolvable<Object> ? onAsync(Async<T> async)) → Resolvable<Object> -
Handles Sync and Async cases to produce a new Resolvable.
override
-
foldResult(
Result< Object> ? onOk(Ok<T> ok), Result<Object> ? onErr(Err<T> err)) → Async<Object> -
Exhaustively handles the inner Ok and Err cases, returning a new
Resolvable.
override
-
ifAsync(
void noFuturesAllowed(Async< T> async)) → Async<T> -
Performs a side-effect if this is an Async.
override
-
ifSync(
void noFuturesAllowed(Sync< T> async)) → Async<T> -
Performs a side-effect if this is a Sync.
override
-
isAsync(
) → bool -
Returns
true
if this is an Async instance.override -
isSync(
) → bool -
Returns
true
if this is a Sync instance.override -
map<
R extends Object> (R noFuturesAllowed(T value)) → Async< R> -
Transforms the contained value using the mapper function
noFuturesAllowed
while preserving the Monad's structure.override -
map10<
R extends Object> (R mapper(T)) → TReduced< Object> -
Available on Monad<
Monad< , provided by the MapMonad10 extensionMonad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Object> > -
map11<
R extends Object> (R mapper(T)) → TReduced< Object> -
Available on Monad<
Monad< , provided by the MapMonad11 extensionMonad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Object> > -
map12<
R extends Object> (R mapper(T)) → TReduced< Object> -
Available on Monad<
Monad< , provided by the MapMonad12 extensionMonad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Object> > -
map13<
R extends Object> (R mapper(T)) → TReduced< Object> -
Available on Monad<
Monad< , provided by the MapMonad13 extensionMonad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Object> > -
map14<
R extends Object> (R mapper(T)) → TReduced< Object> -
Available on Monad<
Monad< , provided by the MapMonad14 extensionMonad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Object> > -
map15<
R extends Object> (R mapper(T)) → TReduced< Object> -
Available on Monad<
Monad< , provided by the MapMonad15 extensionMonad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Object> > -
map16<
R extends Object> (R mapper(T)) → TReduced< Object> -
Available on Monad<
Monad< , provided by the MapMonad16 extensionMonad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Object> > -
map17<
R extends Object> (R mapper(T)) → TReduced< Object> -
Available on Monad<
Monad< , provided by the MapMonad17 extensionMonad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Object> > -
map18<
R extends Object> (R mapper(T)) → TReduced< Object> -
Available on Monad<
Monad< , provided by the MapMonad18 extensionMonad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Object> > -
map2<
R extends Object> (R mapper(T)) → TReduced< Object> -
Available on Monad<
Monad< , provided by the MapMonad2 extensionObject> > -
map3<
R extends Object> (R mapper(T)) → TReduced< Object> -
Available on Monad<
Monad< , provided by the MapMonad3 extensionMonad< >Object> > -
map4<
R extends Object> (R mapper(T)) → TReduced< Object> -
Available on Monad<
Monad< , provided by the MapMonad4 extensionMonad< >Monad< >Object> > -
map5<
R extends Object> (R mapper(T)) → TReduced< Object> -
Available on Monad<
Monad< , provided by the MapMonad5 extensionMonad< >Monad< >Monad< >Object> > -
map6<
R extends Object> (R mapper(T)) → TReduced< Object> -
Available on Monad<
Monad< , provided by the MapMonad6 extensionMonad< >Monad< >Monad< >Monad< >Object> > -
map7<
R extends Object> (R mapper(T)) → TReduced< Object> -
Available on Monad<
Monad< , provided by the MapMonad7 extensionMonad< >Monad< >Monad< >Monad< >Monad< >Object> > -
map8<
R extends Object> (R mapper(T)) → TReduced< Object> -
Available on Monad<
Monad< , provided by the MapMonad8 extensionMonad< >Monad< >Monad< >Monad< >Monad< >Monad< >Object> > -
map9<
R extends Object> (R mapper(T)) → TReduced< Object> -
Available on Monad<
Monad< , provided by the MapMonad9 extensionMonad< >Monad< >Monad< >Monad< >Monad< >Monad< >Monad< >Object> > -
mapFutureOr<
R extends Object> (FutureOr< R> mapper(T value)) → Async<R> -
Maps the contained Ok value using a function that returns a
FutureOr
.override -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
ok(
) → Future< Option< Ok< >T> > -
Safely gets the Ok instance, resolving any Future.
override
-
okOr(
Resolvable< T> other) → Async<T> -
Returns this if it contains an Ok, otherwise returns
other
.override -
orNull(
) → Future< T?> -
Returns the contained Ok value or
null
, resolving any Future.override -
reduce<
R extends Object> () → Resolvable< Option< R> > -
Reduces the monad to a Resolvable of an Option of type
R
.inherited -
resultMap<
R extends Object> (Result< R> noFuturesAllowed(Result<T> value)) → Async<R> -
Maps the inner Result of this Resolvable using
mapper
.override -
swap(
) → Some< Async< T> > -
Available on Async<
Some< , provided by the AsyncSomeSwapX extensionT> > -
swap(
) → Ok< Async< T> > -
Available on Async<
Ok< , provided by the AsyncOkSwapX extensionT> > -
swap(
) → None< Async< T> > -
Available on Async<
None< , provided by the AsyncNoneSwapX extensionT> > -
swap(
) → None< Resolvable< T> > -
Available on Resolvable<
None< , provided by the ResolvableNoneSwapX extensionT> > -
swap(
) → Ok< Resolvable< T> > -
Available on Resolvable<
Ok< , provided by the ResolvableOkSwapX extensionT> > -
swap(
) → Some< Resolvable< T> > -
Available on Resolvable<
Some< , provided by the ResolvableSomeSwapX extensionT> > -
sync(
) → Err< Sync< T> > -
Safely gets the Sync instance.
Returns an Ok on Sync, or an Err on Async.
override
-
syncOr(
Resolvable< T> other) → Resolvable<T> -
Returns this if it's Sync, otherwise returns
other
.override -
toAsync(
) → Async< T> -
Converts this Resolvable to an Async.
override
-
toString(
) → String -
A string representation of this object.
inherited
-
toSync(
) → Sync< T> -
Unsafely converts this Resolvable to a Sync. Throws if it's an Async.
override
-
toUnit(
) → Async< Unit> -
Available on Async<
Object> , provided by the ToUnitOnObjectAsync extension -
toUnit(
) → Monad< Unit> -
Available on Monad<
Object> , provided by the ToUnitOnObjectMonad extension -
toUnit(
) → Resolvable< Unit> -
Available on Resolvable<
Object> , provided by the ToUnitOnObjectResolvable extension -
transf<
R extends Object> ([R noFuturesAllowed(T e)?]) → Async< R> -
Transforms the Monad's generic type from
T
toR
.override -
unwrap(
) → Future< T> -
Unsafely returns the contained value. Throws Err the
Monad
is an Err or None.override -
unwrapAsync(
) → Async< T> -
Unsafely gets the Async instance. Throws if not an Async.
@unsafeOrError
inherited
-
unwrapOr(
T fallback) → FutureOr< T> -
Returns the contained value, or the
fallback
if the Monad is in an Err or None state.override -
unwrapSync(
) → Sync< T> -
Unsafely gets the Sync instance. Throws if not a Sync.
inherited
-
wrapAsync(
) → Async< Async< T> > -
Wraps this Monad in an Async.
override
-
wrapOk(
) → Ok< Async< T> > -
Wraps this Monad in an Ok.
override
-
wrapResolvable(
) → Resolvable< Async< T> > -
Wraps this Monad in a Resolvable.
override
-
wrapSome(
) → Some< Async< T> > -
Wraps this Monad in a Some.
override
-
wrapSync(
) → Sync< Async< T> > -
Wraps this Monad in a Sync.
override
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
zip2<
T1 extends Object, T2 extends Object> (Async< T1> a1, Async<T2> a2, [Err<(T1, T2)> onErr(Result<T1> , Result<T2> )?]) → Async<(T1, T2)> -
Combines 2 Async monads into 1 containing a tuple of their values
if all resolve to Ok.
override
-
zip3<
T1 extends Object, T2 extends Object, T3 extends Object> (Async< T1> a1, Async<T2> a2, Async<T3> a3, [Err<(T1, T2, T3)> onErr(Result<T1> , Result<T2> , Result<T3> )?]) → Async<(T1, T2, T3)> -
Combines 3 Async monads into 1 containing a tuple of their values
if all resolve to Ok.
override