Filters an iterable object using the given predicate. Unlike Array#filter, this doesn't create a new Array in memory, the filter is done on iteration.

Returns true if the element should be included in the new iteration.

  • Type Parameters

    • T
    • S

    Parameters

    • iterable: Iterable<T>
    • predicate: ((value: T) => value is S)
        • (value): value is S
        • Parameters

          • value: T

          Returns value is S

    Returns IterableIterator<S>

  • Type Parameters

    • T

    Parameters

    • iterable: Iterable<T>
    • predicate: ((value: T) => boolean)
        • (value): boolean
        • Parameters

          • value: T

          Returns boolean

    Returns IterableIterator<T>