TypeScript/tests/baselines/reference/staticInheritance.js
2015-05-01 10:49:54 -07:00

38 lines
861 B
TypeScript

//// [staticInheritance.ts]
function doThing(x: { n: string }) { }
class A {
static n: string;
p = doThing(A); // OK
}
class B extends A {
p1 = doThing(A); // OK
p2 = doThing(B); // OK
}
doThing(B); //OK
//// [staticInheritance.js]
var __extends = (this && this.__extends) || function (d, b) {
for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
function __() { this.constructor = d; }
__.prototype = b.prototype;
d.prototype = new __();
};
function doThing(x) { }
var A = (function () {
function A() {
this.p = doThing(A); // OK
}
return A;
})();
var B = (function (_super) {
__extends(B, _super);
function B() {
_super.apply(this, arguments);
this.p1 = doThing(A); // OK
this.p2 = doThing(B); // OK
}
return B;
})(A);
doThing(B); //OK