Package Exports
- pull-length-prefixed
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (pull-length-prefixed) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
pull-length-prefixed
Streaming length prefixed buffers with pull-streams
Table of Contents
Installation
$ npm install --save pull-length-prefixed
Usage
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, encode) {
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>]
})
)
API
encode([opts])
opts: Object
, optionalfixed: false
: If true uses a fixed 4 byte Int32BE prefix instead of varint
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.
decode([opts])
opts: Object
, optionalfixed: 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 fordecode
.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.
Contribute
PRs and issues gladly accepted! Check out the issues.
License
MIT © 2016 Friedel Ziegelmayer