1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
=== tests/cases/compiler/recursiveInference1.ts ===
function fib(x:number) { return x <= 1 ? x : fib(x - 1) + fib(x - 2); }
>fib : (x: number) => any
>x : number
>x <= 1 ? x : fib(x - 1) + fib(x - 2) : any
>x <= 1 : boolean
>x : number
>1 : 1
>x : number
>fib(x - 1) + fib(x - 2) : any
>fib(x - 1) : any
>fib : (x: number) => any
>x - 1 : number
>x : number
>1 : 1
>fib(x - 2) : any
>fib : (x: number) => any
>x - 2 : number
>x : number
>2 : 2
var result = fib(5);
>result : any
>fib(5) : any
>fib : (x: number) => any
>5 : 5
|