UNPKG

946 BJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.ParallelArray = exports.parallel_map = void 0;
4const tslib_1 = require("tslib");
5function parallel_map(xs, f) {
6 return tslib_1.__awaiter(this, void 0, void 0, function* () {
7 return Promise.all(xs.map(f));
8 });
9}
10exports.parallel_map = parallel_map;
11var ParallelArray;
12(function (ParallelArray) {
13 function wrap(xs) {
14 const res = {};
15 res.map = f => wrapPromise(parallel_map(xs, f));
16 res.unwrap = () => Promise.resolve(xs);
17 return res;
18 }
19 ParallelArray.wrap = wrap;
20 function wrapPromise(xs) {
21 const res = {};
22 res.map = f => wrapPromise(xs.then(xs => parallel_map(xs, f)));
23 res.unwrap = () => xs;
24 return res;
25 }
26 ParallelArray.wrapPromise = wrapPromise;
27})(ParallelArray = exports.ParallelArray || (exports.ParallelArray = {}));
28//# sourceMappingURL=parallel.js.map
\No newline at end of file