1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
//// [privateNameDeclarationMerging.ts]
class D {};
class C {
#x;
foo () {
const c = new C();
c.#x; // OK
const d: D = new C();
d.#x; // Error
}
}
interface C {
new (): D;
}
//// [privateNameDeclarationMerging.js]
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, privateMap) {
if (!privateMap.has(receiver)) {
throw new TypeError("attempted to get private field on non-instance");
}
return privateMap.get(receiver);
};
var _x;
class D {
}
;
class C {
constructor() {
_x.set(this, void 0);
}
foo() {
const c = new C();
__classPrivateFieldGet(c, _x); // OK
const d = new C();
__classPrivateFieldGet(d, _x); // Error
}
}
_x = new WeakMap();
|