Prelude API
    Preparing search index...

    Function flatten

    • Creates a generator that flattens an iterable of iterables into a single sequence. Similar to Array.prototype.flat() with depth 1, but works with any iterable.

      Type Parameters

      • T

        Type of elements in the inner iterables

      Parameters

      • iterables: Iterable<Iterable<T, any, any>>

        An iterable of iterables to flatten

      Returns Generator<T, void, any>

      A generator that yields all elements from the nested iterables

      Elements from each nested iterable in sequence

      import * as G from '@prelude/generator'

      // Flatten arrays
      const result = G.pipe(
      G.flatten([[1, 2], [3, 4], [5, 6]]),
      G.array
      )
      // Result: [1, 2, 3, 4, 5, 6]
      import * as G from '@prelude/generator'

      // Flatten different iterable types
      const result = G.pipe(
      G.flatten([new Set([1, 2]), [3, 4], "56"]),
      G.array
      )
      // Result: [1, 2, 3, 4, '5', '6']
      import * as G from '@prelude/generator'

      // Empty iterables are skipped
      const result = G.pipe(
      G.flatten([[1, 2], [], [3, 4]]),
      G.array
      )
      // Result: [1, 2, 3, 4]

      flatMap - For mapping and flattening in one operation