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

108 lines
2.7 KiB
Plaintext

=== tests/cases/compiler/super2.ts ===
// Case 5
class Base5 {
>Base5 : Symbol(Base5, Decl(super2.ts, 0, 0))
public x() {
>x : Symbol(x, Decl(super2.ts, 1, 13))
return "BaseX";
}
public y() {
>y : Symbol(y, Decl(super2.ts, 4, 5))
return "BaseY";
}
}
class Sub5 extends Base5 {
>Sub5 : Symbol(Sub5, Decl(super2.ts, 9, 1))
>Base5 : Symbol(Base5, Decl(super2.ts, 0, 0))
public x() {
>x : Symbol(x, Decl(super2.ts, 11, 26))
return "SubX";
}
}
class SubSub5 extends Sub5 {
>SubSub5 : Symbol(SubSub5, Decl(super2.ts, 15, 1))
>Sub5 : Symbol(Sub5, Decl(super2.ts, 9, 1))
public x() {
>x : Symbol(x, Decl(super2.ts, 17, 28))
return super.x();
>super.x : Symbol(Sub5.x, Decl(super2.ts, 11, 26))
>super : Symbol(Sub5, Decl(super2.ts, 9, 1))
>x : Symbol(Sub5.x, Decl(super2.ts, 11, 26))
}
public y() {
>y : Symbol(y, Decl(super2.ts, 20, 5))
return super.y();
>super.y : Symbol(Base5.y, Decl(super2.ts, 4, 5))
>super : Symbol(Sub5, Decl(super2.ts, 9, 1))
>y : Symbol(Base5.y, Decl(super2.ts, 4, 5))
}
}
// Case 6
class Base6 {
>Base6 : Symbol(Base6, Decl(super2.ts, 24, 1))
public x() {
>x : Symbol(x, Decl(super2.ts, 27, 13))
return "BaseX";
}
}
class Sub6 extends Base6 {
>Sub6 : Symbol(Sub6, Decl(super2.ts, 31, 1))
>Base6 : Symbol(Base6, Decl(super2.ts, 24, 1))
public y() {
>y : Symbol(y, Decl(super2.ts, 33, 26))
return "SubY";
}
}
class SubSub6 extends Sub6 {
>SubSub6 : Symbol(SubSub6, Decl(super2.ts, 37, 1))
>Sub6 : Symbol(Sub6, Decl(super2.ts, 31, 1))
public y() {
>y : Symbol(y, Decl(super2.ts, 39, 28))
return super.y();
>super.y : Symbol(Sub6.y, Decl(super2.ts, 33, 26))
>super : Symbol(Sub6, Decl(super2.ts, 31, 1))
>y : Symbol(Sub6.y, Decl(super2.ts, 33, 26))
}
}
var results1 = new SubSub5();
>results1 : Symbol(results1, Decl(super2.ts, 46, 3))
>SubSub5 : Symbol(SubSub5, Decl(super2.ts, 15, 1))
var results2 = new SubSub6();
>results2 : Symbol(results2, Decl(super2.ts, 47, 3))
>SubSub6 : Symbol(SubSub6, Decl(super2.ts, 37, 1))
results1.x() + results1.y() + results2.y();
>results1.x : Symbol(SubSub5.x, Decl(super2.ts, 17, 28))
>results1 : Symbol(results1, Decl(super2.ts, 46, 3))
>x : Symbol(SubSub5.x, Decl(super2.ts, 17, 28))
>results1.y : Symbol(SubSub5.y, Decl(super2.ts, 20, 5))
>results1 : Symbol(results1, Decl(super2.ts, 46, 3))
>y : Symbol(SubSub5.y, Decl(super2.ts, 20, 5))
>results2.y : Symbol(SubSub6.y, Decl(super2.ts, 39, 28))
>results2 : Symbol(results2, Decl(super2.ts, 47, 3))
>y : Symbol(SubSub6.y, Decl(super2.ts, 39, 28))