- Aff <RT, A>
- Run (RT runtime)
- RunUnit (RT runtime)
- Memo ()
- Fork ()
- Effect (Func<RT, ValueTask<A>> f)
- EffectMaybe (Func<RT, ValueTask<Fin<A>>> f)
- Effect (Func<RT, ValueTask> f)
- Success (A value)
- Fail (Error error)
- Timeout (TimeSpan timeoutDelay)
- | (Aff<RT, A> ma, Aff<RT, A> mb)
- | (Aff<RT, A> ma, Aff<A> mb)
- | (Aff<A> ma, Aff<RT, A> mb)
- | (Aff<RT, A> ma, Eff<RT, A> mb)
- | (Eff<RT, A> ma, Aff<RT, A> mb)
- | (Eff<A> ma, Aff<RT, A> mb)
- | (Aff<RT, A> ma, Eff<A> mb)
- | (Aff<RT, A> ma, EffCatch<A> mb)
- | (Aff<RT, A> ma, AffCatch<A> mb)
- | (Aff<RT, A> ma, EffCatch<RT, A> mb)
- | (Aff<RT, A> ma, AffCatch<RT, A> mb)
- | (Aff<RT, A> ma, CatchValue<A> value)
- | (Aff<RT, A> ma, CatchError value)
- AffGuards
- SelectMany <B> (this Guard<Error> ma, Func<Unit, Aff<B>> f)
- SelectMany <RT, B> (this Guard<Error> ma, Func<Unit, Aff<RT, B>> f)
- SelectMany <B, C> (this Guard<Error> ma, Func<Unit, Aff<B>> bind, Func<Unit, B, C> project)
- SelectMany <RT, B, C> (this Guard<Error> ma, Func<Unit, Aff<RT, B>> bind, Func<Unit, B, C> project)
- ToAff (this Guard<Error> ma)
- ToAff <RT> (this Guard<Error> ma)
- SelectMany <A> (this Aff<A> ma, Func<A, Guard<Error>> f)
- SelectMany <RT, A> (this Aff<RT, A> ma, Func<A, Guard<Error>> f)
- SelectMany <A, C> (this Aff<A> ma, Func<A, Guard<Error>> bind, Func<A, Unit, C> project)
- SelectMany <RT, A, C> (this Aff<RT, A> ma, Func<A, Guard<Error>> bind, Func<A, Unit, C> project)
- Aff <A>
- Run ()
- RunUnit ()
- Memo ()
- Fork ()
- Effect (Func<ValueTask<A>> f)
- EffectMaybe (Func<ValueTask<Fin<A>>> f)
- Effect (Func<ValueTask> f)
- Success (A value)
- Fail (Error error)
- | (Aff<A> ma, Aff<A> mb)
- | (Aff<A> ma, Eff<A> mb)
- | (Eff<A> ma, Aff<A> mb)
- | (Aff<A> ma, EffCatch<A> mb)
- | (Aff<A> ma, AffCatch<A> mb)
- | (Aff<A> ma, CatchValue<A> value)
- | (Aff<A> ma, CatchError value)
- Timeout (TimeSpan timeoutDelay)
- WithRuntime <RT> ()
- Fold <S> (S state, Func<S, A, S> f)
- Exists (Func<A, bool> f)
- ForAll (Func<A, bool> f)
Sub modules
Catch |
Extensions |
Prelude |
Asynchronous effect monad
method Aff<RT, A> Memo () Source #
Memoise the result, so subsequent calls don't invoke the side-effect
method Eff<RT, Eff<Unit>> Fork () Source #
Launch the async computation without awaiting the result
If the parent expression has cancel
called on it, then it will also cancel the forked child
expression.
Fork
returns an Eff<Unit>
as its bound result value. If you run it, it will cancel the
forked child expression.
returns | Returns an |
method Aff<RT, A> Effect (Func<RT, ValueTask<A>> f) Source #
Lift an asynchronous effect into the Aff monad
method Aff<RT, A> EffectMaybe (Func<RT, ValueTask<Fin<A>>> f) Source #
Lift an asynchronous effect into the Aff monad
method Aff<B> SelectMany <B> (this Guard<Error> ma, Func<Unit, Aff<B>> f) Source #
method Aff<RT, B> SelectMany <RT, B> (this Guard<Error> ma, Func<Unit, Aff<RT, B>> f) Source #
method Aff<C> SelectMany <B, C> (this Guard<Error> ma, Func<Unit, Aff<B>> bind, Func<Unit, B, C> project) Source #
method Aff<RT, C> SelectMany <RT, B, C> (this Guard<Error> ma, Func<Unit, Aff<RT, B>> bind, Func<Unit, B, C> project) Source #
method Aff<Unit> SelectMany <A> (this Aff<A> ma, Func<A, Guard<Error>> f) Source #
method Aff<RT, Unit> SelectMany <RT, A> (this Aff<RT, A> ma, Func<A, Guard<Error>> f) Source #
method Aff<C> SelectMany <A, C> (this Aff<A> ma, Func<A, Guard<Error>> bind, Func<A, Unit, C> project) Source #
method Aff<RT, C> SelectMany <RT, A, C> (this Aff<RT, A> ma, Func<A, Guard<Error>> bind, Func<A, Unit, C> project) Source #
Asynchronous effect monad
method Aff<A> Effect (Func<ValueTask<A>> f) Source #
Custom awaiter so Aff can be used with async/await
Lift an asynchronous effect into the Aff monad
method Aff<A> EffectMaybe (Func<ValueTask<Fin<A>>> f) Source #
Lift an asynchronous effect into the Aff monad
method Aff<A> Timeout (TimeSpan timeoutDelay) Source #
Force the operation to end after a time out delay
Note, the original operation continues even after this returns. To cancel the original operation at the same time as the timeout triggers, use Aff<RT, A> instead of Aff - as it supports cancellation tokens, and so can automatically cancel the long-running operation
param | timeoutDelay | Delay for the time out |
returns | Either success if the operation completed before the timeout, or Errors.TimedOut |