effect 3.1.0 → 3.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/Array.js +10 -13
- package/dist/cjs/Array.js.map +1 -1
- package/dist/cjs/BigDecimal.js +14 -17
- package/dist/cjs/BigDecimal.js.map +1 -1
- package/dist/cjs/BigInt.js +41 -46
- package/dist/cjs/BigInt.js.map +1 -1
- package/dist/cjs/Boolean.js +13 -13
- package/dist/cjs/Brand.js +2 -2
- package/dist/cjs/Chunk.js +3 -3
- package/dist/cjs/Context.js +15 -20
- package/dist/cjs/Context.js.map +1 -1
- package/dist/cjs/Cron.js +3 -6
- package/dist/cjs/Cron.js.map +1 -1
- package/dist/cjs/Data.js +8 -13
- package/dist/cjs/Data.js.map +1 -1
- package/dist/cjs/Duration.js +1 -1
- package/dist/cjs/Effect.js +77 -9
- package/dist/cjs/Effect.js.map +1 -1
- package/dist/cjs/Either.js +117 -59
- package/dist/cjs/Either.js.map +1 -1
- package/dist/cjs/Equal.js +26 -4
- package/dist/cjs/Equal.js.map +1 -1
- package/dist/cjs/FiberHandle.js.map +1 -1
- package/dist/cjs/FiberMap.js.map +1 -1
- package/dist/cjs/FiberSet.js.map +1 -1
- package/dist/cjs/Function.js +2 -2
- package/dist/cjs/Function.js.map +1 -1
- package/dist/cjs/Hash.js +29 -12
- package/dist/cjs/Hash.js.map +1 -1
- package/dist/cjs/Iterable.js +10 -13
- package/dist/cjs/Iterable.js.map +1 -1
- package/dist/cjs/List.js +2 -2
- package/dist/cjs/Metric.js +5 -7
- package/dist/cjs/Metric.js.map +1 -1
- package/dist/cjs/Number.js +20 -21
- package/dist/cjs/Number.js.map +1 -1
- package/dist/cjs/Option.js +223 -164
- package/dist/cjs/Option.js.map +1 -1
- package/dist/cjs/Order.js +1 -2
- package/dist/cjs/Order.js.map +1 -1
- package/dist/cjs/Ordering.js +2 -2
- package/dist/cjs/Predicate.js +9 -12
- package/dist/cjs/Predicate.js.map +1 -1
- package/dist/cjs/Readable.js.map +1 -1
- package/dist/cjs/Record.js +35 -47
- package/dist/cjs/Record.js.map +1 -1
- package/dist/cjs/RegExp.js +1 -1
- package/dist/cjs/Request.js +2 -2
- package/dist/cjs/Request.js.map +1 -1
- package/dist/cjs/Stream.js +82 -4
- package/dist/cjs/Stream.js.map +1 -1
- package/dist/cjs/String.js +81 -111
- package/dist/cjs/String.js.map +1 -1
- package/dist/cjs/Struct.js +13 -19
- package/dist/cjs/Struct.js.map +1 -1
- package/dist/cjs/Subscribable.js.map +1 -1
- package/dist/cjs/Symbol.js +3 -3
- package/dist/cjs/TestAnnotation.js.map +1 -1
- package/dist/cjs/TestAnnotationMap.js.map +1 -1
- package/dist/cjs/TestAnnotations.js.map +1 -1
- package/dist/cjs/TestClock.js.map +1 -1
- package/dist/cjs/TestLive.js.map +1 -1
- package/dist/cjs/TestSized.js.map +1 -1
- package/dist/cjs/Trie.js +28 -44
- package/dist/cjs/Trie.js.map +1 -1
- package/dist/cjs/Utils.js +35 -1
- package/dist/cjs/Utils.js.map +1 -1
- package/dist/cjs/internal/core-effect.js +4 -11
- package/dist/cjs/internal/core-effect.js.map +1 -1
- package/dist/cjs/internal/core.js +16 -4
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/cjs/internal/doNotation.js +23 -0
- package/dist/cjs/internal/doNotation.js.map +1 -0
- package/dist/cjs/internal/groupBy.js.map +1 -1
- package/dist/cjs/internal/stream.js +3 -7
- package/dist/cjs/internal/stream.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/dts/Array.d.ts +10 -13
- package/dist/dts/Array.d.ts.map +1 -1
- package/dist/dts/BigDecimal.d.ts +14 -17
- package/dist/dts/BigDecimal.d.ts.map +1 -1
- package/dist/dts/BigInt.d.ts +41 -46
- package/dist/dts/BigInt.d.ts.map +1 -1
- package/dist/dts/Boolean.d.ts +13 -13
- package/dist/dts/Brand.d.ts +3 -3
- package/dist/dts/Chunk.d.ts +3 -3
- package/dist/dts/Context.d.ts +15 -20
- package/dist/dts/Context.d.ts.map +1 -1
- package/dist/dts/Cron.d.ts +3 -6
- package/dist/dts/Cron.d.ts.map +1 -1
- package/dist/dts/Data.d.ts +10 -16
- package/dist/dts/Data.d.ts.map +1 -1
- package/dist/dts/Duration.d.ts +1 -1
- package/dist/dts/Effect.d.ts +120 -26
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/Either.d.ts +155 -64
- package/dist/dts/Either.d.ts.map +1 -1
- package/dist/dts/Equal.d.ts.map +1 -1
- package/dist/dts/FiberHandle.d.ts.map +1 -1
- package/dist/dts/FiberMap.d.ts.map +1 -1
- package/dist/dts/FiberSet.d.ts.map +1 -1
- package/dist/dts/Function.d.ts +4 -2
- package/dist/dts/Function.d.ts.map +1 -1
- package/dist/dts/Hash.d.ts.map +1 -1
- package/dist/dts/HashMap.d.ts +2 -2
- package/dist/dts/Iterable.d.ts +10 -13
- package/dist/dts/Iterable.d.ts.map +1 -1
- package/dist/dts/List.d.ts +2 -2
- package/dist/dts/Metric.d.ts +5 -7
- package/dist/dts/Metric.d.ts.map +1 -1
- package/dist/dts/Number.d.ts +20 -21
- package/dist/dts/Number.d.ts.map +1 -1
- package/dist/dts/Option.d.ts +245 -155
- package/dist/dts/Option.d.ts.map +1 -1
- package/dist/dts/Order.d.ts +1 -2
- package/dist/dts/Order.d.ts.map +1 -1
- package/dist/dts/Ordering.d.ts +2 -2
- package/dist/dts/Predicate.d.ts +9 -12
- package/dist/dts/Predicate.d.ts.map +1 -1
- package/dist/dts/Readable.d.ts.map +1 -1
- package/dist/dts/Record.d.ts +35 -47
- package/dist/dts/Record.d.ts.map +1 -1
- package/dist/dts/RegExp.d.ts +1 -1
- package/dist/dts/Request.d.ts +2 -2
- package/dist/dts/Request.d.ts.map +1 -1
- package/dist/dts/Stream.d.ts +136 -31
- package/dist/dts/Stream.d.ts.map +1 -1
- package/dist/dts/String.d.ts +81 -111
- package/dist/dts/String.d.ts.map +1 -1
- package/dist/dts/Struct.d.ts +13 -19
- package/dist/dts/Struct.d.ts.map +1 -1
- package/dist/dts/Subscribable.d.ts.map +1 -1
- package/dist/dts/Symbol.d.ts +3 -3
- package/dist/dts/TestAnnotation.d.ts.map +1 -1
- package/dist/dts/TestAnnotationMap.d.ts.map +1 -1
- package/dist/dts/TestAnnotations.d.ts.map +1 -1
- package/dist/dts/TestClock.d.ts +1 -5
- package/dist/dts/TestClock.d.ts.map +1 -1
- package/dist/dts/TestLive.d.ts.map +1 -1
- package/dist/dts/TestSized.d.ts.map +1 -1
- package/dist/dts/Trie.d.ts +28 -44
- package/dist/dts/Trie.d.ts.map +1 -1
- package/dist/dts/Types.d.ts +10 -10
- package/dist/dts/Utils.d.ts +19 -0
- package/dist/dts/Utils.d.ts.map +1 -1
- package/dist/dts/internal/core.d.ts.map +1 -1
- package/dist/dts/internal/doNotation.d.ts +2 -0
- package/dist/dts/internal/doNotation.d.ts.map +1 -0
- package/dist/dts/internal/stream.d.ts.map +1 -1
- package/dist/esm/Array.js +10 -13
- package/dist/esm/Array.js.map +1 -1
- package/dist/esm/BigDecimal.js +14 -17
- package/dist/esm/BigDecimal.js.map +1 -1
- package/dist/esm/BigInt.js +41 -46
- package/dist/esm/BigInt.js.map +1 -1
- package/dist/esm/Boolean.js +13 -13
- package/dist/esm/Brand.js +2 -2
- package/dist/esm/Chunk.js +3 -3
- package/dist/esm/Context.js +15 -20
- package/dist/esm/Context.js.map +1 -1
- package/dist/esm/Cron.js +3 -6
- package/dist/esm/Cron.js.map +1 -1
- package/dist/esm/Data.js +9 -15
- package/dist/esm/Data.js.map +1 -1
- package/dist/esm/Duration.js +1 -1
- package/dist/esm/Effect.js +101 -11
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/Either.js +141 -61
- package/dist/esm/Either.js.map +1 -1
- package/dist/esm/Equal.js +26 -4
- package/dist/esm/Equal.js.map +1 -1
- package/dist/esm/FiberHandle.js.map +1 -1
- package/dist/esm/FiberMap.js.map +1 -1
- package/dist/esm/FiberSet.js.map +1 -1
- package/dist/esm/Function.js +2 -2
- package/dist/esm/Function.js.map +1 -1
- package/dist/esm/Hash.js +30 -13
- package/dist/esm/Hash.js.map +1 -1
- package/dist/esm/Iterable.js +10 -13
- package/dist/esm/Iterable.js.map +1 -1
- package/dist/esm/List.js +2 -2
- package/dist/esm/Metric.js +5 -7
- package/dist/esm/Metric.js.map +1 -1
- package/dist/esm/Number.js +20 -21
- package/dist/esm/Number.js.map +1 -1
- package/dist/esm/Option.js +249 -164
- package/dist/esm/Option.js.map +1 -1
- package/dist/esm/Order.js +1 -2
- package/dist/esm/Order.js.map +1 -1
- package/dist/esm/Ordering.js +2 -2
- package/dist/esm/Predicate.js +9 -12
- package/dist/esm/Predicate.js.map +1 -1
- package/dist/esm/Readable.js.map +1 -1
- package/dist/esm/Record.js +35 -47
- package/dist/esm/Record.js.map +1 -1
- package/dist/esm/RegExp.js +1 -1
- package/dist/esm/Request.js +2 -2
- package/dist/esm/Request.js.map +1 -1
- package/dist/esm/Stream.js +107 -6
- package/dist/esm/Stream.js.map +1 -1
- package/dist/esm/String.js +81 -111
- package/dist/esm/String.js.map +1 -1
- package/dist/esm/Struct.js +13 -19
- package/dist/esm/Struct.js.map +1 -1
- package/dist/esm/Subscribable.js.map +1 -1
- package/dist/esm/Symbol.js +3 -3
- package/dist/esm/TestAnnotation.js.map +1 -1
- package/dist/esm/TestAnnotationMap.js.map +1 -1
- package/dist/esm/TestAnnotations.js.map +1 -1
- package/dist/esm/TestClock.js.map +1 -1
- package/dist/esm/TestLive.js.map +1 -1
- package/dist/esm/TestSized.js.map +1 -1
- package/dist/esm/Trie.js +28 -44
- package/dist/esm/Trie.js.map +1 -1
- package/dist/esm/Utils.js +33 -0
- package/dist/esm/Utils.js.map +1 -1
- package/dist/esm/internal/core-effect.js +4 -11
- package/dist/esm/internal/core-effect.js.map +1 -1
- package/dist/esm/internal/core.js +16 -4
- package/dist/esm/internal/core.js.map +1 -1
- package/dist/esm/internal/doNotation.js +14 -0
- package/dist/esm/internal/doNotation.js.map +1 -0
- package/dist/esm/internal/groupBy.js.map +1 -1
- package/dist/esm/internal/stream.js +3 -7
- package/dist/esm/internal/stream.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/package.json +1 -1
- package/src/Array.ts +10 -13
- package/src/BigDecimal.ts +14 -17
- package/src/BigInt.ts +41 -46
- package/src/Boolean.ts +13 -13
- package/src/Brand.ts +3 -3
- package/src/Chunk.ts +3 -3
- package/src/Context.ts +15 -20
- package/src/Cron.ts +3 -6
- package/src/Data.ts +10 -16
- package/src/Duration.ts +1 -1
- package/src/Effect.ts +122 -32
- package/src/Either.ts +161 -94
- package/src/Equal.ts +30 -9
- package/src/FiberHandle.ts +1 -1
- package/src/FiberMap.ts +1 -1
- package/src/FiberSet.ts +1 -1
- package/src/Function.ts +4 -2
- package/src/Hash.ts +30 -13
- package/src/HashMap.ts +2 -2
- package/src/Iterable.ts +10 -13
- package/src/List.ts +2 -2
- package/src/Metric.ts +5 -7
- package/src/Number.ts +20 -21
- package/src/Option.ts +250 -172
- package/src/Order.ts +1 -2
- package/src/Ordering.ts +2 -2
- package/src/Predicate.ts +9 -12
- package/src/Readable.ts +1 -1
- package/src/Record.ts +35 -47
- package/src/RegExp.ts +1 -1
- package/src/Request.ts +3 -3
- package/src/Stream.ts +137 -36
- package/src/String.ts +81 -111
- package/src/Struct.ts +13 -19
- package/src/Subscribable.ts +1 -1
- package/src/Symbol.ts +3 -3
- package/src/TestAnnotation.ts +1 -1
- package/src/TestAnnotationMap.ts +1 -1
- package/src/TestAnnotations.ts +1 -1
- package/src/TestClock.ts +1 -5
- package/src/TestLive.ts +1 -1
- package/src/TestSized.ts +1 -1
- package/src/Trie.ts +28 -44
- package/src/Types.ts +10 -10
- package/src/Utils.ts +40 -2
- package/src/internal/core-effect.ts +29 -45
- package/src/internal/core.ts +20 -4
- package/src/internal/doNotation.ts +77 -0
- package/src/internal/groupBy.ts +16 -16
- package/src/internal/stream.ts +34 -58
- package/src/internal/version.ts +1 -1
package/src/internal/groupBy.ts
CHANGED
|
@@ -13,7 +13,7 @@ import * as Queue from "../Queue.js"
|
|
|
13
13
|
import * as Ref from "../Ref.js"
|
|
14
14
|
import type * as Stream from "../Stream.js"
|
|
15
15
|
import type * as Take from "../Take.js"
|
|
16
|
-
import type {
|
|
16
|
+
import type { NoInfer } from "../Types.js"
|
|
17
17
|
import * as channel from "./channel.js"
|
|
18
18
|
import * as channelExecutor from "./channel/channelExecutor.js"
|
|
19
19
|
import * as core from "./core-stream.js"
|
|
@@ -274,35 +274,35 @@ export const mapEffectOptions = dual<
|
|
|
274
274
|
|
|
275
275
|
/** @internal */
|
|
276
276
|
export const bindEffect = dual<
|
|
277
|
-
<N extends string,
|
|
278
|
-
tag: Exclude<N, keyof
|
|
279
|
-
f: (_:
|
|
277
|
+
<N extends string, A, B, E2, R2>(
|
|
278
|
+
tag: Exclude<N, keyof A>,
|
|
279
|
+
f: (_: A) => Effect.Effect<B, E2, R2>,
|
|
280
280
|
options?: {
|
|
281
281
|
readonly concurrency?: number | "unbounded" | undefined
|
|
282
282
|
readonly bufferSize?: number | undefined
|
|
283
283
|
}
|
|
284
|
-
) => <E, R>(self: Stream.Stream<
|
|
285
|
-
|
|
284
|
+
) => <E, R>(self: Stream.Stream<A, E, R>) => Stream.Stream<
|
|
285
|
+
{ [K in keyof A | N]: K extends keyof A ? A[K] : B },
|
|
286
286
|
E | E2,
|
|
287
287
|
R | R2
|
|
288
288
|
>,
|
|
289
|
-
<
|
|
290
|
-
self: Stream.Stream<
|
|
291
|
-
tag: Exclude<N, keyof
|
|
292
|
-
f: (_:
|
|
289
|
+
<A, E, R, N extends string, B, E2, R2>(
|
|
290
|
+
self: Stream.Stream<A, E, R>,
|
|
291
|
+
tag: Exclude<N, keyof A>,
|
|
292
|
+
f: (_: A) => Effect.Effect<B, E2, R2>,
|
|
293
293
|
options?: {
|
|
294
294
|
readonly concurrency?: number | "unbounded" | undefined
|
|
295
295
|
readonly unordered?: boolean | undefined
|
|
296
296
|
}
|
|
297
297
|
) => Stream.Stream<
|
|
298
|
-
|
|
298
|
+
{ [K in keyof A | N]: K extends keyof A ? A[K] : B },
|
|
299
299
|
E | E2,
|
|
300
300
|
R | R2
|
|
301
301
|
>
|
|
302
|
-
>((args) => typeof args[0] !== "string", <
|
|
303
|
-
self: Stream.Stream<
|
|
304
|
-
tag: Exclude<N, keyof
|
|
305
|
-
f: (_:
|
|
302
|
+
>((args) => typeof args[0] !== "string", <A, E, R, N extends string, B, E2, R2>(
|
|
303
|
+
self: Stream.Stream<A, E, R>,
|
|
304
|
+
tag: Exclude<N, keyof A>,
|
|
305
|
+
f: (_: A) => Effect.Effect<B, E2, R2>,
|
|
306
306
|
options?: {
|
|
307
307
|
readonly concurrency?: number | "unbounded" | undefined
|
|
308
308
|
readonly unordered?: boolean | undefined
|
|
@@ -311,7 +311,7 @@ export const bindEffect = dual<
|
|
|
311
311
|
mapEffectOptions(self, (k) =>
|
|
312
312
|
Effect.map(
|
|
313
313
|
f(k),
|
|
314
|
-
(a)
|
|
314
|
+
(a) => ({ ...k, [tag]: a } as { [K in keyof A | N]: K extends keyof A ? A[K] : B })
|
|
315
315
|
), options))
|
|
316
316
|
|
|
317
317
|
const mapDequeue = <A, B>(dequeue: Queue.Dequeue<A>, f: (a: A) => B): Queue.Dequeue<B> => new MapDequeue(dequeue, f)
|
package/src/internal/stream.ts
CHANGED
|
@@ -31,12 +31,13 @@ import * as HaltStrategy from "../StreamHaltStrategy.js"
|
|
|
31
31
|
import type * as Take from "../Take.js"
|
|
32
32
|
import type * as Tracer from "../Tracer.js"
|
|
33
33
|
import * as Tuple from "../Tuple.js"
|
|
34
|
-
import type {
|
|
34
|
+
import type { NoInfer } from "../Types.js"
|
|
35
35
|
import * as channel from "./channel.js"
|
|
36
36
|
import * as channelExecutor from "./channel/channelExecutor.js"
|
|
37
37
|
import * as MergeStrategy from "./channel/mergeStrategy.js"
|
|
38
38
|
import * as singleProducerAsyncInput from "./channel/singleProducerAsyncInput.js"
|
|
39
39
|
import * as core from "./core-stream.js"
|
|
40
|
+
import * as doNotation from "./doNotation.js"
|
|
40
41
|
import { RingBuffer } from "./ringBuffer.js"
|
|
41
42
|
import * as _sink from "./sink.js"
|
|
42
43
|
import * as DebounceState from "./stream/debounceState.js"
|
|
@@ -7921,35 +7922,35 @@ export const Do: Stream.Stream<{}> = succeed({})
|
|
|
7921
7922
|
|
|
7922
7923
|
/** @internal */
|
|
7923
7924
|
export const bind = dual<
|
|
7924
|
-
<N extends string,
|
|
7925
|
-
tag: Exclude<N, keyof
|
|
7926
|
-
f: (_:
|
|
7925
|
+
<N extends string, A, B, E2, R2>(
|
|
7926
|
+
tag: Exclude<N, keyof A>,
|
|
7927
|
+
f: (_: A) => Stream.Stream<B, E2, R2>,
|
|
7927
7928
|
options?: {
|
|
7928
7929
|
readonly concurrency?: number | "unbounded" | undefined
|
|
7929
7930
|
readonly bufferSize?: number | undefined
|
|
7930
7931
|
}
|
|
7931
|
-
) => <E, R>(self: Stream.Stream<
|
|
7932
|
-
|
|
7932
|
+
) => <E, R>(self: Stream.Stream<A, E, R>) => Stream.Stream<
|
|
7933
|
+
{ [K in keyof A | N]: K extends keyof A ? A[K] : B },
|
|
7933
7934
|
E | E2,
|
|
7934
7935
|
R | R2
|
|
7935
7936
|
>,
|
|
7936
|
-
<
|
|
7937
|
-
self: Stream.Stream<
|
|
7938
|
-
tag: Exclude<N, keyof
|
|
7939
|
-
f: (_:
|
|
7937
|
+
<A, E, R, N extends string, B, E2, R2>(
|
|
7938
|
+
self: Stream.Stream<A, E, R>,
|
|
7939
|
+
tag: Exclude<N, keyof A>,
|
|
7940
|
+
f: (_: A) => Stream.Stream<B, E2, R2>,
|
|
7940
7941
|
options?: {
|
|
7941
7942
|
readonly concurrency?: number | "unbounded" | undefined
|
|
7942
7943
|
readonly bufferSize?: number | undefined
|
|
7943
7944
|
}
|
|
7944
7945
|
) => Stream.Stream<
|
|
7945
|
-
|
|
7946
|
+
{ [K in keyof A | N]: K extends keyof A ? A[K] : B },
|
|
7946
7947
|
E | E2,
|
|
7947
7948
|
R | R2
|
|
7948
7949
|
>
|
|
7949
|
-
>((args) => typeof args[0] !== "string", <
|
|
7950
|
-
self: Stream.Stream<
|
|
7951
|
-
tag: Exclude<N, keyof
|
|
7952
|
-
f: (_:
|
|
7950
|
+
>((args) => typeof args[0] !== "string", <A, E, R, N extends string, B, E2, R2>(
|
|
7951
|
+
self: Stream.Stream<A, E, R>,
|
|
7952
|
+
tag: Exclude<N, keyof A>,
|
|
7953
|
+
f: (_: A) => Stream.Stream<B, E2, R2>,
|
|
7953
7954
|
options?: {
|
|
7954
7955
|
readonly concurrency?: number | "unbounded" | undefined
|
|
7955
7956
|
readonly bufferSize?: number | undefined
|
|
@@ -7958,54 +7959,29 @@ export const bind = dual<
|
|
|
7958
7959
|
flatMap(self, (k) =>
|
|
7959
7960
|
map(
|
|
7960
7961
|
f(k),
|
|
7961
|
-
(a)
|
|
7962
|
+
(a) => ({ ...k, [tag]: a } as { [K in keyof A | N]: K extends keyof A ? A[K] : B })
|
|
7962
7963
|
), options))
|
|
7963
7964
|
|
|
7964
7965
|
/* @internal */
|
|
7965
|
-
export const bindTo
|
|
7966
|
-
<N extends string>(
|
|
7967
|
-
|
|
7968
|
-
|
|
7969
|
-
R
|
|
7970
|
-
>,
|
|
7971
|
-
<A, E, R, N extends string>(
|
|
7972
|
-
self: Stream.Stream<A, E, R>,
|
|
7973
|
-
tag: N
|
|
7974
|
-
) => Stream.Stream<
|
|
7975
|
-
Record<N, A>,
|
|
7976
|
-
E,
|
|
7977
|
-
R
|
|
7978
|
-
>
|
|
7979
|
-
>(
|
|
7980
|
-
2,
|
|
7981
|
-
<A, E, R, N extends string>(self: Stream.Stream<A, E, R>, tag: N): Stream.Stream<Record<N, A>, E, R> =>
|
|
7982
|
-
map(self, (a) => ({ [tag]: a } as Record<N, A>))
|
|
7983
|
-
)
|
|
7966
|
+
export const bindTo: {
|
|
7967
|
+
<N extends string>(name: N): <A, E, R>(self: Stream.Stream<A, E, R>) => Stream.Stream<{ [K in N]: A }, E, R>
|
|
7968
|
+
<A, E, R, N extends string>(self: Stream.Stream<A, E, R>, name: N): Stream.Stream<{ [K in N]: A }, E, R>
|
|
7969
|
+
} = doNotation.bindTo<Stream.StreamTypeLambda>(map)
|
|
7984
7970
|
|
|
7985
7971
|
/* @internal */
|
|
7986
|
-
export const let_
|
|
7987
|
-
<N extends string,
|
|
7988
|
-
|
|
7989
|
-
f: (
|
|
7990
|
-
)
|
|
7991
|
-
|
|
7992
|
-
|
|
7993
|
-
|
|
7994
|
-
|
|
7995
|
-
|
|
7996
|
-
|
|
7997
|
-
|
|
7998
|
-
|
|
7999
|
-
) => Stream.Stream<
|
|
8000
|
-
MergeRecord<K, { [k in N]: A }>,
|
|
8001
|
-
E,
|
|
8002
|
-
R
|
|
8003
|
-
>
|
|
8004
|
-
>(3, <K, E, R, N extends string, A>(self: Stream.Stream<K, E, R>, tag: Exclude<N, keyof K>, f: (_: K) => A) =>
|
|
8005
|
-
map(
|
|
8006
|
-
self,
|
|
8007
|
-
(k): MergeRecord<K, { [k in N]: A }> => ({ ...k, [tag]: f(k) } as any)
|
|
8008
|
-
))
|
|
7972
|
+
export const let_: {
|
|
7973
|
+
<N extends string, A extends object, B>(
|
|
7974
|
+
name: Exclude<N, keyof A>,
|
|
7975
|
+
f: (a: A) => B
|
|
7976
|
+
): <E, R>(
|
|
7977
|
+
self: Stream.Stream<A, E, R>
|
|
7978
|
+
) => Stream.Stream<{ [K in N | keyof A]: K extends keyof A ? A[K] : B }, E, R>
|
|
7979
|
+
<A extends object, E, R, N extends string, B>(
|
|
7980
|
+
self: Stream.Stream<A, E, R>,
|
|
7981
|
+
name: Exclude<N, keyof A>,
|
|
7982
|
+
f: (a: A) => B
|
|
7983
|
+
): Stream.Stream<{ [K in N | keyof A]: K extends keyof A ? A[K] : B }, E, R>
|
|
7984
|
+
} = doNotation.let_<Stream.StreamTypeLambda>(map)
|
|
8009
7985
|
|
|
8010
7986
|
// Circular with Channel
|
|
8011
7987
|
|
package/src/internal/version.ts
CHANGED