You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Use this when you really can't pull from your source.
For example, often I like to have a "live" stream.
This would read a series of data, first old data,
but then stay open and read new data as it comes in.
In that case, the new data needs to be queued up while the old data is read,
and also, the rate things are pushed into the queue doesn't affect the rate of reads.
If there is no realtime aspect to this stream, it's likely that you don't need pushable.
Instead try just using pull.values(array).
Also, can provide a listener for when the stream is closed.
varPushable=require('pull-pushable')varpull=require('pull-stream')varp=Pushable(function(err){console.log('stream closed!')})//read 3 times then abort.pull(p,pull.take(3),pull.drain(console.log))p.push(1)p.push(2)p.push(3)p.push(4)//stream will be aborted before this is output
When giving the stream away and you don't want the user to have the push/end functions,
you can pass a separated option. It returns { push, end, source, buffer }.
functioncreateStream(){varp=Pushable(true)// optionally pass `onDone` after itsomethingAsync((err,data)=>{if(err)returnp.end(err)p.push(data)})returnp.source}varstream=createStream()// stream.push === undefined
The current buffer array is exposed as buffer if you need to inspect or
manipulate it.
API
var p = Pushable([separated][, onClose])
Returns an new instance of Pushable.
If separated is true, then p.source will be exposed, allowing just the
source stream to be exposed without access to the rest of the Pushable API.
onClose, if provided, will be called with err, which may be true (normal
stream end) or an Error instance, indicating an error occurred in the
pipeline.
p.push(buf)
Push a Buffer, buf, into the Pushable.
p.end([err])
Ends the source, with optional error err.
p.buffer
The current buffer of unread data that's been pushed to p.