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 16 17 | 1x 1x 1x 2x 2x 10x 10x 6x | import {Chooser, isSome} from 'fnxt/option';
import {Seq} from 'fnxt/fnxt-types';
import {toSequence} from '../build';
export type chooseT = <E, F>(e: Chooser<E, F>) => (seq: Seq<E>) => Seq<F>
export const choose: chooseT = <E, F>(chooser: Chooser<E, F>) => (seq: Seq<E>): Seq<F> =>
toSequence(function* () {
for (const e of seq) {
const option = chooser(e);
if (isSome(option)) {
yield option.value;
}
}
});
|