Package Exports
- pull-block
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-block) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
pull-block
transform input into equally-sized chunks as output
pull-stream version of block-stream.
Installation
With npm do:
> npm install pull-block
Example
var block = require('pull-block')
var pull = require('pull-stream')
var toPull = require('stream-to-pull-stream')
pull(
toPull.source(process.stdin),
block({ size: 16, zeroPadding: true }),
pull.through(function (buf) {
var str = buf.toString().replace(/[\x00-\x1f]/g, chr)
console.log('buf[' + buf.length + ']=' + str)
}),
pull.drain()
)
function chr (s) { return '\\x' + pad(s.charCodeAt(0).toString(16), 2) }
function pad (s, n) { return Array(n - s.length + 1).join('0') + s }
$ echo {c,d,f}{a,e,i,o,u}{t,g,r} | node example/stream.js
buf[16]=cat cag car cet
buf[16]=ceg cer cit cig
buf[16]=cir cot cog cor
buf[16]=cut cug cur dat
buf[16]=dag dar det deg
buf[16]=der dit dig dir
buf[16]=dot dog dor dut
buf[16]=dug dur fat fag
buf[16]=far fet feg fer
buf[16]=fit fig fir fot
buf[16]=fog for fut fug
buf[16]=fur\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00
Methods
var block = require('pull-block')
var b = block(opts)
var b = block(size, opts)
Create a new through stream b
that outputs chunks of length size
or
opts.size
.
When opts.zeroPadding
is false, do not zero-pad the last chunk.
When opts.emitEmpty
is true (default is false
), emit a zero-sized buffer when the source is empty or only feeds in zero-length buffers.
License
MIT