Skip to main content Link Search Menu Expand Document (external link)

ReaderAsyncIterable overview

interface ReaderAsyncIterable<R, A> extends Reader<R, AsyncIterable<A>> {}

Added in v0.1.0


Table of contents


Apply

ap

Apply a function to an argument under a type constructor.

Signature

export declare const ap: <R, A>(
  fa: ReaderAsyncIterable<R, A>
) => <B>(fab: ReaderAsyncIterable<R, (a: A) => B>) => ReaderAsyncIterable<R, B>

Added in v0.1.0

apW

Less strict version of ap.

Signature

export declare const apW: <R2, A>(
  fa: ReaderAsyncIterable<R2, A>
) => <R1, B>(fab: ReaderAsyncIterable<R1, (a: A) => B>) => ReaderAsyncIterable<R1 & R2, B>

Added in v0.1.0

Functor

map

map can be used to turn functions (a: A) => B into functions (fa: F<A>) => F<B> whose argument and return types use the type constructor F to represent some computational context.

Signature

export declare const map: <A, B>(f: (a: A) => B) => <R>(fa: ReaderAsyncIterable<R, A>) => ReaderAsyncIterable<R, B>

Added in v0.1.0

FunctorWithIndex

mapWithIndex

Same as map, but the iterating function takes both the index and the value of the element.

Signature

export declare const mapWithIndex: <A, B>(
  f: (i: number, a: A) => B
) => <R>(fa: ReaderAsyncIterable<R, A>) => ReaderAsyncIterable<R, B>

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: (
  C: AIChain
) => <A, R, B>(f: (a: A) => ReaderAsyncIterable<R, B>) => (ma: ReaderAsyncIterable<R, A>) => ReaderAsyncIterable<R, B>

Added in v0.1.0

chainW

Less strict version of chain.

Signature

export declare const chainW: (
  C: AIChain
) => <R2, A, B>(
  f: (a: A) => ReaderAsyncIterable<R2, B>
) => <R1>(ma: ReaderAsyncIterable<R1, A>) => ReaderAsyncIterable<R1 & R2, B>

Added in v0.1.0

Pointed

of

Signature

export declare const of: <E, A>(a: A) => ReaderAsyncIterable<E, A>

Added in v0.1.0

combinators

apFirst

Combine two effectful actions, keeping only the result of the first.

Derivable from Apply.

Signature

export declare const apFirst: <E, B>(
  second: ReaderAsyncIterable<E, B>
) => <A>(first: ReaderAsyncIterable<E, A>) => ReaderAsyncIterable<E, A>

Added in v0.1.0

apSecond

Combine two effectful actions, keeping only the result of the second.

Derivable from Apply.

Signature

export declare const apSecond: <E, B>(
  second: ReaderAsyncIterable<E, B>
) => <A>(first: ReaderAsyncIterable<E, A>) => ReaderAsyncIterable<E, B>

Added in v0.1.0

asksReaderAsyncIterable

Effectfully accesses the environment.

Signature

export declare const asksReaderAsyncIterable: <R, A>(
  f: (r: R) => ReaderAsyncIterable<R, A>
) => ReaderAsyncIterable<R, A>

Added in v0.1.0

asksReaderAsyncIterableW

Less strict version of asksReaderAsyncIterable.

Signature

export declare const asksReaderAsyncIterableW: <R1, R2, A>(
  f: (r1: R1) => ReaderAsyncIterable<R2, A>
) => ReaderAsyncIterable<R1 & R2, A>

Added in v0.1.0

chainAsyncIterableK

Signature

export declare const chainAsyncIterableK: (
  C: AIChain
) => <A, B>(f: (a: A) => AsyncIterable<B>) => <E>(first: ReaderAsyncIterable<E, A>) => ReaderAsyncIterable<E, 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: (
  C: AIChain
) => <A, E, B>(
  f: (a: A) => ReaderAsyncIterable<E, B>
) => (first: ReaderAsyncIterable<E, A>) => ReaderAsyncIterable<E, A>

Added in v0.1.0

chainFirstAsyncIterableK

Signature

export declare const chainFirstAsyncIterableK: (
  C: AIChain
) => <A, B>(f: (a: A) => AsyncIterable<B>) => <E>(first: ReaderAsyncIterable<E, A>) => ReaderAsyncIterable<E, A>

Added in v0.1.0

chainFirstIOK

Signature

export declare const chainFirstIOK: (
  C: AIChain
) => <A, B>(f: (a: A) => IO<B>) => <E>(first: ReaderAsyncIterable<E, A>) => ReaderAsyncIterable<E, A>

Added in v0.1.0

chainFirstReaderK

Signature

export declare const chainFirstReaderK: (
  C: AIChain
) => <A, R, B>(f: (a: A) => R.Reader<R, B>) => (ma: ReaderAsyncIterable<R, A>) => ReaderAsyncIterable<R, A>

Added in v0.1.0

chainFirstReaderKW

Less strict version of chainFirstReaderK.

Signature

export declare const chainFirstReaderKW: (
  C: AIChain
) => <A, R1, B>(f: (a: A) => R.Reader<R1, B>) => <R2>(ma: ReaderAsyncIterable<R2, A>) => ReaderAsyncIterable<R1 & R2, A>

Added in v0.1.0

chainFirstTaskK

Signature

export declare const chainFirstTaskK: (
  C: AIChain
) => <A, B>(f: (a: A) => Task<B>) => <E>(first: ReaderAsyncIterable<E, A>) => ReaderAsyncIterable<E, A>

Added in v0.1.0

chainFirstW

Less strict version of chainFirst.

Derivable from Chain.

Signature

export declare const chainFirstW: (
  C: AIChain
) => <R2, A, B>(
  f: (a: A) => ReaderAsyncIterable<R2, B>
) => <R1>(ma: ReaderAsyncIterable<R1, A>) => ReaderAsyncIterable<R1 & R2, A>

Added in v0.1.0

chainIOK

Signature

export declare const chainIOK: (
  C: AIChain
) => <A, B>(f: (a: A) => IO<B>) => <E>(first: ReaderAsyncIterable<E, A>) => ReaderAsyncIterable<E, B>

Added in v0.1.0

chainReaderK

Signature

export declare const chainReaderK: (
  C: AIChain
) => <A, R, B>(f: (a: A) => R.Reader<R, B>) => (ma: ReaderAsyncIterable<R, A>) => ReaderAsyncIterable<R, B>

Added in v0.1.0

chainReaderKW

Less strict version of chainReaderK.

Signature

export declare const chainReaderKW: (
  C: AIChain
) => <A, R1, B>(f: (a: A) => R.Reader<R1, B>) => <R2>(ma: ReaderAsyncIterable<R2, A>) => ReaderAsyncIterable<R1 & R2, B>

Added in v0.1.0

chainTaskK

Signature

export declare const chainTaskK: (
  C: AIChain
) => <A, B>(f: (a: A) => Task<B>) => <E>(first: ReaderAsyncIterable<E, A>) => ReaderAsyncIterable<E, 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: (
  C: AIChainWithIndex
) => <R, A, B>(
  f: (i: number, a: A) => ReaderAsyncIterable<R, B>
) => (ma: ReaderAsyncIterable<R, A>) => ReaderAsyncIterable<R, B>

Added in v0.1.0

chainWithIndexW

Less strict version of chainWithIndex.

Signature

export declare const chainWithIndexW: (
  C: AIChainWithIndex
) => <R2, A, B>(
  f: (i: number, a: A) => ReaderAsyncIterable<R2, B>
) => <R1>(ma: ReaderAsyncIterable<R1, A>) => ReaderAsyncIterable<R1 & R2, B>

Added in v0.1.0

concat

Signature

export declare const concat: <R, A>(
  second: ReaderAsyncIterable<R, A>
) => (first: ReaderAsyncIterable<R, A>) => ReaderAsyncIterable<R, A>

Added in v0.1.1

concatW

Signature

export declare const concatW: <R2, B>(
  second: ReaderAsyncIterable<R2, B>
) => <R, A>(first: ReaderAsyncIterable<R, A>) => ReaderAsyncIterable<R2 & R, B | A>

Added in v0.1.1

flap

Derivable from Functor.

Signature

export declare const flap: <A>(a: A) => <E, B>(fab: ReaderAsyncIterable<E, (a: A) => B>) => ReaderAsyncIterable<E, B>

Added in v0.1.0

flatten

Derivable from Chain.

Signature

export declare const flatten: (
  C: AIChain
) => <R, A>(mma: ReaderAsyncIterable<R, ReaderAsyncIterable<R, A>>) => ReaderAsyncIterable<R, A>

Added in v0.1.0

flattenW

Less strict version of flatten.

Signature

export declare const flattenW: (
  C: AIChain
) => <R1, R2, A>(mma: ReaderAsyncIterable<R1, ReaderAsyncIterable<R2, A>>) => ReaderAsyncIterable<R1 & R2, A>

Added in v0.1.0

fromAsyncIterableK

Signature

export declare const fromAsyncIterableK: <A, B>(
  f: (...a: A) => AsyncIterable<B>
) => <E>(...a: A) => ReaderAsyncIterable<E, B>

Added in v0.1.0

fromIOK

Signature

export declare const fromIOK: <A, B>(f: (...a: A) => IO<B>) => <E>(...a: A) => ReaderAsyncIterable<E, B>

Added in v0.1.0

fromReaderK

Signature

export declare const fromReaderK: <A, R, B>(f: (...a: A) => R.Reader<R, B>) => (...a: A) => ReaderAsyncIterable<R, B>

Added in v0.1.0

fromTaskK

Signature

export declare const fromTaskK: <A, B>(f: (...a: A) => Task<B>) => <E>(...a: A) => ReaderAsyncIterable<E, B>

Added in v0.1.0

local

Changes the value of the local context during the execution of the action ma (similar to Contravariant’s contramap).

Signature

export declare const local: <R2, R1>(
  f: (r2: R2) => R1
) => <A>(ma: ReaderAsyncIterable<R1, A>) => ReaderAsyncIterable<R2, A>

Added in v0.1.0

constructors

ask

Reads the current context.

Signature

export declare const ask: <R>() => ReaderAsyncIterable<R, R>

Added in v0.1.0

asks

Projects a value from the global context in a ReaderAsyncIterable.

Signature

export declare const asks: <R, A>(f: (r: R) => A) => ReaderAsyncIterable<R, A>

Added in v0.1.0

instances

Applicative

Signature

export declare const Applicative: Applicative2<'ReaderAsyncIterable'>

Added in v0.1.0

Apply

Signature

export declare const Apply: Apply2<'ReaderAsyncIterable'>

Added in v0.1.0

FromAsyncIterable

Signature

export declare const FromAsyncIterable: FromAsyncIterable2<'ReaderAsyncIterable'>

Added in v0.1.0

FromIO

Signature

export declare const FromIO: FromIO2<'ReaderAsyncIterable'>

Added in v0.1.0

FromReader

Signature

export declare const FromReader: FromReader2<'ReaderAsyncIterable'>

Added in v0.1.0

FromTask

Signature

export declare const FromTask: FromTask2<'ReaderAsyncIterable'>

Added in v0.1.0

Functor

Signature

export declare const Functor: Functor2<'ReaderAsyncIterable'>

Added in v0.1.0

Pointed

Signature

export declare const Pointed: Pointed2<'ReaderAsyncIterable'>

Added in v0.1.0

URI

Signature

export declare const URI: 'ReaderAsyncIterable'

Added in v0.1.0

URI (type alias)

Signature

export type URI = typeof URI

Added in v0.1.0

getChain

Signature

export declare const getChain: (C: AIChain) => Chain2<URI>

Added in v0.1.0

getChainWithIndex

Signature

export declare const getChainWithIndex: (C: AIChainWithIndex) => ChainWithIndex2<URI, number>

Added in v0.1.0

getMonad

Signature

export declare const getMonad: (C: AIChain) => Monad2<URI>

Added in v0.1.0

getMonadAsyncIterable

Signature

export declare const getMonadAsyncIterable: (C: AIChainWithIndex) => MonadAsyncIterable2<URI>

Added in v0.1.0

getMonadIO

Signature

export declare const getMonadIO: (C: AIChain) => MonadIO2<URI>

Added in v0.1.0

getMonadTask

Signature

export declare const getMonadTask: (C: AIChain) => MonadTask2<URI>

Added in v0.1.0

model

ReaderAsyncIterable (interface)

Signature

export interface ReaderAsyncIterable<R, A> {
  (r: R): AsyncIterable<A>
}

Added in v0.1.0

natural transformations

fromAsyncIterable

Signature

export declare const fromAsyncIterable: NaturalTransformation12<'AsyncIterable', 'ReaderAsyncIterable'>

Added in v0.1.0

fromIO

Signature

export declare const fromIO: NaturalTransformation12<'IO', 'ReaderAsyncIterable'>

Added in v0.1.0

fromReader

Signature

export declare const fromReader: NaturalTransformation22<'Reader', 'ReaderAsyncIterable'>

Added in v0.1.0

fromTask

Signature

export declare const fromTask: NaturalTransformation12<'Task', 'ReaderAsyncIterable'>

Added in v0.1.0

utils

ApT

Signature

export declare const ApT: ReaderAsyncIterable<unknown, readonly []>

Added in v0.1.0

Do

Signature

export declare const Do: ReaderAsyncIterable<unknown, {}>

Added in v0.1.0

apS

Signature

export declare const apS: <N, A, E, B>(
  name: Exclude<N, keyof A>,
  fb: ReaderAsyncIterable<E, B>
) => (
  fa: ReaderAsyncIterable<E, A>
) => ReaderAsyncIterable<E, { readonly [K in N | keyof A]: K extends keyof A ? A[K] : B }>

Added in v0.1.0

apSW

Signature

export declare const apSW: <A, N extends string, R2, B>(
  name: Exclude<N, keyof A>,
  fb: ReaderAsyncIterable<R2, B>
) => <R1>(
  fa: ReaderAsyncIterable<R1, A>
) => ReaderAsyncIterable<R1 & R2, { readonly [K in N | keyof A]: K extends keyof A ? A[K] : B }>

Added in v0.1.0

bind

Signature

export declare const bind: (
  C: AIChain
) => <N, A, E, B>(
  name: Exclude<N, keyof A>,
  f: (a: A) => ReaderAsyncIterable<E, B>
) => (
  ma: ReaderAsyncIterable<E, A>
) => ReaderAsyncIterable<E, { readonly [K in N | keyof A]: K extends keyof A ? A[K] : B }>

Added in v0.1.0

bindTo

Signature

export declare const bindTo: <N>(
  name: N
) => <E, A>(fa: ReaderAsyncIterable<E, A>) => ReaderAsyncIterable<E, { readonly [K in N]: A }>

Added in v0.1.0

bindW

Signature

export declare const bindW: (
  C: AIChain
) => <N extends string, A, R2, B>(
  name: Exclude<N, keyof A>,
  f: (a: A) => ReaderAsyncIterable<R2, B>
) => <R1>(
  fa: ReaderAsyncIterable<R1, A>
) => ReaderAsyncIterable<R1 & R2, { readonly [K in N | keyof A]: K extends keyof A ? A[K] : B }>

Added in v0.1.0