1.0.1 • Published 7 years ago

tiloop v1.0.1

Weekly downloads
3
License
MIT
Repository
github
Last release
7 years ago

tiloop

npm npm Build Status Codecov cdn

Higher order function creates a function contain a iterator that yield last value coincident with done.

Installation

yarn add tiloop

Usage

import tiloop from 'tiloop'

const fn = tiloop({
  length: 10000,
  maxIncrement: 4,
  yielded: (indexes) => indexes
})

fn() // { done: false, value: [0, 1, 2, 3] }
fn() // { done: false, value: [4, 5, 6, 7] }
...
fn() // { done: true, value: [9996, 9997, 9998, 9999] }

tiloop(config)

length: number

Used for determine virtual-array length. (required)

maxIncrement: number

Used for determine increment in every yield. (required)

yielded: (array) => value

Used for yield. (required)

promisify: boolean

Whether Promise.resolve() to value. default: false

random: boolean

Whether increment indexes by random. default: false

modules

import { create, IndexesZero, i2f } from 'tiloop'

const indexes = new IndexesZero({ length, maxIncrement })
const iterator = create(indexes, (array) => {})
const afn = i2f(iterator, true)

create(indexes, yielded)

create iterator.

IndexesZero({ length, maxIncrement })

indexes increments 0 to length - 1.

IndexesRandom({ length, maxIncrement })

indexes increments random.

i2f(iterator[, promisify])

iterator to function.

Note

iterator made by create has done with last value. In other words, using result as iterable (not iterator) will lost the last value 😔.

const iterator = create(indexes,yielded) // done with last value
const array = [...create(indexes,yielded)] // not includes last value

License

MIT (http://opensource.org/licenses/MIT)

1.0.1

7 years ago

1.0.0

7 years ago

0.0.8

7 years ago

0.0.7

7 years ago

0.0.6

7 years ago

0.0.5

7 years ago

0.0.4

7 years ago

0.0.3

7 years ago

0.0.2

7 years ago

0.0.1

7 years ago