UNPKG

sequency

Version:

Functional sequences for processing iterable data in JavaScript

31 lines 912 B
Object.defineProperty(exports, "__esModule", { value: true }); exports.Last = void 0; var Last = /** @class */ (function () { function Last() { } /** * Returns the last element of the sequence or the last element matching `predicate` if present, otherwise throws * an error. * * @param {(value: T) => boolean} predicate * @returns {T} */ Last.prototype.last = function (predicate) { if (predicate != null) { return this.filter(predicate).last(); } var result; var empty = true; for (var item = this.iterator.next(); !item.done; item = this.iterator.next()) { result = item.value; empty = false; } if (empty) { throw new Error("No such element"); } return result; }; return Last; }()); exports.Last = Last; //# sourceMappingURL=last.js.map