data-collectors
Version:
A collection of composable reduction operations for arbitrary streams of values
30 lines • 842 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const collector_1 = require("../collector");
class ToMapCollector extends collector_1.BaseCollector {
constructor(supplier) {
super();
this.supplier = supplier;
}
supply() {
return this.supplier();
}
accumulate(container, [key, value]) {
container.set(key, value);
}
combine(container1, container2) {
for (let value of container2) {
this.accumulate(container1, value);
}
return container1;
}
finish(container) {
return container;
}
}
exports.ToMapCollector = ToMapCollector;
function toMap(factory) {
return new ToMapCollector(factory || (() => new Map()));
}
exports.toMap = toMap;
//# sourceMappingURL=toMap.js.map