in legacy/javascript/src/refactor.js [322:352]
enter: function (node) {
if (node.type === 'CallExpression') {
if (methodHashMap.has(node.callee.name)) {
const argumentIndex = methodHashMap.get(node.callee.name).argumentIndex;
const nodeArgument = node.arguments[argumentIndex];
let nodeArgumentIsFlag = false;
switch (nodeArgument.type) {
case 'Identifier':
nodeArgumentIsFlag = nodeArgument.name === engine.flagname;
break;
case 'Literal':
nodeArgumentIsFlag = nodeArgument.value === engine.flagname;
break;
}
if (nodeArgumentIsFlag) {
const flagType = methodHashMap.get(node.callee.name).flagType;
engine.changed = true;
if (
(flagType === 'treated' && engine.behaviour) ||
(flagType === 'control' && !engine.behaviour)
) {
return engine.trueLiteral();
} else {
return engine.falseLiteral();
}
}
}
}
},