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 28 29
|
=== tests/cases/compiler/extendedInterfaceGenericType.ts ===
interface Alpha<T> {
takesArgOfT(arg: T): Alpha<T>;
>takesArgOfT : (arg: T) => Alpha<T>
>arg : T
makeBetaOfNumber(): Beta<number>;
>makeBetaOfNumber : () => Beta<number>
}
interface Beta<T> extends Alpha<T> {
}
var alpha: Alpha<number>;
>alpha : Alpha<number>
var betaOfNumber = alpha.makeBetaOfNumber();
>betaOfNumber : Beta<number>
>alpha.makeBetaOfNumber() : Beta<number>
>alpha.makeBetaOfNumber : () => Beta<number>
>alpha : Alpha<number>
>makeBetaOfNumber : () => Beta<number>
betaOfNumber.takesArgOfT(5);
>betaOfNumber.takesArgOfT(5) : Alpha<number>
>betaOfNumber.takesArgOfT : (arg: number) => Alpha<number>
>betaOfNumber : Beta<number>
>takesArgOfT : (arg: number) => Alpha<number>
>5 : 5
|