Function generateSequence

  • Generate a sequence

    Type Parameters

    • T

    Parameters

    • nextFunction: (() => undefined | null | T)

      Function to generate next value with (null/undefined to end sequence)

        • (): undefined | null | T
        • Returns undefined | null | T

    Returns Sequence<T>

    Example

    // Sequence<number> => 0, 1, ..., 8, 9
    let i = 0;
    generateSequence(() => count < 10 ? count++ : null);
  • Generate a sequence

    Type Parameters

    • T

    Parameters

    • seedFunction: (() => undefined | null | T)

      Function to generate initial value with (seed)

        • (): undefined | null | T
        • Returns undefined | null | T

    • nextFunction: ((item) => undefined | null | T)

      Function to generate next value with (null/undefined to end sequence)

        • (item): undefined | null | T
        • Parameters

          • item: T

          Returns undefined | null | T

    Returns Sequence<T>

    Example

    // Sequence<number> => 0, 1, ..., 8, 9
    generateSequence(() => 0, value => value < 10 ? value + 1 : null);
  • Generate a sequence

    Type Parameters

    • T

    Parameters

    • seed: undefined | null | T

      Initial value (seed)

    • nextFunction: ((item) => undefined | null | T)

      Function to generate next value with (null/undefined to end sequence)

        • (item): undefined | null | T
        • Parameters

          • item: T

          Returns undefined | null | T

    Returns Sequence<T>

    Example

    // Sequence<number> => 0, 1, ..., 8, 9
    generateSequence(0, value => value < 10 ? value + 1 : null);