refactor: use WeakSet to keep track of transformed nodes

This commit is contained in:
Sven SAULEAU
2017-05-29 22:40:01 +02:00
committed by Justin Ridgewell
parent 98487b5a15
commit 750b03a22f

View File

@@ -1,14 +1,15 @@
export default function ({ types: t }) {
const optionalNodesTransformed = new WeakSet();
const nilIdentifier = t.unaryExpression("void", t.numericLiteral(0));
function setOptionalTransformed(node) {
t.assertMemberExpression(node); // Dev
node._optionalTransformed = true;
optionalNodesTransformed.add(node);
}
function isOptionalTransformed(node) {
t.assertMemberExpression(node); // Dev
return node._optionalTransformed === true;
return optionalNodesTransformed.has(node);
}
function createCondition(ref, access, nextProperty, bailout) {