streams
Version:
A lazy streams library for functional composition in JavaScript.
19 lines • 1.59 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const async_iterator_stream_1 = require("../../async-iterator-stream");
const splitter_1 = require("../../util/splitter");
async_iterator_stream_1.AsyncIteratorStream.prototype.split = function (by) {
async function* splitOperator(it) {
let remainder;
for await (const chunk of it) {
const [items, nextRemainder] = (0, splitter_1.splitChunk)(by, chunk, remainder);
yield* items;
remainder = nextRemainder;
}
if (remainder !== undefined) {
yield remainder;
}
}
return new async_iterator_stream_1.AsyncIteratorStream(splitOperator(this));
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BsaXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvb3BlcmF0b3JzL2FzeW5jL3NwbGl0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsdUVBQWtFO0FBQ2xFLGtEQUEyRDtBQVEzRCwyQ0FBbUIsQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLFVBQ3BDLEVBQWtCO0lBRWxCLEtBQUssU0FBUyxDQUFDLENBQUMsYUFBYSxDQUFDLEVBQTBCO1FBQ3RELElBQUksU0FBd0IsQ0FBQztRQUM3QixJQUFJLEtBQUssRUFBRSxNQUFNLEtBQUssSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUM3QixNQUFNLENBQUMsS0FBSyxFQUFFLGFBQWEsQ0FBQyxHQUFHLElBQUEscUJBQVUsRUFBQyxFQUFFLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQ2hFLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQztZQUNiLFNBQVMsR0FBRyxhQUFhLENBQUM7UUFDNUIsQ0FBQztRQUVELElBQUksU0FBUyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzVCLE1BQU0sU0FBUyxDQUFDO1FBQ2xCLENBQUM7SUFDSCxDQUFDO0lBQ0QsT0FBTyxJQUFJLDJDQUFtQixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQ3RELENBQUMsQ0FBQyJ9