play nice with propmangle

This commit is contained in:
Fábio Santos
2015-08-08 16:01:16 +01:00
parent dc5db9b6ca
commit 7ee8f3512e
3 changed files with 15 additions and 2 deletions

View File

@@ -1180,14 +1180,15 @@ function OutputStream(options) {
output.print_name(def ? def.mangled_name || def.name : self.name);
});
DEFPRINT(AST_ObjectSymbol, function(self, output){
var name = self.mangled_key || self.symbol.name;
var def = self.symbol.definition();
if (def && def.mangled_name) {
output.print(self.symbol.name);
output.print(name);
output.print(':');
output.space();
output.print(def.mangled_name);
} else {
output.print(self.symbol.name);
output.print(name);
}
});
DEFPRINT(AST_Undefined, function(self, output){

View File

@@ -90,6 +90,9 @@ function mangle_properties(ast, options) {
if (node instanceof AST_ObjectKeyVal) {
add(node.key);
}
else if (node instanceof AST_ObjectSymbol) {
add(node.symbol.name);
}
else if (node instanceof AST_ObjectProperty) {
// setter or getter, since KeyVal is handled above
add(node.key.name);
@@ -111,6 +114,11 @@ function mangle_properties(ast, options) {
if (node instanceof AST_ObjectKeyVal) {
node.key = mangle(node.key);
}
else if (node instanceof AST_ObjectSymbol) {
if (should_mangle(node.symbol.name)) {
node.mangled_key = mangle(node.symbol.name)
}
}
else if (node instanceof AST_ObjectProperty) {
// setter or getter
node.key.name = mangle(node.key.name);

View File

@@ -219,6 +219,10 @@ TreeTransformer.prototype = new TreeWalker;
self.properties = do_list(self.properties, tw);
});
_(AST_ObjectSymbol, function(self, tw){
self.symbol = self.symbol.transform(tw);
});
_(AST_ObjectProperty, function(self, tw){
self.value = self.value.transform(tw);
});