Skip to content

Commit

Permalink
feat(css/parser): Add parse_string_input (#6441)
Browse files Browse the repository at this point in the history
  • Loading branch information
kdy1 committed Nov 15, 2022
1 parent 4d6b182 commit 9600308
Showing 1 changed file with 16 additions and 1 deletion.
17 changes: 16 additions & 1 deletion crates/swc_css_parser/src/lib.rs
Expand Up @@ -49,7 +49,22 @@ pub fn parse_file<'a, T>(
where
Parser<Lexer<StringInput<'a>>>: Parse<T>,
{
let lexer = Lexer::new(StringInput::from(fm), config);
parse_string_input(StringInput::from(fm), config, errors)
}

/// Parse a given [StringInput] as `T`.
///
/// If there are syntax errors but if it was recoverable, it will be appended
/// to `errors`.
pub fn parse_string_input<'a, T>(
input: StringInput<'a>,
config: ParserConfig,
errors: &mut Vec<Error>,
) -> PResult<T>
where
Parser<Lexer<StringInput<'a>>>: Parse<T>,
{
let lexer = Lexer::new(input, config);
let mut parser = Parser::new(lexer, config);

let res = parser.parse();
Expand Down

1 comment on commit 9600308

@github-actions
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Benchmark

Benchmark suite Current: 9600308 Previous: 948e35b Ratio
es/full/bugs-1 358728 ns/iter (± 20211) 343550 ns/iter (± 20307) 1.04
es/full/minify/libraries/antd 1970753614 ns/iter (± 83209994) 1918613605 ns/iter (± 27788602) 1.03
es/full/minify/libraries/d3 436403414 ns/iter (± 15106176) 411847176 ns/iter (± 9000097) 1.06
es/full/minify/libraries/echarts 1649793064 ns/iter (± 61295639) 1602234114 ns/iter (± 45659768) 1.03
es/full/minify/libraries/jquery 120893988 ns/iter (± 7793123) 99042557 ns/iter (± 5193040) 1.22
es/full/minify/libraries/lodash 139829224 ns/iter (± 7717097) 117907487 ns/iter (± 5810567) 1.19
es/full/minify/libraries/moment 67507421 ns/iter (± 2083928) 59190908 ns/iter (± 2466949) 1.14
es/full/minify/libraries/react 22202854 ns/iter (± 1072765) 20728014 ns/iter (± 1778732) 1.07
es/full/minify/libraries/terser 359007216 ns/iter (± 8807000) 297951302 ns/iter (± 7917389) 1.20
es/full/minify/libraries/three 616147879 ns/iter (± 12528583) 587759274 ns/iter (± 13857055) 1.05
es/full/minify/libraries/typescript 3581732217 ns/iter (± 45334056) 3519955127 ns/iter (± 104605921) 1.02
es/full/minify/libraries/victory 881184048 ns/iter (± 19875891) 852374252 ns/iter (± 24390741) 1.03
es/full/minify/libraries/vue 179471415 ns/iter (± 4730819) 160770327 ns/iter (± 7981538) 1.12
es/full/codegen/es3 34424 ns/iter (± 3250) 34925 ns/iter (± 1627) 0.99
es/full/codegen/es5 33917 ns/iter (± 3412) 34319 ns/iter (± 1683) 0.99
es/full/codegen/es2015 34112 ns/iter (± 1702) 35211 ns/iter (± 2154) 0.97
es/full/codegen/es2016 34087 ns/iter (± 5975) 34683 ns/iter (± 2157) 0.98
es/full/codegen/es2017 33948 ns/iter (± 4008) 34512 ns/iter (± 815) 0.98
es/full/codegen/es2018 34556 ns/iter (± 3726) 34392 ns/iter (± 905) 1.00
es/full/codegen/es2019 35521 ns/iter (± 4079) 34312 ns/iter (± 818) 1.04
es/full/codegen/es2020 34688 ns/iter (± 3803) 34279 ns/iter (± 1151) 1.01
es/full/all/es3 212352806 ns/iter (± 12823051) 194127133 ns/iter (± 11726037) 1.09
es/full/all/es5 198628693 ns/iter (± 10760155) 182127686 ns/iter (± 16083062) 1.09
es/full/all/es2015 145676177 ns/iter (± 5143401) 147043997 ns/iter (± 11211648) 0.99
es/full/all/es2016 149710787 ns/iter (± 13111995) 146351168 ns/iter (± 8371993) 1.02
es/full/all/es2017 150991913 ns/iter (± 6325256) 145674489 ns/iter (± 8588438) 1.04
es/full/all/es2018 156666514 ns/iter (± 14027559) 143979878 ns/iter (± 6720903) 1.09
es/full/all/es2019 151802647 ns/iter (± 9561704) 142589262 ns/iter (± 9629843) 1.06
es/full/all/es2020 145116045 ns/iter (± 8847937) 137907789 ns/iter (± 7413935) 1.05
es/full/parser 729070 ns/iter (± 64347) 715916 ns/iter (± 20625) 1.02
es/full/base/fixer 27598 ns/iter (± 2217) 26126 ns/iter (± 994) 1.06
es/full/base/resolver_and_hygiene 91640 ns/iter (± 7732) 91329 ns/iter (± 2580) 1.00
serialization of ast node 223 ns/iter (± 24) 216 ns/iter (± 4) 1.03
serialization of serde 228 ns/iter (± 24) 222 ns/iter (± 2) 1.03

This comment was automatically generated by workflow using github-action-benchmark.

Please sign in to comment.