Iterables
Basic functions that can be used to manipulate and utilise iterables
drain
Standard function
import { drain } from "@opennetwork/iterable";
// Iterable<number>
const iterable = [1, 2, 3];
// boolean
const result = drain(iterable);
console.log("Had any value", result);
Async function
import { asyncDrain } from "@opennetwork/iterable";
// AsyncIterableLike<number>
const iterable = [1, 2, 3];
(async () => {
const result: boolean = await asyncDrain(iterable);
console.log("Had any value", result);
})();
Standard extended iterable
import { extendedIterable } from "@opennetwork/iterable";
// Iterable<number>
const iterable = [1, 2, 3];
// boolean
const result = extendedIterable(iterable).drain();
console.log("Had any value", result);
Async extended iterable
import { asyncExtendedIterable } from "@opennetwork/iterable";
// AsyncIterableLike<number>
const iterable = [1, 2, 3];
(async () => {
// boolean
const result = await asyncExtendedIterable(iterable).drain();
console.log("Had any value", result);
})();
every
Standard function
import { every } from "@opennetwork/iterable";
// Iterable<number>
const iterable = [1, 2, 3];
// boolean
const result = every(iterable, value => value > 0);
console.log("Every over 0", result);
Async function
import { asyncDrain } from "@opennetwork/iterable";
// AsyncIterableLike<number>
const iterable = [1, 2, 3];
(async () => {
const result: boolean = await asyncEvery(iterable, value => Promise.resolve(value > 0));
console.log("Every over 0", result);
})();
Standard extended iterable
import { extendedIterable } from "@opennetwork/iterable";
// Iterable<number>
const iterable = [1, 2, 3];
// boolean
const result = extendedIterable(iterable).every(value => value > 0);
console.log("Every over 0", result);
Async extended iterable
import { asyncExtendedIterable } from "@opennetwork/iterable";
// AsyncIterableLike<number>
const iterable = [1, 2, 3];
(async () => {
// boolean
const result = await asyncExtendedIterable(iterable).every(value => Promsie.resolve(value > 0));
console.log("Every over 0", result);
})();
except
Standard function
import { except, toArray } from "@opennetwork/iterable";
// Iterable<number>
const iterable = [1, 2, 3];
// boolean
const result = toArray(except(iterable, value => value > 2));
console.log("Except over 2", result);
Async function
import { asyncExcept, asyncToArray } from "@opennetwork/iterable";
// AsyncIterableLike<number>
const iterable = [1, 2, 3];
(async () => {
const result: boolean = await asyncToArray(asyncExcept(iterable, value => Promise.resolve(value > 2)));
console.log("Except over 2", result);
})();
Standard extended iterable
import { extendedIterable } from "@opennetwork/iterable";
// Iterable<number>
const iterable = [1, 2, 3];
// boolean
const result = extendedIterable(iterable).except(value => value > 2).toArray();
console.log("Except over 2", result);
Async extended iterable
import { asyncExtendedIterable } from "@opennetwork/iterable";
// AsyncIterableLike<number>
const iterable = [1, 2, 3];
(async () => {
// ExtendedAsyncIterable
const result = await asyncExtendedIterable(iterable).except(value => Promsie.resolve(value > 2)).toArray();
console.log("Except over 2", result);
})();
filter
Standard function
import { filter, toArray } from "@opennetwork/iterable";
// Iterable<number>
const iterable = [1, 2, 3];
// boolean
const result = toArray(filter(iterable, value => value > 2));
console.log("Over 2", result);
Async function
import { asyncFilter, asyncToArray } from "@opennetwork/iterable";
// AsyncIterableLike<number>
const iterable = [1, 2, 3];
(async () => {
const result: boolean = await asyncToArray(asyncFilter(iterable, value => Promise.resolve(value > 2)));
console.log("Over 2", result);
})();
Standard extended iterable
import { extendedIterable } from "@opennetwork/iterable";
// Iterable<number>
const iterable = [1, 2, 3];
// boolean
const result = extendedIterable(iterable).filter(value => value > 2).toArray();
console.log("Over 2", result);
Async extended iterable
import { asyncExtendedIterable } from "@opennetwork/iterable";
// AsyncIterableLike<number>
const iterable = [1, 2, 3];
(async () => {
// ExtendedAsyncIterable
const result = await asyncExtendedIterable(iterable).filter(value => Promsie.resolve(value > 2)).toArray();
console.log("Over 2", result);
})();
forEach
hasAny
map
reduce
retain
some
Standard function
import { some, toArray } from "@opennetwork/iterable";
// Iterable<number>
const iterable = [1, 2, 3];
// boolean
const result = toArray(some(iterable, value => value > 2));
console.log("Any over 2", result);
Async function
import { asyncSome, asyncToArray } from "@opennetwork/iterable";
// AsyncIterableLike<number>
const iterable = [1, 2, 3];
(async () => {
const result: boolean = await asyncToArray(asyncSome(iterable, value => Promise.resolve(value > 2)));
console.log("Any over 2", result);
})();
Standard extended iterable
import { extendedIterable } from "@opennetwork/iterable";
// Iterable<number>
const iterable = [1, 2, 3];
// boolean
const result = extendedIterable(iterable).some(value => value > 2).toArray();
console.log("Any over 2", result);
Async extended iterable
import { asyncExtendedIterable } from "@opennetwork/iterable";
// AsyncIterableLike<number>
const iterable = [1, 2, 3];
(async () => {
// ExtendedAsyncIterable
const result = await asyncExtendedIterable(iterable).some(value => Promsie.resolve(value > 2)).toArray();
console.log("Any over 2", result);
})();