TypeScript/tests/baselines/reference/staticMemberOfClassAndPublicMemberOfAnotherClassAssignment.js

55 lines
864 B
JavaScript

//// [staticMemberOfClassAndPublicMemberOfAnotherClassAssignment.ts]
interface A {
name();
}
class B {
public name() { }
}
class C {
public static name() { }
}
var a: A = new B();
a = new C(); // error name is missing
a = B; // error name is missing
a = C;
var b: B = new C(); // error name is missing
b = B; // error name is missing
b = C;
b = a;
var c: C = new B();
c = B;
c = C;
c = a;
//// [staticMemberOfClassAndPublicMemberOfAnotherClassAssignment.js]
var B = (function () {
function B() {
}
B.prototype.name = function () {
};
return B;
})();
var C = (function () {
function C() {
}
C.name = function () {
};
return C;
})();
var a = new B();
a = new C();
a = B;
a = C;
var b = new C(); // error name is missing
b = B;
b = C;
b = a;
var c = new B();
c = B;
c = C;
c = a;