cspell
Version:
A Spelling Checker for Code!
16 lines • 478 B
JavaScript
import assert from 'assert';
export function* prefetchIterable(iterable, size) {
assert(size >= 0);
const iter = iterable[Symbol.iterator]();
const buffer = [];
for (let next = iter.next(); !next.done; next = iter.next()) {
buffer.push(next.value);
if (buffer.length >= size - 1) {
const value = buffer[0];
buffer.shift();
yield value;
}
}
yield* buffer;
}
//# sourceMappingURL=prefetch.mjs.map