Function prepend

  • Prepends one iterable or asynchronous iterable to another.

    Example

    const prependNumbers = prepend([0, 1, 2, 3, 4]);
    prependNumbers(["foo", "bar"]); // [0, 1, 2, 3, 4, "foo", "bar"]

    Returns

    Curried generator function with initialIterable set in context.

    Type Parameters

    • InitialIterable extends AsynchronousIterable<unknown>

    Parameters

    • initialIterable: InitialIterable

      Iterable to be appended.

    Returns (<TailIterable>(tailIterable: TailIterable) => TailIterable extends AsynchronousIterable<TailItem> ? InitialIterable extends AsynchronousIterable<InitialItem> ? TailIterable extends AsyncIterable<TailItem> ? AsyncIterableIterator<TailItem | InitialItem> : InitialIterable extends AsyncIterable<InitialItem> ? AsyncIterableIterator<TailItem | InitialItem> : IterableIterator<TailItem | InitialItem> : never : never)

      • <TailIterable>(tailIterable: TailIterable): TailIterable extends AsynchronousIterable<TailItem> ? InitialIterable extends AsynchronousIterable<InitialItem> ? TailIterable extends AsyncIterable<TailItem> ? AsyncIterableIterator<TailItem | InitialItem> : InitialIterable extends AsyncIterable<InitialItem> ? AsyncIterableIterator<TailItem | InitialItem> : IterableIterator<TailItem | InitialItem> : never : never
      • Type Parameters

        • TailIterable extends AsynchronousIterable<unknown>

        Parameters

        • tailIterable: TailIterable

        Returns TailIterable extends AsynchronousIterable<TailItem> ? InitialIterable extends AsynchronousIterable<InitialItem> ? TailIterable extends AsyncIterable<TailItem> ? AsyncIterableIterator<TailItem | InitialItem> : InitialIterable extends AsyncIterable<InitialItem> ? AsyncIterableIterator<TailItem | InitialItem> : IterableIterator<TailItem | InitialItem> : never : never