Switch overview
ReaderAsyncIterableEither/Switch
Added in v0.1.0
Table of contents
- Alt
- Monad
- combinators
- chainAsyncIterableEitherK
- chainAsyncIterableEitherKW
- chainAsyncIterableK
- chainEitherK
- chainEitherKW
- chainFirst
- chainFirstAsyncIterableEitherK
- chainFirstAsyncIterableEitherKW
- chainFirstAsyncIterableK
- chainFirstEitherK
- chainFirstEitherKW
- chainFirstIOK
- chainFirstReaderAsyncIterableK
- chainFirstReaderAsyncIterableKW
- chainFirstReaderEitherK
- chainFirstReaderEitherKW
- chainFirstReaderK
- chainFirstReaderKW
- chainFirstReaderTaskEitherK
- chainFirstReaderTaskEitherKW
- chainFirstTaskEitherK
- chainFirstTaskEitherKW
- chainFirstW
- chainIOEitherK
- chainIOEitherKW
- chainIOK
- chainOptionK
- chainReaderAsyncIterableK
- chainReaderAsyncIterableKW
- chainReaderEitherK
- chainReaderEitherKW
- chainReaderK
- chainReaderKW
- chainReaderTaskEitherK
- chainReaderTaskEitherKW
- chainTaskEitherK
- chainTaskEitherKW
- chainWithIndex
- filterOrElse
- filterOrElseW
- flatten
- flattenW
- orElse
- orElseFirst
- orElseFirstW
- orElseW
- orLeft
- destructors
- instances
- interop
- utils
Alt
alt
Identifies an associative operation on a type constructor. It is similar to Semigroup
, except that it applies to types of kind * -> *
.
Signature
export declare const alt: <R, E, A>(
that: () => RAIE.ReaderAsyncIterableEither<R, E, A>
) => (fa: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, A>
Added in v0.1.0
altW
Less strict version of alt
.
Signature
export declare const altW: <R2, E2, B>(
that: () => RAIE.ReaderAsyncIterableEither<R2, E2, B>
) => <R1, E1, A>(fa: RAIE.ReaderAsyncIterableEither<R1, E1, A>) => RAIE.ReaderAsyncIterableEither<R1 & R2, E2, B | A>
Added in v0.1.0
Monad
chain
Composes computations in sequence, using the return value of one computation to determine the next computation.
Signature
export declare const chain: <R, E, A, B>(
f: (a: A) => RAIE.ReaderAsyncIterableEither<R, E, B>
) => (ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, B>
Added in v0.1.0
chainW
Less strict version of chain
.
Signature
export declare const chainW: <R2, E2, A, B>(
f: (a: A) => RAIE.ReaderAsyncIterableEither<R2, E2, B>
) => <R1, E1>(ma: RAIE.ReaderAsyncIterableEither<R1, E1, A>) => RAIE.ReaderAsyncIterableEither<R1 & R2, E2 | E1, B>
Added in v0.1.0
combinators
chainAsyncIterableEitherK
Signature
export declare const chainAsyncIterableEitherK: <E, A, B>(
f: (a: A) => AsyncIterableEither<E, B>
) => <R>(ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, B>
Added in v0.1.0
chainAsyncIterableEitherKW
Signature
export declare const chainAsyncIterableEitherKW: <E2, A, B>(
f: (a: A) => AsyncIterableEither<E2, B>
) => <R, E1>(ma: RAIE.ReaderAsyncIterableEither<R, E1, A>) => RAIE.ReaderAsyncIterableEither<R, E2 | E1, B>
Added in v0.1.0
chainAsyncIterableK
Signature
export declare const chainAsyncIterableK: <A, B>(
f: (a: A) => AsyncIterable<B>
) => <R, E>(first: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, B>
Added in v0.1.0
chainEitherK
Signature
export declare const chainEitherK: <E, A, B>(
f: (a: A) => Either<E, B>
) => <R>(ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, B>
Added in v0.1.0
chainEitherKW
Less strict version of chainEitherK
.
Signature
export declare const chainEitherKW: <E2, A, B>(
f: (a: A) => Either<E2, B>
) => <R, E1>(ma: RAIE.ReaderAsyncIterableEither<R, E1, A>) => RAIE.ReaderAsyncIterableEither<R, E2 | E1, B>
Added in v0.1.0
chainFirst
Composes computations in sequence, using the return value of one computation to determine the next computation and keeping only the result of the first.
Derivable from Chain
.
Signature
export declare const chainFirst: <R, E, A, B>(
f: (a: A) => RAIE.ReaderAsyncIterableEither<R, E, B>
) => (ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, A>
Added in v0.1.0
chainFirstAsyncIterableEitherK
Signature
export declare const chainFirstAsyncIterableEitherK: <E, A, B>(
f: (a: A) => AsyncIterableEither<E, B>
) => <R>(ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, A>
Added in v0.1.0
chainFirstAsyncIterableEitherKW
Signature
export declare const chainFirstAsyncIterableEitherKW: <E2, A, B>(
f: (a: A) => AsyncIterableEither<E2, B>
) => <R, E1>(ma: RAIE.ReaderAsyncIterableEither<R, E1, A>) => RAIE.ReaderAsyncIterableEither<R, E2 | E1, A>
Added in v0.1.0
chainFirstAsyncIterableK
Signature
export declare const chainFirstAsyncIterableK: <A, B>(
f: (a: A) => AsyncIterable<B>
) => <R, E>(first: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, A>
Added in v0.1.0
chainFirstEitherK
Signature
export declare const chainFirstEitherK: <A, E, B>(
f: (a: A) => Either<E, B>
) => <R>(ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, A>
Added in v0.1.0
chainFirstEitherKW
Less strict version of chainFirstEitherK
.
Signature
export declare const chainFirstEitherKW: <A, E2, B>(
f: (a: A) => Either<E2, B>
) => <R, E1>(ma: RAIE.ReaderAsyncIterableEither<R, E1, A>) => RAIE.ReaderAsyncIterableEither<R, E2 | E1, A>
Added in v0.1.0
chainFirstIOK
Signature
export declare const chainFirstIOK: <A, B>(
f: (a: A) => IO<B>
) => <R, E>(first: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, A>
Added in v0.1.0
chainFirstReaderAsyncIterableK
Signature
export declare const chainFirstReaderAsyncIterableK: <A, R, B>(
f: (a: A) => ReaderAsyncIterable<R, B>
) => <E = never>(ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, A>
Added in v0.1.0
chainFirstReaderAsyncIterableKW
Less strict version of chainFirstReaderAsyncIterableK
.
Signature
export declare const chainFirstReaderAsyncIterableKW: <A, R2, B>(
f: (a: A) => ReaderAsyncIterable<R2, B>
) => <R1, E = never>(ma: RAIE.ReaderAsyncIterableEither<R1, E, A>) => RAIE.ReaderAsyncIterableEither<R1 & R2, E, A>
Added in v0.1.0
chainFirstReaderEitherK
Signature
export declare const chainFirstReaderEitherK: <R, E, A, B>(
f: (a: A) => ReaderEither<R, E, B>
) => (ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, A>
Added in v0.1.0
chainFirstReaderEitherKW
Less strict version of chainFirstReaderEitherK
.
Signature
export declare const chainFirstReaderEitherKW: <R2, E2, A, B>(
f: (a: A) => ReaderEither<R2, E2, B>
) => <R1, E1>(ma: RAIE.ReaderAsyncIterableEither<R1, E1, A>) => RAIE.ReaderAsyncIterableEither<R1 & R2, E2 | E1, A>
Added in v0.1.0
chainFirstReaderK
Signature
export declare const chainFirstReaderK: <A, R, B>(
f: (a: A) => Reader<R, B>
) => <E = never>(ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, A>
Added in v0.1.0
chainFirstReaderKW
Less strict version of chainFirstReaderK
.
Signature
export declare const chainFirstReaderKW: <A, R1, B>(
f: (a: A) => Reader<R1, B>
) => <R2, E = never>(ma: RAIE.ReaderAsyncIterableEither<R2, E, A>) => RAIE.ReaderAsyncIterableEither<R1 & R2, E, A>
Added in v0.1.0
chainFirstReaderTaskEitherK
Signature
export declare const chainFirstReaderTaskEitherK: <R, E, A, B>(
f: (a: A) => ReaderTaskEither<R, E, B>
) => (ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, A>
Added in v0.1.0
chainFirstReaderTaskEitherKW
Less strict version of chainFirstReaderEitherK
.
Signature
export declare const chainFirstReaderTaskEitherKW: <R2, E2, A, B>(
f: (a: A) => ReaderTaskEither<R2, E2, B>
) => <R1, E1>(ma: RAIE.ReaderAsyncIterableEither<R1, E1, A>) => RAIE.ReaderAsyncIterableEither<R1 & R2, E2 | E1, A>
Added in v0.1.0
chainFirstTaskEitherK
Signature
export declare const chainFirstTaskEitherK: <A, E, B>(
f: (a: A) => TaskEither<E, B>
) => <R>(ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, A>
Added in v0.1.0
chainFirstTaskEitherKW
Less strict version of chainFirstEitherK
.
Signature
export declare const chainFirstTaskEitherKW: <A, E2, B>(
f: (a: A) => TaskEither<E2, B>
) => <R, E1>(ma: RAIE.ReaderAsyncIterableEither<R, E1, A>) => RAIE.ReaderAsyncIterableEither<R, E2 | E1, A>
Added in v0.1.0
chainFirstW
Less strict version of chainFirst
.
Derivable from Chain
.
Signature
export declare const chainFirstW: <R2, E2, A, B>(
f: (a: A) => RAIE.ReaderAsyncIterableEither<R2, E2, B>
) => <R1, E1>(ma: RAIE.ReaderAsyncIterableEither<R1, E1, A>) => RAIE.ReaderAsyncIterableEither<R1 & R2, E2 | E1, A>
Added in v0.1.0
chainIOEitherK
Signature
export declare const chainIOEitherK: <E, A, B>(
f: (a: A) => IOEither<E, B>
) => <R>(ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, B>
Added in v0.1.0
chainIOEitherKW
Less strict version of chainIOEitherK
.
Signature
export declare const chainIOEitherKW: <E2, A, B>(
f: (a: A) => IOEither<E2, B>
) => <R, E1>(ma: RAIE.ReaderAsyncIterableEither<R, E1, A>) => RAIE.ReaderAsyncIterableEither<R, E2 | E1, B>
Added in v0.1.0
chainIOK
Signature
export declare const chainIOK: <A, B>(
f: (a: A) => IO<B>
) => <R, E>(first: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, B>
Added in v0.1.0
chainOptionK
Signature
export declare const chainOptionK: <E>(
onNone: Lazy<E>
) => <A, B>(
f: (a: A) => Option<B>
) => <R>(ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, B>
Added in v0.1.0
chainReaderAsyncIterableK
Signature
export declare const chainReaderAsyncIterableK: <A, R, B>(
f: (a: A) => ReaderAsyncIterable<R, B>
) => <E = never>(ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, B>
Added in v0.1.0
chainReaderAsyncIterableKW
Less strict version of chainReaderAsyncIterableK
.
Signature
export declare const chainReaderAsyncIterableKW: <A, R2, B>(
f: (a: A) => ReaderAsyncIterable<R2, B>
) => <R1, E = never>(ma: RAIE.ReaderAsyncIterableEither<R1, E, A>) => RAIE.ReaderAsyncIterableEither<R1 & R2, E, B>
Added in v0.1.0
chainReaderEitherK
Signature
export declare const chainReaderEitherK: <R, E, A, B>(
f: (a: A) => ReaderEither<R, E, B>
) => (ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, B>
Added in v0.1.0
chainReaderEitherKW
Less strict version of chainReaderEitherK
.
Signature
export declare const chainReaderEitherKW: <R2, E2, A, B>(
f: (a: A) => ReaderEither<R2, E2, B>
) => <R1, E1>(ma: RAIE.ReaderAsyncIterableEither<R1, E1, A>) => RAIE.ReaderAsyncIterableEither<R1 & R2, E2 | E1, B>
Added in v0.1.0
chainReaderK
Signature
export declare const chainReaderK: <A, R, B>(
f: (a: A) => Reader<R, B>
) => <E = never>(ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, B>
Added in v0.1.0
chainReaderKW
Less strict version of chainReaderK
.
Signature
export declare const chainReaderKW: <A, R1, B>(
f: (a: A) => Reader<R1, B>
) => <R2, E = never>(ma: RAIE.ReaderAsyncIterableEither<R2, E, A>) => RAIE.ReaderAsyncIterableEither<R1 & R2, E, B>
Added in v0.1.0
chainReaderTaskEitherK
Signature
export declare const chainReaderTaskEitherK: <R, E, A, B>(
f: (a: A) => ReaderTaskEither<R, E, B>
) => (ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, B>
Added in v0.1.0
chainReaderTaskEitherKW
Less strict version of chainReaderEitherK
.
Signature
export declare const chainReaderTaskEitherKW: <R2, E2, A, B>(
f: (a: A) => ReaderTaskEither<R2, E2, B>
) => <R1, E1>(ma: RAIE.ReaderAsyncIterableEither<R1, E1, A>) => RAIE.ReaderAsyncIterableEither<R1 & R2, E2 | E1, B>
Added in v0.1.0
chainTaskEitherK
Signature
export declare const chainTaskEitherK: <E, A, B>(
f: (a: A) => TaskEither<E, B>
) => <R>(ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, B>
Added in v0.1.0
chainTaskEitherKW
Less strict version of chainEitherK
.
Signature
export declare const chainTaskEitherKW: <E2, A, B>(
f: (a: A) => TaskEither<E2, B>
) => <R, E1>(ma: RAIE.ReaderAsyncIterableEither<R, E1, A>) => RAIE.ReaderAsyncIterableEither<R, E2 | E1, B>
Added in v0.1.0
chainWithIndex
Composes computations in sequence, using the return value of one computation to determine the next computation.
Signature
export declare const chainWithIndex: <R, E, A, B>(
f: (i: number, a: A) => RAIE.ReaderAsyncIterableEither<R, E, B>
) => (ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, B>
Added in v0.1.0
filterOrElse
Signature
export declare const filterOrElse: {
<E, A, B extends A>(refinement: Refinement<A, B>, onFalse: (a: A) => E): <R>(
ma: RAIE.ReaderAsyncIterableEither<R, E, A>
) => RAIE.ReaderAsyncIterableEither<R, E, B>
<E, A>(predicate: Predicate<A>, onFalse: (a: A) => E): <R, B extends A>(
mb: RAIE.ReaderAsyncIterableEither<R, E, B>
) => RAIE.ReaderAsyncIterableEither<R, E, B>
<E, A>(predicate: Predicate<A>, onFalse: (a: A) => E): <R>(
ma: RAIE.ReaderAsyncIterableEither<R, E, A>
) => RAIE.ReaderAsyncIterableEither<R, E, A>
}
Added in v0.1.0
filterOrElseW
Less strict version of filterOrElse
.
Signature
export declare const filterOrElseW: {
<A, B extends A, E2>(refinement: Refinement<A, B>, onFalse: (a: A) => E2): <R, E1>(
ma: RAIE.ReaderAsyncIterableEither<R, E1, A>
) => RAIE.ReaderAsyncIterableEither<R, E2 | E1, B>
<A, E2>(predicate: Predicate<A>, onFalse: (a: A) => E2): <R, E1, B extends A>(
mb: RAIE.ReaderAsyncIterableEither<R, E1, B>
) => RAIE.ReaderAsyncIterableEither<R, E2 | E1, B>
<A, E2>(predicate: Predicate<A>, onFalse: (a: A) => E2): <R, E1>(
ma: RAIE.ReaderAsyncIterableEither<R, E1, A>
) => RAIE.ReaderAsyncIterableEither<R, E2 | E1, A>
}
Added in v0.1.0
flatten
Derivable from Chain
.
Signature
export declare const flatten: <R, E, A>(
mma: RAIE.ReaderAsyncIterableEither<R, E, RAIE.ReaderAsyncIterableEither<R, E, A>>
) => RAIE.ReaderAsyncIterableEither<R, E, A>
Added in v0.1.0
flattenW
Less strict version of flatten
.
Signature
export declare const flattenW: <R1, E1, R2, E2, A>(
mma: RAIE.ReaderAsyncIterableEither<R1, E1, RAIE.ReaderAsyncIterableEither<R2, E2, A>>
) => RAIE.ReaderAsyncIterableEither<R1 & R2, E1 | E2, A>
Added in v0.1.0
orElse
Returns ma
if is a Right
or the value returned by onLeft
otherwise.
See also alt.
Signature
export declare const orElse: <R, E1, A, E2>(
onLeft: (e: E1) => RAIE.ReaderAsyncIterableEither<R, E2, A>
) => (ma: RAIE.ReaderAsyncIterableEither<R, E1, A>) => RAIE.ReaderAsyncIterableEither<R, E2, A>
Added in v0.1.0
orElseFirst
Signature
export declare const orElseFirst: <E, R, B>(
onLeft: (e: E) => RAIE.ReaderAsyncIterableEither<R, E, B>
) => <A>(ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, A>
Added in v0.1.0
orElseFirstW
Signature
export declare const orElseFirstW: <E1, R2, E2, B>(
onLeft: (e: E1) => RAIE.ReaderAsyncIterableEither<R2, E2, B>
) => <R1, A>(ma: RAIE.ReaderAsyncIterableEither<R1, E1, A>) => RAIE.ReaderAsyncIterableEither<R1 & R2, E1 | E2, A>
Added in v0.1.0
orElseW
Less strict version of orElse
.
Signature
export declare const orElseW: <E1, R1, E2, B>(
onLeft: (e: E1) => RAIE.ReaderAsyncIterableEither<R1, E2, B>
) => <R2, A>(ma: RAIE.ReaderAsyncIterableEither<R2, E1, A>) => RAIE.ReaderAsyncIterableEither<R1 & R2, E2, B | A>
Added in v0.1.0
orLeft
Signature
export declare const orLeft: <E1, R, E2>(
onLeft: (e: E1) => ReaderAsyncIterable<R, E2>
) => <A>(fa: RAIE.ReaderAsyncIterableEither<R, E1, A>) => RAIE.ReaderAsyncIterableEither<R, E2, A>
Added in v0.1.0
destructors
fold
Alias of matchE
.
Signature
export declare const fold: <R, E, A, B>(
onLeft: (e: E) => ReaderAsyncIterable<R, B>,
onRight: (a: A) => ReaderAsyncIterable<R, B>
) => (ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => ReaderAsyncIterable<R, B>
Added in v0.1.0
foldW
Alias of matchEW
.
Signature
export declare const foldW: <E, R2, B, A, R3, C>(
onLeft: (e: E) => ReaderAsyncIterable<R2, B>,
onRight: (a: A) => ReaderAsyncIterable<R3, C>
) => <R1>(ma: RAIE.ReaderAsyncIterableEither<R1, E, A>) => ReaderAsyncIterable<R1 & R2 & R3, B | C>
Added in v0.1.0
getOrElse
Signature
export declare const getOrElse: <R, E, A>(
onLeft: (e: E) => ReaderAsyncIterable<R, A>
) => (ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => ReaderAsyncIterable<R, A>
Added in v0.1.0
getOrElseW
Less strict version of getOrElse
.
Signature
export declare const getOrElseW: <R2, E, B>(
onLeft: (e: E) => ReaderAsyncIterable<R2, B>
) => <R1, A>(ma: RAIE.ReaderAsyncIterableEither<R1, E, A>) => ReaderAsyncIterable<R1 & R2, B | A>
Added in v0.1.0
matchE
Signature
export declare const matchE: <R, E, A, B>(
onLeft: (e: E) => ReaderAsyncIterable<R, B>,
onRight: (a: A) => ReaderAsyncIterable<R, B>
) => (ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => ReaderAsyncIterable<R, B>
Added in v0.1.0
matchEW
Less strict version of matchE
.
Signature
export declare const matchEW: <E, R2, B, A, R3, C>(
onLeft: (e: E) => ReaderAsyncIterable<R2, B>,
onRight: (a: A) => ReaderAsyncIterable<R3, C>
) => <R1>(ma: RAIE.ReaderAsyncIterableEither<R1, E, A>) => ReaderAsyncIterable<R1 & R2 & R3, B | C>
Added in v0.1.0
instances
Chain
Signature
export declare const Chain: Chain3<'ReaderAsyncIterableEither'>
Added in v0.1.0
ChainWithIndex
Signature
export declare const ChainWithIndex: ChainWithIndex3<'ReaderAsyncIterableEither', number>
Added in v0.1.0
Monad
Signature
export declare const Monad: Monad3<'ReaderAsyncIterableEither'>
Added in v0.1.0
MonadAsyncIterable
Signature
export declare const MonadAsyncIterable: MonadAsyncIterable3<'ReaderAsyncIterableEither'>
Added in v0.1.0
MonadIO
Signature
export declare const MonadIO: MonadIO3<'ReaderAsyncIterableEither'>
Added in v0.1.0
MonadTask
Signature
export declare const MonadTask: MonadTask3<'ReaderAsyncIterableEither'>
Added in v0.1.0
MonadThrow
Signature
export declare const MonadThrow: MonadThrow3<'ReaderAsyncIterableEither'>
Added in v0.1.0
getSemigroup
Get a Semigroup
based on the concatenation of AsyncIterable
s. See also getMonoid
.
Signature
export declare const getSemigroup: <R = unknown, E = never, A = never>() => Semigroup<
RAIE.ReaderAsyncIterableEither<R, E, A>
>
Added in v0.1.0
interop
chainNullableK
Signature
export declare const chainNullableK: <E>(
e: E
) => <A, B>(
f: (a: A) => B | null | undefined
) => <R>(ma: RAIE.ReaderAsyncIterableEither<R, E, A>) => RAIE.ReaderAsyncIterableEither<R, E, NonNullable<B>>
Added in v0.1.0
utils
bind
Signature
export declare const bind: <N, A, R, E, B>(
name: Exclude<N, keyof A>,
f: (a: A) => RAIE.ReaderAsyncIterableEither<R, E, B>
) => (
ma: RAIE.ReaderAsyncIterableEither<R, E, A>
) => RAIE.ReaderAsyncIterableEither<R, E, { readonly [K in N | keyof A]: K extends keyof A ? A[K] : B }>
Added in v0.1.0
bindW
Signature
export declare const bindW: <N extends string, A, R2, E2, B>(
name: Exclude<N, keyof A>,
f: (a: A) => RAIE.ReaderAsyncIterableEither<R2, E2, B>
) => <R1, E1>(
fa: RAIE.ReaderAsyncIterableEither<R1, E1, A>
) => RAIE.ReaderAsyncIterableEither<R1 & R2, E2 | E1, { readonly [K in N | keyof A]: K extends keyof A ? A[K] : B }>
Added in v0.1.0
getMonoid
Signature
export declare const getMonoid: <R = unknown, E = never, A = never>() => Monoid<RAIE.ReaderAsyncIterableEither<R, E, A>>
Added in v0.1.0