0.7.1 • Published 6 years ago

@async-generators/equal v0.7.1

Weekly downloads
-
License
MIT
Repository
-
Last release
6 years ago

equal

logo

compare two iterator sequences for equality

NPM version Travis Status Travis Status

Install

npm install @async-generators/equal --save
yarn add @async-generators/equal

This package's main entry points to a commonjs dist. The module entry points to a es2015 module dist. Both require require native async-generator support, or be down-compiled with a webpack loader.

Api

equal(first, second , comparer)

equal() compares two sync/async iterable sequences and returns true if:

  • both yield objects of the same typeof
  • both yield equal items, where comparer(a, b) == true
  • both yield equal items in the same order.
  • both sequence yield the same number of items

Both first and second must have either a [Symbol.asyncIterator] or [Symbol.iterator] property. If they have both then [Symbol.asyncIterator] is used.

Example

example.js

const equal = require('@async-generators/equal').default;

async function* first() {
  yield 1; yield 2; yield 3;
}
function* second() {
  yield 1; yield 2; yield 3;
}

async function main(){
  let result = await equal(first(), second());
  
  console.log("equal:", result);
}

main();

Execute with node.js 9 and above:

node --harmony example.js

Typescript

This library is fully typed and can be imported using:

import equal from '@async-generators/equal');

It is also possible to directly execute your properly configured typescript with ts-node:

ts-node --harmony foo.ts
0.7.1

6 years ago

0.7.0

6 years ago

0.6.1

6 years ago

0.6.0

6 years ago

0.5.0

7 years ago

0.4.0

7 years ago

0.3.0

7 years ago

0.2.1

7 years ago

0.2.0

7 years ago

0.1.0

7 years ago