Skip to content

Commit

Permalink
feat(css/compat): Support custom media queries (#6625)
Browse files Browse the repository at this point in the history
Co-authored-by: alexander.akait <sheo13666q@gmail.com>
  • Loading branch information
kdy1 and alexander-akait committed Dec 13, 2022
1 parent c4ab41e commit a5f7b4b
Show file tree
Hide file tree
Showing 19 changed files with 1,463 additions and 70 deletions.
54 changes: 53 additions & 1 deletion crates/swc_css_ast/src/at_rule.rs
@@ -1,7 +1,7 @@
use is_macro::Is;
use string_enum::StringEnum;
use swc_atoms::{Atom, JsWord};
use swc_common::{ast_node, EqIgnoreSpan, Span};
use swc_common::{ast_node, util::take::Take, EqIgnoreSpan, Span};

use crate::{
CustomIdent, CustomPropertyName, DashedIdent, Declaration, Dimension, FamilyName, Function,
Expand All @@ -27,6 +27,15 @@ pub enum AtRuleName {
Ident(Ident),
}

impl PartialEq<str> for AtRuleName {
fn eq(&self, other: &str) -> bool {
match self {
AtRuleName::DashedIdent(v) => *v == *other,
AtRuleName::Ident(v) => *v == *other,
}
}
}

#[ast_node]
#[derive(Eq, Hash, Is, EqIgnoreSpan)]
pub enum AtRulePrelude {
Expand Down Expand Up @@ -217,6 +226,19 @@ pub struct MediaQuery {
pub condition: Option<Box<MediaConditionType>>,
}

impl Take for MediaQuery {
#[inline]
fn dummy() -> Self {
Self {
span: Take::dummy(),
modifier: Take::dummy(),
media_type: Take::dummy(),
keyword: Take::dummy(),
condition: Take::dummy(),
}
}
}

impl EqIgnoreSpan for MediaQuery {
fn eq_ignore_span(&self, other: &Self) -> bool {
self.modifier.eq_ignore_span(&other.modifier)
Expand Down Expand Up @@ -813,11 +835,23 @@ pub struct ExtensionName {
}

impl EqIgnoreSpan for ExtensionName {
#[inline]
fn eq_ignore_span(&self, other: &Self) -> bool {
self.value == other.value
}
}

impl Take for ExtensionName {
#[inline]
fn dummy() -> Self {
Self {
span: Take::dummy(),
value: Default::default(),
raw: Take::dummy(),
}
}
}

#[ast_node("CustomMedia")]
#[derive(Eq, Hash, EqIgnoreSpan)]
pub struct CustomMediaQuery {
Expand All @@ -826,6 +860,17 @@ pub struct CustomMediaQuery {
pub media: CustomMediaQueryMediaType,
}

impl Take for CustomMediaQuery {
#[inline]
fn dummy() -> Self {
Self {
span: Take::dummy(),
name: Take::dummy(),
media: Take::dummy(),
}
}
}

#[ast_node]
#[derive(Eq, Hash, Is, EqIgnoreSpan)]
pub enum CustomMediaQueryMediaType {
Expand All @@ -834,3 +879,10 @@ pub enum CustomMediaQueryMediaType {
#[tag("MediaQueryList")]
MediaQueryList(MediaQueryList),
}

impl Take for CustomMediaQueryMediaType {
#[inline]
fn dummy() -> Self {
Self::Ident(Take::dummy())
}
}
18 changes: 18 additions & 0 deletions crates/swc_css_ast/src/value.rs
Expand Up @@ -20,12 +20,21 @@ pub struct Ident {
}

impl EqIgnoreSpan for Ident {
#[inline]
fn eq_ignore_span(&self, other: &Self) -> bool {
self.value == other.value
}
}

impl PartialEq<str> for Ident {
#[inline]
fn eq(&self, other: &str) -> bool {
&*self.value == other
}
}

impl Take for Ident {
#[inline]
fn dummy() -> Self {
Self {
span: Default::default(),
Expand All @@ -45,6 +54,7 @@ pub struct CustomIdent {
}

impl EqIgnoreSpan for CustomIdent {
#[inline]
fn eq_ignore_span(&self, other: &Self) -> bool {
self.value == other.value
}
Expand All @@ -60,11 +70,19 @@ pub struct DashedIdent {
}

impl EqIgnoreSpan for DashedIdent {
#[inline]
fn eq_ignore_span(&self, other: &Self) -> bool {
self.value == other.value
}
}

impl PartialEq<str> for DashedIdent {
#[inline]
fn eq(&self, other: &str) -> bool {
&*self.value == other
}
}

#[ast_node("CustomPropertyName")]
#[derive(Eq, Hash)]
pub struct CustomPropertyName {
Expand Down

1 comment on commit a5f7b4b

@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: a5f7b4b Previous: 8b2e1d1 Ratio
es/full/bugs-1 296770 ns/iter (± 8893) 295748 ns/iter (± 5977) 1.00
es/full/minify/libraries/antd 1769493389 ns/iter (± 32867930) 1679739698 ns/iter (± 10412366) 1.05
es/full/minify/libraries/d3 348633613 ns/iter (± 7522665) 321819129 ns/iter (± 2116496) 1.08
es/full/minify/libraries/echarts 1491180558 ns/iter (± 18659895) 1405121819 ns/iter (± 8529336) 1.06
es/full/minify/libraries/jquery 92163611 ns/iter (± 647813) 91155402 ns/iter (± 352702) 1.01
es/full/minify/libraries/lodash 110891861 ns/iter (± 1907971) 108454482 ns/iter (± 752254) 1.02
es/full/minify/libraries/moment 54636429 ns/iter (± 472180) 52456659 ns/iter (± 470173) 1.04
es/full/minify/libraries/react 19717949 ns/iter (± 243422) 19301029 ns/iter (± 138582) 1.02
es/full/minify/libraries/terser 272295220 ns/iter (± 6732785) 249529606 ns/iter (± 1824892) 1.09
es/full/minify/libraries/three 501038117 ns/iter (± 10342569) 454853033 ns/iter (± 5398279) 1.10
es/full/minify/libraries/typescript 3371090614 ns/iter (± 14694451) 3196954260 ns/iter (± 14112960) 1.05
es/full/minify/libraries/victory 756348382 ns/iter (± 22967499) 669683983 ns/iter (± 10211638) 1.13
es/full/minify/libraries/vue 139338900 ns/iter (± 2566896) 133081951 ns/iter (± 807444) 1.05
es/full/codegen/es3 27731 ns/iter (± 43) 27782 ns/iter (± 34) 1.00
es/full/codegen/es5 27718 ns/iter (± 76) 27869 ns/iter (± 69) 0.99
es/full/codegen/es2015 27746 ns/iter (± 67) 27900 ns/iter (± 70) 0.99
es/full/codegen/es2016 27689 ns/iter (± 88) 27794 ns/iter (± 119) 1.00
es/full/codegen/es2017 27654 ns/iter (± 73) 27798 ns/iter (± 169) 0.99
es/full/codegen/es2018 27654 ns/iter (± 57) 27798 ns/iter (± 82) 0.99
es/full/codegen/es2019 27679 ns/iter (± 54) 27797 ns/iter (± 144) 1.00
es/full/codegen/es2020 27697 ns/iter (± 53) 27756 ns/iter (± 95) 1.00
es/full/all/es3 169113246 ns/iter (± 2753658) 167604881 ns/iter (± 2499207) 1.01
es/full/all/es5 163787691 ns/iter (± 2044588) 158599238 ns/iter (± 3478194) 1.03
es/full/all/es2015 121785196 ns/iter (± 1553139) 119880577 ns/iter (± 783536) 1.02
es/full/all/es2016 120949053 ns/iter (± 1839472) 119352251 ns/iter (± 1338220) 1.01
es/full/all/es2017 120012908 ns/iter (± 1283518) 118546026 ns/iter (± 925479) 1.01
es/full/all/es2018 118735458 ns/iter (± 1288693) 117102442 ns/iter (± 1510660) 1.01
es/full/all/es2019 117433949 ns/iter (± 1675653) 115768114 ns/iter (± 1171190) 1.01
es/full/all/es2020 112669110 ns/iter (± 992375) 111305978 ns/iter (± 944165) 1.01
es/full/parser 524692 ns/iter (± 9411) 519247 ns/iter (± 8871) 1.01
es/full/base/fixer 21989 ns/iter (± 43) 21530 ns/iter (± 69) 1.02
es/full/base/resolver_and_hygiene 78012 ns/iter (± 276) 77998 ns/iter (± 138) 1.00
serialization of ast node 121 ns/iter (± 0) 122 ns/iter (± 0) 0.99
serialization of serde 125 ns/iter (± 0) 126 ns/iter (± 0) 0.99
css/minify/libraries/bootstrap 27332423 ns/iter (± 142671) 26975319 ns/iter (± 83976) 1.01
css/visitor/compare/clone 2076110 ns/iter (± 13864) 2076878 ns/iter (± 17032) 1.00
css/visitor/compare/visit_mut_span 2265474 ns/iter (± 3769) 2271660 ns/iter (± 10294) 1.00
css/visitor/compare/visit_mut_span_panic 2320891 ns/iter (± 12781) 2324806 ns/iter (± 5877) 1.00
css/visitor/compare/fold_span 2968557 ns/iter (± 14678) 2982437 ns/iter (± 18716) 1.00
css/visitor/compare/fold_span_panic 3132601 ns/iter (± 26302) 3116280 ns/iter (± 18628) 1.01
css/lexer/bootstrap_5_1_3 5217247 ns/iter (± 6771) 5175361 ns/iter (± 11039) 1.01
css/lexer/foundation_6_7_4 4399462 ns/iter (± 4315) 4387848 ns/iter (± 8932) 1.00
css/lexer/tailwind_3_1_1 825587 ns/iter (± 738) 822903 ns/iter (± 1988) 1.00
css/parser/bootstrap_5_1_3 20691717 ns/iter (± 92651) 20737384 ns/iter (± 31324) 1.00
css/parser/foundation_6_7_4 16503901 ns/iter (± 75957) 16600683 ns/iter (± 24351) 0.99
css/parser/tailwind_3_1_1 3186416 ns/iter (± 7432) 3192294 ns/iter (± 11575) 1.00
es/codegen/colors 322071 ns/iter (± 181672) 320642 ns/iter (± 179878) 1.00
es/codegen/large 1214203 ns/iter (± 650630) 1204379 ns/iter (± 646557) 1.01
es/codegen/with-parser/colors 46708 ns/iter (± 287) 46614 ns/iter (± 275) 1.00
es/codegen/with-parser/large 514686 ns/iter (± 1285) 516351 ns/iter (± 1095) 1.00
es/minify/libraries/antd 1552122181 ns/iter (± 17461366) 1459789358 ns/iter (± 8603267) 1.06
es/minify/libraries/d3 295349000 ns/iter (± 6804337) 279213650 ns/iter (± 1616911) 1.06
es/minify/libraries/echarts 1304080994 ns/iter (± 21326201) 1247198808 ns/iter (± 13304039) 1.05
es/minify/libraries/jquery 79671717 ns/iter (± 859110) 78903172 ns/iter (± 824418) 1.01
es/minify/libraries/lodash 99647653 ns/iter (± 1617206) 97049787 ns/iter (± 1017517) 1.03
es/minify/libraries/moment 47160661 ns/iter (± 628131) 45746771 ns/iter (± 251234) 1.03
es/minify/libraries/react 17537813 ns/iter (± 179437) 17277577 ns/iter (± 125660) 1.02
es/minify/libraries/terser 231516997 ns/iter (± 5296672) 219161570 ns/iter (± 4718234) 1.06
es/minify/libraries/three 426852078 ns/iter (± 17683045) 382240838 ns/iter (± 2926674) 1.12
es/minify/libraries/typescript 2916217052 ns/iter (± 18042167) 2760663081 ns/iter (± 14741160) 1.06
es/minify/libraries/victory 637320892 ns/iter (± 17561772) 584211895 ns/iter (± 7886213) 1.09
es/minify/libraries/vue 121421422 ns/iter (± 1335235) 118129739 ns/iter (± 1441011) 1.03
es/visitor/compare/clone 2410822 ns/iter (± 10407) 2426669 ns/iter (± 19470) 0.99
es/visitor/compare/visit_mut_span 2800208 ns/iter (± 10802) 2798518 ns/iter (± 6445) 1.00
es/visitor/compare/visit_mut_span_panic 2848878 ns/iter (± 8774) 2835358 ns/iter (± 4045) 1.00
es/visitor/compare/fold_span 3959688 ns/iter (± 25081) 3934973 ns/iter (± 8673) 1.01
es/visitor/compare/fold_span_panic 4142506 ns/iter (± 19049) 4074329 ns/iter (± 10165) 1.02
es/lexer/colors 17264 ns/iter (± 32) 17424 ns/iter (± 39) 0.99
es/lexer/angular 8214758 ns/iter (± 23467) 8274279 ns/iter (± 21674) 0.99
es/lexer/backbone 1070123 ns/iter (± 2843) 1080714 ns/iter (± 2088) 0.99
es/lexer/jquery 5940307 ns/iter (± 6348) 5984769 ns/iter (± 10008) 0.99
es/lexer/jquery mobile 9154217 ns/iter (± 6316) 9216831 ns/iter (± 10540) 0.99
es/lexer/mootools 4654164 ns/iter (± 6616) 4704044 ns/iter (± 7748) 0.99
es/lexer/underscore 892743 ns/iter (± 521) 899183 ns/iter (± 1693) 0.99
es/lexer/three 27801144 ns/iter (± 76543) 28043351 ns/iter (± 63944) 0.99
es/lexer/yui 5043012 ns/iter (± 6206) 5087972 ns/iter (± 8299) 0.99
es/parser/colors 30651 ns/iter (± 147) 30653 ns/iter (± 142) 1.00
es/parser/angular 15789661 ns/iter (± 381800) 15426123 ns/iter (± 195391) 1.02
es/parser/backbone 2317995 ns/iter (± 10364) 2304906 ns/iter (± 16474) 1.01
es/parser/jquery 12621529 ns/iter (± 162228) 12549540 ns/iter (± 104357) 1.01
es/parser/jquery mobile 20260730 ns/iter (± 366628) 19657247 ns/iter (± 217839) 1.03
es/parser/mootools 9604879 ns/iter (± 34092) 9552219 ns/iter (± 36978) 1.01
es/parser/underscore 1959452 ns/iter (± 12610) 1955392 ns/iter (± 12997) 1.00
es/parser/three 60965085 ns/iter (± 646136) 58194066 ns/iter (± 845626) 1.05
es/parser/yui 9606784 ns/iter (± 82544) 9541795 ns/iter (± 39593) 1.01
es/preset-env/usage/builtin_type 141204 ns/iter (± 31642) 141239 ns/iter (± 31966) 1.00
es/preset-env/usage/property 21342 ns/iter (± 77) 21151 ns/iter (± 77) 1.01
es/resolver/typescript 121504465 ns/iter (± 1077328) 119879371 ns/iter (± 2187264) 1.01
es/fixer/typescript 97103323 ns/iter (± 1140390) 92786260 ns/iter (± 1020079) 1.05
es/hygiene/typescript 192607321 ns/iter (± 1160254) 181318432 ns/iter (± 1504121) 1.06
es/resolver_with_hygiene/typescript 327533969 ns/iter (± 2913489) 309297765 ns/iter (± 2962187) 1.06
es/visitor/base-perf/module_clone 74071 ns/iter (± 1459) 73947 ns/iter (± 1459) 1.00
es/visitor/base-perf/fold_empty 85952 ns/iter (± 715) 85091 ns/iter (± 1823) 1.01
es/visitor/base-perf/fold_noop_impl_all 86761 ns/iter (± 1662) 85790 ns/iter (± 1662) 1.01
es/visitor/base-perf/fold_noop_impl_vec 88202 ns/iter (± 1543) 85062 ns/iter (± 1352) 1.04
es/visitor/base-perf/boxing_boxed_clone 54 ns/iter (± 0) 54 ns/iter (± 0) 1
es/visitor/base-perf/boxing_unboxed_clone 58 ns/iter (± 0) 58 ns/iter (± 0) 1
es/visitor/base-perf/boxing_boxed 99 ns/iter (± 0) 100 ns/iter (± 0) 0.99
es/visitor/base-perf/boxing_unboxed 102 ns/iter (± 0) 101 ns/iter (± 0) 1.01
es/visitor/base-perf/visit_contains_this 3541 ns/iter (± 58) 3361 ns/iter (± 66) 1.05
es/base/parallel/resolver/typescript 5469680780 ns/iter (± 253436070) 5578208401 ns/iter (± 325642175) 0.98
es/base/parallel/hygiene/typescript 2250782137 ns/iter (± 19078476) 2189117707 ns/iter (± 29845054) 1.03
misc/visitors/time-complexity/time 5 93 ns/iter (± 0) 92 ns/iter (± 0) 1.01
misc/visitors/time-complexity/time 10 293 ns/iter (± 1) 301 ns/iter (± 2) 0.97
misc/visitors/time-complexity/time 15 601 ns/iter (± 1) 606 ns/iter (± 8) 0.99
misc/visitors/time-complexity/time 20 1124 ns/iter (± 2) 1121 ns/iter (± 3) 1.00
misc/visitors/time-complexity/time 40 6105 ns/iter (± 169) 6014 ns/iter (± 25) 1.02
misc/visitors/time-complexity/time 60 15181 ns/iter (± 33) 15135 ns/iter (± 24) 1.00
es/full-target/es2016 187140 ns/iter (± 650) 187552 ns/iter (± 558) 1.00
es/full-target/es2017 181752 ns/iter (± 427) 180666 ns/iter (± 512) 1.01
es/full-target/es2018 170564 ns/iter (± 569) 169760 ns/iter (± 257) 1.00
es2020_nullish_coalescing 65935 ns/iter (± 8158) 65624 ns/iter (± 153) 1.00
es2020_optional_chaining 95327 ns/iter (± 6415) 93928 ns/iter (± 284) 1.01
es2022_class_properties 92912 ns/iter (± 176) 91612 ns/iter (± 166) 1.01
es2018_object_rest_spread 71300 ns/iter (± 155) 70106 ns/iter (± 146) 1.02
es2019_optional_catch_binding 60593 ns/iter (± 93) 59827 ns/iter (± 144) 1.01
es2017_async_to_generator 60926 ns/iter (± 133) 60206 ns/iter (± 470) 1.01
es2016_exponentiation 64489 ns/iter (± 225) 63729 ns/iter (± 180) 1.01
es2015_arrow 69612 ns/iter (± 209) 68289 ns/iter (± 262) 1.02
es2015_block_scoped_fn 65431 ns/iter (± 210) 64745 ns/iter (± 108) 1.01
es2015_block_scoping 137730 ns/iter (± 9048) 141580 ns/iter (± 9842) 0.97
es2015_classes 116047 ns/iter (± 388) 114812 ns/iter (± 305) 1.01
es2015_computed_props 60156 ns/iter (± 139) 59948 ns/iter (± 377) 1.00
es2015_destructuring 115165 ns/iter (± 401) 114141 ns/iter (± 423) 1.01
es2015_duplicate_keys 63052 ns/iter (± 64) 62394 ns/iter (± 211) 1.01
es2015_parameters 78786 ns/iter (± 192) 77883 ns/iter (± 185) 1.01
es2015_fn_name 65941 ns/iter (± 445) 65424 ns/iter (± 594) 1.01
es2015_for_of 63350 ns/iter (± 171) 62732 ns/iter (± 157) 1.01
es2015_instanceof 62337 ns/iter (± 103) 61705 ns/iter (± 121) 1.01
es2015_shorthand_property 60315 ns/iter (± 203) 59989 ns/iter (± 175) 1.01
es2015_spread 60143 ns/iter (± 201) 59825 ns/iter (± 70) 1.01
es2015_sticky_regex 61378 ns/iter (± 98) 60984 ns/iter (± 139) 1.01
es2015_typeof_symbol 61694 ns/iter (± 231) 61099 ns/iter (± 118) 1.01
es/transform/baseline/base 51156 ns/iter (± 114) 50549 ns/iter (± 146) 1.01
es/transform/baseline/common_reserved_word 61806 ns/iter (± 154) 61300 ns/iter (± 122) 1.01
es/transform/baseline/common_typescript 143660 ns/iter (± 8027) 140775 ns/iter (± 365) 1.02
es/target/es3 169396 ns/iter (± 538) 167943 ns/iter (± 233) 1.01
es/target/es2015 629267 ns/iter (± 955) 630852 ns/iter (± 2500) 1.00
es/target/es2016 64204 ns/iter (± 177) 63897 ns/iter (± 200) 1.00
es/target/es2017 60911 ns/iter (± 135) 60552 ns/iter (± 81) 1.01
es/target/es2018 80993 ns/iter (± 310) 80215 ns/iter (± 107) 1.01
es/target/es2020 132001 ns/iter (± 221) 131147 ns/iter (± 229) 1.01
babelify-only 659800 ns/iter (± 1548) 673375 ns/iter (± 1206) 0.98
parse_and_babelify_angular 43855584 ns/iter (± 746964) 42107163 ns/iter (± 351321) 1.04
parse_and_babelify_backbone 5433238 ns/iter (± 73024) 5310943 ns/iter (± 19196) 1.02
parse_and_babelify_jquery 33612770 ns/iter (± 420612) 31858532 ns/iter (± 298888) 1.06
parse_and_babelify_jquery_mobile 57915026 ns/iter (± 1971139) 54823883 ns/iter (± 971743) 1.06
parse_and_babelify_mootools 35259234 ns/iter (± 629242) 32840200 ns/iter (± 282825) 1.07
parse_and_babelify_underscore 4360593 ns/iter (± 43712) 4279300 ns/iter (± 31925) 1.02
parse_and_babelify_yui 34670273 ns/iter (± 702765) 32333916 ns/iter (± 475548) 1.07
html/minify/document/css_spec 42411063 ns/iter (± 549039) 41802296 ns/iter (± 346392) 1.01
html/minify/document/github 17427703 ns/iter (± 163050) 17246167 ns/iter (± 99885) 1.01
html/minify/document/stackoverflow 15565424 ns/iter (± 40957) 15471075 ns/iter (± 45709) 1.01
html/minify/document_fragment/css_spec 40211651 ns/iter (± 602968) 39406352 ns/iter (± 149452) 1.02
html/minify/document_fragment/github 16623816 ns/iter (± 68755) 16564255 ns/iter (± 53754) 1.00
html/minify/document_fragment/stackoverflow 15024254 ns/iter (± 106062) 15147964 ns/iter (± 46139) 0.99
html/document/visitor/compare/clone 336975 ns/iter (± 2054) 340973 ns/iter (± 2591) 0.99
html/document/visitor/compare/visit_mut_span 363882 ns/iter (± 2499) 363314 ns/iter (± 2133) 1.00
html/document/visitor/compare/visit_mut_span_panic 379523 ns/iter (± 2101) 375073 ns/iter (± 1952) 1.01
html/document/visitor/compare/fold_span 407010 ns/iter (± 2656) 402141 ns/iter (± 2078) 1.01
html/document/visitor/compare/fold_span_panic 467155 ns/iter (± 2456) 458838 ns/iter (± 2238) 1.02
html/document_fragment/visitor/compare/clone 338822 ns/iter (± 1700) 338608 ns/iter (± 2601) 1.00
html/document_fragment/visitor/compare/visit_mut_span 363165 ns/iter (± 2021) 363116 ns/iter (± 1928) 1.00
html/document_fragment/visitor/compare/visit_mut_span_panic 369006 ns/iter (± 2211) 372329 ns/iter (± 1612) 0.99
html/document_fragment/visitor/compare/fold_span 400490 ns/iter (± 2198) 403842 ns/iter (± 2468) 0.99
html/document_fragment/visitor/compare/fold_span_panic 464116 ns/iter (± 1357) 461601 ns/iter (± 1570) 1.01
html/lexer/css_2021_spec 15658685 ns/iter (± 34112) 15579806 ns/iter (± 45269) 1.01
html/lexer/github_com_17_05_2022 6069639 ns/iter (± 24942) 6034506 ns/iter (± 12875) 1.01
html/lexer/stackoverflow_com_17_05_2022 5691382 ns/iter (± 9721) 5652919 ns/iter (± 8520) 1.01
html/parser/parser_document/css_2021_spec 25973672 ns/iter (± 385362) 25295451 ns/iter (± 65063) 1.03
html/parser/parser_document/github_com_17_05_2022 8742091 ns/iter (± 19242) 8737493 ns/iter (± 14010) 1.00
html/parser/parser_document/stackoverflow_com_17_05_2022 7701199 ns/iter (± 18278) 7698070 ns/iter (± 8214) 1.00
html/parser/parser_document_fragment/css_2021_spec 25942828 ns/iter (± 351304) 25355499 ns/iter (± 105616) 1.02
html/parser/parser_document_fragment/github_com_17_05_2022 8744842 ns/iter (± 19463) 8744979 ns/iter (± 43929) 1.00
html/parser/parser_document_fragment/stackoverflow_com_17_05_2022 7698011 ns/iter (± 23174) 7706177 ns/iter (± 56091) 1.00

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

Please sign in to comment.