Take overview
Added in v2.0.0
Table of contents
constructors
chunk
Creates a Take
with the specified chunk.
Signature
export declare const chunk: <A>(chunk: Chunk.Chunk<A>) => Take<A>
Added in v2.0.0
die
Creates a failing Take
with the specified defect.
Signature
export declare const die: (defect: unknown) => Take<never>
Added in v2.0.0
dieMessage
Creates a failing Take
with the specified error message.
Signature
export declare const dieMessage: (message: string) => Take<never>
Added in v2.0.0
end
Represents the end-of-stream marker.
Signature
export declare const end: Take<never, never>
Added in v2.0.0
fail
Creates a failing Take
with the specified error.
Signature
export declare const fail: <E>(error: E) => Take<never, E>
Added in v2.0.0
failCause
Creates a failing Take
with the specified cause.
Signature
export declare const failCause: <E>(cause: Cause.Cause<E>) => Take<never, E>
Added in v2.0.0
fromEffect
Creates an effect from Effect<A, E, R>
that does not fail, but succeeds with the Take<A, E>
. Error from stream when pulling is converted to Take.failCause
. Creates a single value chunk.
Signature
export declare const fromEffect: <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<Take<A, E>, never, R>
Added in v2.0.0
fromExit
Creates a Take
from an Exit
.
Signature
export declare const fromExit: <A, E>(exit: Exit.Exit<A, E>) => Take<A, E>
Added in v2.0.0
fromPull
Creates effect from Effect<Chunk<A>, Option<E>, R>
that does not fail, but succeeds with the Take<A, E>
. Errors from stream when pulling are converted to Take.failCause
, and the end-of-stream is converted to Take.end
.
Signature
export declare const fromPull: <A, E, R>(
pull: Effect.Effect<Chunk.Chunk<A>, Option.Option<E>, R>
) => Effect.Effect<Take<A, E>, never, R>
Added in v2.0.0
make
Constructs a Take
.
Signature
export declare const make: <A, E>(exit: Exit.Exit<Chunk.Chunk<A>, Option.Option<E>>) => Take<A, E>
Added in v2.0.0
of
Creates a Take
with a single value chunk.
Signature
export declare const of: <A>(value: A) => Take<A>
Added in v2.0.0
destructors
done
Transforms a Take<A, E>
to an Effect<A, E>
.
Signature
export declare const done: <A, E>(self: Take<A, E>) => Effect.Effect<Chunk.Chunk<A>, Option.Option<E>>
Added in v2.0.0
match
Folds over the failure cause, success value and end-of-stream marker to yield a value.
Signature
export declare const match: {
<Z, E, Z2, A, Z3>(options: {
readonly onEnd: () => Z
readonly onFailure: (cause: Cause.Cause<E>) => Z2
readonly onSuccess: (chunk: Chunk.Chunk<A>) => Z3
}): (self: Take<A, E>) => Z | Z2 | Z3
<A, E, Z, Z2, Z3>(
self: Take<A, E>,
options: {
readonly onEnd: () => Z
readonly onFailure: (cause: Cause.Cause<E>) => Z2
readonly onSuccess: (chunk: Chunk.Chunk<A>) => Z3
}
): Z | Z2 | Z3
}
Added in v2.0.0
matchEffect
Effectful version of Take.fold
.
Folds over the failure cause, success value and end-of-stream marker to yield an effect.
Signature
export declare const matchEffect: {
<Z, E2, R, E, Z2, R2, A, Z3, E3, R3>(options: {
readonly onEnd: Effect.Effect<Z, E2, R>
readonly onFailure: (cause: Cause.Cause<E>) => Effect.Effect<Z2, E2, R2>
readonly onSuccess: (chunk: Chunk.Chunk<A>) => Effect.Effect<Z3, E3, R3>
}): (self: Take<A, E>) => Effect.Effect<Z | Z2 | Z3, E2 | E | E3, R | R2 | R3>
<A, E, Z, E2, R, Z2, R2, Z3, E3, R3>(
self: Take<A, E>,
options: {
readonly onEnd: Effect.Effect<Z, E2, R>
readonly onFailure: (cause: Cause.Cause<E>) => Effect.Effect<Z2, E2, R2>
readonly onSuccess: (chunk: Chunk.Chunk<A>) => Effect.Effect<Z3, E3, R3>
}
): Effect.Effect<Z | Z2 | Z3, E | E2 | E3, R | R2 | R3>
}
Added in v2.0.0
getters
isDone
Checks if this take
is done (Take.end
).
Signature
export declare const isDone: <A, E>(self: Take<A, E>) => boolean
Added in v2.0.0
isFailure
Checks if this take
is a failure.
Signature
export declare const isFailure: <A, E>(self: Take<A, E>) => boolean
Added in v2.0.0
isSuccess
Checks if this take
is a success.
Signature
export declare const isSuccess: <A, E>(self: Take<A, E>) => boolean
Added in v2.0.0
mapping
map
Transforms Take<A, E>
to Take<B, A>
by applying function f
.
Signature
export declare const map: {
<A, B>(f: (a: A) => B): <E>(self: Take<A, E>) => Take<B, E>
<A, E, B>(self: Take<A, E>, f: (a: A) => B): Take<B, E>
}
Added in v2.0.0
models
Take (interface)
A Take<A, E>
represents a single take
from a queue modeling a stream of values. A Take
may be a failure cause Cause<E>
, a chunk value Chunk<A>
, or an end-of-stream marker.
Signature
export interface Take<out A, out E = never> extends Take.Variance<A, E>, Pipeable {
/** @internal */
readonly exit: Exit.Exit<Chunk.Chunk<A>, Option.Option<E>>
}
Added in v2.0.0
sequencing
tap
Returns an effect that effectfully “peeks” at the success of this take.
Signature
export declare const tap: {
<A, X, E2, R>(
f: (chunk: Chunk.Chunk<A>) => Effect.Effect<X, E2, R>
): <E>(self: Take<A, E>) => Effect.Effect<void, E2 | E, R>
<A, E, X, E2, R>(
self: Take<A, E>,
f: (chunk: Chunk.Chunk<A>) => Effect.Effect<X, E2, R>
): Effect.Effect<void, E | E2, R>
}
Added in v2.0.0
symbols
TakeTypeId
Signature
export declare const TakeTypeId: typeof TakeTypeId
Added in v2.0.0
TakeTypeId (type alias)
Signature
export type TakeTypeId = typeof TakeTypeId
Added in v2.0.0
utils
Take (namespace)
Added in v2.0.0
Variance (interface)
Signature
export interface Variance<out A, out E> {
readonly [TakeTypeId]: {
readonly _A: Types.Covariant<A>
readonly _E: Types.Covariant<E>
}
}
Added in v2.0.0