Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const { Readable, Writable, Transform } = require('stream');
- let inStream = Readable();
- inStream._read = () => inStream.push('test');
- let asyncTxStream = Transform({objectMode: true});
- asyncTxStream._transform = (buff, enc, next) => {
- setTimeout(() => {
- console.log(buff.toString());
- asyncTxStream.push(buff);
- next();
- }, 20)
- }
- var txStream = Transform({objectMode: true});
- txStream._transform = (buff, enc, next) => {
- console.log(buff.toString());
- txStream.push(buff);
- next();
- }
- let outStream = Writable({objectMode: true});
- outStream._write = (chunk, enc, next) => next();
- let stream = Readable({objectMode: true});
- stream._read = () => stream.push(inStream.read());
- // broken
- stream
- .pipe(asyncTxStream)
- .pipe(outStream);
- // works
- // stream
- // .pipe(txStream)
- // .pipe(outStream);
- // works
- // inStream
- // .pipe(asyncTxStream)
- // .pipe(outStream);
Add Comment
Please, Sign In to add comment