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

57 lines
948 B
Plaintext

=== tests/cases/compiler/infinitelyExpandingTypesNonGenericBase.ts ===
class Functionality<V> {
>Functionality : Functionality<V>
>V : V
property: Options<V>;
>property : Options<V>
>Options : Options<T>
>V : V
}
class Base {
>Base : Base
}
class A<T> extends Base {
>A : A<T>
>T : T
>Base : Base
options: Options<Functionality<T>[]>;
>options : Options<Functionality<T>[]>
>Options : Options<T>
>Functionality : Functionality<V>
>T : T
}
interface OptionsBase<T> {
>OptionsBase : OptionsBase<T>
>T : T
Options: Options<T>;
>Options : Options<T>
>Options : Options<T>
>T : T
}
interface Options<T> extends OptionsBase<T> {
>Options : Options<T>
>T : T
>OptionsBase : OptionsBase<T>
>T : T
}
function o(type: new () => Base) {
>o : (type: new () => Base) => void
>type : new () => Base
>Base : Base
}
o(A);
>o(A) : void
>o : (type: new () => Base) => void
>A : typeof A