Skip to content

Commit

Permalink
proper feature call isLoose function #9424
Browse files Browse the repository at this point in the history
  • Loading branch information
pnowak authored and nicolo-ribaudo committed Mar 24, 2019
1 parent ff04d35 commit 3aaafae
Show file tree
Hide file tree
Showing 7 changed files with 51 additions and 3 deletions.
Expand Up @@ -54,9 +54,7 @@ export function createClassFeaturePlugin({

verifyUsedFeatures(path, this.file);

// Only fields are currently supported, this needs to be moved somewhere
// else when other features are added.
const loose = isLoose(this.file, FEATURES.fields);
const loose = isLoose(this.file, feature);

let constructor;
let isDecorated = hasOwnDecorators(path.node);
Expand Down
@@ -0,0 +1,5 @@
class X {
#privateMethod() {
return 42;
}
}
@@ -0,0 +1,5 @@
{
"plugins": [
["proposal-private-methods", { "loose": false }]
]
}
@@ -0,0 +1,12 @@
class X {
constructor() {
_privateMethod.add(this);
}

}

var _privateMethod = new WeakSet();

var _privateMethod2 = function _privateMethod2() {
return 42;
};
@@ -0,0 +1,5 @@
class X {
#privateMethod() {
return 42;
}
}
@@ -0,0 +1,5 @@
{
"plugins": [
["proposal-private-methods", { "loose": true }]
]
}
@@ -0,0 +1,18 @@
var id = 0;

function _classPrivateFieldLooseKey(name) { return "__private_" + id++ + "_" + name; }

class X {
constructor() {
Object.defineProperty(this, _privateMethod, {
value: _privateMethod2
});
}

}

var _privateMethod = _classPrivateFieldLooseKey("privateMethod");

var _privateMethod2 = function _privateMethod2() {
return 42;
};

0 comments on commit 3aaafae

Please sign in to comment.