You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
YZY eef3e25414
branch149
11 months ago
..
.travis.yml branch149 11 months ago
LICENSE branch149 11 months ago
README.md branch149 11 months ago
example.js branch149 11 months ago
index.js branch149 11 months ago
package.json branch149 11 months ago
test.js branch149 11 months ago

README.md

flush-write-stream

A write stream constructor that supports a flush function that is called before finish is emitted

npm install flush-write-stream

build status

Usage

var writer = require('flush-write-stream')

var ws = writer(write, flush)

ws.on('finish', function () {
  console.log('finished')
})

ws.write('hello')
ws.write('world')
ws.end()

function write (data, enc, cb) {
  // i am your normal ._write method
  console.log('writing', data.toString())
  cb()
}

function flush (cb) {
  // i am called before finish is emitted
  setTimeout(cb, 1000) // wait 1 sec
}

If you run the above it will produce the following output

writing hello
writing world
(nothing happens for 1 sec)
finished

API

var ws = writer([options], write, [flush])

Create a new writable stream. Options are forwarded to the stream constructor.

var ws = writer.obj([options], write, [flush])

Same as the above except objectMode is set to true per default.

License

MIT