aboutsummaryrefslogtreecommitdiff
path: root/lib/parse.js
AgeCommit message (Collapse)Author
2020-12-08forbid `AST_Await` in computed function arguments (#4352)Alex Lam S.L
fixes #4351
2020-12-08fix corner cases with `await` (#4350)Alex Lam S.L
fixes #4349
2020-12-07extend trailing comma support (#4334)Alex Lam S.L
2020-12-07support async function (#4333)Alex Lam S.L
2020-12-06support spread syntax (#4328)Alex Lam S.L
2020-11-17support destructured literals (#4278)Alex Lam S.L
2020-11-08support computed property name in object literal (#4268)Alex Lam S.L
2020-11-08support shorthand method name in object literal (#4264)Alex Lam S.L
2020-11-08support shorthand property name in object literal (#4263)Alex Lam S.L
2020-11-07fix corner case in `reduce_vars` (#4262)Alex Lam S.L
fixes #4261
2020-10-19extend support for Unicode (#4228)Alex Lam S.L
2020-10-19support `let` (#4227)Alex Lam S.L
2020-10-12support `const` (#4190)Alex Lam S.L
2020-10-05retrofit `try-catch-finally` as block-scoped (#4178)Alex Lam S.L
- support optional catch binding
2020-10-05extend support for numeral literals (#4176)Alex Lam S.L
2020-09-23minor clean up (#4149)Alex Lam S.L
2020-08-17reject multiple `default`s in `switch` (#4053)Alex Lam S.L
fixes #4050
2020-05-05update links to repository after rename (#3847)Alex Lam S.L
2020-03-21fix line accounting in multi-line strings (#3752)Alex Lam S.L
fixes #3748
2019-12-28improve unicode handling (#3648)Alex Lam S.L
2019-12-25fix corner case in `directives` (#3645)Alex Lam S.L
2019-11-29fix corner case in parsing directives (#3615)Alex Lam S.L
2019-10-30fix corner case in `comments` (#3550)Alex Lam S.L
2019-10-20minor tweaks (#3502)Alex Lam S.L
2019-04-30unify logging functionality (#3392)Alex Lam S.L
fixes #3253 fixes #3254
2019-04-17reduce test exports (#3361)Alex Lam S.L
2019-04-15introduce `functions` (#3360)Alex Lam S.L
`var f = function() {};` => `function f() {}`
2019-03-15parse `mangle.properties.regex` in `--config-file` properly (#3337)Alex Lam S.L
fixes #3315
2018-06-06general clean-ups (#3175)Alex Lam S.L
2018-04-03improve performance through `makePredicate()` (#3048)Alex Lam S.L
2018-03-23improve performance (#3020)Alex Lam S.L
- replace `find_if()` with `all()` wherever possible - move ESTree-specific logic out of `figure_out_scope()`
2018-01-19compress `undefined` property names (#2811)Alex Lam S.L
- enforce property names as string - handle `void 0` as `undefined` in `hoist_props` & `reduce_vars`
2018-01-16general improvements around `AST_ForIn` (#2796)Alex Lam S.L
- compress using `collapse_vars` - remove unused `name` - simplify `loop_body`
2018-01-04forbid block-scoped `AST_Defun` in strict mode (#2718)Alex Lam S.L
2018-01-03extend `__PURE__` to `AST_New` (#2706)Alex Lam S.L
fixes #2705
2017-12-26parse LF & comment correctly (#2653)Alex Lam S.L
fixes #2652
2017-12-24fix comments output & improve `/*@__PURE__*/`Alex Lam S.L
- fix whitespace around comments - fix comment parsing around parentheses - consider parentheses when parsing `/*@__PURE__*/` - remove all `/*@__PURE__*/` on output fixes #2638
2017-12-22make comments output more robust (#2633)Alex Lam S.L
- improve handling of comments right after `return` - retain comments after `OutputStream` - preserve trailing comments - fix handling of new line before comments - handle comments around parentheses fixes #88 fixes #112 fixes #218 fixes #372 fixes #2629
2017-12-11escape consecutive unpaired surrogates (#2576)Alex Lam S.L
fixes #2569
2017-10-01trap invalid use of reserved words (#2338)Alex Lam S.L
fixes #2337
2017-06-23fix for-in loop parsing (#2144)Alex Lam S.L
2017-06-03clean up `lib/parse.js` (#2047)Alex Lam S.L
- remove unused definitions - replace `array_to_hash()`
2017-05-28implement `--help options` (#2017)Alex Lam S.L
2017-05-17improve `RegExp` handling (#1959)Alex Lam S.L
- remove `options.output.unescape_regexps` - preserve original pattern whenever possible fixes #54 fixes #1929
2017-05-16fix parsing of property access after new line (#1944)Alex Lam S.L
Account for comments when detecting property access in `tokenizer`. fixes #1943
2017-05-15improve keyword-related parser errors (#1941)Alex Lam S.L
fixes #1937
2017-05-15fix & improve coverage of `estree` (#1935)Alex Lam S.L
- fix `estree` conversion of getter/setter - fix non-directive literal in `to_mozilla_ast()` - revamp `test/mozilla-ast.js` - reuse `test/ufuzz.js` for code generation - use `acorn.parse()` for creating `estree` - extend `test/ufuzz.js` for `acorn` workaround - catch variable redefinition - non-trivial literal as directive - adjust options for tolerance Miscellaneous - optional semi-colon when parsing directives fixes #1914 closes #1915
2017-05-14fix bugs with getter/setter (#1926)Alex Lam S.L
- `reduce_vars` - `side_effects` - property access for object - `AST_SymbolAccessor` as key names enhance `test/ufuzz.js` - add object getter & setter - property assignment to setter - avoid infinite recursion in setter - fix & adjust assignment operators - 50% `=` - 25% `+=` - 2.5% each for the rest - avoid "Invalid array length" - fix `console.log()` - bypass getter - curb recursive reference - deprecate `-E`, always report runtime errors
2017-05-12remove support for `const` (#1910)Alex Lam S.L
As this is not part of ES5.
2017-04-23improve parser under "use strict" (#1836)Alex Lam S.L
- `const` without value - `delete` of expression - redefining `arguments` or `eval` extend `test/ufuzz.js` - optionally generate "use strict" - improve handling of test cases with syntax errors - group IIFE generation - generate bare anonymous functions - workaround `console.log()` for `new function()` - generate expressions with `this` fixes #1810