All files / seq/generator fibonacci.ts

100% Statements 10/10
100% Branches 0/0
100% Functions 3/3
100% Lines 8/8

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 18 19  1x       4x 4x 4x 92x   88x         1x 4x    
import {Gen, Seq} from 'fnxt/fnxt-types';
import {toSequence} from '../build';
 
 
function* gen_fib(): Gen<number> {
  let a = 0;
  let b = 1;
  while (true) {
    yield a;
    {
      [b, a] = [a + b, b];
    }
  }
}
 
export const fibonacci = (): Seq<number> =>
  toSequence(() => gen_fib());