streams
Version:
A lazy streams library for functional composition in JavaScript.
18 lines • 1.56 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.stringSplitter = void 0;
exports.splitChunk = splitChunk;
function splitChunk(splitter, chunk, previous) {
const lines = splitter.split(chunk);
if (previous !== undefined) {
lines[0] = splitter.concat(previous, lines[0]);
}
const remainder = lines.pop();
return [lines, remainder];
}
const stringSplitter = (separator) => ({
split: (chunk) => chunk.split(separator ?? /\r?\n/),
concat: (a, b) => a + b,
});
exports.stringSplitter = stringSplitter;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BsaXR0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdXRpbC9zcGxpdHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFLQSxnQ0FhQztBQWJELFNBQWdCLFVBQVUsQ0FDeEIsUUFBd0IsRUFDeEIsS0FBUSxFQUNSLFFBQXVCO0lBRXZCLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFcEMsSUFBSSxRQUFRLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDM0IsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFDRCxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsR0FBRyxFQUFHLENBQUM7SUFFL0IsT0FBTyxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQztBQUM1QixDQUFDO0FBRU0sTUFBTSxjQUFjLEdBQUcsQ0FDNUIsU0FBMkIsRUFDRCxFQUFFLENBQUMsQ0FBQztJQUM5QixLQUFLLEVBQUUsQ0FBQyxLQUFhLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxJQUFJLE9BQU8sQ0FBQztJQUMzRCxNQUFNLEVBQUUsQ0FBQyxDQUFTLEVBQUUsQ0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQztDQUN4QyxDQUFDLENBQUM7QUFMVSxRQUFBLGNBQWMsa0JBS3hCIn0=