$ npm install pull-length-prefixed
Streaming length prefixed buffers with pull-streams
$ npm install --save pull-length-prefixed
var pull = require('pull-stream')
var lp = require('pull-length-prefixed')
// encode
pull(
pull.values([Buffer.from('hello world')]),
lp.encode(),
pull.collect(function (err, encoded) {
if (err) throw err
console.log(encoded)
// => [Buffer <0b 68 65 6c 6c 6f 20 77 6f 72 6c 64>]
})
)
// decode
pull(
pull.values(encoded), // e.g. from above
lp.decode(),
pull.collect(function (err, decoded) {
if (err) throw err
console.log(decoded)
// => [Buffer <68 65 6c 6c 6f 20 77 6f 72 6c 64>]
})
)
encode([opts])
opts: Object
, optional
fixed: false
: If true uses a fixed 4 byte Int32BE prefix instead of varintBy default all messages will be prefixed with a varint. If you want to use a fixed length prefix you can specify this through the opts
.
Returns a pull-stream through.
decode([opts])
opts: Object
, optional
fixed: false
: If true uses a fixed 4 byte Int32BE prefix instead of varintmaxLength
: If provided, will not decode messages longer than the size specified, if omitted will use the current default of 4MB.By default all messages will be prefixed with a varint. If you want to use a fixed length prefix you can specify this through the opts
.
Returns a pull-stream through.
decodeFromReader(reader, [opts], cb)
reader: [pull-reader](https://github.com/dominictarr/pull-reader)
opts: Object
, optional. Same as for decode
.cb: Function
: Callback called with (err, message)
.This uses a pull-reader instance to reade and decode a single message. Useful when using pull-handshake with length prefixed messages.
PRs and issues gladly accepted! Check out the issues.
MIT © 2016 Friedel Ziegelmayer
© 2010 - cnpmjs.org x YWFE | Home | YWFE