Commit graph

69 commits

Author SHA1 Message Date
JonaAnders
08164b0e18
refactor(parser) Updated comments mentioning the ecma specification section 12.x (#1496)
The ECMA specification seems to added the "Tokens" section to the
specification as 12.6. This pushed all the other sections down,
resulting in e.g. former 12.6 now being 12.7. Comments in the parser
mention this part of the specification. All the mentions of section
12.6+ therefor are outdated now. This pull request tries to fix that by
updating all the comments.
2023-11-22 19:29:04 +08:00
Boshen
07b010912a
feat(parser): add preserve_parens option (default: true) (#1474)
closes #1461
2023-11-21 11:16:30 +08:00
Boshen
0218ae8641
feat(prettier): print leading comments with newlines (#1434) 2023-11-19 22:46:55 +08:00
Boshen
854b55a3e6
feat(codegen): json strings proposal (#1039) 2023-10-23 18:29:30 +08:00
Cameron
76ac9cd4c5
fix(lexer) Fix spans for jsx children (#1030)
Closes #1026
2023-10-22 22:44:19 +08:00
Boshen
db5417f9a9
refactor(clippy): allow clippy::too_many_lines 2023-10-16 15:18:11 +08:00
Cameron
5b1e1e5408
feat(parser): TypeScript 5.2 (#811)
- adds support for [Using
Declarations](https://devblogs.microsoft.com/typescript/announcing-typescript-5-2/#using-declarations-and-explicit-resource-management)

Closes #786
2023-10-05 12:52:14 +13:00
Boshen
f447cf3a3b
perf(lexer): only check the first lower case for match_keyword (#913) 2023-09-14 23:19:16 +08:00
Boshen
7962e81a43
perf(lexer): remove an extra branch from identifier_name_handler (#912) 2023-09-14 22:42:38 +08:00
Boshen
babbc47d61
perf(parser): lazily build trivia map instead of build in-place (#903)
closes #898
2023-09-12 23:23:56 +08:00
Boshen
d25355c9e8
perf(lexer): reduce an extra branch from peek (#841) 2023-09-03 00:02:42 +08:00
Boshen
12798e075f
refactor: improve code coverage a little bit 2023-08-25 23:07:14 +08:00
Boshen
a272c1ffe4
perf(lexer): reduce checks on ident -> keyword (#783) 2023-08-24 18:43:03 +08:00
Boshen
c8a215ea5e
perf(lexer): jump table (#779) 2023-08-24 15:02:06 +08:00
Boshen
2f48bdf26f
fix(parser,semantic): make semantic own Trivias (#711)
closes #708

Making the parser return Rc<Trivias> is not a good API, and ideally
`Semantic` should just own `Trivias` so it can process or mutate it.
2023-08-10 15:30:32 +08:00
Boshen
b34ef4f07a chore: reformat 2023-07-27 13:11:46 +08:00
Boshen
608ee9116b
refactor(parser): remove portable simd because it is not stable Rust (#645)
related #626
2023-07-27 12:43:11 +08:00
Sg
2203d08199
refactor: remove unstable feature slice_as_chunks (#632) 2023-07-26 19:21:35 +08:00
Boshen
6428139b76
fix(parser): fix re_lex_jsx_identifier not omitting whitespaces
closes #518
2023-07-05 12:53:21 +08:00
Boshen
e25f6e2dd4
chore(rust): rust cargo fmt and fix clippy warnings 2023-07-04 15:41:30 +08:00
阿良仔
26c3ece37c
feat: handle UnaryOpsWithBigInt (#475) 2023-06-25 22:37:36 +08:00
Boshen
166af12b9d
fix(parser): compile in wasm 2023-06-13 17:42:40 +08:00
Carter Snook
c0726e444f
feat(lexer): use linear lexing on WASM (#436)
Co-authored-by: Boshen <boshenc@gmail.com>
2023-06-13 15:18:02 +08:00
Carter Snook
985b8f21d9
feat: support hashbang interpreter comments (#431) 2023-06-11 23:55:58 +08:00
Wenzhe Wang
1a31c76ee9
refactor(minifier): reduce and clean match checks (#406) 2023-06-06 12:46:13 +08:00
Wenzhe Wang
4109c8b8a5
feat(parser): distinguish exponential number (#399) 2023-06-01 15:15:22 +08:00
Boshen
24f11a4ea8
refactor(syntax): move identifier related code from lexer to syntax 2023-05-27 11:00:02 +08:00
Boshen
a31c7ac77a
refactor(index): use static_assertions 2023-05-24 22:53:11 +08:00
Boshen
14720e7c69
refactor: move SourceType from oxc_ast to oxc_span (#351)
related #350
2023-05-12 23:16:14 +08:00
Boshen
7f93e58f10
chore: remove all #[must_use] 2023-05-11 21:08:00 +08:00
Boshen
1b83e6c16e
feat(oxc_index): add static_assert_size for compile time evaluation (#343) 2023-05-08 22:20:54 +08:00
Boshen
cd276c2850
feat: add oxc_span crate (#323) 2023-04-27 21:51:15 +08:00
Boshen
7f946fb75d
chore: bump nightly to nightly-2023-04-20 (#304) 2023-04-20 23:35:38 +08:00
Boshen
7f0b16fb9c
chore: remove some unused code 2023-04-17 23:25:57 +08:00
Boshen
bfea368524
chore: remove target_arch from std::mem::size_of checks 2023-04-16 21:08:12 +08:00
Boshen
6cbfc29c90
refactor(parser): remove some useless derive(Debug) 2023-04-16 12:19:39 +08:00
Boshen
ca0e80691c
refactor(oxc_parser): remove unused re_lex_as_typescript_r_angle 2023-04-16 12:15:49 +08:00
Boshen
4939eeab6a
refactor(oxc_ast): cleanup docs and exports 2023-04-15 18:02:17 +08:00
Wei Zhu
b17181a0c4
fix(parser): fix additional char being consumed in JSXText (#259) 2023-04-06 13:52:04 +08:00
Boshen
96ad67db92
fix(parser): clean up type arguments parsing (#242)
closes #169
2023-04-02 12:06:52 +08:00
Boshen
d4ff0bb40e refactor(oxc_parser): parser and lexer does not need to share the errors vec 2023-04-01 15:59:42 +08:00
Boshen
174330561c
fix(parser): fix panic on multi-byte characaters (#233)
* fix(oxc_parser): fix panic when EOF on a multi-byte character

relates #232

* fix(parser): fix panic on multi-byte char in private identifer

relates #232
2023-04-01 13:34:18 +08:00
Boshen
d232199e1c
refactor(parser): return Rc<Trivias> from TriviaBuilder (#231)
closes #229
2023-03-31 09:02:48 -07:00
Boshen
ff9a2c3ab0
feat(linter): eslint disable comments (#196)
feat(linter): eslint disable comments

closes #100
closes #170
2023-03-22 11:27:42 +08:00
Boshen
57f3065d68
refactor: remove unused #[allow(clippy:..)] 2023-03-17 13:28:06 +08:00
Boshen
2fe8fba5b6
refactor(lexer): make TokenValue 8 bytes smaller by changing RegExp.pattern to &'a str (#175) 2023-03-13 23:20:52 +08:00
Boshen
f36e3301fd
refactor(lexer): change TokenValue::String(Atom) to TokenValue::String(&str) (#174) 2023-03-13 09:33:44 +08:00
Boshen
66207e74a4
refactor(lexer): remove LexerContext::JsxChild (#172) 2023-03-12 20:19:51 +08:00
Boshen
94fdd54368
perf(lexer): fine tune identifier checking with less redundant branches (#154)
perf(lexer): fine tune checking of identifiers with less redundant branches
2023-03-08 22:00:15 +08:00
Boshen
4d32bfb55e
refactor: remove all declarations of const fn, which is useless for us 2023-03-07 21:29:47 +08:00