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

23 lines
1.1 KiB
Plaintext

=== tests/cases/compiler/genericParameterAssignability1.ts ===
function f<T>(x: T): T { return null; }
>f : <T>(x: T) => T, Symbol(f, Decl(genericParameterAssignability1.ts, 0, 0))
>T : T, Symbol(T, Decl(genericParameterAssignability1.ts, 0, 11))
>x : T, Symbol(x, Decl(genericParameterAssignability1.ts, 0, 14))
>T : T, Symbol(T, Decl(genericParameterAssignability1.ts, 0, 11))
>T : T, Symbol(T, Decl(genericParameterAssignability1.ts, 0, 11))
>null : null
var r = <T>(x: T) => x;
>r : <T>(x: T) => T, Symbol(r, Decl(genericParameterAssignability1.ts, 1, 3))
><T>(x: T) => x : <T>(x: T) => T
>T : T, Symbol(T, Decl(genericParameterAssignability1.ts, 1, 9))
>x : T, Symbol(x, Decl(genericParameterAssignability1.ts, 1, 12))
>T : T, Symbol(T, Decl(genericParameterAssignability1.ts, 1, 9))
>x : T, Symbol(x, Decl(genericParameterAssignability1.ts, 1, 12))
r = f; // should be allowed
>r = f : <T>(x: T) => T
>r : <T>(x: T) => T, Symbol(r, Decl(genericParameterAssignability1.ts, 1, 3))
>f : <T>(x: T) => T, Symbol(f, Decl(genericParameterAssignability1.ts, 0, 0))