swc-project
swc
BlogDocsChangelog

refactor(es/lexer): Cleanup code for reading tokens

#10533Merged
Comparing
bvanjoi:parser-2
(
3675745
) with
main
(
a72092c
)
CodSpeed Performance Gauge
N/A
Improvements
1
Untouched
130
Archived
13

Benchmarks

Improved

es/lints/libs/terser
crates/swc_ecma_lints/benches/all.rs::files::bench_files::es/lints/libs
CodSpeed Performance Gauge
+4%
30.3 ms29.1 ms

Passed

es/hygiene/typescript
crates/swc_ecma_transforms_base/benches/base.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
460.6 ms458.4 ms
es/resolver_with_hygiene/typescript
crates/swc_ecma_transforms_base/benches/base.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
831.8 ms830.4 ms
es/lints/libs/three
crates/swc_ecma_lints/benches/all.rs::files::bench_files::es/lints/libs
CodSpeed Performance Gauge
0%
64.5 ms64.4 ms
es/parser/cal-com
crates/swc_ecma_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
85 ms84.9 ms
es/minifier/libs/moment
crates/swc_ecma_minifier/benches/full.rs::bench_all::bench_libs::es/minifier/libs
CodSpeed Performance Gauge
0%
69.1 ms69.1 ms
stackoverflow
crates/swc_html_minifier/benches/full.rs::files_document::bench_files_document::html/minify/document
CodSpeed Performance Gauge
0%
38 ms38 ms
es/minifier/libs/antd
crates/swc_ecma_minifier/benches/full.rs::bench_all::bench_libs::es/minifier/libs
CodSpeed Performance Gauge
0%
2.1 s2.1 s
es/lints/libs/victory
crates/swc_ecma_lints/benches/all.rs::files::bench_files::es/lints/libs
CodSpeed Performance Gauge
0%
90.5 ms90.5 ms
stackoverflow
crates/swc_html_minifier/benches/full.rs::files_document_fragment::bench_files_document_fragment::html/minify/document_fragment
CodSpeed Performance Gauge
0%
38 ms38 ms
es/codegen/colors
crates/swc_ecma_codegen/benches/bench.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
70.2 µs70.2 µs
html/parser/parser_document/css_2021_spec
crates/swc_html_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
77.2 ms77.2 ms
es/parser/underscore
crates/swc_ecma_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
3.7 ms3.7 ms
css_spec
crates/swc_html_minifier/benches/full.rs::files_document_fragment::bench_files_document_fragment::html/minify/document_fragment
CodSpeed Performance Gauge
0%
198.9 ms198.9 ms
es/parser/backbone
crates/swc_ecma_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
4.2 ms4.2 ms
github
crates/swc_html_minifier/benches/full.rs::files_document_fragment::bench_files_document_fragment::html/minify/document_fragment
CodSpeed Performance Gauge
0%
44.1 ms44.1 ms
es/lints/libs/lodash
crates/swc_ecma_lints/benches/all.rs::files::bench_files::es/lints/libs
CodSpeed Performance Gauge
0%
7.1 ms7.1 ms
es/parser/angular
crates/swc_ecma_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
27.4 ms27.3 ms
es/minifier/libs/vue
crates/swc_ecma_minifier/benches/full.rs::bench_all::bench_libs::es/minifier/libs
CodSpeed Performance Gauge
0%
156.4 ms156.4 ms
html/parser/parser_document/stackoverflow_com_17_05_2022
crates/swc_html_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
23.9 ms23.9 ms
es/visitor/compare/fold_span_panic
crates/swc_ecma_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
7 ms7 ms
es/visitor/compare/visit_mut_span_panic
crates/swc_ecma_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
6.2 ms6.2 ms
es/preset-env/usage/builtin_type
crates/swc_ecma_preset_env/benches/polyfills.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
254.4 µs254.4 µs
es/target/es2016
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::version_group
CodSpeed Performance Gauge
0%
297.5 µs297.4 µs
github
crates/swc_html_minifier/benches/full.rs::files_document::bench_files_document::html/minify/document
CodSpeed Performance Gauge
0%
45.1 ms45.1 ms
css_spec
crates/swc_html_minifier/benches/full.rs::files_document::bench_files_document::html/minify/document
CodSpeed Performance Gauge
0%
201.9 ms201.9 ms
es/minifier/libs/react
crates/swc_ecma_minifier/benches/full.rs::bench_all::bench_libs::es/minifier/libs
CodSpeed Performance Gauge
0%
21.9 ms21.9 ms
html/parser/parser_document/github_com_17_05_2022
crates/swc_html_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
24.5 ms24.5 ms
css/lexer/bootstrap_5_1_3
crates/swc_css_parser/benches/lexer.rs::benches::bench_files
CodSpeed Performance Gauge
0%
11.2 ms11.2 ms
es/lints/libs/echarts
crates/swc_ecma_lints/benches/all.rs::files::bench_files::es/lints/libs
CodSpeed Performance Gauge
0%
146 ms146 ms
es2015_block_scoped_fn
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
296.9 µs296.9 µs
es2015_classes
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
400.3 µs400.3 µs
es/visitor/compare/fold_span
crates/swc_ecma_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
7 ms7 ms
es/target/es2015
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::version_group
CodSpeed Performance Gauge
0%
1.2 ms1.2 ms
es2015_sticky_regex
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
282.3 µs282.3 µs
es2015_computed_props
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
279 µs279 µs
es/target/es2017
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::version_group
CodSpeed Performance Gauge
0%
282.5 µs282.5 µs
es/minifier/libs/jquery
crates/swc_ecma_minifier/benches/full.rs::bench_all::bench_libs::es/minifier/libs
CodSpeed Performance Gauge
0%
108.3 ms108.3 ms
css/lexer/foundation_6_7_4
crates/swc_css_parser/benches/lexer.rs::benches::bench_files
CodSpeed Performance Gauge
0%
9.1 ms9.1 ms
es2015_duplicate_keys
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
288.1 µs288.1 µs
es/transform/baseline/common_reserved_word
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::baseline_group
CodSpeed Performance Gauge
0%
291 µs291 µs
html/document/visitor/compare/fold_span
crates/swc_html_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
1.4 ms1.4 ms
es/lints/libs/typescript
crates/swc_ecma_lints/benches/all.rs::files::bench_files::es/lints/libs
CodSpeed Performance Gauge
0%
353.8 ms353.7 ms
es/parser/typescript
crates/swc_ecma_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
590 ms590 ms
es/target/es2020
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::version_group
CodSpeed Performance Gauge
0%
459 µs459 µs
es/parser/three
crates/swc_ecma_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
104 ms104 ms
typescript/fast-strip
crates/swc_fast_ts_strip/benches/assets.rs::benches::fast_ts
CodSpeed Performance Gauge
0%
881.5 µs881.5 µs
html/document_fragment/visitor/compare/clone
crates/swc_html_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
1.2 ms1.2 ms
css/parser/tailwind_3_1_1
crates/swc_css_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
7.5 ms7.5 ms
es2015_shorthand_property
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
279.4 µs279.4 µs
html/document_fragment/visitor/compare/visit_mut_span_panic
crates/swc_html_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
1.3 ms1.3 ms
es/target/es3
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::version_group
CodSpeed Performance Gauge
0%
406 µs406 µs
es/minifier/libs/lodash
crates/swc_ecma_minifier/benches/full.rs::bench_all::bench_libs::es/minifier/libs
CodSpeed Performance Gauge
0%
127 ms127 ms
es2016_exponentiation
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
295.5 µs295.5 µs
parse_and_babelify_underscore
crates/swc_estree_compat/benches/babelify.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
14.6 ms14.6 ms
es2015_block_scoping
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
465.4 µs465.4 µs
parse_and_babelify_backbone
crates/swc_estree_compat/benches/babelify.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
17.1 ms17.1 ms
html/lexer/css_2021_spec
crates/swc_html_parser/benches/lexer.rs::benches::bench_files
CodSpeed Performance Gauge
0%
41.6 ms41.6 ms
css/visitor/compare/clone
crates/swc_css_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
5.1 ms5.1 ms
es/target/es2018
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::version_group
CodSpeed Performance Gauge
0%
315.3 µs315.3 µs
es2015_destructuring
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
355 µs355 µs
es/transform/baseline/common_typescript
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::baseline_group
CodSpeed Performance Gauge
0%
376.7 µs376.7 µs
html/lexer/stackoverflow_com_17_05_2022
crates/swc_html_parser/benches/lexer.rs::benches::bench_files
CodSpeed Performance Gauge
0%
15.1 ms15.1 ms
es/preset-env/usage/property
crates/swc_ecma_preset_env/benches/polyfills.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
120 µs120 µs
es/full-target/es2017
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::full_group
CodSpeed Performance Gauge
0%
539.7 µs539.7 µs
es2015_typeof_symbol
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
283.4 µs283.4 µs
es2022_class_properties
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
391 µs391 µs
html/document/visitor/compare/clone
crates/swc_html_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
1.2 ms1.2 ms
parse_and_babelify_yui
crates/swc_estree_compat/benches/babelify.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
73.4 ms73.4 ms
es2020_optional_chaining
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
344.5 µs344.5 µs
es2015_parameters
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
342 µs342 µs
es2015_for_of
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
294.8 µs294.8 µs
css/visitor/compare/fold_span
crates/swc_css_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
6 ms6 ms
css/parser/bootstrap_5_1_3
crates/swc_css_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
48.6 ms48.6 ms
es2017_async_to_generator
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
281 µs281 µs
es2015_spread
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
279.2 µs279.2 µs
es/minifier/libs/typescript
crates/swc_ecma_minifier/benches/full.rs::bench_all::bench_libs::es/minifier/libs
CodSpeed Performance Gauge
0%
4 s4 s
es/full-target/es2016
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::full_group
CodSpeed Performance Gauge
0%
575.5 µs575.5 µs
parse_and_babelify_mootools
crates/swc_estree_compat/benches/babelify.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
79.9 ms79.9 ms
parse_and_babelify_angular
crates/swc_estree_compat/benches/babelify.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
168.8 ms168.8 ms
es/full-target/es2018
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::full_group
CodSpeed Performance Gauge
0%
523.1 µs523.1 µs
es2015_instanceof
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
285.2 µs285.2 µs
es/lints/libs/react
crates/swc_ecma_lints/benches/all.rs::files::bench_files::es/lints/libs
CodSpeed Performance Gauge
0%
1.5 ms1.5 ms
es/transform/baseline/base
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::baseline_group
CodSpeed Performance Gauge
0%
265 µs265 µs
es/visitor/compare/clone
crates/swc_ecma_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
5.7 ms5.7 ms
es2019_optional_catch_binding
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
279 µs279.1 µs
parse_and_babelify_jquery_mobile
crates/swc_estree_compat/benches/babelify.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
183.3 ms183.3 ms
html/parser/parser_document_fragment/github_com_17_05_2022
crates/swc_html_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
24.4 ms24.4 ms
html/lexer/github_com_17_05_2022
crates/swc_html_parser/benches/lexer.rs::benches::bench_files
CodSpeed Performance Gauge
0%
15.3 ms15.3 ms
es/parser/mootools
crates/swc_ecma_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
17.3 ms17.3 ms
css/visitor/compare/visit_mut_span
crates/swc_css_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
5.4 ms5.4 ms
html/document_fragment/visitor/compare/fold_span_panic
crates/swc_html_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
1.4 ms1.4 ms
parse_and_babelify_jquery
crates/swc_estree_compat/benches/babelify.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
108 ms108 ms
es2015_fn_name
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
290.9 µs290.9 µs
es/visitor/compare/visit_mut_span
crates/swc_ecma_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
6.2 ms6.2 ms
es/minifier/libs/victory
crates/swc_ecma_minifier/benches/full.rs::bench_all::bench_libs::es/minifier/libs
CodSpeed Performance Gauge
0%
913.5 ms913.5 ms
es2020_nullish_coalescing
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
305.2 µs305.2 µs
css/visitor/compare/fold_span_panic
crates/swc_css_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
6 ms6 ms
html/document_fragment/visitor/compare/visit_mut_span
crates/swc_html_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
1.3 ms1.3 ms
html/parser/parser_document_fragment/stackoverflow_com_17_05_2022
crates/swc_html_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
23.8 ms23.8 ms
css/lexer/tailwind_3_1_1
crates/swc_css_parser/benches/lexer.rs::benches::bench_files
CodSpeed Performance Gauge
0%
1.8 ms1.8 ms
css/visitor/compare/visit_mut_span_panic
crates/swc_css_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
5.4 ms5.4 ms
es2015_arrow
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
309 µs309 µs
css/parser/foundation_6_7_4
crates/swc_css_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
38.4 ms38.4 ms
es/lints/libs/vue
crates/swc_ecma_lints/benches/all.rs::files::bench_files::es/lints/libs
CodSpeed Performance Gauge
0%
9.5 ms9.5 ms
es/resolver/typescript
crates/swc_ecma_transforms_base/benches/base.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
251 ms251 ms
babelify-only
crates/swc_estree_compat/benches/babelify.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
2.1 ms2.1 ms
es2018_object_rest_spread
crates/swc_ecma_transforms_typescript/benches/compat.rs::benches::single_tr_group
CodSpeed Performance Gauge
0%
297.6 µs297.7 µs
es/parser/jquery
crates/swc_ecma_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
21.9 ms21.9 ms
html/document_fragment/visitor/compare/fold_span
crates/swc_html_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
1.4 ms1.4 ms
es/parser/jquery mobile
crates/swc_ecma_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
33.9 ms33.9 ms
html/document/visitor/compare/visit_mut_span
crates/swc_html_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
1.3 ms1.3 ms
es/fixer/typescript
crates/swc_ecma_transforms_base/benches/base.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
205.3 ms205.4 ms
html/parser/parser_document_fragment/css_2021_spec
crates/swc_html_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
76.5 ms76.5 ms
es/lints/libs/antd
crates/swc_ecma_lints/benches/all.rs::files::bench_files::es/lints/libs
CodSpeed Performance Gauge
0%
199.6 ms199.6 ms
html/document/visitor/compare/visit_mut_span_panic
crates/swc_html_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
1.3 ms1.3 ms
es/codegen/with-parser/colors
crates/swc_ecma_codegen/benches/with_parse.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
181.5 µs181.5 µs
es/lints/libs/jquery
crates/swc_ecma_lints/benches/all.rs::files::bench_files::es/lints/libs
CodSpeed Performance Gauge
0%
7.5 ms7.5 ms
es/lints/libs/moment
crates/swc_ecma_lints/benches/all.rs::files::bench_files::es/lints/libs
CodSpeed Performance Gauge
0%
4.8 ms4.8 ms
es/codegen/with-parser/large
crates/swc_ecma_codegen/benches/with_parse.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
1.4 ms1.4 ms
html/document/visitor/compare/fold_span_panic
crates/swc_html_parser/benches/compare.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
1.4 ms1.4 ms
es/parser/yui
crates/swc_ecma_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
16.7 ms16.7 ms
es/codegen/large
crates/swc_ecma_codegen/benches/bench.rs::benches::bench_cases
CodSpeed Performance Gauge
0%
647.1 µs647.4 µs
es/minifier/libs/terser
crates/swc_ecma_minifier/benches/full.rs::bench_all::bench_libs::es/minifier/libs
CodSpeed Performance Gauge
0%
375.4 ms375.8 ms
es/minifier/libs/three
crates/swc_ecma_minifier/benches/full.rs::bench_all::bench_libs::es/minifier/libs
CodSpeed Performance Gauge
0%
670.1 ms670.7 ms
es/minifier/libs/echarts
crates/swc_ecma_minifier/benches/full.rs::bench_all::bench_libs::es/minifier/libs
CodSpeed Performance Gauge
0%
1.6 s1.6 s
es/minifier/libs/d3
crates/swc_ecma_minifier/benches/full.rs::bench_all::bench_libs::es/minifier/libs
CodSpeed Performance Gauge
0%
425.2 ms426 ms
es/parser/colors
crates/swc_ecma_parser/benches/parser.rs::benches::bench_files
CodSpeed Performance Gauge
0%
114 µs114.3 µs
es/lints/libs/d3
crates/swc_ecma_lints/benches/all.rs::files::bench_files::es/lints/libs
CodSpeed Performance Gauge
-1%
27.8 ms28 ms
deserialization of serde
crates/swc_common/benches/serde.rs::benches::bench_serde
CodSpeed Performance Gauge
-1%
2.5 µs2.5 µs
serialization of serde
crates/swc_common/benches/serde.rs::benches::bench_serde
CodSpeed Performance Gauge
-2%
2.9 µs2.9 µs

Commits

Click on a commit to change the comparison range
Base
main
8dbdbef
+0.04%
refactor(ecma/lexer): cleanup read token
a5f20e2
7 months ago
by bvanjoi
© 2025 CodSpeed Technology
Home Terms Privacy Docs