All files / seq/operator filter.ts

100% Statements 8/8
100% Branches 2/2
100% Functions 3/3
100% Lines 7/7

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15  1x   1x 4x 8x 8x 80x 28x            
import {Seq, UnaryFunction} from 'fnxt/fnxt-types';
import {toSequence} from '../build';
 
export const filter = <E>(mapping: UnaryFunction<E, boolean>) =>
  (seq: Seq<E>): Seq<E> =>
    toSequence(function* () {
      for (const e of seq) {
        if (mapping(e)) {
          yield e;
        }
      }
    });