@metreeca/core - v0.9.17
    Preparing search index...

    Module index

    Core utility types and type guards.

    import {
    isDefined,
    isFunction,
    isError,
    isPromise,
    isIterable,
    isAsyncIterable
    } from '@metreeca/core';

    if (isDefined(value)) {
    return value.property; // value is narrowed to exclude undefined and null
    }

    if (isFunction(value)) {
    value(); // value is narrowed to Function type
    }

    if (isError(value)) {
    console.error(value.message); // value is narrowed to Error
    }

    if (isPromise(value)) {
    await value; // value is narrowed to Promise type
    }

    if (isIterable(value)) {
    for (const item of value) { // value implements iterable protocol
    process(item);
    }
    }

    if (isAsyncIterable(value)) {
    for await (const item of value) { // value implements async iterable protocol
    await process(item);
    }
    }

    Type Aliases

    Identifier

    ECMAScript Identifier.

    Some

    A value or a readonly array of values.

    Lazy

    A value or a function returning a value.

    Functions

    isIdentifier

    Checks if a value is a valid Identifier.

    isDefined

    Checks if a value is not undefined or null.

    isSymbol

    Checks if a value is a symbol.

    isFunction

    Checks if a value is a function.

    isError

    Checks if a value is an Error instance.

    isRegExp

    Checks if a value is a RegExp instance.

    isDate

    Checks if a value is a Date instance.

    isPromise

    Checks if a value is a promise.

    isIterable

    Checks if a value is iterable.

    isAsyncIterable

    Checks if a value is async iterable.