You're Invited: Meet the Socket team at BSidesSF and RSAC - April 27 - May 1.RSVP
Socket
Sign inDemoInstall
Socket

stream-source

Package Overview
Dependencies
Maintainers
1
Versions
12
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

stream-source

Read binary streams in chunks, on demand, with promises.

0.3.5
latest
Source
npm
Version published
Maintainers
1
Created
Source

stream-source

A readable stream reader implementation on top of a Node readable stream. This library allows you to write code that takes a source as input, and can work with either native readable streams or Node streams. For example:

var stream = require("stream-source");

function read(source) {
  return source.slice(40).then(value => {
    if (value == null) return;
    process.stdout.write(value);
    return read(source);
  });
}

read(stream(process.stdin))
  .catch(error => console.error(error.stack));

API Reference

# stream(stream) <>
# stream(reader)

In Node, returns a sliceable source for the specified Node readable stream. In a browser, if the specified reader exposes a reader.read method, it is assumed to be a readable stream reader, and the specified reader is returned as-is. Otherwise, the specified reader is assumed to be a readable stream, and the reader returned by stream.getReader is returned.

# source.slice(length) <>

Returns a Promise for the next chunk of data from the underlying stream, yielding a Uint8Array (a Buffer) of length bytes, or the remaining bytes of the underlying stream if the underlying stream has more than zero but fewer than length bytes remaining, or null when no bytes remain in the stream.

# source.read() <>

Returns a Promise for the next chunk of data from the underlying stream. The yielded result is an object with the following properties:

  • value - a Uint8Array (a Buffer), or undefined if the stream ended
  • done - a boolean which is true if the stream ended

# source.cancel() <>

Returns a Promise which is resolved when the underlying stream has been destroyed.

Keywords

binary

FAQs

Package last updated on 02 Sep 2017

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