1.1.0 • Published 3 years ago

tinyield4ts v1.1.0

Weekly downloads
10
License
Apache-2.0
Repository
github
Last release
3 years ago

Tinyield4ts

npm version Quality Gate Status Coverage Bugs Vulnerabilities

A Minimalistic, extensible and lazy sequence implementation for Typescript and Javascript.

Usage

An auxiliary collapse() method, which merges series of adjacent elements is written with Tinyield in the following way:

import {Query, Traverser} from 'tinyield4ts';

function collapse<T>(src: Query<T>): Traverser<T> {
    return yld => {
        let prev: T;
        src.forEach(item => {
            if (prev === undefined || prev !== item) {
                prev = item;
                yld(item);
            }
        });
    };
}

This method can be chained in a sequence like this:

const arrange = [7, 7, 8, 9, 9, 11, 11, 7];
const actual = [];
Query.of(arrange)
    .then(n => collapse(n))
    .filter(n => n % 2 !== 0)
    .forEach(actual.push);

Installation

$ npm i tinyield4ts

License

This project is licensed under Apache License, version 2.0

1.1.0

3 years ago

1.0.5

4 years ago

1.0.4

4 years ago

1.0.3

4 years ago

1.0.2

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago

0.1.0

4 years ago