R8244/node_modules/bufferstreams52a4aa7a2ec6master
R8244/node_modules/bufferstreams
52a4aa7a2ec6master
README.md
README.md
BufferStreams
    
BufferStreams abstracts streams to allow you to deal with their whole content in a single buffer when it becomes necessary (by example: a legacy library that do not support streams).
It is not a good practice, just some glue. Using BufferStreams means:
- there is no library dealing with streams for your needs
- you filled an issue to the wrapped library to support streams
Usage
Install the npm module:
sh npm install bufferstreams --save
Then, in your scripts:
js var BufferStreams = require('bufferstreams'); Fs.createReadStream('input.txt') .pipe(new BufferStreams(function(err, buf, cb) { // err will be filled with an error if the piped in stream emits one. if(err) { throw err; } // buf will contain the whole piped in stream contents buf = Buffer(buf.toString('utf-8').replace('foo', 'bar')); // cb is a callback to pass the result back to the piped out stream // first argument is an error that will be emitted if any // the second argument is the modified buffer cb(null, buf); })) .pipe(Fs.createWriteStream('output.txt'));
Contributing
Feel free to pull your code if you agree with publishing it under the MIT license.
c4science · Help