oxc/crates/oxc_minifier
7086cmd a2977655c8 refactor(minifier): use map and and_then instead of let else (#7178)
For the test case, Closure Compiler doesn't handle this at all in the REPL! If it's necessary, I will turn it back.

This PR uses builtin `and_then` and `map` method, which is better instead of a lot of `if let Some`.
2024-11-09 11:48:48 +00:00
..
examples chore(minifier): add --nospace option to minifier example 2024-10-15 23:49:22 +08:00
src refactor(minifier): use map and and_then instead of let else (#7178) 2024-11-09 11:48:48 +00:00
tests refactor(oxc): remove useless allocator.alloc(program) calls (#6571) 2024-10-15 02:21:20 +00:00
Cargo.toml release(crates): v0.35.0 (#7110) 2024-11-04 17:40:05 +08:00
CHANGELOG.md release(crates): v0.35.0 (#7110) 2024-11-04 17:40:05 +08:00
README.md

Minifier

A JavaScript minifier has three components:

  1. printer
  2. mangler
  3. compressor

Mangler

The mangler implementation is part of the SymbolTable residing in oxc_semantic. It is responsible for shortening variables. Its algorithm should be gzip friendly.

The printer is also responsible for printing out the shortened variable names.

Compressor

The compressor is responsible for rewriting statements and expressions for minimal text output. Terser is a good place to start for learning the fundamentals.

Terser Tests

The fixtures are copied from https://github.com/terser/terser/tree/master/test/compress