TypeScript/tests/baselines/reference/overloadsWithConstraints.types
2015-04-13 14:29:37 -07:00

24 lines
1.4 KiB
Plaintext

=== tests/cases/compiler/overloadsWithConstraints.ts ===
declare function f<T extends Number>(x: T): T;
>f : { <T extends Number>(x: T): T; <T extends String>(x: T): T; }, Symbol(f, Decl(overloadsWithConstraints.ts, 0, 0), Decl(overloadsWithConstraints.ts, 0, 46))
>T : T, Symbol(T, Decl(overloadsWithConstraints.ts, 0, 19))
>Number : Number, Symbol(Number, Decl(lib.d.ts, 456, 40), Decl(lib.d.ts, 518, 11))
>x : T, Symbol(x, Decl(overloadsWithConstraints.ts, 0, 37))
>T : T, Symbol(T, Decl(overloadsWithConstraints.ts, 0, 19))
>T : T, Symbol(T, Decl(overloadsWithConstraints.ts, 0, 19))
declare function f<T extends String>(x: T): T
>f : { <T extends Number>(x: T): T; <T extends String>(x: T): T; }, Symbol(f, Decl(overloadsWithConstraints.ts, 0, 0), Decl(overloadsWithConstraints.ts, 0, 46))
>T : T, Symbol(T, Decl(overloadsWithConstraints.ts, 1, 19))
>String : String, Symbol(String, Decl(lib.d.ts, 275, 1), Decl(lib.d.ts, 443, 11))
>x : T, Symbol(x, Decl(overloadsWithConstraints.ts, 1, 37))
>T : T, Symbol(T, Decl(overloadsWithConstraints.ts, 1, 19))
>T : T, Symbol(T, Decl(overloadsWithConstraints.ts, 1, 19))
var v = f<string>("");
>v : string, Symbol(v, Decl(overloadsWithConstraints.ts, 3, 3))
>f<string>("") : string
>f : { <T extends Number>(x: T): T; <T extends String>(x: T): T; }, Symbol(f, Decl(overloadsWithConstraints.ts, 0, 0), Decl(overloadsWithConstraints.ts, 0, 46))
>"" : string