UNPKG

linq-extensions

Version:

Linq-like extension methods for JavaScript and TypeScript builtin collections

21 lines 859 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.GroupingIterable = void 0; const iterable_1 = require("../iterable"); const grouping_1 = require("../grouping/grouping"); class GroupingIterable extends iterable_1.Iterable { constructor(originalIterable, keySelector, equalityCheck) { super(); this.originalIterable = originalIterable; this.keySelector = keySelector; this.equalityCheck = equalityCheck; } *[Symbol.iterator]() { const keys = this.originalIterable.select(this.keySelector).distinct(this.equalityCheck); for (const key of keys) { yield new grouping_1.Grouping(key, this.originalIterable.where(x => this.keySelector(x) === key)); } } } exports.GroupingIterable = GroupingIterable; //# sourceMappingURL=grouping-iterable.js.map