Skip to content

Commit

Permalink
feat(es/compat): Simplify static blocks in classes (#7056)
Browse files Browse the repository at this point in the history
  • Loading branch information
magic-akari committed Mar 11, 2023
1 parent d4ebb5e commit b78ce8b
Show file tree
Hide file tree
Showing 46 changed files with 675 additions and 1,145 deletions.
3 changes: 2 additions & 1 deletion crates/swc/src/builder.rs
Expand Up @@ -221,7 +221,8 @@ impl<'a, 'b, P: swc_ecma_visit::Fold> PassBuilder<'a, 'b, P> {
private_as_properties: assumptions.private_fields_as_properties,
constant_super: assumptions.constant_super,
set_public_fields: assumptions.set_public_class_fields,
no_document_all: assumptions.no_document_all
no_document_all: assumptions.no_document_all,
static_blocks_mark: Mark::new(),
}
}
),
Expand Down
Expand Up @@ -2,10 +2,7 @@
const a = 2;
class C {
}
var __ = {
writable: true,
value: (()=>{
const a = 1;
a;
})()
};
(()=>{
const a = 1;
a;
})();
Expand Up @@ -5,10 +5,7 @@ var C = function C() {
"use strict";
_class_call_check(this, C);
};
var __ = {
writable: true,
value: function() {
var a = 1;
a;
}()
};
(function() {
var a = 1;
a;
})();
Expand Up @@ -8,24 +8,18 @@ function f() {
const b1 = 22;
class C1 {
}
var __ = {
writable: true,
value: (()=>{
var a1 = 111;
var a2 = 111;
const b1 = 222;
const b2 = 222;
})()
};
}
class C2 {
}
var __ = {
writable: true,
value: (()=>{
(()=>{
var a1 = 111;
var a2 = 111;
const b1 = 222;
const b2 = 222;
})()
};
})();
}
class C2 {
}
(()=>{
var a1 = 111;
var a2 = 111;
const b1 = 222;
const b2 = 222;
})();
Expand Up @@ -11,26 +11,20 @@ function f() {
"use strict";
_class_call_check(this, C1);
};
var __ = {
writable: true,
value: function() {
var a1 = 111;
var a2 = 111;
var b1 = 222;
var b2 = 222;
}()
};
}
var C2 = function C2() {
"use strict";
_class_call_check(this, C2);
};
var __ = {
writable: true,
value: function() {
(function() {
var a1 = 111;
var a2 = 111;
var b1 = 222;
var b2 = 222;
}()
})();
}
var C2 = function C2() {
"use strict";
_class_call_check(this, C2);
};
(function() {
var a1 = 111;
var a2 = 111;
var b1 = 222;
var b2 = 222;
})();
Expand Up @@ -13,10 +13,7 @@ class C {
_class_private_field_set(this, _x, x);
}
}
var __ = {
writable: true,
value: (()=>{
// getX has privileged access to #x
getX = (obj)=>_class_private_field_get(obj, _x);
})()
};
(()=>{
// getX has privileged access to #x
getX = (obj)=>_class_private_field_get(obj, _x);
})();
Expand Up @@ -6,9 +6,6 @@ var _x = {
writable: true,
value: 1
};
var __ = {
writable: true,
value: (()=>{
_class_static_private_field_spec_get(C, C, _x);
})()
};
(()=>{
_class_static_private_field_spec_get(C, C, _x);
})();
Expand Up @@ -9,9 +9,6 @@ var _x = {
writable: true,
value: 123
};
var __ = {
writable: true,
value: (()=>{
console.log(_class_static_private_field_spec_get(C, C, _x));
})()
};
(()=>{
console.log(_class_static_private_field_spec_get(C, C, _x));
})();
30 changes: 6 additions & 24 deletions crates/swc/tests/tsc-references/classStaticBlock14.1.normal.js
Expand Up @@ -13,27 +13,9 @@ var __5 = {
writable: true,
value: 1
};
var __ = {
writable: true,
value: (()=>{})()
};
var __2 = {
writable: true,
value: (()=>{})()
};
var __4 = {
writable: true,
value: (()=>{})()
};
var __6 = {
writable: true,
value: (()=>{})()
};
var __7 = {
writable: true,
value: (()=>{})()
};
var __8 = {
writable: true,
value: (()=>{})()
};
(()=>{})();
(()=>{})();
(()=>{})();
(()=>{})();
(()=>{})();
(()=>{})();
Expand Up @@ -14,28 +14,10 @@ var __5 = {
writable: true,
value: 5
};
var __ = {
writable: true,
value: (()=>{})()
};
var __2 = {
writable: true,
value: (()=>{})()
};
var __4 = {
writable: true,
value: (()=>{})()
};
var __6 = {
writable: true,
value: (()=>{})()
};
var __7 = {
writable: true,
value: (()=>{})()
};
var __8 = {
writable: true,
value: (()=>{})()
};
(()=>{})();
(()=>{})();
(()=>{})();
(()=>{})();
(()=>{})();
(()=>{})();
console.log(_C__1);
23 changes: 10 additions & 13 deletions crates/swc/tests/tsc-references/classStaticBlock17.1.normal.js
Expand Up @@ -16,19 +16,16 @@ class A {
_class_private_field_set(this, _x, v);
}
}
var __ = {
writable: true,
value: (()=>{
friendA = {
getX (obj) {
return _class_private_field_get(obj, _x);
},
setX (obj, value) {
_class_private_field_set(obj, _x, value);
}
};
})()
};
(()=>{
friendA = {
getX (obj) {
return _class_private_field_get(obj, _x);
},
setX (obj, value) {
_class_private_field_set(obj, _x, value);
}
};
})();
class B {
constructor(a){
const x = friendA.getX(a); // ok
Expand Down
@@ -1,18 +1,12 @@
//// [classStaticBlock18.ts]
function foo() {
var _class, __;
var _class;
return _class = class {
}, _class.foo = 1, __ = {
writable: true,
value: (()=>{
var _class, __;
const c = (_class = class {
}, _class.bar = 2, __ = {
writable: true,
value: (()=>{
// do
})()
}, _class);
})()
}, _class;
}, _class.foo = 1, (()=>{
var _class;
const c = (_class = class {
}, _class.bar = 2, (()=>{
// do
})(), _class);
})(), _class;
}
@@ -1,23 +1,17 @@
//// [classStaticBlock18.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
function foo() {
var _class, __;
var _class;
return _class = function _class() {
"use strict";
_class_call_check(this, _class);
}, _class.foo = 1, __ = {
writable: true,
value: function() {
var _class, __;
var c = (_class = function _class() {
"use strict";
_class_call_check(this, _class);
}, _class.bar = 2, __ = {
writable: true,
value: function() {
// do
}()
}, _class);
}()
}, _class;
}, _class.foo = 1, function() {
var _class;
var c = (_class = function _class() {
"use strict";
_class_call_check(this, _class);
}, _class.bar = 2, function() {
// do
}(), _class);
}(), _class;
}
Expand Up @@ -3,19 +3,13 @@ const a = 1;
const b = 2;
class C {
}
var __ = {
writable: true,
value: (()=>{
const a = 11;
a;
b;
})()
};
var __1 = {
writable: true,
value: (()=>{
const a = 11;
a;
b;
})()
};
(()=>{
const a = 11;
a;
b;
})();
(()=>{
const a = 11;
a;
b;
})();
Expand Up @@ -6,19 +6,13 @@ var C = function C() {
"use strict";
_class_call_check(this, C);
};
var __ = {
writable: true,
value: function() {
var a = 11;
a;
b;
}()
};
var __1 = {
writable: true,
value: function() {
var a = 11;
a;
b;
}()
};
(function() {
var a = 11;
a;
b;
})();
(function() {
var a = 11;
a;
b;
})();
Expand Up @@ -4,9 +4,6 @@ var C = function C() {
"use strict";
_class_call_check(this, C);
};
var __ = {
writable: true,
value: function() {
// something
}()
};
(function() {
// something
})();

1 comment on commit b78ce8b

@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: b78ce8b Previous: 9acaf4d Ratio
es/full/bugs-1 312868 ns/iter (± 14554) 301367 ns/iter (± 6325) 1.04
es/full/minify/libraries/antd 1405589213 ns/iter (± 29730539) 1417952846 ns/iter (± 13452638) 0.99
es/full/minify/libraries/d3 270593039 ns/iter (± 8644565) 273604454 ns/iter (± 9560996) 0.99
es/full/minify/libraries/echarts 1080899810 ns/iter (± 12415938) 1081375067 ns/iter (± 12931005) 1.00
es/full/minify/libraries/jquery 87977181 ns/iter (± 1624914) 87222746 ns/iter (± 705149) 1.01
es/full/minify/libraries/lodash 100686611 ns/iter (± 1189464) 101389940 ns/iter (± 1089206) 0.99
es/full/minify/libraries/moment 50960079 ns/iter (± 291702) 50199628 ns/iter (± 978673) 1.02
es/full/minify/libraries/react 18723947 ns/iter (± 190141) 18652233 ns/iter (± 213805) 1.00
es/full/minify/libraries/terser 228690236 ns/iter (± 2859451) 225497976 ns/iter (± 2074349) 1.01
es/full/minify/libraries/three 394366431 ns/iter (± 5461439) 400549314 ns/iter (± 4926353) 0.98
es/full/minify/libraries/typescript 2765350820 ns/iter (± 33556098) 2742541791 ns/iter (± 22419289) 1.01
es/full/minify/libraries/victory 586561641 ns/iter (± 16765572) 601489481 ns/iter (± 11747073) 0.98
es/full/minify/libraries/vue 122129448 ns/iter (± 1658394) 123509711 ns/iter (± 1467653) 0.99
es/full/codegen/es3 25169 ns/iter (± 326) 24974 ns/iter (± 270) 1.01
es/full/codegen/es5 25275 ns/iter (± 204) 25254 ns/iter (± 128) 1.00
es/full/codegen/es2015 25032 ns/iter (± 236) 24984 ns/iter (± 127) 1.00
es/full/codegen/es2016 24969 ns/iter (± 113) 25012 ns/iter (± 343) 1.00
es/full/codegen/es2017 24878 ns/iter (± 139) 24948 ns/iter (± 212) 1.00
es/full/codegen/es2018 24815 ns/iter (± 168) 25228 ns/iter (± 271) 0.98
es/full/codegen/es2019 24904 ns/iter (± 172) 24998 ns/iter (± 279) 1.00
es/full/codegen/es2020 24927 ns/iter (± 145) 25013 ns/iter (± 139) 1.00
es/full/all/es3 172912571 ns/iter (± 2100546) 174163269 ns/iter (± 1642382) 0.99
es/full/all/es5 166739900 ns/iter (± 2631983) 165223621 ns/iter (± 4052543) 1.01
es/full/all/es2015 128445005 ns/iter (± 990893) 124877076 ns/iter (± 1021768) 1.03
es/full/all/es2016 126439890 ns/iter (± 1574114) 122457751 ns/iter (± 601841) 1.03
es/full/all/es2017 123153525 ns/iter (± 683648) 122302936 ns/iter (± 1987921) 1.01
es/full/all/es2018 122089021 ns/iter (± 1889336) 120104344 ns/iter (± 1130604) 1.02
es/full/all/es2019 120363814 ns/iter (± 1426070) 119913266 ns/iter (± 1187137) 1.00
es/full/all/es2020 115309297 ns/iter (± 1242623) 114199131 ns/iter (± 924405) 1.01
es/full/parser 530210 ns/iter (± 9379) 528093 ns/iter (± 6464) 1.00
es/full/base/fixer 23680 ns/iter (± 360) 22408 ns/iter (± 174) 1.06
es/full/base/resolver_and_hygiene 80595 ns/iter (± 573) 79788 ns/iter (± 405) 1.01
serialization of ast node 141 ns/iter (± 1) 139 ns/iter (± 2) 1.01
serialization of serde 126 ns/iter (± 2) 125 ns/iter (± 0) 1.01
css/minify/libraries/bootstrap 27652899 ns/iter (± 160570) 27255877 ns/iter (± 285301) 1.01
css/visitor/compare/clone 2072334 ns/iter (± 17893) 2016706 ns/iter (± 26704) 1.03
css/visitor/compare/visit_mut_span 2237810 ns/iter (± 10863) 2224618 ns/iter (± 22485) 1.01
css/visitor/compare/visit_mut_span_panic 2294113 ns/iter (± 19782) 2223312 ns/iter (± 14578) 1.03
css/visitor/compare/fold_span 3013307 ns/iter (± 22493) 2953695 ns/iter (± 39354) 1.02
css/visitor/compare/fold_span_panic 3169327 ns/iter (± 50512) 3044004 ns/iter (± 19782) 1.04
css/lexer/bootstrap_5_1_3 5195413 ns/iter (± 30695) 4999105 ns/iter (± 24728) 1.04
css/lexer/foundation_6_7_4 4369140 ns/iter (± 14858) 4260481 ns/iter (± 59072) 1.03
css/lexer/tailwind_3_1_1 825675 ns/iter (± 2698) 811837 ns/iter (± 10948) 1.02
css/parser/bootstrap_5_1_3 21811962 ns/iter (± 91010) 21442384 ns/iter (± 172885) 1.02
css/parser/foundation_6_7_4 17404453 ns/iter (± 136791) 17092062 ns/iter (± 117766) 1.02
css/parser/tailwind_3_1_1 3353138 ns/iter (± 10881) 3192360 ns/iter (± 15653) 1.05
es/codegen/colors 322739 ns/iter (± 183400) 327017 ns/iter (± 185353) 0.99
es/codegen/large 1185517 ns/iter (± 617822) 1276127 ns/iter (± 676792) 0.93
es/codegen/with-parser/colors 48132 ns/iter (± 419) 46456 ns/iter (± 536) 1.04
es/codegen/with-parser/large 519410 ns/iter (± 2540) 505339 ns/iter (± 4366) 1.03
es/minify/libraries/antd 1338301744 ns/iter (± 23272881) 1224134434 ns/iter (± 13336522) 1.09
es/minify/libraries/d3 248292464 ns/iter (± 1040478) 232859070 ns/iter (± 3518336) 1.07
es/minify/libraries/echarts 1027718626 ns/iter (± 16431110) 926207602 ns/iter (± 7513931) 1.11
es/minify/libraries/jquery 78438058 ns/iter (± 1282512) 74829617 ns/iter (± 651153) 1.05
es/minify/libraries/lodash 96922390 ns/iter (± 1352803) 91221305 ns/iter (± 564388) 1.06
es/minify/libraries/moment 46421470 ns/iter (± 378412) 43878833 ns/iter (± 394786) 1.06
es/minify/libraries/react 17274174 ns/iter (± 165697) 16694544 ns/iter (± 141523) 1.03
es/minify/libraries/terser 217951545 ns/iter (± 2409150) 194528535 ns/iter (± 2744281) 1.12
es/minify/libraries/three 360801061 ns/iter (± 12936455) 325085512 ns/iter (± 4959498) 1.11
es/minify/libraries/typescript 2468485089 ns/iter (± 22515694) 2367508654 ns/iter (± 30896938) 1.04
es/minify/libraries/victory 531700256 ns/iter (± 9491421) 485473835 ns/iter (± 5499799) 1.10
es/minify/libraries/vue 115261707 ns/iter (± 1127110) 109038813 ns/iter (± 812813) 1.06
es/visitor/compare/clone 2304934 ns/iter (± 15373) 2223723 ns/iter (± 14836) 1.04
es/visitor/compare/visit_mut_span 2649633 ns/iter (± 7868) 2555533 ns/iter (± 15541) 1.04
es/visitor/compare/visit_mut_span_panic 2690246 ns/iter (± 17097) 2616636 ns/iter (± 25315) 1.03
es/visitor/compare/fold_span 3725536 ns/iter (± 21435) 3611017 ns/iter (± 40516) 1.03
es/visitor/compare/fold_span_panic 3890758 ns/iter (± 23423) 3771393 ns/iter (± 33690) 1.03
es/lexer/colors 16231 ns/iter (± 47) 15788 ns/iter (± 59) 1.03
es/lexer/angular 7982685 ns/iter (± 37130) 7787381 ns/iter (± 64633) 1.03
es/lexer/backbone 993996 ns/iter (± 4481) 965942 ns/iter (± 7169) 1.03
es/lexer/jquery 5590070 ns/iter (± 28035) 5433865 ns/iter (± 44615) 1.03
es/lexer/jquery mobile 8621462 ns/iter (± 75382) 8543760 ns/iter (± 118187) 1.01
es/lexer/mootools 4391850 ns/iter (± 36600) 4294149 ns/iter (± 24982) 1.02
es/lexer/underscore 838892 ns/iter (± 3811) 809895 ns/iter (± 3880) 1.04
es/lexer/three 26202931 ns/iter (± 68285) 25737376 ns/iter (± 186355) 1.02
es/lexer/yui 4887950 ns/iter (± 10044) 4722543 ns/iter (± 39012) 1.04
es/parser/colors 31333 ns/iter (± 61) 29784 ns/iter (± 262) 1.05
es/parser/angular 16605556 ns/iter (± 165534) 15321798 ns/iter (± 279713) 1.08
es/parser/backbone 2309470 ns/iter (± 9640) 2189428 ns/iter (± 20093) 1.05
es/parser/jquery 12886272 ns/iter (± 191663) 11743828 ns/iter (± 120732) 1.10
es/parser/jquery mobile 20662868 ns/iter (± 217349) 18046046 ns/iter (± 154509) 1.15
es/parser/mootools 9637259 ns/iter (± 38878) 8994906 ns/iter (± 77235) 1.07
es/parser/underscore 1956640 ns/iter (± 9874) 1833702 ns/iter (± 17649) 1.07
es/parser/three 58731076 ns/iter (± 177534) 50328023 ns/iter (± 377612) 1.17
es/parser/yui 9850546 ns/iter (± 61046) 9168534 ns/iter (± 76691) 1.07
es/preset-env/usage/builtin_type 139779 ns/iter (± 33444) 141475 ns/iter (± 34422) 0.99
es/preset-env/usage/property 20939 ns/iter (± 59) 20300 ns/iter (± 213) 1.03
es/resolver/typescript 106141997 ns/iter (± 1280872) 100249800 ns/iter (± 5128603) 1.06
es/fixer/typescript 78287232 ns/iter (± 634623) 71617682 ns/iter (± 471655) 1.09
es/hygiene/typescript 167004208 ns/iter (± 1898242) 151253049 ns/iter (± 1645833) 1.10
es/resolver_with_hygiene/typescript 300594934 ns/iter (± 930623) 282171658 ns/iter (± 2841113) 1.07
es/visitor/base-perf/module_clone 77383 ns/iter (± 1526) 73726 ns/iter (± 1524) 1.05
es/visitor/base-perf/fold_empty 85987 ns/iter (± 1304) 83952 ns/iter (± 1707) 1.02
es/visitor/base-perf/fold_noop_impl_all 86383 ns/iter (± 1167) 84360 ns/iter (± 1179) 1.02
es/visitor/base-perf/fold_noop_impl_vec 87087 ns/iter (± 1448) 88044 ns/iter (± 2378) 0.99
es/visitor/base-perf/boxing_boxed_clone 56 ns/iter (± 0) 56 ns/iter (± 0) 1
es/visitor/base-perf/boxing_unboxed_clone 54 ns/iter (± 0) 52 ns/iter (± 0) 1.04
es/visitor/base-perf/boxing_boxed 103 ns/iter (± 1) 97 ns/iter (± 0) 1.06
es/visitor/base-perf/boxing_unboxed 96 ns/iter (± 0) 96 ns/iter (± 0) 1
es/visitor/base-perf/visit_contains_this 3240 ns/iter (± 63) 3719 ns/iter (± 50) 0.87
es/base/parallel/resolver/typescript 5631929741 ns/iter (± 440825274) 5485864219 ns/iter (± 364004518) 1.03
es/base/parallel/hygiene/typescript 1940438025 ns/iter (± 24249825) 1972589803 ns/iter (± 42399530) 0.98
misc/visitors/time-complexity/time 5 101 ns/iter (± 0) 107 ns/iter (± 0) 0.94
misc/visitors/time-complexity/time 10 345 ns/iter (± 3) 332 ns/iter (± 1) 1.04
misc/visitors/time-complexity/time 15 675 ns/iter (± 5) 681 ns/iter (± 2) 0.99
misc/visitors/time-complexity/time 20 1277 ns/iter (± 31) 1296 ns/iter (± 3) 0.99
misc/visitors/time-complexity/time 40 6712 ns/iter (± 22) 6773 ns/iter (± 28) 0.99
misc/visitors/time-complexity/time 60 17159 ns/iter (± 67) 17415 ns/iter (± 71) 0.99
es/full-target/es2016 187720 ns/iter (± 548) 188415 ns/iter (± 367) 1.00
es/full-target/es2017 182146 ns/iter (± 979) 181150 ns/iter (± 2503) 1.01
es/full-target/es2018 170000 ns/iter (± 553) 172143 ns/iter (± 491) 0.99
es2020_nullish_coalescing 66301 ns/iter (± 251) 66301 ns/iter (± 152) 1
es2020_optional_chaining 95234 ns/iter (± 424) 95319 ns/iter (± 451) 1.00
es2022_class_properties 92809 ns/iter (± 453) 93300 ns/iter (± 268) 0.99
es2018_object_rest_spread 70918 ns/iter (± 485) 70835 ns/iter (± 362) 1.00
es2019_optional_catch_binding 60887 ns/iter (± 196) 60447 ns/iter (± 204) 1.01
es2017_async_to_generator 60012 ns/iter (± 439) 61822 ns/iter (± 72) 0.97
es2016_exponentiation 62849 ns/iter (± 248) 65404 ns/iter (± 424) 0.96
es2015_arrow 67613 ns/iter (± 529) 69151 ns/iter (± 173) 0.98
es2015_block_scoped_fn 66065 ns/iter (± 457) 66176 ns/iter (± 179) 1.00
es2015_block_scoping 148741 ns/iter (± 11109) 138229 ns/iter (± 268) 1.08
es2015_classes 116273 ns/iter (± 1530) 116274 ns/iter (± 311) 1.00
es2015_computed_props 59999 ns/iter (± 728) 61216 ns/iter (± 72) 0.98
es2015_destructuring 115502 ns/iter (± 282) 116482 ns/iter (± 182) 0.99
es2015_duplicate_keys 61818 ns/iter (± 542) 63486 ns/iter (± 152) 0.97
es2015_parameters 76791 ns/iter (± 466) 79224 ns/iter (± 281) 0.97
es2015_fn_name 63779 ns/iter (± 557) 65449 ns/iter (± 336) 0.97
es2015_for_of 62822 ns/iter (± 264) 64079 ns/iter (± 93) 0.98
es2015_instanceof 61705 ns/iter (± 431) 63118 ns/iter (± 132) 0.98
es2015_shorthand_property 59886 ns/iter (± 708) 60806 ns/iter (± 152) 0.98
es2015_spread 59856 ns/iter (± 599) 60693 ns/iter (± 111) 0.99
es2015_sticky_regex 60297 ns/iter (± 340) 61842 ns/iter (± 217) 0.98
es2015_typeof_symbol 61600 ns/iter (± 595) 60956 ns/iter (± 338) 1.01
es/transform/baseline/base 51591 ns/iter (± 264) 50773 ns/iter (± 293) 1.02
es/transform/baseline/common_reserved_word 62525 ns/iter (± 261) 62906 ns/iter (± 198) 0.99
es/transform/baseline/common_typescript 142303 ns/iter (± 3008) 142690 ns/iter (± 2488) 1.00
es/target/es3 165846 ns/iter (± 1887) 167867 ns/iter (± 754) 0.99
es/target/es2015 605377 ns/iter (± 4145) 619342 ns/iter (± 3407) 0.98
es/target/es2016 62857 ns/iter (± 344) 65308 ns/iter (± 127) 0.96
es/target/es2017 59618 ns/iter (± 890) 61953 ns/iter (± 66) 0.96
es/target/es2018 78711 ns/iter (± 442) 81798 ns/iter (± 919) 0.96
es/target/es2020 127752 ns/iter (± 1030) 130256 ns/iter (± 890) 0.98
babelify-only 664905 ns/iter (± 1584) 650466 ns/iter (± 12889) 1.02
parse_and_babelify_angular 41243682 ns/iter (± 1608138) 41817010 ns/iter (± 1581043) 0.99
parse_and_babelify_backbone 5305543 ns/iter (± 122880) 5332076 ns/iter (± 53093) 1.00
parse_and_babelify_jquery 31099104 ns/iter (± 730857) 31303682 ns/iter (± 354183) 0.99
parse_and_babelify_jquery_mobile 50996262 ns/iter (± 382362) 53042773 ns/iter (± 752440) 0.96
parse_and_babelify_mootools 31016279 ns/iter (± 910366) 31747427 ns/iter (± 271739) 0.98
parse_and_babelify_underscore 4283232 ns/iter (± 62556) 4363871 ns/iter (± 32324) 0.98
parse_and_babelify_yui 30807919 ns/iter (± 1735454) 31485599 ns/iter (± 554911) 0.98
html/minify/document/css_spec 42148577 ns/iter (± 665417) 41929630 ns/iter (± 354159) 1.01
html/minify/document/github 16974422 ns/iter (± 100691) 17520103 ns/iter (± 39839) 0.97
html/minify/document/stackoverflow 15231074 ns/iter (± 94453) 15681224 ns/iter (± 88847) 0.97
html/minify/document_fragment/css_spec 38344019 ns/iter (± 289884) 39673283 ns/iter (± 179708) 0.97
html/minify/document_fragment/github 16379788 ns/iter (± 111365) 16736227 ns/iter (± 74342) 0.98
html/minify/document_fragment/stackoverflow 14885139 ns/iter (± 156348) 15139975 ns/iter (± 52213) 0.98
html/document/visitor/compare/clone 336987 ns/iter (± 2276) 340718 ns/iter (± 2130) 0.99
html/document/visitor/compare/visit_mut_span 361335 ns/iter (± 1395) 367639 ns/iter (± 4227) 0.98
html/document/visitor/compare/visit_mut_span_panic 371512 ns/iter (± 2877) 372619 ns/iter (± 3042) 1.00
html/document/visitor/compare/fold_span 395450 ns/iter (± 2605) 404413 ns/iter (± 2955) 0.98
html/document/visitor/compare/fold_span_panic 449823 ns/iter (± 2941) 453611 ns/iter (± 3445) 0.99
html/document_fragment/visitor/compare/clone 338711 ns/iter (± 3710) 336599 ns/iter (± 3313) 1.01
html/document_fragment/visitor/compare/visit_mut_span 362375 ns/iter (± 3802) 364398 ns/iter (± 3394) 0.99
html/document_fragment/visitor/compare/visit_mut_span_panic 373413 ns/iter (± 2127) 370244 ns/iter (± 2674) 1.01
html/document_fragment/visitor/compare/fold_span 405272 ns/iter (± 6302) 402859 ns/iter (± 1865) 1.01
html/document_fragment/visitor/compare/fold_span_panic 454478 ns/iter (± 4160) 457734 ns/iter (± 1998) 0.99
html/lexer/css_2021_spec 15344355 ns/iter (± 128651) 15279466 ns/iter (± 121738) 1.00
html/lexer/github_com_17_05_2022 5976898 ns/iter (± 33688) 5913103 ns/iter (± 31034) 1.01
html/lexer/stackoverflow_com_17_05_2022 5604264 ns/iter (± 43835) 5504594 ns/iter (± 31886) 1.02
html/parser/parser_document/css_2021_spec 25786242 ns/iter (± 190301) 25350230 ns/iter (± 507821) 1.02
html/parser/parser_document/github_com_17_05_2022 8623327 ns/iter (± 99907) 8799210 ns/iter (± 84348) 0.98
html/parser/parser_document/stackoverflow_com_17_05_2022 7466036 ns/iter (± 15933) 7550565 ns/iter (± 86768) 0.99
html/parser/parser_document_fragment/css_2021_spec 24713321 ns/iter (± 141759) 24762155 ns/iter (± 208879) 1.00
html/parser/parser_document_fragment/github_com_17_05_2022 8550405 ns/iter (± 41409) 8613760 ns/iter (± 93558) 0.99
html/parser/parser_document_fragment/stackoverflow_com_17_05_2022 7505251 ns/iter (± 35049) 7557910 ns/iter (± 74741) 0.99

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

Please sign in to comment.