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 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
|
=== tests/cases/compiler/declFileTypeofFunction.ts ===
function f(n: typeof f): string;
>f : { (n: typeof f): string; (n: { (n: typeof g): number; (n: typeof f): number; }): string; }
>n : { (n: typeof f): string; (n: { (n: typeof g): number; (n: typeof f): number; }): string; }
>f : { (n: typeof f): string; (n: { (n: typeof g): number; (n: typeof f): number; }): string; }
function f(n: typeof g): string;
>f : { (n: typeof f): string; (n: { (n: typeof g): number; (n: typeof f): number; }): string; }
>n : { (n: typeof g): number; (n: { (n: typeof f): string; (n: typeof g): string; }): number; }
>g : { (n: typeof g): number; (n: { (n: typeof f): string; (n: typeof g): string; }): number; }
function f() { return undefined; }
>f : { (n: typeof f): string; (n: { (n: typeof g): number; (n: typeof f): number; }): string; }
>undefined : undefined
function g(n: typeof g): number;
>g : { (n: typeof g): number; (n: { (n: typeof f): string; (n: typeof g): string; }): number; }
>n : { (n: typeof g): number; (n: { (n: typeof f): string; (n: typeof g): string; }): number; }
>g : { (n: typeof g): number; (n: { (n: typeof f): string; (n: typeof g): string; }): number; }
function g(n: typeof f): number;
>g : { (n: typeof g): number; (n: { (n: typeof f): string; (n: typeof g): string; }): number; }
>n : { (n: typeof f): string; (n: { (n: typeof g): number; (n: typeof f): number; }): string; }
>f : { (n: typeof f): string; (n: { (n: typeof g): number; (n: typeof f): number; }): string; }
function g() { return undefined; }
>g : { (n: typeof g): number; (n: { (n: typeof f): string; (n: typeof g): string; }): number; }
>undefined : undefined
var b: () => typeof b;
>b : () => any
>b : () => any
function b1() {
>b1 : () => typeof b1
return b1;
>b1 : () => typeof b1
}
function foo(): typeof foo {
>foo : () => typeof foo
>foo : () => typeof foo
return null;
>null : null
}
var foo1: typeof foo;
>foo1 : () => typeof foo
>foo : () => typeof foo
var foo2 = foo;
>foo2 : () => typeof foo
>foo : () => typeof foo
var foo3 = function () {
>foo3 : () => any
>function () { return foo3;} : () => any
return foo3;
>foo3 : () => any
}
var x = () => {
>x : () => any
>() => { return x;} : () => any
return x;
>x : () => any
}
function foo5(x: number) {
>foo5 : (x: number) => (x: number) => number
>x : number
function bar(x: number) {
>bar : (x: number) => number
>x : number
return x;
>x : number
}
return bar;
>bar : (x: number) => number
}
|