aboutsummaryrefslogtreecommitdiff
path: root/lib/scope.js
AgeCommit message (Collapse)Author
2012-09-05fix for variable names like `toString`Mihai Bazon
2012-09-05cleaned up usage of AST_BlockStatementMihai Bazon
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).
2012-09-04checkpointMihai Bazon
2012-08-29don't mangle names of setters/gettersMihai Bazon
2012-08-27update (c) yearsMihai Bazon
2012-08-22added licenseMihai Bazon
2012-08-22declare some properties in the node constructor so that they're copied in cloneMihai Bazon
2012-08-21hint that brackets may be required in AST_BlockStatementMihai Bazon
2012-08-21cleaned up some mess and started the actual compressorMihai Bazon
2012-08-21some reorganizationMihai Bazon
(moved pretty much everything that relates to scope in scope.js, added a module for NodeJS that can be used with require() and exports everything.)
2012-08-21handle labels properlyMihai Bazon
(they can't be handled the same way as variables in a scope)
2012-08-21warn about unreferenced symbolsMihai Bazon
2012-08-21more fixes:Mihai Bazon
- added walker for AST_ObjectProperty - handle redefinitions properly (only mangle one symbol, make them all point to a single definition) DynarchLIB seems to run fine after mangling + compressed output.
2012-08-20added mangler and other stuffMihai Bazon
2012-08-20doc (WIP)Mihai Bazon
2012-08-19simple visitor API and code to figure out scope and referencesMihai Bazon