Age | Commit message (Expand) | Author |
2012-11-08 | fix API breakage...close #36, #38
| Mihai Bazon |
2012-11-07 | add AST_Accessor and AST_SymbolAccessor node types...AST_Accessor will represent the function for a setter or getter. Since they
are not mangleable, and they should not introduce a name in scope, we have a
new node for their name (AST_SymbolAccessor) which doesn't inherit from
AST_SymbolDeclaration.
fix #37
| Mihai Bazon |
2012-11-06 | add option to mangle names even if eval/with is in use...(for more fair comparison to Closure compiler)
| Mihai Bazon |
2012-11-02 | use a Dictionary object instead of plain object for hashes...to mitigate the `__proto__` issue
related to #30
| Mihai Bazon |
2012-10-25 | cripple scope to make IE happy :-(...close #24
| Mihai Bazon |
2012-10-17 | the `sort` option is broken anyway, removed it...we need to mangle names from outermost to innermost scope; mangling names
from inner scopes before we got to the outer scope won't work correctly,
therefore sorting doesn't make sense.
| Mihai Bazon |
2012-10-13 | fix regression from fb5c01c073d06034815d5f3b782fd11cbdf6d6f5...is_digit takes a char code now, not a string
| Mihai Bazon |
2012-10-11 | cleanup...- use prototype-less objects where feasible (minor speed improvement)
- get rid of HOP
| Mihai Bazon |
2012-10-11 | fix propagation of symbol references | Mihai Bazon |
2012-10-10 | seems cleaner if AST_Label doesn't inherit from AST_SymbolDeclaration | Mihai Bazon |
2012-10-10 | add `--lint` and display {file} in scope_warnings | Mihai Bazon |
2012-10-09 | added $propdoc to AST nodes and some cleanups...hopefully we can make the AST documentation self-generating
| Mihai Bazon |
2012-10-08 | should not expose base54.sort() in the API docs, I think | Mihai Bazon |
2012-10-05 | prevent mangling only when eval is *called*, not when it's just referenced | Mihai Bazon |
2012-10-04 | removed some unused variables | Mihai Bazon |
2012-10-03 | more cleanup (dropped AST_SwitchBlock) | Mihai Bazon |
2012-10-02 | option to exclude certain names from mangling | Mihai Bazon |
2012-10-02 | support defines | Mihai Bazon |
2012-10-02 | "use strict"; | Mihai Bazon |
2012-10-02 | add AST_SymbolConst for names defined with `const` | Mihai Bazon |
2012-10-02 | a shy attempt to obey `width` in the beautifier; added `bracketize` option to... | Mihai Bazon |
2012-09-28 | minor | Mihai Bazon |
2012-09-27 | fix mangling...(bug in our code prevented the mangler from using a name that was in use
prior to mangling but not after it)
| Mihai Bazon |
2012-09-23 | properly drop mutually-referring declarations that are not otherwise...referenced and have no side effects
| Mihai Bazon |
2012-09-21 | better support for multiple input files:...- use a single AST_Toplevel node for all files
- keep original source filename in the tokens
| Mihai Bazon |
2012-09-19 | drop unused variables | Mihai Bazon |
2012-09-18 | fixed label scope/mangling | Mihai Bazon |
2012-09-18 | minor | Mihai Bazon |
2012-09-18 | support for directives | Mihai Bazon |
2012-09-15 | figure out label targets | Mihai Bazon |
2012-09-11 | fixed some mess with symbols/scope...- all symbols now have a `thedef` property which is a SymbolDef object,
instead of the `uniq` that we had before (pointing to the first occurrence
of the name as declaration).
- for undeclared symbols we still create a SymbolDef object in the toplevel
scope but mark it "undeclared"
- we can now call figure_out_scope after squeezing, which is useful in order
not to mangle names that were dropped by the squeezer
| Mihai Bazon |
2012-09-11 | checkpoint...- discard statements with no side effects (unsafe? could be)
- safer hoist_vars (needs some revamping of scope/mangling)
| Mihai Bazon |
2012-09-10 | adaptive base54 digits depending on char frequency (WIP) | Mihai Bazon |
2012-09-05 | fix for variable names like `toString` | Mihai Bazon |
2012-09-05 | 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).
| Mihai Bazon |
2012-09-04 | checkpoint | Mihai Bazon |
2012-08-29 | don't mangle names of setters/getters | Mihai Bazon |
2012-08-27 | update (c) years | Mihai Bazon |
2012-08-22 | added license | Mihai Bazon |
2012-08-22 | declare some properties in the node constructor so that they're copied in clone | Mihai Bazon |
2012-08-21 | hint that brackets may be required in AST_BlockStatement | Mihai Bazon |
2012-08-21 | cleaned up some mess and started the actual compressor | Mihai Bazon |
2012-08-21 | some reorganization...(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.)
| Mihai Bazon |
2012-08-21 | handle labels properly...(they can't be handled the same way as variables in a scope)
| Mihai Bazon |
2012-08-21 | warn about unreferenced symbols | Mihai Bazon |
2012-08-21 | more fixes:...- 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.
| Mihai Bazon |
2012-08-20 | added mangler and other stuff | Mihai Bazon |
2012-08-20 | doc (WIP) | Mihai Bazon |
2012-08-19 | simple visitor API and code to figure out scope and references | Mihai Bazon |