TypeScript/tests/baselines/reference/extendedInterfaceGenericType.types

42 lines
2.3 KiB
Text
Raw Normal View History

2014-08-15 23:33:16 +02:00
=== tests/cases/compiler/extendedInterfaceGenericType.ts ===
interface Alpha<T> {
2015-04-13 23:01:57 +02:00
>Alpha : Alpha<T>, Symbol(Alpha, Decl(extendedInterfaceGenericType.ts, 0, 0))
>T : T, Symbol(T, Decl(extendedInterfaceGenericType.ts, 0, 16))
2014-08-15 23:33:16 +02:00
takesArgOfT(arg: T): Alpha<T>;
2015-04-13 23:01:57 +02:00
>takesArgOfT : (arg: T) => Alpha<T>, Symbol(takesArgOfT, Decl(extendedInterfaceGenericType.ts, 0, 20))
>arg : T, Symbol(arg, Decl(extendedInterfaceGenericType.ts, 1, 16))
>T : T, Symbol(T, Decl(extendedInterfaceGenericType.ts, 0, 16))
>Alpha : Alpha<T>, Symbol(Alpha, Decl(extendedInterfaceGenericType.ts, 0, 0))
>T : T, Symbol(T, Decl(extendedInterfaceGenericType.ts, 0, 16))
2014-08-15 23:33:16 +02:00
makeBetaOfNumber(): Beta<number>;
2015-04-13 23:01:57 +02:00
>makeBetaOfNumber : () => Beta<number>, Symbol(makeBetaOfNumber, Decl(extendedInterfaceGenericType.ts, 1, 34))
>Beta : Beta<T>, Symbol(Beta, Decl(extendedInterfaceGenericType.ts, 3, 1))
2014-08-15 23:33:16 +02:00
}
interface Beta<T> extends Alpha<T> {
2015-04-13 23:01:57 +02:00
>Beta : Beta<T>, Symbol(Beta, Decl(extendedInterfaceGenericType.ts, 3, 1))
>T : T, Symbol(T, Decl(extendedInterfaceGenericType.ts, 4, 15))
>Alpha : Alpha<T>, Symbol(Alpha, Decl(extendedInterfaceGenericType.ts, 0, 0))
>T : T, Symbol(T, Decl(extendedInterfaceGenericType.ts, 4, 15))
2014-08-15 23:33:16 +02:00
}
var alpha: Alpha<number>;
2015-04-13 23:01:57 +02:00
>alpha : Alpha<number>, Symbol(alpha, Decl(extendedInterfaceGenericType.ts, 7, 3))
>Alpha : Alpha<T>, Symbol(Alpha, Decl(extendedInterfaceGenericType.ts, 0, 0))
2014-08-15 23:33:16 +02:00
var betaOfNumber = alpha.makeBetaOfNumber();
2015-04-13 23:01:57 +02:00
>betaOfNumber : Beta<number>, Symbol(betaOfNumber, Decl(extendedInterfaceGenericType.ts, 8, 3))
2014-08-15 23:33:16 +02:00
>alpha.makeBetaOfNumber() : Beta<number>
2015-04-13 23:01:57 +02:00
>alpha.makeBetaOfNumber : () => Beta<number>, Symbol(Alpha.makeBetaOfNumber, Decl(extendedInterfaceGenericType.ts, 1, 34))
>alpha : Alpha<number>, Symbol(alpha, Decl(extendedInterfaceGenericType.ts, 7, 3))
>makeBetaOfNumber : () => Beta<number>, Symbol(Alpha.makeBetaOfNumber, Decl(extendedInterfaceGenericType.ts, 1, 34))
2014-08-15 23:33:16 +02:00
betaOfNumber.takesArgOfT(5);
>betaOfNumber.takesArgOfT(5) : Alpha<number>
2015-04-13 23:01:57 +02:00
>betaOfNumber.takesArgOfT : (arg: number) => Alpha<number>, Symbol(Alpha.takesArgOfT, Decl(extendedInterfaceGenericType.ts, 0, 20))
>betaOfNumber : Beta<number>, Symbol(betaOfNumber, Decl(extendedInterfaceGenericType.ts, 8, 3))
>takesArgOfT : (arg: number) => Alpha<number>, Symbol(Alpha.takesArgOfT, Decl(extendedInterfaceGenericType.ts, 0, 20))
2015-04-13 21:36:11 +02:00
>5 : number
2014-08-15 23:33:16 +02:00