UNPKG

@beenotung/tslib

Version:
25 lines (24 loc) 773 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ParallelArray = void 0; exports.parallel_map = parallel_map; async function parallel_map(xs, f) { return Promise.all(xs.map(f)); } var ParallelArray; (function (ParallelArray) { function wrap(xs) { const res = {}; res.map = f => wrapPromise(parallel_map(xs, f)); res.unwrap = () => Promise.resolve(xs); return res; } ParallelArray.wrap = wrap; function wrapPromise(xs) { const res = {}; res.map = f => wrapPromise(xs.then(xs => parallel_map(xs, f))); res.unwrap = () => xs; return res; } ParallelArray.wrapPromise = wrapPromise; })(ParallelArray || (exports.ParallelArray = ParallelArray = {}));