Skip to content

Commit

Permalink
feat(es/typescript): Support export type * from "mod" (#6867)
Browse files Browse the repository at this point in the history
  • Loading branch information
magic-akari authored Feb 28, 2023
1 parent dc925f9 commit beb38d3
Show file tree
Hide file tree
Showing 53 changed files with 4,242 additions and 35 deletions.
11 changes: 11 additions & 0 deletions crates/swc/tests/tsc-references/exportNamespace10.1.normal.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
//// [/a.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
export var A = function A() {
"use strict";
_class_call_check(this, A);
};
//// [/b.ts]
export { };
//// [/c.ts]
import { ns } from "./b";
var _ = new ns.A(); // Error
11 changes: 11 additions & 0 deletions crates/swc/tests/tsc-references/exportNamespace10.2.minified.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
//// [/a.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
export var A = function A() {
"use strict";
_class_call_check(this, A);
};
//// [/b.ts]
export { };
//// [/c.ts]
import { ns } from "./b";
new ns.A();
14 changes: 14 additions & 0 deletions crates/swc/tests/tsc-references/exportNamespace2.1.normal.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
//// [a.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
export var A = function A() {
"use strict";
_class_call_check(this, A);
};
//// [b.ts]
import * as _a from "./a";
export { _a as a };
//// [c.ts]
export { };
//// [d.ts]
import { a } from "./c";
new a.A(); // Error
14 changes: 14 additions & 0 deletions crates/swc/tests/tsc-references/exportNamespace2.2.minified.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
//// [a.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
export var A = function A() {
"use strict";
_class_call_check(this, A);
};
//// [b.ts]
import * as _a from "./a";
export { _a as a };
//// [c.ts]
export { };
//// [d.ts]
import { a } from "./c";
new a.A();
17 changes: 17 additions & 0 deletions crates/swc/tests/tsc-references/exportNamespace4.1.normal.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
//// [exportNamespace4.ts]
//// [a.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
export var A = function A() {
"use strict";
_class_call_check(this, A);
};
//// [b.ts]
export { };
//// [c.ts]
export { };
//// [d.ts]
import { A } from "./b";
A;
//// [e.ts]
import { ns } from "./c";
ns.A;
16 changes: 16 additions & 0 deletions crates/swc/tests/tsc-references/exportNamespace4.2.minified.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
//// [exportNamespace4.ts]
//// [a.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
export var A = function A() {
"use strict";
_class_call_check(this, A);
};
//// [b.ts]
export { };
//// [c.ts]
export { };
//// [d.ts]
import { A } from "./b";
//// [e.ts]
import { ns } from "./c";
ns.A;
29 changes: 29 additions & 0 deletions crates/swc/tests/tsc-references/exportNamespace5.1.normal.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
//// [exportNamespace5.ts]
//// [/a.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
export var A = function A() {
"use strict";
_class_call_check(this, A);
};
export var B = function B() {
"use strict";
_class_call_check(this, B);
};
export var X = function X() {
"use strict";
_class_call_check(this, X);
};
//// [/b.ts]
export { X } from "./a";
//// [/c.ts]
import { A, B as C, X } from "./b";
var _ = new A(); // Error
var __ = new C(); // Error
var ___ = new X(); // Ok
//// [/d.ts]
export * from "./a";
//// [/e.ts]
import { A, B, X } from "./d";
var _ = new A(); // Ok
var __ = new B(); // Ok
var ___ = new X(); // Ok
25 changes: 25 additions & 0 deletions crates/swc/tests/tsc-references/exportNamespace5.2.minified.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
//// [exportNamespace5.ts]
//// [/a.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
export var A = function A() {
"use strict";
_class_call_check(this, A);
};
export var B = function B() {
"use strict";
_class_call_check(this, B);
};
export var X = function X() {
"use strict";
_class_call_check(this, X);
};
//// [/b.ts]
export { X } from "./a";
//// [/c.ts]
import { A, B as C, X } from "./b";
new A(), new C(), new X();
//// [/d.ts]
export * from "./a";
//// [/e.ts]
import { A, B, X } from "./d";
new A(), new B(), new X();
18 changes: 18 additions & 0 deletions crates/swc/tests/tsc-references/exportNamespace6.1.normal.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
//// [/a.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
export var A = function A() {
"use strict";
_class_call_check(this, A);
};
export var B = function B() {
"use strict";
_class_call_check(this, B);
};
//// [/b.ts]
export { };
//// [/c.ts]
export * from "./b";
//// [/d.ts]
import { A, B } from "./c";
var _ = new A(); // Error
var __ = new B(); // Error
17 changes: 17 additions & 0 deletions crates/swc/tests/tsc-references/exportNamespace6.2.minified.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
//// [/a.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
export var A = function A() {
"use strict";
_class_call_check(this, A);
};
export var B = function B() {
"use strict";
_class_call_check(this, B);
};
//// [/b.ts]
export { };
//// [/c.ts]
export * from "./b";
//// [/d.ts]
import { A, B } from "./c";
new A(), new B();
32 changes: 32 additions & 0 deletions crates/swc/tests/tsc-references/exportNamespace7.1.normal.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
//// [/a.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
export var A = function A() {
"use strict";
_class_call_check(this, A);
};
export var B = function B() {
"use strict";
_class_call_check(this, B);
};
export var C = function C() {
"use strict";
_class_call_check(this, C);
};
//// [/b.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
export var C = function C() {
"use strict";
_class_call_check(this, C);
};
//// [/c.ts]
import { A, B, C } from "./b";
var _ = new A(); // Error
var __ = new B(); // Error
var ___ = new C(); // Ok
//// [/d.ts]
export { };
//// [/e.ts]
import { A, B, C } from "./d";
var _ = new A(); // Error
var __ = new B(); // Error
var ___ = new C(); // Error
28 changes: 28 additions & 0 deletions crates/swc/tests/tsc-references/exportNamespace7.2.minified.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
//// [/a.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
export var A = function A() {
"use strict";
_class_call_check(this, A);
};
export var B = function B() {
"use strict";
_class_call_check(this, B);
};
export var C = function C() {
"use strict";
_class_call_check(this, C);
};
//// [/b.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
export var C = function C() {
"use strict";
_class_call_check(this, C);
};
//// [/c.ts]
import { A, B, C } from "./b";
new A(), new B(), new C();
//// [/d.ts]
export { };
//// [/e.ts]
import { A, B, C } from "./d";
new A(), new B(), new C();
27 changes: 27 additions & 0 deletions crates/swc/tests/tsc-references/exportNamespace8.1.normal.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
//// [/a.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
export var A = function A() {
"use strict";
_class_call_check(this, A);
};
export var B = function B() {
"use strict";
_class_call_check(this, B);
};
//// [/b.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
export var B = function B() {
"use strict";
_class_call_check(this, B);
};
export var C = function C() {
"use strict";
_class_call_check(this, C);
};
//// [/c.ts]
export * from "./b"; // Collision error
//// [/d.ts]
import { A, B, C } from "./c";
var _ = new A(); // Error
var __ = new B(); // Ok
var ___ = new C(); // Ok
25 changes: 25 additions & 0 deletions crates/swc/tests/tsc-references/exportNamespace8.2.minified.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
//// [/a.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
export var A = function A() {
"use strict";
_class_call_check(this, A);
};
export var B = function B() {
"use strict";
_class_call_check(this, B);
};
//// [/b.ts]
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
export var B = function B() {
"use strict";
_class_call_check(this, B);
};
export var C = function C() {
"use strict";
_class_call_check(this, C);
};
//// [/c.ts]
export * from "./b";
//// [/d.ts]
import { A, B, C } from "./c";
new A(), new B(), new C();
29 changes: 29 additions & 0 deletions crates/swc/tests/tsc-references/exportNamespace9.1.normal.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
//// [/a.ts]
export { };
//// [/b.ts]
export { };
//// [/c.ts]
//!
//! x the name `A` is defined multiple times
//! ,-[1:1]
//! 1 | import { A } from "./b";
//! : |
//! : `-- previous definition of `A` here
//! 2 | const A = 1;
//! : |
//! : `-- `A` redefined here
//! 3 | export { A };
//! 4 |
//! `----
//// [/d.ts]
import { A } from "./c";
A; // Ok
//// [/e.ts]
export var A = 1;
//// [/f.ts]
export * from "./e";
// Collision error
//// [/g.ts]
import { A } from "./f";
A;
// Follow-on from collision error
25 changes: 25 additions & 0 deletions crates/swc/tests/tsc-references/exportNamespace9.2.minified.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
//// [/a.ts]
export { };
//// [/b.ts]
export { };
//// [/c.ts]
//!
//! x the name `A` is defined multiple times
//! ,-[1:1]
//! 1 | import { A } from "./b";
//! : |
//! : `-- previous definition of `A` here
//! 2 | const A = 1;
//! : |
//! : `-- `A` redefined here
//! 3 | export { A };
//! 4 |
//! `----
//// [/d.ts]
import { A } from "./c";
//// [/e.ts]
export var A = 1;
//// [/f.ts]
export * from "./e";
//// [/g.ts]
import { A } from "./f";
Original file line number Diff line number Diff line change
@@ -1,16 +1,5 @@
//// [namedTupleMembersErrors.ts]
//!
//! x Only named exports may use 'export type'.
//! ,-[12:1]
//! 12 |
//! 13 | export type Trailing = [first: string, rest: ...string[]]; // dots on element disallowed
//! 14 |
//! 15 | export type OptTrailing = [first: string, rest: ...string[]?]; // dots+question on element disallowed
//! : ^^^^^^^^^^^
//! 16 |
//! 17 | export type OptRest = [first: string, ...rest?: string[]]; // rest+optional disallowed
//! `----
//!
//! x Expected '{', got 'OptTrailing'
//! ,-[12:1]
//! 12 |
Expand Down
Original file line number Diff line number Diff line change
@@ -1,16 +1,5 @@
//// [namedTupleMembersErrors.ts]
//!
//! x Only named exports may use 'export type'.
//! ,-[12:1]
//! 12 |
//! 13 | export type Trailing = [first: string, rest: ...string[]]; // dots on element disallowed
//! 14 |
//! 15 | export type OptTrailing = [first: string, rest: ...string[]?]; // dots+question on element disallowed
//! : ^^^^^^^^^^^
//! 16 |
//! 17 | export type OptRest = [first: string, ...rest?: string[]]; // rest+optional disallowed
//! `----
//!
//! x Expected '{', got 'OptTrailing'
//! ,-[12:1]
//! 12 |
Expand Down
Loading

1 comment on commit beb38d3

@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: beb38d3 Previous: 3e3e41a Ratio
es/full/bugs-1 314084 ns/iter (± 9391) 308457 ns/iter (± 7605) 1.02
es/full/minify/libraries/antd 1588457144 ns/iter (± 21539028) 1563191241 ns/iter (± 17285997) 1.02
es/full/minify/libraries/d3 304951469 ns/iter (± 6789030) 296998465 ns/iter (± 8106582) 1.03
es/full/minify/libraries/echarts 1249434770 ns/iter (± 15854145) 1212323865 ns/iter (± 10201253) 1.03
es/full/minify/libraries/jquery 91352932 ns/iter (± 1025610) 90093206 ns/iter (± 440508) 1.01
es/full/minify/libraries/lodash 106184096 ns/iter (± 1172911) 105198033 ns/iter (± 1352326) 1.01
es/full/minify/libraries/moment 53513388 ns/iter (± 550503) 52820103 ns/iter (± 131111) 1.01
es/full/minify/libraries/react 19498362 ns/iter (± 356753) 19110778 ns/iter (± 96622) 1.02
es/full/minify/libraries/terser 256693751 ns/iter (± 12710512) 246469713 ns/iter (± 3257394) 1.04
es/full/minify/libraries/three 438910030 ns/iter (± 5481993) 445949241 ns/iter (± 4934354) 0.98
es/full/minify/libraries/typescript 3040808217 ns/iter (± 20358157) 3005344392 ns/iter (± 10994934) 1.01
es/full/minify/libraries/victory 672819694 ns/iter (± 13986243) 652754779 ns/iter (± 11051540) 1.03
es/full/minify/libraries/vue 132506249 ns/iter (± 3141925) 130974177 ns/iter (± 393300) 1.01
es/full/codegen/es3 25365 ns/iter (± 55) 25886 ns/iter (± 70) 0.98
es/full/codegen/es5 25410 ns/iter (± 58) 25906 ns/iter (± 63) 0.98
es/full/codegen/es2015 25346 ns/iter (± 52) 25768 ns/iter (± 89) 0.98
es/full/codegen/es2016 25385 ns/iter (± 45) 25852 ns/iter (± 120) 0.98
es/full/codegen/es2017 25348 ns/iter (± 54) 25832 ns/iter (± 90) 0.98
es/full/codegen/es2018 25384 ns/iter (± 49) 25662 ns/iter (± 86) 0.99
es/full/codegen/es2019 25378 ns/iter (± 36) 25862 ns/iter (± 43) 0.98
es/full/codegen/es2020 25417 ns/iter (± 55) 25856 ns/iter (± 52) 0.98
es/full/all/es3 173846974 ns/iter (± 3554449) 173782761 ns/iter (± 3567858) 1.00
es/full/all/es5 164870760 ns/iter (± 2582500) 163995800 ns/iter (± 2252010) 1.01
es/full/all/es2015 129311174 ns/iter (± 2844586) 125276563 ns/iter (± 1439213) 1.03
es/full/all/es2016 126244696 ns/iter (± 2125266) 122817028 ns/iter (± 1143996) 1.03
es/full/all/es2017 126540641 ns/iter (± 2467473) 122665368 ns/iter (± 945920) 1.03
es/full/all/es2018 122180523 ns/iter (± 3325601) 120447503 ns/iter (± 1048160) 1.01
es/full/all/es2019 119937591 ns/iter (± 1457011) 120131880 ns/iter (± 1068448) 1.00
es/full/all/es2020 117526676 ns/iter (± 1704381) 115071195 ns/iter (± 825446) 1.02
es/full/parser 544136 ns/iter (± 6640) 539962 ns/iter (± 8384) 1.01
es/full/base/fixer 22031 ns/iter (± 28) 21960 ns/iter (± 66) 1.00
es/full/base/resolver_and_hygiene 81407 ns/iter (± 90) 81352 ns/iter (± 257) 1.00
serialization of ast node 123 ns/iter (± 0) 123 ns/iter (± 0) 1
serialization of serde 126 ns/iter (± 0) 126 ns/iter (± 0) 1
css/minify/libraries/bootstrap 27790679 ns/iter (± 84717) 27886502 ns/iter (± 42281) 1.00
css/visitor/compare/clone 2096578 ns/iter (± 12477) 2069243 ns/iter (± 11060) 1.01
css/visitor/compare/visit_mut_span 2292653 ns/iter (± 8803) 2253175 ns/iter (± 3596) 1.02
css/visitor/compare/visit_mut_span_panic 2338876 ns/iter (± 6206) 2329200 ns/iter (± 7190) 1.00
css/visitor/compare/fold_span 3059032 ns/iter (± 19238) 3033944 ns/iter (± 17919) 1.01
css/visitor/compare/fold_span_panic 3193631 ns/iter (± 20055) 3194074 ns/iter (± 20929) 1.00
css/lexer/bootstrap_5_1_3 5159742 ns/iter (± 3294) 5173582 ns/iter (± 1764) 1.00
css/lexer/foundation_6_7_4 4338508 ns/iter (± 798) 4342914 ns/iter (± 1035) 1.00
css/lexer/tailwind_3_1_1 826838 ns/iter (± 252) 827964 ns/iter (± 495) 1.00
css/parser/bootstrap_5_1_3 21659134 ns/iter (± 68147) 21649665 ns/iter (± 98419) 1.00
css/parser/foundation_6_7_4 17260272 ns/iter (± 37007) 17369587 ns/iter (± 62936) 0.99
css/parser/tailwind_3_1_1 3323632 ns/iter (± 5211) 3316083 ns/iter (± 1716) 1.00
es/codegen/colors 327955 ns/iter (± 184985) 318156 ns/iter (± 179315) 1.03
es/codegen/large 1221242 ns/iter (± 635916) 1254547 ns/iter (± 631870) 0.97
es/codegen/with-parser/colors 48429 ns/iter (± 330) 48809 ns/iter (± 412) 0.99
es/codegen/with-parser/large 532161 ns/iter (± 1630) 538380 ns/iter (± 1592) 0.99
es/minify/libraries/antd 1400320035 ns/iter (± 12773181) 1400545185 ns/iter (± 11349200) 1.00
es/minify/libraries/d3 250804246 ns/iter (± 1507459) 255652910 ns/iter (± 7547820) 0.98
es/minify/libraries/echarts 1054509302 ns/iter (± 18728839) 1078598259 ns/iter (± 13397790) 0.98
es/minify/libraries/jquery 79236384 ns/iter (± 1112750) 78728356 ns/iter (± 533139) 1.01
es/minify/libraries/lodash 95918717 ns/iter (± 1879574) 96239265 ns/iter (± 740931) 1.00
es/minify/libraries/moment 46042413 ns/iter (± 389399) 46345454 ns/iter (± 290336) 0.99
es/minify/libraries/react 17146605 ns/iter (± 228036) 17202138 ns/iter (± 201794) 1.00
es/minify/libraries/terser 210903208 ns/iter (± 2435694) 214766606 ns/iter (± 2437386) 0.98
es/minify/libraries/three 369804391 ns/iter (± 5445774) 366772677 ns/iter (± 3411338) 1.01
es/minify/libraries/typescript 2565010695 ns/iter (± 23049446) 2571248706 ns/iter (± 8751988) 1.00
es/minify/libraries/victory 556030615 ns/iter (± 12596497) 569461015 ns/iter (± 7026615) 0.98
es/minify/libraries/vue 117076774 ns/iter (± 2356848) 117061504 ns/iter (± 780898) 1.00
es/visitor/compare/clone 2384610 ns/iter (± 15165) 2398149 ns/iter (± 49860) 0.99
es/visitor/compare/visit_mut_span 2796049 ns/iter (± 3703) 2795414 ns/iter (± 6749) 1.00
es/visitor/compare/visit_mut_span_panic 2826372 ns/iter (± 7147) 2862743 ns/iter (± 8271) 0.99
es/visitor/compare/fold_span 3916611 ns/iter (± 9677) 3942414 ns/iter (± 117598) 0.99
es/visitor/compare/fold_span_panic 4090962 ns/iter (± 19099) 4102684 ns/iter (± 9158) 1.00
es/lexer/colors 17213 ns/iter (± 74) 17438 ns/iter (± 16) 0.99
es/lexer/angular 8257508 ns/iter (± 3040) 8317907 ns/iter (± 12046) 0.99
es/lexer/backbone 1085920 ns/iter (± 4245) 1092189 ns/iter (± 1200) 0.99
es/lexer/jquery 5985737 ns/iter (± 3300) 6024343 ns/iter (± 4582) 0.99
es/lexer/jquery mobile 9245052 ns/iter (± 18373) 9279126 ns/iter (± 15560) 1.00
es/lexer/mootools 4683698 ns/iter (± 2503) 4718479 ns/iter (± 6230) 0.99
es/lexer/underscore 904357 ns/iter (± 158) 909274 ns/iter (± 523) 0.99
es/lexer/three 27840289 ns/iter (± 16551) 28079181 ns/iter (± 22396) 0.99
es/lexer/yui 5065703 ns/iter (± 2296) 5095741 ns/iter (± 3977) 0.99
es/parser/colors 31645 ns/iter (± 66) 31464 ns/iter (± 58) 1.01
es/parser/angular 16021970 ns/iter (± 88901) 16088611 ns/iter (± 100877) 1.00
es/parser/backbone 2340416 ns/iter (± 12192) 2341398 ns/iter (± 14892) 1.00
es/parser/jquery 12698662 ns/iter (± 53167) 12607191 ns/iter (± 60407) 1.01
es/parser/jquery mobile 19868309 ns/iter (± 163543) 19765486 ns/iter (± 243233) 1.01
es/parser/mootools 9678993 ns/iter (± 35343) 9614826 ns/iter (± 31538) 1.01
es/parser/underscore 1998326 ns/iter (± 13446) 1988759 ns/iter (± 13106) 1.00
es/parser/three 58911752 ns/iter (± 717724) 58746042 ns/iter (± 582150) 1.00
es/parser/yui 9738811 ns/iter (± 43481) 9661877 ns/iter (± 47509) 1.01
es/preset-env/usage/builtin_type 139404 ns/iter (± 31098) 143151 ns/iter (± 32856) 0.97
es/preset-env/usage/property 21420 ns/iter (± 67) 21420 ns/iter (± 75) 1
es/resolver/typescript 115778106 ns/iter (± 3100923) 111942748 ns/iter (± 2529563) 1.03
es/fixer/typescript 84924806 ns/iter (± 790367) 83353194 ns/iter (± 406868) 1.02
es/hygiene/typescript 181337076 ns/iter (± 1166565) 180240163 ns/iter (± 1209231) 1.01
es/resolver_with_hygiene/typescript 309686896 ns/iter (± 1720156) 321511988 ns/iter (± 1844688) 0.96
es/visitor/base-perf/module_clone 75542 ns/iter (± 1601) 75824 ns/iter (± 1712) 1.00
es/visitor/base-perf/fold_empty 86550 ns/iter (± 1521) 85798 ns/iter (± 1363) 1.01
es/visitor/base-perf/fold_noop_impl_all 87303 ns/iter (± 2115) 85468 ns/iter (± 2015) 1.02
es/visitor/base-perf/fold_noop_impl_vec 86399 ns/iter (± 808) 87582 ns/iter (± 1709) 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 59 ns/iter (± 0) 61 ns/iter (± 0) 0.97
es/visitor/base-perf/boxing_boxed 105 ns/iter (± 0) 106 ns/iter (± 0) 0.99
es/visitor/base-perf/boxing_unboxed 104 ns/iter (± 0) 103 ns/iter (± 0) 1.01
es/visitor/base-perf/visit_contains_this 3397 ns/iter (± 71) 3461 ns/iter (± 78) 0.98
es/base/parallel/resolver/typescript 5641606324 ns/iter (± 356649427) 5306833482 ns/iter (± 349935843) 1.06
es/base/parallel/hygiene/typescript 2162540345 ns/iter (± 30876627) 2150480678 ns/iter (± 21884796) 1.01
misc/visitors/time-complexity/time 5 107 ns/iter (± 0) 96 ns/iter (± 0) 1.11
misc/visitors/time-complexity/time 10 328 ns/iter (± 1) 348 ns/iter (± 0) 0.94
misc/visitors/time-complexity/time 15 668 ns/iter (± 0) 657 ns/iter (± 1) 1.02
misc/visitors/time-complexity/time 20 1229 ns/iter (± 0) 1212 ns/iter (± 3) 1.01
misc/visitors/time-complexity/time 40 6323 ns/iter (± 50) 6224 ns/iter (± 11) 1.02
misc/visitors/time-complexity/time 60 15611 ns/iter (± 9) 15651 ns/iter (± 62) 1.00
es/full-target/es2016 189783 ns/iter (± 431) 188441 ns/iter (± 363) 1.01
es/full-target/es2017 184247 ns/iter (± 671) 183543 ns/iter (± 580) 1.00
es/full-target/es2018 173850 ns/iter (± 652) 171916 ns/iter (± 337) 1.01
es2020_nullish_coalescing 67221 ns/iter (± 132) 67447 ns/iter (± 154) 1.00
es2020_optional_chaining 95479 ns/iter (± 7451) 96787 ns/iter (± 205) 0.99
es2022_class_properties 94381 ns/iter (± 184) 95008 ns/iter (± 138) 0.99
es2018_object_rest_spread 72120 ns/iter (± 80) 72081 ns/iter (± 100) 1.00
es2019_optional_catch_binding 61740 ns/iter (± 131) 62259 ns/iter (± 125) 0.99
es2017_async_to_generator 61999 ns/iter (± 117) 62532 ns/iter (± 205) 0.99
es2016_exponentiation 65343 ns/iter (± 114) 65546 ns/iter (± 312) 1.00
es2015_arrow 71003 ns/iter (± 343) 70597 ns/iter (± 369) 1.01
es2015_block_scoped_fn 66789 ns/iter (± 289) 67178 ns/iter (± 176) 0.99
es2015_block_scoping 154852 ns/iter (± 9048) 159007 ns/iter (± 8556) 0.97
es2015_classes 116704 ns/iter (± 221) 116766 ns/iter (± 239) 1.00
es2015_computed_props 61771 ns/iter (± 68) 62021 ns/iter (± 165) 1.00
es2015_destructuring 117342 ns/iter (± 213) 116694 ns/iter (± 354) 1.01
es2015_duplicate_keys 64369 ns/iter (± 72) 64063 ns/iter (± 234) 1.00
es2015_parameters 79905 ns/iter (± 87) 79758 ns/iter (± 206) 1.00
es2015_fn_name 66653 ns/iter (± 544) 67461 ns/iter (± 351) 0.99
es2015_for_of 64561 ns/iter (± 87) 65333 ns/iter (± 134) 0.99
es2015_instanceof 63228 ns/iter (± 90) 64448 ns/iter (± 366) 0.98
es2015_shorthand_property 61633 ns/iter (± 117) 62195 ns/iter (± 87) 0.99
es2015_spread 61400 ns/iter (± 555) 61853 ns/iter (± 94) 0.99
es2015_sticky_regex 62826 ns/iter (± 104) 63224 ns/iter (± 105) 0.99
es2015_typeof_symbol 62405 ns/iter (± 151) 63299 ns/iter (± 194) 0.99
es/transform/baseline/base 52321 ns/iter (± 88) 52697 ns/iter (± 124) 0.99
es/transform/baseline/common_reserved_word 63222 ns/iter (± 150) 63611 ns/iter (± 164) 0.99
es/transform/baseline/common_typescript 143093 ns/iter (± 352) 159435 ns/iter (± 6815) 0.90
es/target/es3 171265 ns/iter (± 197) 169611 ns/iter (± 648) 1.01
es/target/es2015 632200 ns/iter (± 934) 628277 ns/iter (± 1569) 1.01
es/target/es2016 65113 ns/iter (± 87) 65883 ns/iter (± 214) 0.99
es/target/es2017 61929 ns/iter (± 68) 62345 ns/iter (± 260) 0.99
es/target/es2018 82638 ns/iter (± 73) 82259 ns/iter (± 139) 1.00
es/target/es2020 133723 ns/iter (± 320) 133552 ns/iter (± 308) 1.00
babelify-only 676513 ns/iter (± 933) 668489 ns/iter (± 3717) 1.01
parse_and_babelify_angular 43333595 ns/iter (± 879010) 44292620 ns/iter (± 719166) 0.98
parse_and_babelify_backbone 5641749 ns/iter (± 80245) 5363281 ns/iter (± 53259) 1.05
parse_and_babelify_jquery 32520006 ns/iter (± 654977) 31286666 ns/iter (± 289212) 1.04
parse_and_babelify_jquery_mobile 54936952 ns/iter (± 1477429) 53277640 ns/iter (± 961952) 1.03
parse_and_babelify_mootools 33466986 ns/iter (± 649424) 32292757 ns/iter (± 277394) 1.04
parse_and_babelify_underscore 4484936 ns/iter (± 64793) 4357686 ns/iter (± 21840) 1.03
parse_and_babelify_yui 33336559 ns/iter (± 480920) 31439164 ns/iter (± 569790) 1.06
html/minify/document/css_spec 41744446 ns/iter (± 371722) 41548140 ns/iter (± 272018) 1.00
html/minify/document/github 17486106 ns/iter (± 79344) 17396998 ns/iter (± 73514) 1.01
html/minify/document/stackoverflow 15708467 ns/iter (± 63736) 15634205 ns/iter (± 38790) 1.00
html/minify/document_fragment/css_spec 41103372 ns/iter (± 489617) 39853179 ns/iter (± 98953) 1.03
html/minify/document_fragment/github 16874579 ns/iter (± 67969) 16778707 ns/iter (± 25285) 1.01
html/minify/document_fragment/stackoverflow 15283034 ns/iter (± 63371) 15106397 ns/iter (± 47420) 1.01
html/document/visitor/compare/clone 347724 ns/iter (± 5278) 342278 ns/iter (± 2862) 1.02
html/document/visitor/compare/visit_mut_span 369481 ns/iter (± 2621) 366928 ns/iter (± 2674) 1.01
html/document/visitor/compare/visit_mut_span_panic 379694 ns/iter (± 4638) 376974 ns/iter (± 2252) 1.01
html/document/visitor/compare/fold_span 404513 ns/iter (± 1309) 405451 ns/iter (± 2228) 1.00
html/document/visitor/compare/fold_span_panic 463101 ns/iter (± 2531) 462167 ns/iter (± 1155) 1.00
html/document_fragment/visitor/compare/clone 344304 ns/iter (± 2501) 338961 ns/iter (± 2388) 1.02
html/document_fragment/visitor/compare/visit_mut_span 372173 ns/iter (± 2365) 370135 ns/iter (± 2156) 1.01
html/document_fragment/visitor/compare/visit_mut_span_panic 381620 ns/iter (± 2150) 371806 ns/iter (± 2548) 1.03
html/document_fragment/visitor/compare/fold_span 403818 ns/iter (± 1686) 404181 ns/iter (± 1960) 1.00
html/document_fragment/visitor/compare/fold_span_panic 460125 ns/iter (± 1325) 463403 ns/iter (± 2350) 0.99
html/lexer/css_2021_spec 15510174 ns/iter (± 14019) 17319610 ns/iter (± 11896) 0.90
html/lexer/github_com_17_05_2022 6025808 ns/iter (± 5868) 6430128 ns/iter (± 3443) 0.94
html/lexer/stackoverflow_com_17_05_2022 5627025 ns/iter (± 1358) 6253764 ns/iter (± 2677) 0.90
html/parser/parser_document/css_2021_spec 25876154 ns/iter (± 199903) 25573768 ns/iter (± 158481) 1.01
html/parser/parser_document/github_com_17_05_2022 8788371 ns/iter (± 10373) 8797163 ns/iter (± 16709) 1.00
html/parser/parser_document/stackoverflow_com_17_05_2022 7731985 ns/iter (± 7799) 7739123 ns/iter (± 5252) 1.00
html/parser/parser_document_fragment/css_2021_spec 25958997 ns/iter (± 252048) 26312587 ns/iter (± 313589) 0.99
html/parser/parser_document_fragment/github_com_17_05_2022 8768406 ns/iter (± 9735) 8817957 ns/iter (± 18622) 0.99
html/parser/parser_document_fragment/stackoverflow_com_17_05_2022 7762769 ns/iter (± 7697) 7787356 ns/iter (± 28907) 1.00

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

Please sign in to comment.