cleaned up usage of AST_BlockStatement
The following nodes were instances of AST_BlockStatement: AST_Scope, AST_SwitchBlock, AST_SwitchBranch. Also, AST_Try, AST_Catch, AST_Finally were having a body instanceof AST_BlockStatement. Overloading the meaning of AST_BlockStatement this way turned out to be a mess; we now have an AST_Block class that is the base class for things having a block of statements (might or might not be bracketed). The `this.body` of AST_Scope, AST_Try, AST_Catch, AST_Finally is now an array of statements (as they inherit from AST_Block). Avoiding calling superclass's _walk function in walkers (turns out we walked a node multiple times).
This commit is contained in:
@@ -41,7 +41,7 @@ time_it("compress", function(){
|
||||
ast = ast.squeeze(compressor);
|
||||
});
|
||||
|
||||
var stream = UglifyJS.OutputStream({ beautify: false });
|
||||
var stream = UglifyJS.OutputStream({ beautify: true });
|
||||
time_it("generate", function(){
|
||||
ast.print(stream);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user