TypeScript/tests/baselines/reference/nominalSubtypeCheckOfTypeParameter2.types
2015-04-15 16:44:20 -07:00

56 lines
634 B
Plaintext

=== tests/cases/conformance/types/typeRelationships/recursiveTypes/nominalSubtypeCheckOfTypeParameter2.ts ===
interface B<T> {
>B : B<T>
>T : T
bar: T;
>bar : T
>T : T
}
// ok
interface A<T> extends B<T> {
>A : A<T>
>T : T
>B : B<T>
>T : T
foo: T;
>foo : T
>T : T
}
// ok
interface A2<T> extends B<B<string>> {
>A2 : A2<T>
>T : T
>B : B<T>
>B : B<T>
baz: T;
>baz : T
>T : T
}
interface C<T> {
>C : C<T>
>T : T
bam: T;
>bam : T
>T : T
}
// ok
interface A3<T> extends B<C<T>> {
>A3 : A3<T>
>T : T
>B : B<T>
>C : C<T>
>T : T
bing: T;
>bing : T
>T : T
}