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

69 lines
4.2 KiB
Plaintext

=== tests/cases/conformance/types/namedTypes/genericInstantiationEquivalentToObjectLiteral.ts ===
interface Pair<T1, T2> { first: T1; second: T2; }
>Pair : Pair<T1, T2>, Symbol(Pair, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 0, 0))
>T1 : T1, Symbol(T1, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 0, 15))
>T2 : T2, Symbol(T2, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 0, 18))
>first : T1, Symbol(first, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 0, 24))
>T1 : T1, Symbol(T1, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 0, 15))
>second : T2, Symbol(second, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 0, 35))
>T2 : T2, Symbol(T2, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 0, 18))
var x: Pair<string, number>
>x : Pair<string, number>, Symbol(x, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 1, 3))
>Pair : Pair<T1, T2>, Symbol(Pair, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 0, 0))
var y: { first: string; second: number; }
>y : { first: string; second: number; }, Symbol(y, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 2, 3))
>first : string, Symbol(first, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 2, 8))
>second : number, Symbol(second, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 2, 23))
x = y;
>x = y : { first: string; second: number; }
>x : Pair<string, number>, Symbol(x, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 1, 3))
>y : { first: string; second: number; }, Symbol(y, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 2, 3))
y = x;
>y = x : Pair<string, number>
>y : { first: string; second: number; }, Symbol(y, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 2, 3))
>x : Pair<string, number>, Symbol(x, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 1, 3))
declare function f<T, U>(x: Pair<T, U>);
>f : <T, U>(x: Pair<T, U>) => any, Symbol(f, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 5, 6))
>T : T, Symbol(T, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 7, 19))
>U : U, Symbol(U, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 7, 21))
>x : Pair<T, U>, Symbol(x, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 7, 25))
>Pair : Pair<T1, T2>, Symbol(Pair, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 0, 0))
>T : T, Symbol(T, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 7, 19))
>U : U, Symbol(U, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 7, 21))
declare function f2<T, U>(x: { first: T; second: U; });
>f2 : <T, U>(x: { first: T; second: U; }) => any, Symbol(f2, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 7, 40))
>T : T, Symbol(T, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 8, 20))
>U : U, Symbol(U, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 8, 22))
>x : { first: T; second: U; }, Symbol(x, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 8, 26))
>first : T, Symbol(first, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 8, 30))
>T : T, Symbol(T, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 8, 20))
>second : U, Symbol(second, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 8, 40))
>U : U, Symbol(U, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 8, 22))
f(x);
>f(x) : any
>f : <T, U>(x: Pair<T, U>) => any, Symbol(f, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 5, 6))
>x : Pair<string, number>, Symbol(x, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 1, 3))
f(y);
>f(y) : any
>f : <T, U>(x: Pair<T, U>) => any, Symbol(f, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 5, 6))
>y : { first: string; second: number; }, Symbol(y, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 2, 3))
f2(x);
>f2(x) : any
>f2 : <T, U>(x: { first: T; second: U; }) => any, Symbol(f2, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 7, 40))
>x : Pair<string, number>, Symbol(x, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 1, 3))
f2(y);
>f2(y) : any
>f2 : <T, U>(x: { first: T; second: U; }) => any, Symbol(f2, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 7, 40))
>y : { first: string; second: number; }, Symbol(y, Decl(genericInstantiationEquivalentToObjectLiteral.ts, 2, 3))