Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

it-reader

Package Overview
Dependencies
Maintainers
2
Versions
15
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

it-reader

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

  • 6.0.4
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
2
Created
Source

it-reader

codecov CI

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

Table of contents

Install

$ npm i it-reader

Browser <script> tag

Loading this module through a script tag will make it's exports available as ItReader in the global namespace.

<script src="https://unpkg.com/it-reader/dist/index.min.js"></script>

Usage

import { reader } from 'it-reader'

const stream = reader(source) // source is any iterable or async iterable
const { value, done } = await stream.next(8)

// NOTE: value is a BufferList (https://npm.im/bl)
console.log(value.toString())

// Now read 16 more bytes:
await stream.next(16)

// or...
// Consume the rest of the stream

for await (const chunk of stream) {
  console.log(chunk.toString())
}

API

import { reader } from '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.

API Docs

License

Licensed under either of

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Keywords

FAQs

Package last updated on 19 Apr 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc