This commit is contained in:
sanex3339
2016-06-01 11:41:35 +03:00
parent 15152613fc
commit 7662823cd4
4 changed files with 12 additions and 6 deletions
+3 -1
View File
@@ -79,14 +79,16 @@ class NodeUtils {
return node.type === NodeType_1.NodeType.VariableDeclarator;
}
static parentize(node) {
let isRootNode = true;
estraverse.replace(node, {
enter: (node, parentNode) => {
Object.defineProperty(node, 'parentNode', {
configurable: true,
enumerable: true,
value: parentNode || node,
value: isRootNode ? NodeUtils.getProgramNode([node]) : parentNode || node,
writable: true
});
isRootNode = false;
}
});
}
+2 -2
View File
@@ -54,14 +54,14 @@ class Obfuscator {
afterObfuscation(astTree) {
this.nodes.forEach((node) => {
if (node.getAppendState() === AppendState_1.AppendState.AfterObfuscation) {
node.appendNode(NodeUtils_1.NodeUtils.getBlockScopeOfNode(astTree));
node.appendNode(astTree);
}
});
}
beforeObfuscation(astTree) {
this.nodes.forEach((node) => {
if (node.getAppendState() === AppendState_1.AppendState.BeforeObfuscation) {
node.appendNode(NodeUtils_1.NodeUtils.getBlockScopeOfNode(astTree));
node.appendNode(astTree);
}
});
}
+5 -1
View File
@@ -188,14 +188,18 @@ export class NodeUtils {
* @param node
*/
public static parentize (node: INode): void {
let isRootNode: boolean = true;
estraverse.replace(node, {
enter: (node: INode, parentNode: INode): any => {
Object.defineProperty(node, 'parentNode', {
configurable: true,
enumerable: true,
value: parentNode || node,
value: isRootNode ? NodeUtils.getProgramNode([node]) : parentNode || node,
writable: true
});
isRootNode = false;
}
});
}
+2 -2
View File
@@ -101,7 +101,7 @@ export class Obfuscator {
private afterObfuscation (astTree: INode): void {
this.nodes.forEach((node: ICustomNode) => {
if (node.getAppendState() === AppendState.AfterObfuscation) {
node.appendNode(NodeUtils.getBlockScopeOfNode(astTree));
node.appendNode(astTree);
}
});
}
@@ -112,7 +112,7 @@ export class Obfuscator {
private beforeObfuscation (astTree: INode): void {
this.nodes.forEach((node: ICustomNode) => {
if (node.getAppendState() === AppendState.BeforeObfuscation) {
node.appendNode(NodeUtils.getBlockScopeOfNode(astTree));
node.appendNode(astTree);
}
});
};