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
|
=== tests/cases/compiler/typeArgumentInferenceApparentType2.ts ===
function method<T>(iterable: Iterable<T>): T {
>method : Symbol(method, Decl(typeArgumentInferenceApparentType2.ts, 0, 0))
>T : Symbol(T, Decl(typeArgumentInferenceApparentType2.ts, 0, 16))
>iterable : Symbol(iterable, Decl(typeArgumentInferenceApparentType2.ts, 0, 19))
>Iterable : Symbol(Iterable, Decl(lib.es2015.iterable.d.ts, --, --))
>T : Symbol(T, Decl(typeArgumentInferenceApparentType2.ts, 0, 16))
>T : Symbol(T, Decl(typeArgumentInferenceApparentType2.ts, 0, 16))
function inner<U extends Iterable<T>>() {
>inner : Symbol(inner, Decl(typeArgumentInferenceApparentType2.ts, 0, 46))
>U : Symbol(U, Decl(typeArgumentInferenceApparentType2.ts, 1, 19))
>Iterable : Symbol(Iterable, Decl(lib.es2015.iterable.d.ts, --, --))
>T : Symbol(T, Decl(typeArgumentInferenceApparentType2.ts, 0, 16))
var u: U;
>u : Symbol(u, Decl(typeArgumentInferenceApparentType2.ts, 2, 11))
>U : Symbol(U, Decl(typeArgumentInferenceApparentType2.ts, 1, 19))
var res: T = method(u);
>res : Symbol(res, Decl(typeArgumentInferenceApparentType2.ts, 3, 11))
>T : Symbol(T, Decl(typeArgumentInferenceApparentType2.ts, 0, 16))
>method : Symbol(method, Decl(typeArgumentInferenceApparentType2.ts, 0, 0))
>u : Symbol(u, Decl(typeArgumentInferenceApparentType2.ts, 2, 11))
}
return;
}
|