|
20 | 20 | >t : [T, U] |
21 | 21 |
|
22 | 22 | function f1() { |
23 | | -@@= skipped -41, +41 lines =@@ |
| 23 | + >f1 : () => void |
| 24 | + |
| 25 | + let f0 = fx<>; // Error |
| 26 | +->f0 : { <T>(x: T): T; <T>(x: T, n: number): T; <T, U>(t: [T, U]): [T, U]; } |
| 27 | +->fx<> : { <T>(x: T): T; <T>(x: T, n: number): T; <T, U>(t: [T, U]): [T, U]; } |
| 28 | ++>f0 : { (x: unknown): unknown; (x: unknown, n: number): unknown; (t: [unknown, unknown]): [unknown, unknown]; } |
| 29 | ++>fx<> : { (x: unknown): unknown; (x: unknown, n: number): unknown; (t: [unknown, unknown]): [unknown, unknown]; } |
| 30 | + >fx : { <T>(x: T): T; <T>(x: T, n: number): T; <T, U>(t: [T, U]): [T, U]; } |
| 31 | + |
| 32 | + let f1 = fx<string>; // { (x: string): string; (x: string, n: number): string; } |
| 33 | +@@= skipped -37, +37 lines =@@ |
| 34 | + } |
| 35 | + |
| 36 | + type T10 = typeof fx<>; // Error |
| 37 | +->T10 : { <T>(x: T): T; <T>(x: T, n: number): T; <T, U>(t: [T, U]): [T, U]; } |
| 38 | ++>T10 : { (x: unknown): unknown; (x: unknown, n: number): unknown; (t: [unknown, unknown]): [unknown, unknown]; } |
24 | 39 | >fx : { <T>(x: T): T; <T>(x: T, n: number): T; <T, U>(t: [T, U]): [T, U]; } |
25 | 40 |
|
26 | 41 | type T11 = typeof fx<string>; // { (x: string): string; (x: string, n: number): string; } |
|
44 | 59 | const A0 = Array<>; // Error |
45 | 60 | ->A0 : ArrayConstructor |
46 | 61 | ->Array<> : ArrayConstructor |
47 | | -+>A0 : { <T>(arrayLength: number): T[]; <T>(...items: T[]): T[]; new <T>(arrayLength: number): T[]; new <T>(...items: T[]): T[]; isArray(arg: any): arg is any[]; readonly prototype: any[]; from<T>(arrayLike: ArrayLike<T>): T[]; from<T, U>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[]; from<T>(iterable: ArrayLike<T> | Iterable<T>): T[]; from<T, U>(iterable: ArrayLike<T> | Iterable<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[]; of<T>(...items: T[]): T[]; readonly [Symbol.species]: ArrayConstructor; } |
48 | | -+>Array<> : { <T>(arrayLength: number): T[]; <T>(...items: T[]): T[]; new <T>(arrayLength: number): T[]; new <T>(...items: T[]): T[]; isArray(arg: any): arg is any[]; readonly prototype: any[]; from<T>(arrayLike: ArrayLike<T>): T[]; from<T, U>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[]; from<T>(iterable: ArrayLike<T> | Iterable<T>): T[]; from<T, U>(iterable: ArrayLike<T> | Iterable<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[]; of<T>(...items: T[]): T[]; readonly [Symbol.species]: ArrayConstructor; } |
| 62 | ++>A0 : { (arrayLength: number): unknown[]; (...items: unknown[]): unknown[]; new (arrayLength: number): unknown[]; new (...items: unknown[]): unknown[]; isArray(arg: any): arg is any[]; readonly prototype: any[]; from<T>(arrayLike: ArrayLike<T>): T[]; from<T, U>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[]; from<T>(iterable: ArrayLike<T> | Iterable<T>): T[]; from<T, U>(iterable: ArrayLike<T> | Iterable<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[]; of<T>(...items: T[]): T[]; readonly [Symbol.species]: ArrayConstructor; } |
| 63 | ++>Array<> : { (arrayLength: number): unknown[]; (...items: unknown[]): unknown[]; new (arrayLength: number): unknown[]; new (...items: unknown[]): unknown[]; isArray(arg: any): arg is any[]; readonly prototype: any[]; from<T>(arrayLike: ArrayLike<T>): T[]; from<T, U>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[]; from<T>(iterable: ArrayLike<T> | Iterable<T>): T[]; from<T, U>(iterable: ArrayLike<T> | Iterable<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[]; of<T>(...items: T[]): T[]; readonly [Symbol.species]: ArrayConstructor; } |
49 | 64 | >Array : ArrayConstructor |
50 | 65 |
|
51 | 66 | const A1 = Array<string>; // new (...) => string[] |
|
65 | 80 |
|
66 | 81 | type T20 = typeof Array<>; // Error |
67 | 82 | ->T20 : ArrayConstructor |
68 | | -+>T20 : { <T>(arrayLength: number): T[]; <T>(...items: T[]): T[]; new <T>(arrayLength: number): T[]; new <T>(...items: T[]): T[]; isArray(arg: any): arg is any[]; readonly prototype: any[]; from<T>(arrayLike: ArrayLike<T>): T[]; from<T, U>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[]; from<T>(iterable: ArrayLike<T> | Iterable<T>): T[]; from<T, U>(iterable: ArrayLike<T> | Iterable<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[]; of<T>(...items: T[]): T[]; readonly [Symbol.species]: ArrayConstructor; } |
| 83 | ++>T20 : { (arrayLength: number): unknown[]; (...items: unknown[]): unknown[]; new (arrayLength: number): unknown[]; new (...items: unknown[]): unknown[]; isArray(arg: any): arg is any[]; readonly prototype: any[]; from<T>(arrayLike: ArrayLike<T>): T[]; from<T, U>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[]; from<T>(iterable: ArrayLike<T> | Iterable<T>): T[]; from<T, U>(iterable: ArrayLike<T> | Iterable<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[]; of<T>(...items: T[]): T[]; readonly [Symbol.species]: ArrayConstructor; } |
69 | 84 | >Array : ArrayConstructor |
70 | 85 |
|
71 | 86 | type T21 = typeof Array<string>; // new (...) => string[] |
|
79 | 94 | >Array : ArrayConstructor |
80 | 95 |
|
81 | 96 | declare class C<T> { |
82 | | -@@= skipped -133, +133 lines =@@ |
| 97 | +@@= skipped -137, +137 lines =@@ |
83 | 98 | } |
84 | 99 |
|
85 | 100 | function f15(f: { new <T>(a: T): T, <U>(a: U, b: number): U[] }) { |
|
0 commit comments