streaming-set

1.0.3 • Public • Published

streaming-set

A stream which adds objects written to it to a set, and emits the updated set.

Build Status npm install

Example

var streamingSet = require('modules/streaming-set')

var set = streamingSet(['initial', 'tags'])

set.write('old')
// emits ['initial', 'tags', 'old']

set.remove('initial')
// emits ['tags', 'old']

set.clear()
// emits []

API

var set = streamingSet([items], [identify]) -> Stream
  • items: (optional) an array of objects with which to seed the set.
  • identify: (optional) a function which creates keys from items.

Returns a stream. On write, the stream will add the value written to it to a set (so long as applying identify to the item produces a value distinct from any existing key) that persists between write. On each write, it emits the whole set, as an array.

set.remove(key)

Apply identify to each item in the set, and remove any which match key.

set.clear()

Remove all items from the set.

License

This project is licensed under the Apache License, Version 2.0. See LICENSE for the full license.

Readme

Keywords

Package Sidebar

Install

npm i streaming-set

Weekly Downloads

2

Version

1.0.3

License

Apache-2.0

Unpacked Size

6.27 kB

Total Files

7

Last publish

Collaborators

  • fardog
  • urbanairship