@typed/fx 1.22.2 → 1.23.0
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/Form.js.map +1 -1
- package/dist/cjs/Fx.js.map +1 -1
- package/dist/cjs/Idle.js.map +1 -1
- package/dist/cjs/Match.js.map +1 -1
- package/dist/cjs/Pull.js.map +1 -1
- package/dist/cjs/Subject.js.map +1 -1
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/cjs/internal/helpers.js.map +1 -1
- package/dist/cjs/internal/keyed.js +1 -1
- package/dist/cjs/internal/keyed.js.map +1 -1
- package/dist/cjs/internal/share.js.map +1 -1
- package/dist/cjs/internal/sync-producer.js.map +1 -1
- package/dist/dts/AsyncData.d.ts +33 -33
- package/dist/dts/AsyncData.d.ts.map +1 -1
- package/dist/dts/Emitter.d.ts +6 -6
- package/dist/dts/Emitter.d.ts.map +1 -1
- package/dist/dts/Form.d.ts +12 -12
- package/dist/dts/Form.d.ts.map +1 -1
- package/dist/dts/FormEntry.d.ts +9 -9
- package/dist/dts/FormEntry.d.ts.map +1 -1
- package/dist/dts/Fx.d.ts +113 -113
- package/dist/dts/Fx.d.ts.map +1 -1
- package/dist/dts/Guard.d.ts +5 -5
- package/dist/dts/Guard.d.ts.map +1 -1
- package/dist/dts/Idle.d.ts +12 -12
- package/dist/dts/Idle.d.ts.map +1 -1
- package/dist/dts/Pull.d.ts +5 -5
- package/dist/dts/Pull.d.ts.map +1 -1
- package/dist/dts/Push.d.ts +20 -20
- package/dist/dts/Push.d.ts.map +1 -1
- package/dist/dts/RefArray.d.ts +33 -33
- package/dist/dts/RefArray.d.ts.map +1 -1
- package/dist/dts/RefChunk.d.ts +27 -27
- package/dist/dts/RefChunk.d.ts.map +1 -1
- package/dist/dts/RefHashMap.d.ts +17 -17
- package/dist/dts/RefHashMap.d.ts.map +1 -1
- package/dist/dts/RefHashSet.d.ts +5 -5
- package/dist/dts/RefHashSet.d.ts.map +1 -1
- package/dist/dts/RefSubject.d.ts +53 -53
- package/dist/dts/RefSubject.d.ts.map +1 -1
- package/dist/dts/Sink.d.ts +31 -31
- package/dist/dts/Sink.d.ts.map +1 -1
- package/dist/dts/Stream.d.ts +11 -11
- package/dist/dts/Stream.d.ts.map +1 -1
- package/dist/dts/Subject.d.ts +5 -5
- package/dist/dts/Subject.d.ts.map +1 -1
- package/dist/dts/Versioned.d.ts +11 -11
- package/dist/dts/Versioned.d.ts.map +1 -1
- package/dist/dts/internal/DeferredRef.d.ts +7 -7
- package/dist/dts/internal/core.d.ts +51 -51
- package/dist/dts/internal/core.d.ts.map +1 -1
- package/dist/dts/internal/effect-loop-operator.d.ts +4 -4
- package/dist/dts/internal/effect-loop-operator.d.ts.map +1 -1
- package/dist/dts/internal/effect-operator.d.ts +11 -11
- package/dist/dts/internal/effect-operator.d.ts.map +1 -1
- package/dist/dts/internal/effect-producer.d.ts +9 -9
- package/dist/dts/internal/effect-producer.d.ts.map +1 -1
- package/dist/dts/internal/helpers.d.ts +25 -25
- package/dist/dts/internal/helpers.d.ts.map +1 -1
- package/dist/dts/internal/protos.d.ts +9 -9
- package/dist/dts/internal/protos.d.ts.map +1 -1
- package/dist/dts/internal/provide.d.ts +10 -10
- package/dist/dts/internal/provide.d.ts.map +1 -1
- package/dist/dts/internal/share.d.ts +2 -2
- package/dist/dts/internal/share.d.ts.map +1 -1
- package/dist/dts/internal/sync-producer.d.ts +6 -6
- package/dist/dts/internal/sync-producer.d.ts.map +1 -1
- package/dist/esm/Form.js.map +1 -1
- package/dist/esm/FormEntry.js.map +1 -1
- package/dist/esm/Fx.js.map +1 -1
- package/dist/esm/Idle.js.map +1 -1
- package/dist/esm/Match.js.map +1 -1
- package/dist/esm/Pull.js.map +1 -1
- package/dist/esm/RefSubject.js.map +1 -1
- package/dist/esm/Subject.js.map +1 -1
- package/dist/esm/internal/core.js.map +1 -1
- package/dist/esm/internal/helpers.js.map +1 -1
- package/dist/esm/internal/keyed.js +1 -1
- package/dist/esm/internal/keyed.js.map +1 -1
- package/dist/esm/internal/share.js.map +1 -1
- package/dist/esm/internal/sync-producer.js.map +1 -1
- package/package.json +6 -6
- package/src/AsyncData.ts +86 -86
- package/src/Emitter.ts +9 -9
- package/src/Form.ts +39 -39
- package/src/FormEntry.ts +25 -25
- package/src/Fx.ts +122 -124
- package/src/Guard.ts +7 -7
- package/src/Idle.ts +23 -23
- package/src/Match.ts +3 -3
- package/src/Pull.ts +10 -10
- package/src/Push.ts +33 -33
- package/src/RefArray.ts +36 -36
- package/src/RefChunk.ts +30 -30
- package/src/RefHashMap.ts +24 -24
- package/src/RefHashSet.ts +6 -6
- package/src/RefSubject.ts +184 -184
- package/src/Sink.ts +91 -91
- package/src/Stream.ts +19 -19
- package/src/Subject.ts +21 -21
- package/src/Versioned.ts +23 -23
- package/src/internal/DeferredRef.ts +6 -6
- package/src/internal/core.ts +132 -132
- package/src/internal/effect-loop-operator.ts +4 -4
- package/src/internal/effect-operator.ts +13 -13
- package/src/internal/effect-producer.ts +14 -14
- package/src/internal/helpers.ts +36 -36
- package/src/internal/keyed.ts +3 -3
- package/src/internal/protos.ts +12 -12
- package/src/internal/provide.ts +10 -10
- package/src/internal/share.ts +4 -4
- package/src/internal/sync-producer.ts +12 -12
package/src/RefArray.ts
CHANGED
|
@@ -28,18 +28,18 @@ export interface RefArray<out R, in out E, in out A> extends RefSubject.RefSubje
|
|
|
28
28
|
* @category constructors
|
|
29
29
|
*/
|
|
30
30
|
export function make<R, E, A>(
|
|
31
|
-
initial: Effect.Effect<
|
|
31
|
+
initial: Effect.Effect<ReadonlyArray<A>, E, R>,
|
|
32
32
|
eq?: Equivalence<A>
|
|
33
|
-
): Effect.Effect<
|
|
33
|
+
): Effect.Effect<RefArray<never, E, A>, never, R | Scope.Scope>
|
|
34
34
|
export function make<R, E, A>(
|
|
35
35
|
initial: Fx.Fx<R, E, ReadonlyArray<A>>,
|
|
36
36
|
eq?: Equivalence<A>
|
|
37
|
-
): Effect.Effect<
|
|
37
|
+
): Effect.Effect<RefArray<never, E, A>, never, R | Scope.Scope>
|
|
38
38
|
|
|
39
39
|
export function make<R, E, A>(
|
|
40
|
-
initial: Effect.Effect<
|
|
40
|
+
initial: Effect.Effect<ReadonlyArray<A>, E, R> | Fx.Fx<R, E, ReadonlyArray<A>>,
|
|
41
41
|
eq: Equivalence<A> = equals
|
|
42
|
-
): Effect.Effect<
|
|
42
|
+
): Effect.Effect<RefArray<never, E, A>, never, R | Scope.Scope> {
|
|
43
43
|
return RefSubject.make(
|
|
44
44
|
initial,
|
|
45
45
|
{
|
|
@@ -91,8 +91,8 @@ export function tagged(): {
|
|
|
91
91
|
* @category combinators
|
|
92
92
|
*/
|
|
93
93
|
export const prepend: {
|
|
94
|
-
<A>(value: A): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<
|
|
95
|
-
<R, E, A>(ref: RefArray<R, E, A>, value: A): Effect.Effect<
|
|
94
|
+
<A>(value: A): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
|
|
95
|
+
<R, E, A>(ref: RefArray<R, E, A>, value: A): Effect.Effect<ReadonlyArray<A>, E, R>
|
|
96
96
|
} = dual(2, function prepend<R, E, A>(ref: RefArray<R, E, A>, value: A) {
|
|
97
97
|
return RefSubject.update(ref, ReadonlyArray.prepend(value))
|
|
98
98
|
})
|
|
@@ -103,8 +103,8 @@ export const prepend: {
|
|
|
103
103
|
* @category combinators
|
|
104
104
|
*/
|
|
105
105
|
export const prependAll: {
|
|
106
|
-
<A>(value: Iterable<A>): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<
|
|
107
|
-
<R, E, A>(ref: RefArray<R, E, A>, value: Iterable<A>): Effect.Effect<
|
|
106
|
+
<A>(value: Iterable<A>): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
|
|
107
|
+
<R, E, A>(ref: RefArray<R, E, A>, value: Iterable<A>): Effect.Effect<ReadonlyArray<A>, E, R>
|
|
108
108
|
} = dual(
|
|
109
109
|
2,
|
|
110
110
|
function prependAll<R, E, A>(ref: RefArray<R, E, A>, value: Iterable<A>) {
|
|
@@ -118,8 +118,8 @@ export const prependAll: {
|
|
|
118
118
|
* @category combinators
|
|
119
119
|
*/
|
|
120
120
|
export const append: {
|
|
121
|
-
<A>(value: A): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<
|
|
122
|
-
<R, E, A>(ref: RefArray<R, E, A>, value: A): Effect.Effect<
|
|
121
|
+
<A>(value: A): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
|
|
122
|
+
<R, E, A>(ref: RefArray<R, E, A>, value: A): Effect.Effect<ReadonlyArray<A>, E, R>
|
|
123
123
|
} = dual(2, function append<R, E, A>(ref: RefArray<R, E, A>, value: A) {
|
|
124
124
|
return RefSubject.update(ref, ReadonlyArray.append(value))
|
|
125
125
|
})
|
|
@@ -132,8 +132,8 @@ export const append: {
|
|
|
132
132
|
export const appendAll: {
|
|
133
133
|
<A>(
|
|
134
134
|
value: Iterable<A>
|
|
135
|
-
): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<
|
|
136
|
-
<R, E, A>(ref: RefArray<R, E, A>, value: Iterable<A>): Effect.Effect<
|
|
135
|
+
): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
|
|
136
|
+
<R, E, A>(ref: RefArray<R, E, A>, value: Iterable<A>): Effect.Effect<ReadonlyArray<A>, E, R>
|
|
137
137
|
} = dual(2, function appendAll<R, E, A>(ref: RefArray<R, E, A>, value: Iterable<A>) {
|
|
138
138
|
return RefSubject.update(ref, ReadonlyArray.appendAll(value))
|
|
139
139
|
})
|
|
@@ -144,8 +144,8 @@ export const appendAll: {
|
|
|
144
144
|
* @category combinators
|
|
145
145
|
*/
|
|
146
146
|
export const drop: {
|
|
147
|
-
(n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<
|
|
148
|
-
<R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<
|
|
147
|
+
(n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
|
|
148
|
+
<R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<ReadonlyArray<A>, E, R>
|
|
149
149
|
} = dual(2, function drop<R, E, A>(ref: RefArray<R, E, A>, n: number) {
|
|
150
150
|
return RefSubject.update(ref, ReadonlyArray.drop(n))
|
|
151
151
|
})
|
|
@@ -156,8 +156,8 @@ export const drop: {
|
|
|
156
156
|
* @category combinators
|
|
157
157
|
*/
|
|
158
158
|
export const dropRight: {
|
|
159
|
-
(n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<
|
|
160
|
-
<R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<
|
|
159
|
+
(n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
|
|
160
|
+
<R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<ReadonlyArray<A>, E, R>
|
|
161
161
|
} = dual(2, function dropRight<R, E, A>(ref: RefArray<R, E, A>, n: number) {
|
|
162
162
|
return RefSubject.update(ref, ReadonlyArray.dropRight(n))
|
|
163
163
|
})
|
|
@@ -170,11 +170,11 @@ export const dropRight: {
|
|
|
170
170
|
export const dropWhile: {
|
|
171
171
|
<A>(
|
|
172
172
|
predicate: (a: A) => boolean
|
|
173
|
-
): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<
|
|
173
|
+
): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
|
|
174
174
|
<R, E, A>(
|
|
175
175
|
ref: RefArray<R, E, A>,
|
|
176
176
|
predicate: (a: unknown) => boolean
|
|
177
|
-
): Effect.Effect<
|
|
177
|
+
): Effect.Effect<ReadonlyArray<A>, E, R>
|
|
178
178
|
} = dual(
|
|
179
179
|
2,
|
|
180
180
|
function dropWhile<R, E, A>(ref: RefArray<R, E, A>, predicate: (a: unknown) => boolean) {
|
|
@@ -239,12 +239,12 @@ export const insertAt: {
|
|
|
239
239
|
<A>(
|
|
240
240
|
index: number,
|
|
241
241
|
a: A
|
|
242
|
-
): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<
|
|
242
|
+
): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
|
|
243
243
|
<R, E, A>(
|
|
244
244
|
ref: RefArray<R, E, A>,
|
|
245
245
|
index: number,
|
|
246
246
|
a: A
|
|
247
|
-
): Effect.Effect<
|
|
247
|
+
): Effect.Effect<ReadonlyArray<A>, E, R>
|
|
248
248
|
} = dual(3, function insertAt<R, E, A>(ref: RefArray<R, E, A>, index: number, a: A) {
|
|
249
249
|
return RefSubject.update(ref, (as) => Option.getOrElse(ReadonlyArray.insertAt(as, index, a), () => [...as, a]))
|
|
250
250
|
})
|
|
@@ -320,12 +320,12 @@ export const modifyAt: {
|
|
|
320
320
|
<A>(
|
|
321
321
|
index: number,
|
|
322
322
|
f: (a: A) => A
|
|
323
|
-
): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<
|
|
323
|
+
): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
|
|
324
324
|
<R, E, A>(
|
|
325
325
|
ref: RefArray<R, E, A>,
|
|
326
326
|
index: number,
|
|
327
327
|
f: (a: A) => A
|
|
328
|
-
): Effect.Effect<
|
|
328
|
+
): Effect.Effect<ReadonlyArray<A>, E, R>
|
|
329
329
|
} = dual(3, function modifyAt<R, E, A>(ref: RefArray<R, E, A>, index: number, f: (a: A) => A) {
|
|
330
330
|
return RefSubject.update(ref, ReadonlyArray.modify(index, f))
|
|
331
331
|
})
|
|
@@ -407,12 +407,12 @@ export const replaceAt: {
|
|
|
407
407
|
<A>(
|
|
408
408
|
index: number,
|
|
409
409
|
a: A
|
|
410
|
-
): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<
|
|
410
|
+
): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
|
|
411
411
|
<R, E, A>(
|
|
412
412
|
ref: RefArray<R, E, A>,
|
|
413
413
|
index: number,
|
|
414
414
|
a: A
|
|
415
|
-
): Effect.Effect<
|
|
415
|
+
): Effect.Effect<ReadonlyArray<A>, E, R>
|
|
416
416
|
} = dual(3, function replaceAt<R, E, A>(ref: RefArray<R, E, A>, index: number, a: A) {
|
|
417
417
|
return RefSubject.update(ref, ReadonlyArray.replace(index, a))
|
|
418
418
|
})
|
|
@@ -423,8 +423,8 @@ export const replaceAt: {
|
|
|
423
423
|
* @category combinators
|
|
424
424
|
*/
|
|
425
425
|
export const rotate: {
|
|
426
|
-
(n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<
|
|
427
|
-
<R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<
|
|
426
|
+
(n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
|
|
427
|
+
<R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<ReadonlyArray<A>, E, R>
|
|
428
428
|
} = dual(2, function rotate<R, E, A>(ref: RefArray<R, E, A>, n: number) {
|
|
429
429
|
return RefSubject.update(ref, ReadonlyArray.rotate(n))
|
|
430
430
|
})
|
|
@@ -437,11 +437,11 @@ export const rotate: {
|
|
|
437
437
|
export const sortBy: {
|
|
438
438
|
<A>(
|
|
439
439
|
orders: Iterable<Order.Order<A>>
|
|
440
|
-
): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<
|
|
440
|
+
): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
|
|
441
441
|
<R, E, A>(
|
|
442
442
|
ref: RefArray<R, E, A>,
|
|
443
443
|
orders: Iterable<Order.Order<A>>
|
|
444
|
-
): Effect.Effect<
|
|
444
|
+
): Effect.Effect<ReadonlyArray<A>, E, R>
|
|
445
445
|
} = dual(2, function sortBy<R, E, A>(ref: RefArray<R, E, A>, orders: Iterable<Order.Order<A>>) {
|
|
446
446
|
return RefSubject.update(ref, ReadonlyArray.sortBy(...orders))
|
|
447
447
|
})
|
|
@@ -452,8 +452,8 @@ export const sortBy: {
|
|
|
452
452
|
* @category combinators
|
|
453
453
|
*/
|
|
454
454
|
export const take: {
|
|
455
|
-
(n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<
|
|
456
|
-
<R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<
|
|
455
|
+
(n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
|
|
456
|
+
<R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<ReadonlyArray<A>, E, R>
|
|
457
457
|
} = dual(2, function take<R, E, A>(ref: RefArray<R, E, A>, n: number) {
|
|
458
458
|
return RefSubject.update(ref, ReadonlyArray.take(n))
|
|
459
459
|
})
|
|
@@ -464,8 +464,8 @@ export const take: {
|
|
|
464
464
|
* @category combinators
|
|
465
465
|
*/
|
|
466
466
|
export const takeRight: {
|
|
467
|
-
(n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<
|
|
468
|
-
<R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<
|
|
467
|
+
(n: number): <R, E, A>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
|
|
468
|
+
<R, E, A>(ref: RefArray<R, E, A>, n: number): Effect.Effect<ReadonlyArray<A>, E, R>
|
|
469
469
|
} = dual(2, function takeRight<R, E, A>(ref: RefArray<R, E, A>, n: number) {
|
|
470
470
|
return RefSubject.update(ref, ReadonlyArray.takeRight(n))
|
|
471
471
|
})
|
|
@@ -478,11 +478,11 @@ export const takeRight: {
|
|
|
478
478
|
export const takeWhile: {
|
|
479
479
|
<A>(
|
|
480
480
|
predicate: (a: A) => boolean
|
|
481
|
-
): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<
|
|
481
|
+
): <R, E>(ref: RefArray<R, E, A>) => Effect.Effect<ReadonlyArray<A>, E, R>
|
|
482
482
|
<R, E, A>(
|
|
483
483
|
ref: RefArray<R, E, A>,
|
|
484
484
|
predicate: (a: unknown) => boolean
|
|
485
|
-
): Effect.Effect<
|
|
485
|
+
): Effect.Effect<ReadonlyArray<A>, E, R>
|
|
486
486
|
} = dual(
|
|
487
487
|
2,
|
|
488
488
|
function takeWhile<R, E, A>(ref: RefArray<R, E, A>, predicate: (a: unknown) => boolean) {
|
|
@@ -496,7 +496,7 @@ export const takeWhile: {
|
|
|
496
496
|
* @category combinators
|
|
497
497
|
*/
|
|
498
498
|
export const dedupeWith =
|
|
499
|
-
<A>(valueEq: Equivalence<A>) => <R, E>(ref: RefArray<R, E, A>): Effect.Effect<
|
|
499
|
+
<A>(valueEq: Equivalence<A>) => <R, E>(ref: RefArray<R, E, A>): Effect.Effect<ReadonlyArray<A>, E, R> =>
|
|
500
500
|
RefSubject.update(ref, ReadonlyArray.dedupeWith(valueEq))
|
|
501
501
|
|
|
502
502
|
/**
|
package/src/RefChunk.ts
CHANGED
|
@@ -26,18 +26,18 @@ export interface RefChunk<out R, in out E, in out A> extends RefSubject.RefSubje
|
|
|
26
26
|
* @category constructors
|
|
27
27
|
*/
|
|
28
28
|
export function make<R, E, A>(
|
|
29
|
-
initial: Effect.Effect<
|
|
29
|
+
initial: Effect.Effect<Chunk.Chunk<A>, E, R>,
|
|
30
30
|
eq?: Equivalence<A>
|
|
31
|
-
): Effect.Effect<
|
|
31
|
+
): Effect.Effect<RefChunk<never, E, A>, never, R | Scope.Scope>
|
|
32
32
|
export function make<R, E, A>(
|
|
33
33
|
initial: Fx.Fx<R, E, Chunk.Chunk<A>>,
|
|
34
34
|
eq?: Equivalence<A>
|
|
35
|
-
): Effect.Effect<
|
|
35
|
+
): Effect.Effect<RefChunk<never, E, A>, never, R | Scope.Scope>
|
|
36
36
|
|
|
37
37
|
export function make<R, E, A>(
|
|
38
|
-
initial: Fx.Fx<R, E, Chunk.Chunk<A>> | Effect.Effect<
|
|
38
|
+
initial: Fx.Fx<R, E, Chunk.Chunk<A>> | Effect.Effect<Chunk.Chunk<A>, E, R>,
|
|
39
39
|
eq: Equivalence<A> = equals
|
|
40
|
-
): Effect.Effect<
|
|
40
|
+
): Effect.Effect<RefChunk<never, E, A>, never, R | Scope.Scope> {
|
|
41
41
|
return RefSubject.make(
|
|
42
42
|
initial,
|
|
43
43
|
{
|
|
@@ -65,8 +65,8 @@ export const tagged: <A>() => {
|
|
|
65
65
|
* @category combinators
|
|
66
66
|
*/
|
|
67
67
|
export const prepend: {
|
|
68
|
-
<A>(value: A): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<
|
|
69
|
-
<R, E, A>(ref: RefChunk<R, E, A>, value: A): Effect.Effect<
|
|
68
|
+
<A>(value: A): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
69
|
+
<R, E, A>(ref: RefChunk<R, E, A>, value: A): Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
70
70
|
} = dual(2, function prepend<R, E, A>(ref: RefChunk<R, E, A>, value: A) {
|
|
71
71
|
return RefSubject.update(ref, Chunk.prepend(value))
|
|
72
72
|
})
|
|
@@ -77,8 +77,8 @@ export const prepend: {
|
|
|
77
77
|
* @category combinators
|
|
78
78
|
*/
|
|
79
79
|
export const prependAll: {
|
|
80
|
-
<A>(value: Iterable<A>): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<
|
|
81
|
-
<R, E, A>(ref: RefChunk<R, E, A>, value: Iterable<A>): Effect.Effect<
|
|
80
|
+
<A>(value: Iterable<A>): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
81
|
+
<R, E, A>(ref: RefChunk<R, E, A>, value: Iterable<A>): Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
82
82
|
} = dual(
|
|
83
83
|
2,
|
|
84
84
|
function prependAll<R, E, A>(ref: RefChunk<R, E, A>, value: Iterable<A>) {
|
|
@@ -92,8 +92,8 @@ export const prependAll: {
|
|
|
92
92
|
* @category combinators
|
|
93
93
|
*/
|
|
94
94
|
export const append: {
|
|
95
|
-
<A>(value: A): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<
|
|
96
|
-
<R, E, A>(ref: RefChunk<R, E, A>, value: A): Effect.Effect<
|
|
95
|
+
<A>(value: A): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
96
|
+
<R, E, A>(ref: RefChunk<R, E, A>, value: A): Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
97
97
|
} = dual(2, function append<R, E, A>(ref: RefChunk<R, E, A>, value: A) {
|
|
98
98
|
return RefSubject.update(ref, Chunk.append(value))
|
|
99
99
|
})
|
|
@@ -106,8 +106,8 @@ export const append: {
|
|
|
106
106
|
export const appendAll: {
|
|
107
107
|
<A>(
|
|
108
108
|
value: Iterable<A>
|
|
109
|
-
): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<
|
|
110
|
-
<R, E, A>(ref: RefChunk<R, E, A>, value: Iterable<A>): Effect.Effect<
|
|
109
|
+
): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
110
|
+
<R, E, A>(ref: RefChunk<R, E, A>, value: Iterable<A>): Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
111
111
|
} = dual(2, function appendAll<R, E, A>(ref: RefChunk<R, E, A>, value: Iterable<A>) {
|
|
112
112
|
return RefSubject.update(ref, Chunk.appendAll(Chunk.fromIterable(value)))
|
|
113
113
|
})
|
|
@@ -118,8 +118,8 @@ export const appendAll: {
|
|
|
118
118
|
* @category combinators
|
|
119
119
|
*/
|
|
120
120
|
export const drop: {
|
|
121
|
-
(n: number): <R, E, A>(ref: RefChunk<R, E, A>) => Effect.Effect<
|
|
122
|
-
<R, E, A>(ref: RefChunk<R, E, A>, n: number): Effect.Effect<
|
|
121
|
+
(n: number): <R, E, A>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
122
|
+
<R, E, A>(ref: RefChunk<R, E, A>, n: number): Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
123
123
|
} = dual(2, function drop<R, E, A>(ref: RefChunk<R, E, A>, n: number) {
|
|
124
124
|
return RefSubject.update(ref, Chunk.drop(n))
|
|
125
125
|
})
|
|
@@ -130,8 +130,8 @@ export const drop: {
|
|
|
130
130
|
* @category combinators
|
|
131
131
|
*/
|
|
132
132
|
export const dropRight: {
|
|
133
|
-
(n: number): <R, E, A>(ref: RefChunk<R, E, A>) => Effect.Effect<
|
|
134
|
-
<R, E, A>(ref: RefChunk<R, E, A>, n: number): Effect.Effect<
|
|
133
|
+
(n: number): <R, E, A>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
134
|
+
<R, E, A>(ref: RefChunk<R, E, A>, n: number): Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
135
135
|
} = dual(2, function dropRight<R, E, A>(ref: RefChunk<R, E, A>, n: number) {
|
|
136
136
|
return RefSubject.update(ref, Chunk.dropRight(n))
|
|
137
137
|
})
|
|
@@ -144,11 +144,11 @@ export const dropRight: {
|
|
|
144
144
|
export const dropWhile: {
|
|
145
145
|
<A>(
|
|
146
146
|
predicate: (a: A) => boolean
|
|
147
|
-
): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<
|
|
147
|
+
): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
148
148
|
<R, E, A>(
|
|
149
149
|
ref: RefChunk<R, E, A>,
|
|
150
150
|
predicate: (a: A) => boolean
|
|
151
|
-
): Effect.Effect<
|
|
151
|
+
): Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
152
152
|
} = dual(
|
|
153
153
|
2,
|
|
154
154
|
function dropWhile<R, E, A>(ref: RefChunk<R, E, A>, predicate: (a: A) => boolean) {
|
|
@@ -256,12 +256,12 @@ export const modifyAt: {
|
|
|
256
256
|
<A>(
|
|
257
257
|
index: number,
|
|
258
258
|
f: (a: A) => A
|
|
259
|
-
): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<
|
|
259
|
+
): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
260
260
|
<R, E, A>(
|
|
261
261
|
ref: RefChunk<R, E, A>,
|
|
262
262
|
index: number,
|
|
263
263
|
f: (a: A) => A
|
|
264
|
-
): Effect.Effect<
|
|
264
|
+
): Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
265
265
|
} = dual(3, function modifyAt<R, E, A>(ref: RefChunk<R, E, A>, index: number, f: (a: A) => A) {
|
|
266
266
|
return RefSubject.update(ref, Chunk.modify(index, f))
|
|
267
267
|
})
|
|
@@ -343,12 +343,12 @@ export const replaceAt: {
|
|
|
343
343
|
<A>(
|
|
344
344
|
index: number,
|
|
345
345
|
a: A
|
|
346
|
-
): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<
|
|
346
|
+
): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
347
347
|
<R, E, A>(
|
|
348
348
|
ref: RefChunk<R, E, A>,
|
|
349
349
|
index: number,
|
|
350
350
|
a: A
|
|
351
|
-
): Effect.Effect<
|
|
351
|
+
): Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
352
352
|
} = dual(3, function replaceAt<R, E, A>(ref: RefChunk<R, E, A>, index: number, a: A) {
|
|
353
353
|
return RefSubject.update(ref, Chunk.replace(index, a))
|
|
354
354
|
})
|
|
@@ -359,8 +359,8 @@ export const replaceAt: {
|
|
|
359
359
|
* @category combinators
|
|
360
360
|
*/
|
|
361
361
|
export const take: {
|
|
362
|
-
(n: number): <R, E, A>(ref: RefChunk<R, E, A>) => Effect.Effect<
|
|
363
|
-
<R, E, A>(ref: RefChunk<R, E, A>, n: number): Effect.Effect<
|
|
362
|
+
(n: number): <R, E, A>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
363
|
+
<R, E, A>(ref: RefChunk<R, E, A>, n: number): Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
364
364
|
} = dual(2, function take<R, E, A>(ref: RefChunk<R, E, A>, n: number) {
|
|
365
365
|
return RefSubject.update(ref, Chunk.take(n))
|
|
366
366
|
})
|
|
@@ -371,8 +371,8 @@ export const take: {
|
|
|
371
371
|
* @category combinators
|
|
372
372
|
*/
|
|
373
373
|
export const takeRight: {
|
|
374
|
-
(n: number): <R, E, A>(ref: RefChunk<R, E, A>) => Effect.Effect<
|
|
375
|
-
<R, E, A>(ref: RefChunk<R, E, A>, n: number): Effect.Effect<
|
|
374
|
+
(n: number): <R, E, A>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
375
|
+
<R, E, A>(ref: RefChunk<R, E, A>, n: number): Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
376
376
|
} = dual(2, function takeRight<R, E, A>(ref: RefChunk<R, E, A>, n: number) {
|
|
377
377
|
return RefSubject.update(ref, Chunk.takeRight(n))
|
|
378
378
|
})
|
|
@@ -385,11 +385,11 @@ export const takeRight: {
|
|
|
385
385
|
export const takeWhile: {
|
|
386
386
|
<A>(
|
|
387
387
|
predicate: (a: A) => boolean
|
|
388
|
-
): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<
|
|
388
|
+
): <R, E>(ref: RefChunk<R, E, A>) => Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
389
389
|
<R, E, A>(
|
|
390
390
|
ref: RefChunk<R, E, A>,
|
|
391
391
|
predicate: (a: A) => boolean
|
|
392
|
-
): Effect.Effect<
|
|
392
|
+
): Effect.Effect<Chunk.Chunk<A>, E, R>
|
|
393
393
|
} = dual(
|
|
394
394
|
2,
|
|
395
395
|
function takeWhile<R, E, A>(ref: RefChunk<R, E, A>, predicate: (a: A) => boolean) {
|
|
@@ -402,5 +402,5 @@ export const takeWhile: {
|
|
|
402
402
|
* @since 1.18.0
|
|
403
403
|
* @category combinators
|
|
404
404
|
*/
|
|
405
|
-
export const dedupe = <R, E, A>(ref: RefChunk<R, E, A>): Effect.Effect<
|
|
405
|
+
export const dedupe = <R, E, A>(ref: RefChunk<R, E, A>): Effect.Effect<Chunk.Chunk<A>, E, R> =>
|
|
406
406
|
RefSubject.update(ref, Chunk.dedupe)
|
package/src/RefHashMap.ts
CHANGED
|
@@ -27,15 +27,15 @@ export interface RefHashMap<out R, in out E, in out K, in out V>
|
|
|
27
27
|
* @category constructors
|
|
28
28
|
*/
|
|
29
29
|
export function make<R, E, K, V>(
|
|
30
|
-
initial: Effect.Effect<
|
|
31
|
-
): Effect.Effect<
|
|
30
|
+
initial: Effect.Effect<HashMap.HashMap<K, V>, E, R>
|
|
31
|
+
): Effect.Effect<RefHashMap<never, E, K, V>, never, R | Scope.Scope>
|
|
32
32
|
export function make<R, E, K, V>(
|
|
33
33
|
initial: Fx.Fx<R, E, HashMap.HashMap<K, V>>
|
|
34
|
-
): Effect.Effect<
|
|
34
|
+
): Effect.Effect<RefHashMap<never, E, K, V>, never, R | Scope.Scope>
|
|
35
35
|
|
|
36
36
|
export function make<R, E, K, V>(
|
|
37
|
-
initial: Effect.Effect<
|
|
38
|
-
): Effect.Effect<
|
|
37
|
+
initial: Effect.Effect<HashMap.HashMap<K, V>, E, R> | Fx.Fx<R, E, HashMap.HashMap<K, V>>
|
|
38
|
+
): Effect.Effect<RefHashMap<never, E, K, V>, never, R | Scope.Scope> {
|
|
39
39
|
return RefSubject.make(initial)
|
|
40
40
|
}
|
|
41
41
|
|
|
@@ -59,7 +59,7 @@ export const tagged: <K, V>() => {
|
|
|
59
59
|
*/
|
|
60
60
|
export function of<K, V>(
|
|
61
61
|
map: HashMap.HashMap<K, V>
|
|
62
|
-
): Effect.Effect<
|
|
62
|
+
): Effect.Effect<RefHashMap<never, never, K, V>, never, Scope.Scope> {
|
|
63
63
|
return make(Effect.succeed(map))
|
|
64
64
|
}
|
|
65
65
|
|
|
@@ -129,12 +129,12 @@ export function keys<R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>): RefSubject
|
|
|
129
129
|
export const map: {
|
|
130
130
|
<K, V>(
|
|
131
131
|
f: (v: V, k: K) => V
|
|
132
|
-
): <R, E>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<
|
|
133
|
-
<R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, f: (v: V, k: K) => V): Effect.Effect<
|
|
132
|
+
): <R, E>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<HashMap.HashMap<K, V>, E, R>
|
|
133
|
+
<R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, f: (v: V, k: K) => V): Effect.Effect<HashMap.HashMap<K, V>, E, R>
|
|
134
134
|
} = dual(2, function map<R, E, K, V>(
|
|
135
135
|
refHashMap: RefHashMap<R, E, K, V>,
|
|
136
136
|
f: (v: V, k: K) => V
|
|
137
|
-
): Effect.Effect<
|
|
137
|
+
): Effect.Effect<HashMap.HashMap<K, V>, E, R> {
|
|
138
138
|
return RefSubject.update(refHashMap, HashMap.map(f))
|
|
139
139
|
})
|
|
140
140
|
|
|
@@ -147,17 +147,17 @@ export const modify: {
|
|
|
147
147
|
<K, V>(
|
|
148
148
|
key: K,
|
|
149
149
|
f: (v: V) => V
|
|
150
|
-
): <R, E>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<
|
|
150
|
+
): <R, E>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<HashMap.HashMap<K, V>, E, R>
|
|
151
151
|
<R, E, K, V>(
|
|
152
152
|
refHashMap: RefHashMap<R, E, K, V>,
|
|
153
153
|
key: K,
|
|
154
154
|
f: (v: V) => V
|
|
155
|
-
): Effect.Effect<
|
|
155
|
+
): Effect.Effect<HashMap.HashMap<K, V>, E, R>
|
|
156
156
|
} = dual(3, function map<R, E, K, V>(
|
|
157
157
|
refHashMap: RefHashMap<R, E, K, V>,
|
|
158
158
|
key: K,
|
|
159
159
|
f: (v: V) => V
|
|
160
|
-
): Effect.Effect<
|
|
160
|
+
): Effect.Effect<HashMap.HashMap<K, V>, E, R> {
|
|
161
161
|
return RefSubject.update(refHashMap, HashMap.modify(key, f))
|
|
162
162
|
})
|
|
163
163
|
|
|
@@ -170,17 +170,17 @@ export const modifyAt: {
|
|
|
170
170
|
<K, V>(
|
|
171
171
|
key: K,
|
|
172
172
|
f: HashMap.HashMap.UpdateFn<V>
|
|
173
|
-
): <R, E>(self: RefHashMap<R, E, K, V>) => Effect.Effect<
|
|
173
|
+
): <R, E>(self: RefHashMap<R, E, K, V>) => Effect.Effect<HashMap.HashMap<K, V>, E, R>
|
|
174
174
|
<R, E, K, V>(
|
|
175
175
|
self: RefHashMap<R, E, K, V>,
|
|
176
176
|
key: K,
|
|
177
177
|
f: HashMap.HashMap.UpdateFn<V>
|
|
178
|
-
): Effect.Effect<
|
|
178
|
+
): Effect.Effect<HashMap.HashMap<K, V>, E, R>
|
|
179
179
|
} = dual(3, function modifyAt<R, E, K, V>(
|
|
180
180
|
self: RefHashMap<R, E, K, V>,
|
|
181
181
|
key: K,
|
|
182
182
|
f: HashMap.HashMap.UpdateFn<V>
|
|
183
|
-
): Effect.Effect<
|
|
183
|
+
): Effect.Effect<HashMap.HashMap<K, V>, E, R> {
|
|
184
184
|
return RefSubject.update(self, HashMap.modifyAt(key, f))
|
|
185
185
|
})
|
|
186
186
|
|
|
@@ -194,19 +194,19 @@ export const modifyHash: {
|
|
|
194
194
|
key: K,
|
|
195
195
|
hash: number,
|
|
196
196
|
f: HashMap.HashMap.UpdateFn<V>
|
|
197
|
-
): <R, E>(self: RefHashMap<R, E, K, V>) => Effect.Effect<
|
|
197
|
+
): <R, E>(self: RefHashMap<R, E, K, V>) => Effect.Effect<HashMap.HashMap<K, V>, E, R>
|
|
198
198
|
<R, E, K, V>(
|
|
199
199
|
self: RefHashMap<R, E, K, V>,
|
|
200
200
|
key: K,
|
|
201
201
|
hash: number,
|
|
202
202
|
f: HashMap.HashMap.UpdateFn<V>
|
|
203
|
-
): Effect.Effect<
|
|
203
|
+
): Effect.Effect<HashMap.HashMap<K, V>, E, R>
|
|
204
204
|
} = dual(4, function modifyAt<R, E, K, V>(
|
|
205
205
|
self: RefHashMap<R, E, K, V>,
|
|
206
206
|
key: K,
|
|
207
207
|
hash: number,
|
|
208
208
|
f: HashMap.HashMap.UpdateFn<V>
|
|
209
|
-
): Effect.Effect<
|
|
209
|
+
): Effect.Effect<HashMap.HashMap<K, V>, E, R> {
|
|
210
210
|
return RefSubject.update(self, HashMap.modifyHash(key, hash, f))
|
|
211
211
|
})
|
|
212
212
|
|
|
@@ -239,8 +239,8 @@ export const reduce: {
|
|
|
239
239
|
* @category combinators
|
|
240
240
|
*/
|
|
241
241
|
export const remove: {
|
|
242
|
-
<K>(key: K): <R, E, V>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<
|
|
243
|
-
<R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, key: K): Effect.Effect<
|
|
242
|
+
<K>(key: K): <R, E, V>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<HashMap.HashMap<K, V>, E, R>
|
|
243
|
+
<R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, key: K): Effect.Effect<HashMap.HashMap<K, V>, E, R>
|
|
244
244
|
} = dual(2, function remove<R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, key: K) {
|
|
245
245
|
return RefSubject.update(refHashMap, HashMap.remove(key))
|
|
246
246
|
})
|
|
@@ -251,8 +251,8 @@ export const remove: {
|
|
|
251
251
|
* @category combinators
|
|
252
252
|
*/
|
|
253
253
|
export const removeMany: {
|
|
254
|
-
<K>(key: Iterable<K>): <R, E, V>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<
|
|
255
|
-
<R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, key: Iterable<K>): Effect.Effect<
|
|
254
|
+
<K>(key: Iterable<K>): <R, E, V>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<HashMap.HashMap<K, V>, E, R>
|
|
255
|
+
<R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, key: Iterable<K>): Effect.Effect<HashMap.HashMap<K, V>, E, R>
|
|
256
256
|
} = dual(2, function removeMany<R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, key: Iterable<K>) {
|
|
257
257
|
return RefSubject.update(refHashMap, HashMap.removeMany(key))
|
|
258
258
|
})
|
|
@@ -266,8 +266,8 @@ export const set: {
|
|
|
266
266
|
<K, V>(
|
|
267
267
|
key: K,
|
|
268
268
|
value: V
|
|
269
|
-
): <R, E>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<
|
|
270
|
-
<R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, key: K, value: V): Effect.Effect<
|
|
269
|
+
): <R, E>(refHashMap: RefHashMap<R, E, K, V>) => Effect.Effect<HashMap.HashMap<K, V>, E, R>
|
|
270
|
+
<R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, key: K, value: V): Effect.Effect<HashMap.HashMap<K, V>, E, R>
|
|
271
271
|
} = dual(3, function set<R, E, K, V>(refHashMap: RefHashMap<R, E, K, V>, key: K, value: V) {
|
|
272
272
|
return RefSubject.update(refHashMap, HashMap.set(key, value))
|
|
273
273
|
})
|
package/src/RefHashSet.ts
CHANGED
|
@@ -22,8 +22,8 @@ export interface RefHashSet<out R, in out E, in out A> extends RefSubject.RefSub
|
|
|
22
22
|
* @since 1.18.0
|
|
23
23
|
*/
|
|
24
24
|
export function make<R, E, A>(
|
|
25
|
-
initial: Effect.Effect<
|
|
26
|
-
): Effect.Effect<
|
|
25
|
+
initial: Effect.Effect<HashSet.HashSet<A>, E, R> | Fx.Fx<R, E, HashSet.HashSet<A>>
|
|
26
|
+
): Effect.Effect<RefHashSet<never, E, A>, never, R | Scope.Scope> {
|
|
27
27
|
return RefSubject.make(
|
|
28
28
|
initial
|
|
29
29
|
)
|
|
@@ -48,8 +48,8 @@ export const tagged: <A>() => {
|
|
|
48
48
|
* @category combinators
|
|
49
49
|
*/
|
|
50
50
|
export const add: {
|
|
51
|
-
<A>(value: A): <R, E>(ref: RefHashSet<R, E, A>) => Effect.Effect<
|
|
52
|
-
<R, E, A>(ref: RefHashSet<R, E, A>, value: A): Effect.Effect<
|
|
51
|
+
<A>(value: A): <R, E>(ref: RefHashSet<R, E, A>) => Effect.Effect<HashSet.HashSet<A>, E, R>
|
|
52
|
+
<R, E, A>(ref: RefHashSet<R, E, A>, value: A): Effect.Effect<HashSet.HashSet<A>, E, R>
|
|
53
53
|
} = dual(2, function add<R, E, A>(ref: RefHashSet<R, E, A>, value: A) {
|
|
54
54
|
return RefSubject.update(ref, HashSet.add(value))
|
|
55
55
|
})
|
|
@@ -62,8 +62,8 @@ export const add: {
|
|
|
62
62
|
export const appendAll: {
|
|
63
63
|
<A>(
|
|
64
64
|
value: Iterable<A>
|
|
65
|
-
): <R, E>(ref: RefHashSet<R, E, A>) => Effect.Effect<
|
|
66
|
-
<R, E, A>(ref: RefHashSet<R, E, A>, value: Iterable<A>): Effect.Effect<
|
|
65
|
+
): <R, E>(ref: RefHashSet<R, E, A>) => Effect.Effect<HashSet.HashSet<A>, E, R>
|
|
66
|
+
<R, E, A>(ref: RefHashSet<R, E, A>, value: Iterable<A>): Effect.Effect<HashSet.HashSet<A>, E, R>
|
|
67
67
|
} = dual(2, function appendAll<R, E, A>(ref: RefHashSet<R, E, A>, value: Iterable<A>) {
|
|
68
68
|
return RefSubject.update(ref, (set) =>
|
|
69
69
|
HashSet.mutate(set, (set) => {
|