49 lines
1.7 KiB
Plaintext
49 lines
1.7 KiB
Plaintext
=== tests/cases/compiler/genericClasses3.ts ===
|
|
class B<T> {
|
|
>B : B<T>, Symbol(B, Decl(genericClasses3.ts, 0, 0))
|
|
>T : T, Symbol(T, Decl(genericClasses3.ts, 0, 8))
|
|
|
|
a: T;
|
|
>a : T, Symbol(a, Decl(genericClasses3.ts, 0, 12))
|
|
>T : T, Symbol(T, Decl(genericClasses3.ts, 0, 8))
|
|
|
|
b: T;
|
|
>b : T, Symbol(b, Decl(genericClasses3.ts, 1, 9))
|
|
>T : T, Symbol(T, Decl(genericClasses3.ts, 0, 8))
|
|
}
|
|
|
|
class C<T> extends B<T> {
|
|
>C : C<T>, Symbol(C, Decl(genericClasses3.ts, 3, 1))
|
|
>T : T, Symbol(T, Decl(genericClasses3.ts, 5, 8))
|
|
>B : B<T>, Symbol(B, Decl(genericClasses3.ts, 0, 0))
|
|
>T : T, Symbol(T, Decl(genericClasses3.ts, 5, 8))
|
|
|
|
public x: T;
|
|
>x : T, Symbol(x, Decl(genericClasses3.ts, 5, 25))
|
|
>T : T, Symbol(T, Decl(genericClasses3.ts, 5, 8))
|
|
}
|
|
|
|
var v2: C <string>;
|
|
>v2 : C<string>, Symbol(v2, Decl(genericClasses3.ts, 9, 3))
|
|
>C : C<T>, Symbol(C, Decl(genericClasses3.ts, 3, 1))
|
|
|
|
var y = v2.x; // should be 'string'
|
|
>y : string, Symbol(y, Decl(genericClasses3.ts, 11, 3))
|
|
>v2.x : string, Symbol(C.x, Decl(genericClasses3.ts, 5, 25))
|
|
>v2 : C<string>, Symbol(v2, Decl(genericClasses3.ts, 9, 3))
|
|
>x : string, Symbol(C.x, Decl(genericClasses3.ts, 5, 25))
|
|
|
|
var u = v2.a; // should be 'string'
|
|
>u : string, Symbol(u, Decl(genericClasses3.ts, 12, 3))
|
|
>v2.a : string, Symbol(B.a, Decl(genericClasses3.ts, 0, 12))
|
|
>v2 : C<string>, Symbol(v2, Decl(genericClasses3.ts, 9, 3))
|
|
>a : string, Symbol(B.a, Decl(genericClasses3.ts, 0, 12))
|
|
|
|
var z = v2.b;
|
|
>z : string, Symbol(z, Decl(genericClasses3.ts, 14, 3))
|
|
>v2.b : string, Symbol(B.b, Decl(genericClasses3.ts, 1, 9))
|
|
>v2 : C<string>, Symbol(v2, Decl(genericClasses3.ts, 9, 3))
|
|
>b : string, Symbol(B.b, Decl(genericClasses3.ts, 1, 9))
|
|
|
|
|