55 lines
2.2 KiB
Text
55 lines
2.2 KiB
Text
=== tests/cases/conformance/types/typeRelationships/recursiveTypes/nominalSubtypeCheckOfTypeParameter2.ts ===
|
|
interface B<T> {
|
|
>B : Symbol(B, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 0, 0))
|
|
>T : Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 0, 12))
|
|
|
|
bar: T;
|
|
>bar : Symbol(bar, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 0, 16))
|
|
>T : Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 0, 12))
|
|
}
|
|
|
|
// ok
|
|
interface A<T> extends B<T> {
|
|
>A : Symbol(A, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 2, 1))
|
|
>T : Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 5, 12))
|
|
>B : Symbol(B, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 0, 0))
|
|
>T : Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 5, 12))
|
|
|
|
foo: T;
|
|
>foo : Symbol(foo, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 5, 29))
|
|
>T : Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 5, 12))
|
|
}
|
|
|
|
// ok
|
|
interface A2<T> extends B<B<string>> {
|
|
>A2 : Symbol(A2, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 7, 1))
|
|
>T : Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 10, 13))
|
|
>B : Symbol(B, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 0, 0))
|
|
>B : Symbol(B, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 0, 0))
|
|
|
|
baz: T;
|
|
>baz : Symbol(baz, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 10, 38))
|
|
>T : Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 10, 13))
|
|
}
|
|
|
|
interface C<T> {
|
|
>C : Symbol(C, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 12, 1))
|
|
>T : Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 14, 12))
|
|
|
|
bam: T;
|
|
>bam : Symbol(bam, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 14, 16))
|
|
>T : Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 14, 12))
|
|
}
|
|
|
|
// ok
|
|
interface A3<T> extends B<C<T>> {
|
|
>A3 : Symbol(A3, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 16, 1))
|
|
>T : Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 19, 13))
|
|
>B : Symbol(B, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 0, 0))
|
|
>C : Symbol(C, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 12, 1))
|
|
>T : Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 19, 13))
|
|
|
|
bing: T;
|
|
>bing : Symbol(bing, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 19, 33))
|
|
>T : Symbol(T, Decl(nominalSubtypeCheckOfTypeParameter2.ts, 19, 13))
|
|
}
|