@codibre/fluent-iterable
Version:
Provides LINQ-like fluent api operations for iterables and async iterables (ES2018+).
13 lines (12 loc) • 531 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.avgRecipe = avgRecipe;
const prepare_1 = require("../types-internal/prepare");
const utils_1 = require("../utils");
function avgRecipe({ forEach, resolver }) {
return function (baseMapper = utils_1.identity) {
const stepper = (0, utils_1.getAverageStepper)();
const mapper = (0, prepare_1.prepare)(baseMapper);
return resolver(forEach.call(this, (x) => resolver(mapper(x), stepper.step)), () => stepper.avg);
};
}