Miss any of our Open RFC calls?Watch the recordings here! »

it-reader

2.1.0 • Public • Published

it-reader

Build Status dependencies Status JavaScript Style Guide

Read an exact number of bytes from a binary (async) iterable

Install

npm install it-reader

Usage

const Reader = require('it-reader')
 
const reader = Reader(source) // source is any iterable or async iterable
const { value, done } = await reader.next(8)
 
// NOTE: value is a BufferList (https://npm.im/bl)
console.log(value.toString())
 
// Now read 16 more bytes:
await reader.next(16)
 
// or...
// Consume the rest of the stream
 
for await (const chunk of reader) {
  console.log(chunk.toString())
}

API

const Reader = require('it-reader')

Reader(source)

Create and return a new reader.

Parameters

Returns

An async iterator that yields BufferList objects.

The iterator's next method takes an optional parameter - the number of bytes to read from the source.

If the number of bytes to read are not specified, the iterator will yield any bytes remaining in the internal buffer or the next available chunk.

If the number of bytes to read exceeds the number of bytes available in the source the iterator will throw and error with a code property set to 'ERR_UNDER_READ' and a buffer property (the bytes read so far, if any), which is a BufferList instance.

Contribute

Feel free to dive in! Open an issue or submit PRs.

License

MIT © Alan Shaw

Install

npm i it-reader

DownloadsWeekly Downloads

9,216

Version

2.1.0

License

MIT

Unpacked Size

10 kB

Total Files

6

Last publish

Collaborators

  • avatar