2015-04-18 03:36:44 +02:00
|
|
|
=== tests/cases/compiler/baseTypeWrappingInstantiationChain.ts ===
|
2016-07-29 17:34:14 +02:00
|
|
|
class CBaseBase<T3> {
|
|
|
|
>CBaseBase : Symbol(CBaseBase, Decl(baseTypeWrappingInstantiationChain.ts, 0, 0))
|
|
|
|
>T3 : Symbol(T3, Decl(baseTypeWrappingInstantiationChain.ts, 0, 16))
|
2015-04-18 03:36:44 +02:00
|
|
|
|
2016-07-29 17:34:14 +02:00
|
|
|
constructor(x: Parameter<T3>) { }
|
|
|
|
>x : Symbol(x, Decl(baseTypeWrappingInstantiationChain.ts, 1, 16))
|
|
|
|
>Parameter : Symbol(Parameter, Decl(baseTypeWrappingInstantiationChain.ts, 6, 1))
|
|
|
|
>T3 : Symbol(T3, Decl(baseTypeWrappingInstantiationChain.ts, 0, 16))
|
2015-04-18 03:36:44 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
class CBase<T2> extends CBaseBase<Wrapper<T2>> {
|
2016-07-29 17:34:14 +02:00
|
|
|
>CBase : Symbol(CBase, Decl(baseTypeWrappingInstantiationChain.ts, 2, 1))
|
|
|
|
>T2 : Symbol(T2, Decl(baseTypeWrappingInstantiationChain.ts, 4, 12))
|
|
|
|
>CBaseBase : Symbol(CBaseBase, Decl(baseTypeWrappingInstantiationChain.ts, 0, 0))
|
|
|
|
>Wrapper : Symbol(Wrapper, Decl(baseTypeWrappingInstantiationChain.ts, 10, 1))
|
|
|
|
>T2 : Symbol(T2, Decl(baseTypeWrappingInstantiationChain.ts, 4, 12))
|
2015-04-18 03:36:44 +02:00
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
class Parameter<T4> {
|
2016-07-29 17:34:14 +02:00
|
|
|
>Parameter : Symbol(Parameter, Decl(baseTypeWrappingInstantiationChain.ts, 6, 1))
|
|
|
|
>T4 : Symbol(T4, Decl(baseTypeWrappingInstantiationChain.ts, 8, 16))
|
2015-04-18 03:36:44 +02:00
|
|
|
|
|
|
|
method(t: T4) { }
|
2016-07-29 17:34:14 +02:00
|
|
|
>method : Symbol(Parameter.method, Decl(baseTypeWrappingInstantiationChain.ts, 8, 21))
|
|
|
|
>t : Symbol(t, Decl(baseTypeWrappingInstantiationChain.ts, 9, 11))
|
|
|
|
>T4 : Symbol(T4, Decl(baseTypeWrappingInstantiationChain.ts, 8, 16))
|
2015-04-18 03:36:44 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
class Wrapper<T5> {
|
2016-07-29 17:34:14 +02:00
|
|
|
>Wrapper : Symbol(Wrapper, Decl(baseTypeWrappingInstantiationChain.ts, 10, 1))
|
|
|
|
>T5 : Symbol(T5, Decl(baseTypeWrappingInstantiationChain.ts, 12, 14))
|
2015-04-18 03:36:44 +02:00
|
|
|
|
|
|
|
property: T5;
|
2016-07-29 17:34:14 +02:00
|
|
|
>property : Symbol(Wrapper.property, Decl(baseTypeWrappingInstantiationChain.ts, 12, 19))
|
|
|
|
>T5 : Symbol(T5, Decl(baseTypeWrappingInstantiationChain.ts, 12, 14))
|
|
|
|
}
|
|
|
|
|
|
|
|
class C<T1> extends CBase<T1> {
|
|
|
|
>C : Symbol(C, Decl(baseTypeWrappingInstantiationChain.ts, 14, 1))
|
|
|
|
>T1 : Symbol(T1, Decl(baseTypeWrappingInstantiationChain.ts, 16, 8))
|
|
|
|
>CBase : Symbol(CBase, Decl(baseTypeWrappingInstantiationChain.ts, 2, 1))
|
|
|
|
>T1 : Symbol(T1, Decl(baseTypeWrappingInstantiationChain.ts, 16, 8))
|
|
|
|
|
|
|
|
public works() {
|
|
|
|
>works : Symbol(C.works, Decl(baseTypeWrappingInstantiationChain.ts, 16, 31))
|
|
|
|
|
|
|
|
new CBaseBase<Wrapper<T1>>(this);
|
|
|
|
>CBaseBase : Symbol(CBaseBase, Decl(baseTypeWrappingInstantiationChain.ts, 0, 0))
|
|
|
|
>Wrapper : Symbol(Wrapper, Decl(baseTypeWrappingInstantiationChain.ts, 10, 1))
|
|
|
|
>T1 : Symbol(T1, Decl(baseTypeWrappingInstantiationChain.ts, 16, 8))
|
|
|
|
>this : Symbol(C, Decl(baseTypeWrappingInstantiationChain.ts, 14, 1))
|
|
|
|
}
|
|
|
|
public alsoWorks() {
|
|
|
|
>alsoWorks : Symbol(C.alsoWorks, Decl(baseTypeWrappingInstantiationChain.ts, 19, 5))
|
|
|
|
|
|
|
|
new CBase<T1>(this); // Should not error, parameter is of type Parameter<Wrapper<T1>>
|
|
|
|
>CBase : Symbol(CBase, Decl(baseTypeWrappingInstantiationChain.ts, 2, 1))
|
|
|
|
>T1 : Symbol(T1, Decl(baseTypeWrappingInstantiationChain.ts, 16, 8))
|
|
|
|
>this : Symbol(C, Decl(baseTypeWrappingInstantiationChain.ts, 14, 1))
|
|
|
|
}
|
|
|
|
|
|
|
|
public method(t: Wrapper<T1>) { }
|
|
|
|
>method : Symbol(C.method, Decl(baseTypeWrappingInstantiationChain.ts, 22, 5))
|
|
|
|
>t : Symbol(t, Decl(baseTypeWrappingInstantiationChain.ts, 24, 18))
|
|
|
|
>Wrapper : Symbol(Wrapper, Decl(baseTypeWrappingInstantiationChain.ts, 10, 1))
|
|
|
|
>T1 : Symbol(T1, Decl(baseTypeWrappingInstantiationChain.ts, 16, 8))
|
2015-04-18 03:36:44 +02:00
|
|
|
}
|
2016-07-29 17:34:14 +02:00
|
|
|
|