from2

Convenience wrapper for ReadableStream, with an API lifted from "from" and "through2"

  • 所有者: hughsk/from2
  • 平台:
  • 許可證: MIT License
  • 分類:
  • 主題:
  • 喜歡:
    0
      比較:

Github星跟蹤圖

from2 Flattr this!experimental

from2 is a high-level module for creating readable streams that properly handle backpressure.

Convience wrapper for
readable-stream's ReadableStream
base class, with an API lifted from
from and
through2.

Usage

from2

stream = from2([opts], read)

Where opts are the options to pass on to the ReadableStream constructor,
and read(size, next) is called when data is requested from the stream.

  • size is the recommended amount of data (in bytes) to retrieve.
  • next(err) should be called when you're ready to emit more data.

For example, here's a readable stream that emits the contents of a given
string:

var from = require('from2')

function fromString(string) {
  return from(function(size, next) {
    // if there's no more content
    // left in the string, close the stream.
    if (string.length <= 0) return next(null, null)

    // Pull in a new chunk of text,
    // removing it from the string.
    var chunk = string.slice(0, size)
    string = string.slice(size)

    // Emit "chunk" from the stream.
    next(null, chunk)
  })
}

// pipe "hello world" out
// to stdout.
fromString('hello world').pipe(process.stdout)

stream = from2.obj([opts], read)

Shorthand for from2({ objectMode: true }, read).

createStream = from2.ctor([opts], read)

If you're creating similar streams in quick succession you can improve
performance by generating a stream constructor that you can reuse instead
of creating one-off streams on each call.

Takes the same options as from2, instead returning a constructor which you
can use to create new streams.

See Also

  • from2-array - Create a from2 stream based on an array of source values.
  • from2-string - Create a stream from a string. Sugary wrapper around from2.

License

MIT. See LICENSE.md for details.

主要指標

概覽
名稱與所有者hughsk/from2
主編程語言JavaScript
編程語言JavaScript (語言數: 1)
平台
許可證MIT License
所有者活动
創建於2014-02-10 10:03:22
推送於2019-06-11 15:51:29
最后一次提交2016-08-15 13:15:43
發布數14
最新版本名稱v2.3.0 (發布於 2016-08-15 13:15:43)
第一版名稱v1.0.0 (發布於 2014-07-18 14:00:41)
用户参与
星數133
關注者數4
派生數21
提交數50
已啟用問題?
問題數12
打開的問題數8
拉請求數8
打開的拉請求數2
關閉的拉請求數2
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?