UNPKG

iteragain

Version:

Javascript Iterable/Iterator/Generator-function utilities.

29 lines 1.1 kB
/** An iterator that pairs adjacent values in the input `Iterator<T>` together like: [T, T] */ var PairwiseIterator = /** @class */ (function () { function PairwiseIterator(iterator) { this.iterator = iterator; this.prev = null; } PairwiseIterator.prototype[Symbol.iterator] = function () { return this; }; PairwiseIterator.prototype.next = function () { var _a, _b; var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } if (!this.prev && (this.prev = (_a = this.iterator).next.apply(_a, args)).done) return { done: true, value: undefined }; var next = (_b = this.iterator).next.apply(_b, args); if (next.done) return { done: true, value: undefined }; var value = [this.prev.value, next.value]; this.prev = next; return { done: false, value: value }; }; return PairwiseIterator; }()); export { PairwiseIterator }; export default PairwiseIterator; //# sourceMappingURL=PairwiseIterator.js.map