filter-iterable

0.1.5 • Public • Published

filter-iterable

travis ci npm version Coverage Status Dependency Status

filter-iterable exports a class that builds iterables that provide filter method.

Install

$ npm install filter-iterable --save

Usage

const FilterIterable = require('filter-iterable')
 
const iterable = new FilterIterable(new Set([4, 2, 7, 8, 4, 7])) // (4 2 7 8 4 7)
    .filter(e => e % 2 === 0) // (4 2 8 4)
    .filter(e => e !== 8) // (4 2 4)
 
// converting to array:
[...iterable] // [4 2 4]
 
// traversing values:
for (const val of iterable) {
    // ...
}
 
// creating an iterator that traverses the values
let iterator = iterable[Symbol.iterator]()
iterator.next() // {value: 4, done: false}
iterator.next() // {value: 2, done: false}
iterator.next() // {value: 4, done: false}
iterator.next() // {value: undefined, done: true}
 
// Infinite iterable
const naturals = {
    [Symbol.iterator]: function* () {
        let i = 1
        while(true) { yield i++ }
    }
} // (1 2 3 4...)
 
new FilterIterable(naturals) // (1 2 3 4 5 6 7 8 9...)
    .filter(e => e % 2 === 0) // (2 4 6 8 10...)

Support

  • Node.js >=6
  • ES2015 transpilers

License

MIT

Readme

Keywords

Package Sidebar

Install

npm i filter-iterable

Weekly Downloads

2

Version

0.1.5

License

MIT

Unpacked Size

11.4 kB

Total Files

6

Last publish

Collaborators

  • xgbuils