Commit graph

26 commits

Author SHA1 Message Date
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
Boshen
6b9bbaa091
perf(lexer): try &static Atom for match_keyword (#143)
* perf(lexer): try phf_map for `match_keyword`

* wip
2023-03-07 13:14:22 +08:00
Yoni Feng
dcfdce5bb7
refactor(lexer): avoid copying of self in SIMD functions (#104) 2023-03-03 21:46:55 -08:00
Ye Yangchen
d8c6caf57f feat(oxc_parser): Parse modifiers before declaration 2023-03-01 22:50:23 -08:00
Boshen
73ea3d6361 feat(ast,lexer,linter): save and check comments 2023-02-27 12:31:57 +08:00
Boshen
915518b614 refactor(oxc_diagnostics): s/PError/Error 2023-02-26 02:02:05 +08:00
Boshen
4f4a9802b7 refactor(diagnostics,parser): move diagnostics to parser 2023-02-22 19:23:01 +08:00
Boshen
5390d3e6b4 refactor(diagnostic): change Err type to miette::Error
This is the prerequisite for breaking up the large Diagnostic enum.
2023-02-22 11:08:21 +08:00
Boshen
4c6407b152 refactor(ast): s/node/span
This corrects the jargon for span. The term `node` came from `estree`,
which is a bit misleading here in Rust.

closes #9
2023-02-21 19:17:49 +08:00
Boshen
f3a7d5a026 feat(ast): add RegExpFlags bitflag for storing regex flags
This reduces `TokenValue` from 56 to 40 bytes, `Token` from 72 to 56 bytes.
2023-02-21 18:22:15 +08:00
Boshen
a733856536 refactor(ast,parser): use u32 for node spans
The next PR will fix the jargon where Node = Span.

relates to #9
2023-02-21 16:02:23 +08:00
Boshen
cf278a2760 perf(parser): a few micro optimizations 2023-02-21 13:11:58 +08:00
Boshen
0bbbc7768f perf(oxc_parser): use u8 for offset 2023-02-21 13:11:58 +08:00
Boshen
83c3f34af2 feat(lexer): use portable-SIMD to speed up multiline comment scanning 2023-02-20 21:58:08 +08:00
Boshen
ab68cea0b7 perf(lexer): use portable-SIMD to speed up whitespace scanning
closes #13
2023-02-20 19:03:15 +08:00
Boshen
a347e3993e
Revert "perf(lexer): use portable-SIMD to speed up multiline comment scanning"
This reverts commit a51c7f9ba2.
2023-02-17 14:50:42 +08:00
Boshen
a51c7f9ba2 perf(lexer): use portable-SIMD to speed up multiline comment scanning 2023-02-15 19:51:13 -08:00
Boshen
85955d7147
refactor(parser): clean up some lexer code 2023-02-12 21:34:19 +08:00
Boshen
1fdc635638 feat(parser): add parser 2023-02-11 05:26:49 -08:00
Boshen
4ae70b9592 feat(parser): add lexer 2023-02-11 02:29:54 -08:00