-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix(es/resolver): Resolve the super class before registering a class …
- Loading branch information
Showing
6 changed files
with
50 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
{ | ||
"jsc": { | ||
"loose": true | ||
}, | ||
"env": { | ||
"include": [ | ||
"transform-classes" | ||
] | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
import { ClassName } from './some-file'; | ||
|
||
export default { | ||
field: class ClassName extends ClassName { | ||
constructor() { | ||
super(); | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
import { _ as _inherits } from "@swc/helpers/_/_inherits"; | ||
import { ClassName } from "./some-file"; | ||
export default { | ||
field: /*#__PURE__*/ function(ClassName) { | ||
"use strict"; | ||
_inherits(ClassName1, ClassName); | ||
function ClassName1() { | ||
return ClassName.call(this); | ||
} | ||
return ClassName1; | ||
}(ClassName) | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
9 changes: 9 additions & 0 deletions
9
crates/swc_ecma_transforms_base/tests/resolver/issue-7546/input.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
import { ClassName } from './some-file'; | ||
|
||
export default { | ||
field: class ClassName extends ClassName { | ||
constructor() { | ||
super(); | ||
} | ||
} | ||
} |
8 changes: 8 additions & 0 deletions
8
crates/swc_ecma_transforms_base/tests/resolver/issue-7546/output.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
import { ClassName__2 } from './some-file'; | ||
export default { | ||
field: class ClassName__3 extends ClassName__2 { | ||
constructor(){ | ||
super(); | ||
} | ||
} | ||
}; |
1d9f972
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Benchmark
es/full/bugs-1
316290
ns/iter (± 7873
)368153
ns/iter (± 8988
)0.86
es/full/minify/libraries/antd
1469987432
ns/iter (± 5561398
)1957497648
ns/iter (± 16697300
)0.75
es/full/minify/libraries/d3
315728175
ns/iter (± 4268394
)393010211
ns/iter (± 2975036
)0.80
es/full/minify/libraries/echarts
1184262386
ns/iter (± 5559691
)1569632424
ns/iter (± 10507948
)0.75
es/full/minify/libraries/jquery
95027552
ns/iter (± 260650
)111914704
ns/iter (± 753152
)0.85
es/full/minify/libraries/lodash
112756927
ns/iter (± 333243
)135433011
ns/iter (± 1081300
)0.83
es/full/minify/libraries/moment
55846668
ns/iter (± 219419
)64664272
ns/iter (± 292697
)0.86
es/full/minify/libraries/react
20018235
ns/iter (± 67261
)23482164
ns/iter (± 148448
)0.85
es/full/minify/libraries/terser
244634825
ns/iter (± 642604
)315463966
ns/iter (± 4604694
)0.78
es/full/minify/libraries/three
432561203
ns/iter (± 882985
)557124846
ns/iter (± 9562440
)0.78
es/full/minify/libraries/typescript
2995232414
ns/iter (± 9159317
)3730452867
ns/iter (± 51405684
)0.80
es/full/minify/libraries/victory
629338607
ns/iter (± 14512555
)843763923
ns/iter (± 19319781
)0.75
es/full/minify/libraries/vue
135562637
ns/iter (± 202674
)162467735
ns/iter (± 477905
)0.83
es/full/codegen/es3
35929
ns/iter (± 107
)41598
ns/iter (± 115
)0.86
es/full/codegen/es5
36139
ns/iter (± 130
)41655
ns/iter (± 52
)0.87
es/full/codegen/es2015
36064
ns/iter (± 85
)41659
ns/iter (± 64
)0.87
es/full/codegen/es2016
36017
ns/iter (± 99
)41577
ns/iter (± 946
)0.87
es/full/codegen/es2017
35977
ns/iter (± 90
)41558
ns/iter (± 79
)0.87
es/full/codegen/es2018
36003
ns/iter (± 68
)41648
ns/iter (± 48
)0.86
es/full/codegen/es2019
36055
ns/iter (± 67
)41636
ns/iter (± 50
)0.87
es/full/codegen/es2020
36188
ns/iter (± 113
)41629
ns/iter (± 67
)0.87
es/full/all/es3
179703631
ns/iter (± 863706
)206801136
ns/iter (± 2893861
)0.87
es/full/all/es5
169668890
ns/iter (± 380717
)196358820
ns/iter (± 3407312
)0.86
es/full/all/es2015
126468094
ns/iter (± 332183
)153024974
ns/iter (± 2695501
)0.83
es/full/all/es2016
125170792
ns/iter (± 424045
)152770726
ns/iter (± 2649310
)0.82
es/full/all/es2017
124393777
ns/iter (± 598085
)152180781
ns/iter (± 1751738
)0.82
es/full/all/es2018
122314795
ns/iter (± 536454
)151399472
ns/iter (± 2130031
)0.81
es/full/all/es2019
122284908
ns/iter (± 654134
)149395573
ns/iter (± 2854165
)0.82
es/full/all/es2020
117511627
ns/iter (± 664901
)147864734
ns/iter (± 1513178
)0.79
es/full/parser
508551
ns/iter (± 5346
)601614
ns/iter (± 11404
)0.85
es/full/base/fixer
18926
ns/iter (± 190
)26390
ns/iter (± 31
)0.72
es/full/base/resolver_and_hygiene
91989
ns/iter (± 296
)105116
ns/iter (± 119
)0.88
serialization of serde
295
ns/iter (± 0
)257
ns/iter (± 0
)1.15
css/minify/libraries/bootstrap
31125476
ns/iter (± 57045
)36653039
ns/iter (± 276496
)0.85
css/visitor/compare/clone
1960866
ns/iter (± 24862
)2369579
ns/iter (± 5340
)0.83
css/visitor/compare/visit_mut_span
2061138
ns/iter (± 10418
)2559930
ns/iter (± 21380
)0.81
css/visitor/compare/visit_mut_span_panic
2121527
ns/iter (± 11386
)2595984
ns/iter (± 4567
)0.82
css/visitor/compare/fold_span
2843244
ns/iter (± 14802
)3348778
ns/iter (± 12694
)0.85
css/visitor/compare/fold_span_panic
3069907
ns/iter (± 11526
)3501459
ns/iter (± 11998
)0.88
css/lexer/bootstrap_5_1_3
5015191
ns/iter (± 6865
)5582659
ns/iter (± 3801
)0.90
css/lexer/foundation_6_7_4
4017363
ns/iter (± 2923
)4714790
ns/iter (± 2540
)0.85
css/lexer/tailwind_3_1_1
982296
ns/iter (± 738
)894831
ns/iter (± 7257
)1.10
css/parser/bootstrap_5_1_3
20327362
ns/iter (± 47147
)24177696
ns/iter (± 66526
)0.84
css/parser/foundation_6_7_4
16385733
ns/iter (± 14844
)19188926
ns/iter (± 40928
)0.85
css/parser/tailwind_3_1_1
3172898
ns/iter (± 4131
)3683014
ns/iter (± 4439
)0.86
es/codegen/colors
736637
ns/iter (± 400810
)730980
ns/iter (± 396538
)1.01
es/codegen/large
2968763
ns/iter (± 1550391
)3075730
ns/iter (± 1600886
)0.97
es/codegen/with-parser/colors
49552
ns/iter (± 170
)58461
ns/iter (± 470
)0.85
es/codegen/with-parser/large
531070
ns/iter (± 1455
)584522
ns/iter (± 1539
)0.91
es/minify/libraries/antd
1296957002
ns/iter (± 13830003
)1730974050
ns/iter (± 18944602
)0.75
es/minify/libraries/d3
278561816
ns/iter (± 290913
)346211369
ns/iter (± 2013140
)0.80
es/minify/libraries/echarts
1022901087
ns/iter (± 3251581
)1350339742
ns/iter (± 19034162
)0.76
es/minify/libraries/jquery
83801823
ns/iter (± 127013
)98312719
ns/iter (± 873061
)0.85
es/minify/libraries/lodash
102693525
ns/iter (± 180973
)122425453
ns/iter (± 790221
)0.84
es/minify/libraries/moment
49544610
ns/iter (± 85585
)57450508
ns/iter (± 595941
)0.86
es/minify/libraries/react
18045415
ns/iter (± 66305
)20902398
ns/iter (± 78173
)0.86
es/minify/libraries/terser
212199799
ns/iter (± 368110
)269225698
ns/iter (± 3047675
)0.79
es/minify/libraries/three
364799698
ns/iter (± 905205
)463055830
ns/iter (± 3961138
)0.79
es/minify/libraries/typescript
2556049742
ns/iter (± 8447709
)3227353129
ns/iter (± 38307744
)0.79
es/minify/libraries/victory
532700473
ns/iter (± 2115023
)714809029
ns/iter (± 18350374
)0.75
es/minify/libraries/vue
124102630
ns/iter (± 223481
)144844542
ns/iter (± 656438
)0.86
es/visitor/compare/clone
2072388
ns/iter (± 6405
)2422578
ns/iter (± 20963
)0.86
es/visitor/compare/visit_mut_span
2399229
ns/iter (± 4282
)2797350
ns/iter (± 14475
)0.86
es/visitor/compare/visit_mut_span_panic
2438632
ns/iter (± 3866
)2866757
ns/iter (± 9120
)0.85
es/visitor/compare/fold_span
3478431
ns/iter (± 4147
)3945107
ns/iter (± 15182
)0.88
es/visitor/compare/fold_span_panic
3617450
ns/iter (± 6555
)4066668
ns/iter (± 12901
)0.89
es/lexer/colors
13117
ns/iter (± 1119
)14980
ns/iter (± 18
)0.88
es/lexer/angular
6282318
ns/iter (± 16834
)7132425
ns/iter (± 5956
)0.88
es/lexer/backbone
806559
ns/iter (± 2636
)865101
ns/iter (± 392
)0.93
es/lexer/jquery
4557972
ns/iter (± 2941
)4845577
ns/iter (± 1611
)0.94
es/lexer/jquery mobile
6976123
ns/iter (± 3022
)7530181
ns/iter (± 9901
)0.93
es/lexer/mootools
3591239
ns/iter (± 3204
)3782236
ns/iter (± 3318
)0.95
es/lexer/underscore
669738
ns/iter (± 2144
)713535
ns/iter (± 575
)0.94
es/lexer/three
21262699
ns/iter (± 27333
)22613818
ns/iter (± 32566
)0.94
es/lexer/yui
4070744
ns/iter (± 1337
)4353057
ns/iter (± 2704
)0.94
es/parser/colors
29110
ns/iter (± 61
)33190
ns/iter (± 76
)0.88
es/parser/angular
14440785
ns/iter (± 72100
)17230428
ns/iter (± 166014
)0.84
es/parser/backbone
2150646
ns/iter (± 7112
)2442057
ns/iter (± 13514
)0.88
es/parser/jquery
11689291
ns/iter (± 37814
)13332193
ns/iter (± 108461
)0.88
es/parser/jquery mobile
17788967
ns/iter (± 45948
)21959375
ns/iter (± 293958
)0.81
es/parser/mootools
8973169
ns/iter (± 13389
)10155489
ns/iter (± 55766
)0.88
es/parser/underscore
1864676
ns/iter (± 8983
)2082965
ns/iter (± 10106
)0.90
es/parser/three
49518983
ns/iter (± 73570
)61645580
ns/iter (± 474915
)0.80
es/parser/yui
9009570
ns/iter (± 29756
)10321382
ns/iter (± 143439
)0.87
es/preset-env/usage/builtin_type
145916
ns/iter (± 32999
)152684
ns/iter (± 33528
)0.96
es/preset-env/usage/property
19478
ns/iter (± 54
)29283
ns/iter (± 85
)0.67
es/resolver/typescript
93717358
ns/iter (± 463320
)129678545
ns/iter (± 1580229
)0.72
es/fixer/typescript
64712810
ns/iter (± 419432
)86906773
ns/iter (± 565633
)0.74
es/hygiene/typescript
141398187
ns/iter (± 540594
)211031261
ns/iter (± 2163799
)0.67
es/resolver_with_hygiene/typescript
302258554
ns/iter (± 1542444
)431166655
ns/iter (± 2647033
)0.70
es/visitor/base-perf/module_clone
61358
ns/iter (± 198
)86229
ns/iter (± 379
)0.71
es/visitor/base-perf/fold_empty
65007
ns/iter (± 252
)95264
ns/iter (± 320
)0.68
es/visitor/base-perf/fold_noop_impl_all
65212
ns/iter (± 327
)95625
ns/iter (± 534
)0.68
es/visitor/base-perf/fold_noop_impl_vec
65307
ns/iter (± 195
)96142
ns/iter (± 494
)0.68
es/visitor/base-perf/boxing_boxed_clone
56
ns/iter (± 0
)60
ns/iter (± 0
)0.93
es/visitor/base-perf/boxing_unboxed_clone
41
ns/iter (± 0
)45
ns/iter (± 0
)0.91
es/visitor/base-perf/boxing_boxed
108
ns/iter (± 0
)117
ns/iter (± 0
)0.92
es/visitor/base-perf/boxing_unboxed
77
ns/iter (± 0
)81
ns/iter (± 0
)0.95
es/visitor/base-perf/visit_empty
0
ns/iter (± 0
)es/visitor/base-perf/visit_contains_this
2608
ns/iter (± 10
)3476
ns/iter (± 59
)0.75
es/base/parallel/resolver/typescript
4298308214
ns/iter (± 295157183
)7857945466
ns/iter (± 488061078
)0.55
es/base/parallel/hygiene/typescript
1585120820
ns/iter (± 11653946
)2398077677
ns/iter (± 15123815
)0.66
misc/visitors/time-complexity/time 5
109
ns/iter (± 0
)104
ns/iter (± 0
)1.05
misc/visitors/time-complexity/time 10
268
ns/iter (± 0
)359
ns/iter (± 1
)0.75
misc/visitors/time-complexity/time 15
519
ns/iter (± 7
)690
ns/iter (± 1
)0.75
misc/visitors/time-complexity/time 20
931
ns/iter (± 2
)1255
ns/iter (± 11
)0.74
misc/visitors/time-complexity/time 40
3783
ns/iter (± 12
)6280
ns/iter (± 6
)0.60
misc/visitors/time-complexity/time 60
7829
ns/iter (± 33
)15795
ns/iter (± 13
)0.50
es/full-target/es2016
240215
ns/iter (± 672
)271441
ns/iter (± 500
)0.88
es/full-target/es2017
224149
ns/iter (± 652
)260810
ns/iter (± 412
)0.86
es/full-target/es2018
214309
ns/iter (± 836
)250280
ns/iter (± 330
)0.86
es2020_nullish_coalescing
71181
ns/iter (± 436
)99324
ns/iter (± 285
)0.72
es2020_optional_chaining
83871
ns/iter (± 173
)89200
ns/iter (± 173
)0.94
es2022_class_properties
121512
ns/iter (± 427
)157041
ns/iter (± 309
)0.77
es2018_object_rest_spread
76421
ns/iter (± 172
)100803
ns/iter (± 173
)0.76
es2019_optional_catch_binding
64142
ns/iter (± 165
)89137
ns/iter (± 243
)0.72
es2017_async_to_generator
64772
ns/iter (± 232
)89959
ns/iter (± 515
)0.72
es2016_exponentiation
70498
ns/iter (± 155
)96712
ns/iter (± 208
)0.73
es2015_arrow
72887
ns/iter (± 169
)99110
ns/iter (± 213
)0.74
es2015_block_scoped_fn
69416
ns/iter (± 154
)97523
ns/iter (± 314
)0.71
es2015_block_scoping
131831
ns/iter (± 473
)184734
ns/iter (± 228
)0.71
This comment was automatically generated by workflow using github-action-benchmark.