@fncts/io 0.0.23 → 0.0.24
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/IO/api/descriptor.d.ts +12 -0
- package/IO/api.d.ts +1 -12
- package/IO.d.ts +1 -0
- package/_cjs/IO/api/descriptor.cjs +30 -0
- package/_cjs/IO/api/descriptor.cjs.map +1 -0
- package/_cjs/IO/api.cjs +52 -70
- package/_cjs/IO/api.cjs.map +1 -1
- package/_cjs/IO.cjs +11 -0
- package/_cjs/IO.cjs.map +1 -1
- package/_mjs/IO/api/descriptor.mjs +20 -0
- package/_mjs/IO/api/descriptor.mjs.map +1 -0
- package/_mjs/IO/api.mjs +51 -67
- package/_mjs/IO/api.mjs.map +1 -1
- package/_mjs/IO.mjs +1 -0
- package/_mjs/IO.mjs.map +1 -1
- package/_src/IO/api/descriptor.ts +14 -0
- package/_src/IO/api.ts +0 -15
- package/_src/IO.ts +1 -0
- package/package.json +1 -1
@@ -0,0 +1,12 @@
|
|
1
|
+
import { FiberDescriptor } from "@fncts/io/FiberDescriptor";
|
2
|
+
import { IO, UIO } from "@fncts/io/IO/definition";
|
3
|
+
/**
|
4
|
+
* @tsplus static fncts.io.IOOps descriptorWith
|
5
|
+
* @tsplus location "@fncts/io/IO/api/descriptor"
|
6
|
+
*/
|
7
|
+
export declare function descriptorWith<R, E, A>(f: (descriptor: FiberDescriptor) => IO<R, E, A>): IO<R, E, A>;
|
8
|
+
/**
|
9
|
+
* @tsplus static fncts.io.IOOps descriptor
|
10
|
+
* @tsplus location "@fncts/io/IO/api/descriptor"
|
11
|
+
*/
|
12
|
+
export declare const descriptor: UIO<FiberDescriptor>;
|
package/IO/api.d.ts
CHANGED
@@ -3,8 +3,7 @@ import { Lazy } from "@fncts/base/data/function/definition";
|
|
3
3
|
import { Maybe } from "@fncts/base/data/Maybe/definition";
|
4
4
|
import { Cause } from "@fncts/base/data/Cause/definition";
|
5
5
|
import { InterruptStatus } from "@fncts/io/InterruptStatus";
|
6
|
-
import { URIO,
|
7
|
-
import { FiberDescriptor } from "@fncts/io/FiberDescriptor";
|
6
|
+
import { URIO, FIO, UIO } from "@fncts/io/IO/definition";
|
8
7
|
import { Either } from "@fncts/base/data/Either/definition";
|
9
8
|
import { Conc, ConcBuilder } from "@fncts/base/collection/immutable/Conc";
|
10
9
|
import { Refinement } from "@fncts/base/data/Refinement/definition";
|
@@ -211,16 +210,6 @@ export declare function deferTry<R, E, A>(io: () => IO<R, E, A>, __tsplusTrace?:
|
|
211
210
|
* @tsplus location "@fncts/io/IO/api"
|
212
211
|
*/
|
213
212
|
export declare function deferTryCatch<R, E, A, E1>(io: () => IO<R, E, A>, onThrow: (error: unknown) => E1, __tsplusTrace?: string): IO<R, E | E1, A>;
|
214
|
-
/**
|
215
|
-
* @tsplus static fncts.io.IOOps descriptorWith
|
216
|
-
* @tsplus location "@fncts/io/IO/api"
|
217
|
-
*/
|
218
|
-
export declare function descriptorWith<R, E, A>(f: (descriptor: FiberDescriptor) => IO<R, E, A>): IO<R, E, A>;
|
219
|
-
/**
|
220
|
-
* @tsplus static fncts.io.IOOps descriptor
|
221
|
-
* @tsplus location "@fncts/io/IO/api"
|
222
|
-
*/
|
223
|
-
export declare const descriptor: UIO<FiberDescriptor>;
|
224
213
|
/**
|
225
214
|
* Folds an `IO` that may fail with `E` or succeed with `A` into one that never fails but succeeds with `Either<E, A>`
|
226
215
|
* @tsplus getter fncts.io.IO either
|
package/IO.d.ts
CHANGED
@@ -17,6 +17,7 @@ export * from "./IO/api/concurrentFinalizers.js";
|
|
17
17
|
export * from "./IO/api/consoleWith.js";
|
18
18
|
export * from "./IO/api/core-scope.js";
|
19
19
|
export * from "./IO/api/delay.js";
|
20
|
+
export * from "./IO/api/descriptor.js";
|
20
21
|
export * from "./IO/api/ensuringChildren.js";
|
21
22
|
export * from "./IO/api/environment.js";
|
22
23
|
export * from "./IO/api/foreachConcurrent.js";
|
@@ -0,0 +1,30 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.descriptorWith = exports.descriptor = void 0;
|
7
|
+
var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/FiberDescriptor"));
|
8
|
+
var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/FiberRef/unsafe"));
|
9
|
+
var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Cause/api"));
|
10
|
+
var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api"));
|
11
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
12
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
13
|
+
const fileName_1 = "(@fncts/io) src/IO/api/descriptor.ts";
|
14
|
+
const descriptorWith = descriptorWith_1;
|
15
|
+
/**
|
16
|
+
* @tsplus static fncts.io.IOOps descriptorWith
|
17
|
+
*/
|
18
|
+
exports.descriptorWith = descriptorWith;
|
19
|
+
function descriptorWith_1(f) {
|
20
|
+
return tsplus_module_4.withFiberRuntime((fiber, status) => {
|
21
|
+
const descriptor = new tsplus_module_1.FiberDescriptor(fiber.id, status, tsplus_module_3.interruptors(fiber.getFiberRef(tsplus_module_2.interruptedCause)));
|
22
|
+
return f(descriptor);
|
23
|
+
}, fileName_1 + ":5:29");
|
24
|
+
}
|
25
|
+
/**
|
26
|
+
* @tsplus static fncts.io.IOOps descriptor
|
27
|
+
*/
|
28
|
+
const descriptor = /*#__PURE__*/descriptorWith_1(descriptor => tsplus_module_4.succeedNow(descriptor, fileName_1 + ":14:96"));
|
29
|
+
exports.descriptor = descriptor;
|
30
|
+
//# sourceMappingURL=descriptor.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"descriptor.cjs","mappings":";;;;;;;;;;;;;MAGgBA,cAAc;AAH9B;;;AAAA;AAGA,0BAAwCC,CAA+C;EACrF,OAAOC,iCAAoB,CAACC,KAAK,EAAEC,MAAM,KAAI;IAC3C,MAAMC,UAAU,GAAG,oBAAIC,eAAe,CAACH,KAAK,CAACI,EAAE,EAAEH,MAAM,+BAAED,KAAK,CAACK,WAAW,kCAA2B,EAAc;IACnH,OAAOP,CAAC,CAACI,UAAU,CAAC;EACtB,CAAC,uBAAC;AACJ;AAEA;;;AAGO,MAAMA,UAAU,gBAAyBI,iBAAmBJ,UAAU,IAAKH,2BAAcG,UAAU,wBAAC,CAAC;AAAC","names":["descriptorWith","f","tsplus_module_4","fiber","status","descriptor","FiberDescriptor","id","getFiberRef","descriptorWith_1"],"sourceRoot":"","sources":["../../../_src/IO/api/descriptor.ts"],"sourcesContent":[null]}
|
package/_cjs/IO/api.cjs
CHANGED
@@ -29,7 +29,7 @@ exports.condIO = condIO;
|
|
29
29
|
exports.defer = void 0;
|
30
30
|
exports.deferTry = deferTry;
|
31
31
|
exports.deferTryCatch = deferTryCatch;
|
32
|
-
exports.either =
|
32
|
+
exports.either = void 0;
|
33
33
|
exports.errorAsCause = errorAsCause;
|
34
34
|
exports.eventually = void 0;
|
35
35
|
exports.extend = extend;
|
@@ -141,22 +141,20 @@ var tsplus_module_5 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require
|
|
141
141
|
var tsplus_module_6 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/api"));
|
142
142
|
var tsplus_module_7 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/RuntimeFlags/RuntimeFlags"));
|
143
143
|
var tsplus_module_8 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/InterruptStatus/constructors"));
|
144
|
-
var tsplus_module_9 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/
|
145
|
-
var tsplus_module_10 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/
|
146
|
-
var tsplus_module_11 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/
|
147
|
-
var tsplus_module_12 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/Conc/
|
148
|
-
var tsplus_module_13 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/
|
149
|
-
var tsplus_module_14 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/
|
150
|
-
var tsplus_module_15 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/
|
151
|
-
var tsplus_module_16 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/
|
152
|
-
var tsplus_module_17 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/
|
153
|
-
var tsplus_module_18 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/
|
154
|
-
var tsplus_module_19 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/
|
155
|
-
var tsplus_module_20 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/
|
156
|
-
var tsplus_module_21 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/
|
157
|
-
var tsplus_module_22 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/
|
158
|
-
var tsplus_module_23 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/ImmutableArray/api"));
|
159
|
-
var tsplus_module_24 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Exit/constructors"));
|
144
|
+
var tsplus_module_9 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Either/constructors"));
|
145
|
+
var tsplus_module_10 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/Conc/api"));
|
146
|
+
var tsplus_module_11 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/Iterable/api"));
|
147
|
+
var tsplus_module_12 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/Conc/constructors"));
|
148
|
+
var tsplus_module_13 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/definition"));
|
149
|
+
var tsplus_module_14 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/control/Eval/run"));
|
150
|
+
var tsplus_module_15 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Exit/api"));
|
151
|
+
var tsplus_module_16 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/destructors"));
|
152
|
+
var tsplus_module_17 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Trace/constructors"));
|
153
|
+
var tsplus_module_18 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/Conc/api/empty"));
|
154
|
+
var tsplus_module_19 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/List/api"));
|
155
|
+
var tsplus_module_20 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/ImmutableArray/constructors"));
|
156
|
+
var tsplus_module_21 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/ImmutableArray/api"));
|
157
|
+
var tsplus_module_22 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Exit/constructors"));
|
160
158
|
var _function = /*#__PURE__*/require("@fncts/base/data/function");
|
161
159
|
var _definition2 = /*#__PURE__*/require("@fncts/io/IO/definition");
|
162
160
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
@@ -182,8 +180,6 @@ const collectIO = collectIO_1;
|
|
182
180
|
exports.collectIO = collectIO;
|
183
181
|
const defer = defer_1;
|
184
182
|
exports.defer = defer;
|
185
|
-
const descriptorWith = descriptorWith_1;
|
186
|
-
exports.descriptorWith = descriptorWith;
|
187
183
|
const either = either_1;
|
188
184
|
exports.either = either;
|
189
185
|
const eventually = eventually_1;
|
@@ -564,27 +560,13 @@ function deferTryCatch(io, onThrow, __tsplusTrace) {
|
|
564
560
|
}
|
565
561
|
}, __tsplusTrace);
|
566
562
|
}
|
567
|
-
/**
|
568
|
-
* @tsplus static fncts.io.IOOps descriptorWith
|
569
|
-
*/
|
570
|
-
function descriptorWith_1(f) {
|
571
|
-
return withFiberRuntime_1((fiber, status) => {
|
572
|
-
const descriptor = new tsplus_module_9.FiberDescriptor(fiber.id, status, tsplus_module_2.interruptors(fiber.getFiberRef(tsplus_module_10.interruptedCause)));
|
573
|
-
return f(descriptor);
|
574
|
-
}, fileName_1 + ":417:29");
|
575
|
-
}
|
576
|
-
/**
|
577
|
-
* @tsplus static fncts.io.IOOps descriptor
|
578
|
-
*/
|
579
|
-
const descriptor = /*#__PURE__*/descriptorWith_1(descriptor => succeedNow_1(descriptor, fileName_1 + ":426:96"));
|
580
563
|
/**
|
581
564
|
* Folds an `IO` that may fail with `E` or succeed with `A` into one that never fails but succeeds with `Either<E, A>`
|
582
565
|
*
|
583
566
|
* @tsplus getter fncts.io.IO either
|
584
567
|
*/
|
585
|
-
exports.descriptor = descriptor;
|
586
568
|
function either_1(ma, __tsplusTrace) {
|
587
|
-
return match_1(
|
569
|
+
return match_1(tsplus_module_9.left, tsplus_module_9.right, __tsplusTrace)(ma);
|
588
570
|
}
|
589
571
|
/**
|
590
572
|
* @tsplus pipeable fncts.io.IO errorAsCause
|
@@ -647,13 +629,13 @@ function failCause_1(cause, __tsplusTrace) {
|
|
647
629
|
*
|
648
630
|
* @tsplus static fncts.io.IOOps fiberId
|
649
631
|
*/
|
650
|
-
const fiberId = /*#__PURE__*/fiberIdWith_1(id => succeedNow_1(id, fileName_1 + ":
|
632
|
+
const fiberId = /*#__PURE__*/fiberIdWith_1(id => succeedNow_1(id, fileName_1 + ":491:87"));
|
651
633
|
/**
|
652
634
|
* @tsplus static fncts.io.IOOps fiberIdWith
|
653
635
|
*/
|
654
636
|
exports.fiberId = fiberId;
|
655
637
|
function fiberIdWith_1(f) {
|
656
|
-
return withFiberRuntime_1(fiber => f(fiber.id), fileName_1 + ":
|
638
|
+
return withFiberRuntime_1(fiber => f(fiber.id), fileName_1 + ":497:29");
|
657
639
|
}
|
658
640
|
/**
|
659
641
|
* Filters the collection using the specified effectual predicate.
|
@@ -661,7 +643,7 @@ function fiberIdWith_1(f) {
|
|
661
643
|
* @tsplus static fncts.io.IOOps filter
|
662
644
|
*/
|
663
645
|
function filter_1(as, f, __tsplusTrace) {
|
664
|
-
return map_1(b => b.result(), __tsplusTrace)(
|
646
|
+
return map_1(b => b.result(), __tsplusTrace)(tsplus_module_11.foldLeft(succeedNow_1(tsplus_module_10.builder(), __tsplusTrace), (eff, a) => zipWith_1(f(a), (builder, p) => {
|
665
647
|
if (p) {
|
666
648
|
builder.append(a);
|
667
649
|
}
|
@@ -680,8 +662,8 @@ function filterMap(as, f, __tsplusTrace) {
|
|
680
662
|
function filterMapWithIndex_1(as, f, __tsplusTrace) {
|
681
663
|
return defer_1(() => {
|
682
664
|
const bs = [];
|
683
|
-
return as_1(() =>
|
684
|
-
if (
|
665
|
+
return as_1(() => tsplus_module_12.from(bs), __tsplusTrace)(foreachWithIndexDiscard_1(as, (i, a) => map_1(b => {
|
666
|
+
if (tsplus_module_13.isJust(b)) {
|
685
667
|
bs.push(b.value);
|
686
668
|
}
|
687
669
|
}, __tsplusTrace)(f(i, a)), __tsplusTrace));
|
@@ -732,7 +714,7 @@ function flatten(self, __tsplusTrace) {
|
|
732
714
|
* @tsplus static fncts.io.IOOps foldLeft
|
733
715
|
*/
|
734
716
|
function foldLeft_1(as, b, f, __tsplusTrace) {
|
735
|
-
return
|
717
|
+
return tsplus_module_11.foldLeft(succeedNow_1(b, __tsplusTrace), (acc, el) => flatMap_1(a => f(a, el), __tsplusTrace)(acc))(as);
|
736
718
|
}
|
737
719
|
/**
|
738
720
|
* Combines an array of `IO`s using a `Monoid`
|
@@ -740,7 +722,7 @@ function foldLeft_1(as, b, f, __tsplusTrace) {
|
|
740
722
|
* @tsplus static fncts.io.IOOps foldMap
|
741
723
|
*/
|
742
724
|
function foldMap(as, f, /** @tsplus auto */M) {
|
743
|
-
return foldLeft_1(as, M.nat, (m, a) => map_1(a => M.combine(f(a))(m), fileName_1 + ":
|
725
|
+
return foldLeft_1(as, M.nat, (m, a) => map_1(a => M.combine(f(a))(m), fileName_1 + ":671:48")(a), fileName_1 + ":671:21");
|
744
726
|
}
|
745
727
|
function foldRightLoop(iterator, b, f, __tsplusTrace) {
|
746
728
|
const next = iterator.next();
|
@@ -770,7 +752,7 @@ function foreachWithIndexDiscardLoop(iterator, f, i = 0, __tsplusTrace) {
|
|
770
752
|
function foreach_1(as, f, __tsplusTrace) {
|
771
753
|
return defer_1(() => {
|
772
754
|
const acc = [];
|
773
|
-
return as_1(() =>
|
755
|
+
return as_1(() => tsplus_module_12.from(acc), __tsplusTrace)(foreachWithIndexDiscard_1(as, (_, a) => flatMap_1(b => {
|
774
756
|
acc.push(b);
|
775
757
|
return unit_1;
|
776
758
|
}, __tsplusTrace)(f(a)), __tsplusTrace));
|
@@ -788,7 +770,7 @@ function foreach_1(as, f, __tsplusTrace) {
|
|
788
770
|
function foreachWithIndex(as, f, __tsplusTrace) {
|
789
771
|
return defer_1(() => {
|
790
772
|
const acc = [];
|
791
|
-
return as_1(() =>
|
773
|
+
return as_1(() => tsplus_module_12.from(acc), __tsplusTrace)(foreachWithIndexDiscard_1(as, (i, a) => flatMap_1(b => {
|
792
774
|
acc.push(b);
|
793
775
|
return unit_1;
|
794
776
|
}, __tsplusTrace)(f(i, a)), __tsplusTrace));
|
@@ -841,7 +823,7 @@ function fromEitherNow(either, __tsplusTrace) {
|
|
841
823
|
* @tsplus getter fncts.Eval toIO
|
842
824
|
*/
|
843
825
|
function fromEval(computation, __tsplusTrace) {
|
844
|
-
return succeed_1(() =>
|
826
|
+
return succeed_1(() => tsplus_module_14.run(computation), __tsplusTrace);
|
845
827
|
}
|
846
828
|
/**
|
847
829
|
* Creates a `IO` from an exit value
|
@@ -849,7 +831,7 @@ function fromEval(computation, __tsplusTrace) {
|
|
849
831
|
* @tsplus static fncts.io.IOOps fromExit
|
850
832
|
*/
|
851
833
|
function fromExit(exit, __tsplusTrace) {
|
852
|
-
return defer_1(() =>
|
834
|
+
return defer_1(() => tsplus_module_15.match(failCauseNow_1, succeedNow_1)(exit()), __tsplusTrace);
|
853
835
|
}
|
854
836
|
/**
|
855
837
|
* Creates a `IO` from an exit value
|
@@ -858,7 +840,7 @@ function fromExit(exit, __tsplusTrace) {
|
|
858
840
|
* @tsplus getter fncts.Exit toIO
|
859
841
|
*/
|
860
842
|
function fromExitNow(exit, __tsplusTrace) {
|
861
|
-
return
|
843
|
+
return tsplus_module_15.match(failCauseNow_1, succeedNow_1)(exit);
|
862
844
|
}
|
863
845
|
/**
|
864
846
|
* Lifts a `Maybe` into an `IO` but preserves the error as a `Maybe` in the error channel, making it easier to compose
|
@@ -867,14 +849,14 @@ function fromExitNow(exit, __tsplusTrace) {
|
|
867
849
|
* @tsplus static fncts.io.IOOps fromMaybe
|
868
850
|
*/
|
869
851
|
function fromMaybe(maybe, __tsplusTrace) {
|
870
|
-
return flatMap_1(m =>
|
852
|
+
return flatMap_1(m => tsplus_module_16.match(() => failNow_1(tsplus_module_3.nothing(), __tsplusTrace), succeedNow_1)(m), __tsplusTrace)(succeed_1(maybe, __tsplusTrace));
|
871
853
|
}
|
872
854
|
/**
|
873
855
|
* @tsplus static fncts.io.IOOps fromMaybeNow
|
874
856
|
* @tsplus getter fncts.Maybe toIO
|
875
857
|
*/
|
876
858
|
function fromMaybeNow(maybe, __tsplusTrace) {
|
877
|
-
return
|
859
|
+
return tsplus_module_16.match(() => failNow_1(tsplus_module_3.nothing(), __tsplusTrace), succeedNow_1)(maybe);
|
878
860
|
}
|
879
861
|
/**
|
880
862
|
* Create an IO that when executed will construct `promise` and wait for its result,
|
@@ -912,7 +894,7 @@ function fromPromiseHalt(promise, __tsplusTrace) {
|
|
912
894
|
* @tsplus getter fncts.io.IO get
|
913
895
|
*/
|
914
896
|
function get(ma, __tsplusTrace) {
|
915
|
-
return matchCauseIO_1(cause => failCauseNow_1(tsplus_module_2.map(tsplus_module_3.just)(cause), __tsplusTrace), ma =>
|
897
|
+
return matchCauseIO_1(cause => failCauseNow_1(tsplus_module_2.map(tsplus_module_3.just)(cause), __tsplusTrace), ma => tsplus_module_16.match(() => failNow_1(tsplus_module_3.nothing(), __tsplusTrace), succeedNow_1)(ma), __tsplusTrace)(ma);
|
916
898
|
}
|
917
899
|
/**
|
918
900
|
* Extracts the optional value, or returns the given 'orElse'.
|
@@ -940,7 +922,7 @@ function getOrElseIO(orElse, __tsplusTrace) {
|
|
940
922
|
* @tsplus static fncts.io.IOOps getOrFailWith
|
941
923
|
*/
|
942
924
|
function getOrFailWith_1(maybe, onNothing, __tsplusTrace) {
|
943
|
-
return defer_1(() =>
|
925
|
+
return defer_1(() => tsplus_module_16.match(() => fail_1(onNothing, __tsplusTrace), succeedNow_1)(maybe), __tsplusTrace);
|
944
926
|
}
|
945
927
|
/**
|
946
928
|
* Lifts a Maybe into a IO, if the Maybe is `Nothing` it fails with Unit.
|
@@ -958,7 +940,7 @@ function getOrFailUnit(option, __tsplusTrace) {
|
|
958
940
|
* @tsplus static fncts.io.IOOps halt
|
959
941
|
*/
|
960
942
|
function halt(e, __tsplusTrace) {
|
961
|
-
return failCause_1(() => tsplus_module_2.halt(e(),
|
943
|
+
return failCause_1(() => tsplus_module_2.halt(e(), tsplus_module_17.none), __tsplusTrace);
|
962
944
|
}
|
963
945
|
/**
|
964
946
|
* Creates an `IO` that halts with the specified defect
|
@@ -968,7 +950,7 @@ function halt(e, __tsplusTrace) {
|
|
968
950
|
* @tsplus static fncts.io.IOOps haltNow
|
969
951
|
*/
|
970
952
|
function haltNow_1(e, __tsplusTrace) {
|
971
|
-
return failCauseNow_1(tsplus_module_2.halt(e,
|
953
|
+
return failCauseNow_1(tsplus_module_2.halt(e, tsplus_module_17.none), __tsplusTrace);
|
972
954
|
}
|
973
955
|
/**
|
974
956
|
* @tsplus pipeable fncts.io.IO ifIO
|
@@ -1030,7 +1012,7 @@ function iterate_1(initial, cont, body, __tsplusTrace) {
|
|
1030
1012
|
* @tsplus static fncts.io.IOOps left
|
1031
1013
|
*/
|
1032
1014
|
function left(a, __tsplusTrace) {
|
1033
|
-
return flatMap_1(a => succeedNow_1(
|
1015
|
+
return flatMap_1(a => succeedNow_1(tsplus_module_9.left(a), __tsplusTrace), __tsplusTrace)(succeed_1(a, __tsplusTrace));
|
1034
1016
|
}
|
1035
1017
|
/**
|
1036
1018
|
* @tsplus static fncts.io.IOOps log
|
@@ -1061,9 +1043,9 @@ function log(message, __tsplusTrace) {
|
|
1061
1043
|
*/
|
1062
1044
|
function loop_1(initial, cont, inc, body, __tsplusTrace) {
|
1063
1045
|
if (cont(initial)) {
|
1064
|
-
return flatMap_1(a => map_1(as =>
|
1046
|
+
return flatMap_1(a => map_1(as => tsplus_module_10.prepend(a)(as), __tsplusTrace)(loop_1(inc(initial), cont, inc, body, __tsplusTrace)), __tsplusTrace)(body(initial));
|
1065
1047
|
} else {
|
1066
|
-
return succeedNow_1(
|
1048
|
+
return succeedNow_1(tsplus_module_18.empty(), __tsplusTrace);
|
1067
1049
|
}
|
1068
1050
|
}
|
1069
1051
|
/**
|
@@ -1198,7 +1180,7 @@ function merge(io, __tsplusTrace) {
|
|
1198
1180
|
* @tsplus static fncts.io.IOOps mergeAll
|
1199
1181
|
*/
|
1200
1182
|
function mergeAll(fas, b, f, __tsplusTrace) {
|
1201
|
-
return
|
1183
|
+
return tsplus_module_11.foldLeft(succeed_1(() => b, __tsplusTrace), (b, a) => zipWith_1(a, f, __tsplusTrace)(b))(fas);
|
1202
1184
|
}
|
1203
1185
|
/**
|
1204
1186
|
* Converts an option on errors into an option on values.
|
@@ -1206,7 +1188,7 @@ function mergeAll(fas, b, f, __tsplusTrace) {
|
|
1206
1188
|
* @tsplus getter fncts.io.IO optional
|
1207
1189
|
*/
|
1208
1190
|
function optional(ma, __tsplusTrace) {
|
1209
|
-
return matchIO_1(me =>
|
1191
|
+
return matchIO_1(me => tsplus_module_16.match(() => succeedNow_1(tsplus_module_3.nothing(), __tsplusTrace), failNow_1)(me), a => succeedNow_1(tsplus_module_3.just(a), __tsplusTrace), __tsplusTrace)(ma);
|
1210
1192
|
}
|
1211
1193
|
/**
|
1212
1194
|
* Returns the logical disjunction of the `Boolean` value returned by this
|
@@ -1235,7 +1217,7 @@ function orElse_1(that, __tsplusTrace) {
|
|
1235
1217
|
*/
|
1236
1218
|
function orElseEither(that, __tsplusTrace) {
|
1237
1219
|
return self => {
|
1238
|
-
return tryOrElse_1(() => map_1(
|
1220
|
+
return tryOrElse_1(() => map_1(tsplus_module_9.right, __tsplusTrace)(that()), a => succeedNow_1(tsplus_module_9.left(a), __tsplusTrace), __tsplusTrace)(self);
|
1239
1221
|
};
|
1240
1222
|
}
|
1241
1223
|
/**
|
@@ -1251,7 +1233,7 @@ function orElseFail(e, __tsplusTrace) {
|
|
1251
1233
|
*/
|
1252
1234
|
function orElseMaybe(that, __tsplusTrace) {
|
1253
1235
|
return ma => {
|
1254
|
-
return catchAll_1(me =>
|
1236
|
+
return catchAll_1(me => tsplus_module_16.match(that, e => fail_1(() => tsplus_module_3.just(e), __tsplusTrace))(me), __tsplusTrace)(ma);
|
1255
1237
|
};
|
1256
1238
|
}
|
1257
1239
|
/**
|
@@ -1291,7 +1273,7 @@ function concurrentErrors(__tsplusTrace) {
|
|
1291
1273
|
return io => {
|
1292
1274
|
return matchCauseIO_1(cause => {
|
1293
1275
|
const f = tsplus_module_2.failures(cause);
|
1294
|
-
if (
|
1276
|
+
if (tsplus_module_19.length(f) === 0) {
|
1295
1277
|
return failCauseNow_1(cause, __tsplusTrace);
|
1296
1278
|
} else {
|
1297
1279
|
return failNow_1(f, __tsplusTrace);
|
@@ -1306,7 +1288,7 @@ function concurrentErrors(__tsplusTrace) {
|
|
1306
1288
|
* @tsplus static fncts.io.IOOps partition
|
1307
1289
|
*/
|
1308
1290
|
function partition(as, f, __tsplusTrace) {
|
1309
|
-
return map_1(c =>
|
1291
|
+
return map_1(c => tsplus_module_10.separate(c), __tsplusTrace)(foreach_1(as, a => either_1(f(a), __tsplusTrace), __tsplusTrace));
|
1310
1292
|
}
|
1311
1293
|
/**
|
1312
1294
|
* Keeps some of the errors, and terminates the fiber with the rest
|
@@ -1326,7 +1308,7 @@ function refineOrHalt(pf, __tsplusTrace) {
|
|
1326
1308
|
*/
|
1327
1309
|
function refineOrHaltWith_1(pf, f, __tsplusTrace) {
|
1328
1310
|
return fa => {
|
1329
|
-
return catchAll_1(e =>
|
1311
|
+
return catchAll_1(e => tsplus_module_16.match(() => haltNow_1(f(e), __tsplusTrace), failNow_1)(pf(e)), __tsplusTrace)(fa);
|
1330
1312
|
};
|
1331
1313
|
}
|
1332
1314
|
/**
|
@@ -1349,7 +1331,7 @@ function reject(pf, __tsplusTrace) {
|
|
1349
1331
|
*/
|
1350
1332
|
function rejectIO_1(pf, __tsplusTrace) {
|
1351
1333
|
return fa => {
|
1352
|
-
return flatMap_1(a =>
|
1334
|
+
return flatMap_1(a => tsplus_module_16.match(() => succeedNow_1(a, __tsplusTrace), io => flatMap_1(failNow_1, __tsplusTrace)(io))(pf(a)), __tsplusTrace)(fa);
|
1353
1335
|
};
|
1354
1336
|
}
|
1355
1337
|
/**
|
@@ -1407,7 +1389,7 @@ function repeatWhileIO_1(f, __tsplusTrace) {
|
|
1407
1389
|
*/
|
1408
1390
|
function replicate(n, __tsplusTrace) {
|
1409
1391
|
return self => {
|
1410
|
-
return
|
1392
|
+
return tsplus_module_21.map(() => self)(tsplus_module_20.range(0, n));
|
1411
1393
|
};
|
1412
1394
|
}
|
1413
1395
|
/**
|
@@ -1415,7 +1397,7 @@ function replicate(n, __tsplusTrace) {
|
|
1415
1397
|
*/
|
1416
1398
|
function _require(error, __tsplusTrace) {
|
1417
1399
|
return ma => {
|
1418
|
-
return flatMap_1(ma =>
|
1400
|
+
return flatMap_1(ma => tsplus_module_16.match(() => fail_1(error, __tsplusTrace), succeedNow_1)(ma), __tsplusTrace)(ma);
|
1419
1401
|
};
|
1420
1402
|
}
|
1421
1403
|
/**
|
@@ -1425,7 +1407,7 @@ function _require(error, __tsplusTrace) {
|
|
1425
1407
|
* @tsplus getter fncts.io.IO result
|
1426
1408
|
*/
|
1427
1409
|
function result(ma, __tsplusTrace) {
|
1428
|
-
return matchCauseIO_1(cause => succeedNow_1(
|
1410
|
+
return matchCauseIO_1(cause => succeedNow_1(tsplus_module_22.failCause(cause), __tsplusTrace), a => succeedNow_1(tsplus_module_22.succeed(a), __tsplusTrace), __tsplusTrace)(ma);
|
1429
1411
|
}
|
1430
1412
|
/**
|
1431
1413
|
* Recover from the unchecked failure of the `IO`. (opposite of `orHalt`)
|
@@ -1629,13 +1611,13 @@ function tapErrorCause(f, __tsplusTrace) {
|
|
1629
1611
|
*/
|
1630
1612
|
function tryOrElse_1(that, onSuccess, __tsplusTrace) {
|
1631
1613
|
return ma => {
|
1632
|
-
return matchCauseIO_1(cause =>
|
1614
|
+
return matchCauseIO_1(cause => tsplus_module_16.match(that, failCauseNow_1)(tsplus_module_2.keepDefects(cause)), onSuccess, __tsplusTrace)(ma);
|
1633
1615
|
};
|
1634
1616
|
}
|
1635
1617
|
/**
|
1636
1618
|
* @tsplus static fncts.io.IOOps unit
|
1637
1619
|
*/
|
1638
|
-
const unit_1 = /*#__PURE__*/succeedNow_1(undefined, fileName_1 + ":
|
1620
|
+
const unit_1 = /*#__PURE__*/succeedNow_1(undefined, fileName_1 + ":1803:45");
|
1639
1621
|
const unit = unit_1;
|
1640
1622
|
/**
|
1641
1623
|
* Converts an option on errors into an option on values.
|
@@ -1644,7 +1626,7 @@ const unit = unit_1;
|
|
1644
1626
|
*/
|
1645
1627
|
exports.unit = unit;
|
1646
1628
|
function unjust(self, __tsplusTrace) {
|
1647
|
-
return matchIO_1(e =>
|
1629
|
+
return matchIO_1(e => tsplus_module_16.match(() => succeedNow_1(tsplus_module_3.nothing(), __tsplusTrace), failNow_1)(e), a => succeedNow_1(tsplus_module_3.just(a), __tsplusTrace), __tsplusTrace)(self);
|
1648
1630
|
}
|
1649
1631
|
/**
|
1650
1632
|
* Takes some fiber failures and converts them into errors, using the
|
@@ -1654,7 +1636,7 @@ function unjust(self, __tsplusTrace) {
|
|
1654
1636
|
*/
|
1655
1637
|
function unrefineWith_1(pf, f, __tsplusTrace) {
|
1656
1638
|
return fa => {
|
1657
|
-
return catchAllCause_1(cause =>
|
1639
|
+
return catchAllCause_1(cause => tsplus_module_16.match(() => failCauseNow_1(tsplus_module_2.map(f)(cause), __tsplusTrace), failNow_1)(tsplus_module_2.find(c => tsplus_module_2.isHalt(c) ? pf(c.value) : tsplus_module_3.nothing())(cause)), __tsplusTrace)(fa);
|
1658
1640
|
};
|
1659
1641
|
}
|
1660
1642
|
/**
|