@@ -165,8 +165,7 @@ pub fn strip_with_config(config: Config, top_level_mark: Mark) -> impl Fold + Vi
165
165
is_type_only_export: Default :: default ( ) ,
166
166
decl_names: Default :: default ( ) ,
167
167
in_var_pat: Default :: default ( ) ,
168
- keys: Default :: default ( ) ,
169
- exported_variable_to_is_type: Default :: default ( ) ,
168
+ keys: Default :: default ( )
170
169
} ) ,
171
170
inline_enum( ts_enum_lit, ts_enum_config)
172
171
)
@@ -237,7 +236,6 @@ where
237
236
decl_names: Default :: default ( ) ,
238
237
in_var_pat: Default :: default ( ) ,
239
238
keys: Default :: default ( ) ,
240
- exported_variable_to_is_type: Default :: default ( ) ,
241
239
} ) ,
242
240
inline_enum( ts_enum_lit, ts_enum_config)
243
241
)
@@ -294,10 +292,6 @@ where
294
292
in_var_pat : bool ,
295
293
296
294
keys : Vec < VarDeclarator > ,
297
-
298
- /// Key is the `orig` in ExportNamedSpecifier
299
- /// Value is `true` if the Key is a type
300
- exported_variable_to_is_type : AHashMap < Id , bool > ,
301
295
}
302
296
303
297
impl < C > Strip < C >
@@ -1683,22 +1677,11 @@ where
1683
1677
self . is_type_only_export = old;
1684
1678
}
1685
1679
1686
- fn visit_export_named_specifier ( & mut self , n : & ExportNamedSpecifier ) {
1687
- let is_type = self . is_type_only_export || n. is_type_only ;
1688
- if let ModuleExportName :: Ident ( local_ident) = & n. orig {
1689
- // If the stored exported `Id` is a value, we just leave it here.
1690
- // If the stored exported `Id` is both a type and value, we consider it's a
1691
- // value. See https://github.com/denoland/deno/issues/8978
1692
- let is_type_to_the_existed = self
1693
- . exported_variable_to_is_type
1694
- . entry ( local_ident. to_id ( ) )
1695
- . or_insert ( is_type) ;
1696
-
1697
- if * is_type_to_the_existed && !is_type {
1698
- * is_type_to_the_existed = false
1699
- }
1700
- }
1701
- n. visit_children_with ( self )
1680
+ fn visit_export_named_specifier ( & mut self , export : & ExportNamedSpecifier ) {
1681
+ let old = self . is_type_only_export ;
1682
+ self . is_type_only_export |= export. is_type_only ;
1683
+ export. visit_children_with ( self ) ;
1684
+ self . is_type_only_export = old;
1702
1685
}
1703
1686
1704
1687
fn visit_prop_name ( & mut self , n : & PropName ) {
@@ -2083,18 +2066,8 @@ where
2083
2066
2084
2067
import. specifiers . retain ( |s| match * s {
2085
2068
ImportSpecifier :: Named ( ImportNamedSpecifier {
2086
- ref is_type_only,
2087
- ref local,
2088
- ..
2089
- } ) if * is_type_only
2090
- || self
2091
- . exported_variable_to_is_type
2092
- . get ( & local. to_id ( ) )
2093
- . copied ( )
2094
- . unwrap_or_default ( ) =>
2095
- {
2096
- false
2097
- }
2069
+ ref is_type_only, ..
2070
+ } ) if * is_type_only => false ,
2098
2071
2099
2072
ImportSpecifier :: Default ( ImportDefaultSpecifier { ref local, .. } )
2100
2073
| ImportSpecifier :: Named ( ImportNamedSpecifier { ref local, .. } )
1 commit comments
github-actions[bot] commentedon Apr 29, 2023
Benchmark
es/full/bugs-1
235080
ns/iter (± 11786
)298449
ns/iter (± 6446
)0.79
es/full/minify/libraries/antd
1175142977
ns/iter (± 12208560
)1567754974
ns/iter (± 20695035
)0.75
es/full/minify/libraries/d3
236847335
ns/iter (± 3367852
)283250223
ns/iter (± 7675151
)0.84
es/full/minify/libraries/echarts
920982645
ns/iter (± 7567862
)1192440599
ns/iter (± 8950670
)0.77
es/full/minify/libraries/jquery
75654137
ns/iter (± 90238
)89078660
ns/iter (± 374179
)0.85
es/full/minify/libraries/lodash
85328261
ns/iter (± 178244
)104551458
ns/iter (± 423722
)0.82
es/full/minify/libraries/moment
44012496
ns/iter (± 128349
)51412568
ns/iter (± 403891
)0.86
es/full/minify/libraries/react
16091201
ns/iter (± 21907
)18806288
ns/iter (± 80523
)0.86
es/full/minify/libraries/terser
192076025
ns/iter (± 659939
)236610316
ns/iter (± 1717219
)0.81
es/full/minify/libraries/three
329682278
ns/iter (± 638949
)420313813
ns/iter (± 3923666
)0.78
es/full/minify/libraries/typescript
2310137274
ns/iter (± 8335458
)3015405387
ns/iter (± 22961798
)0.77
es/full/minify/libraries/victory
491250516
ns/iter (± 2901004
)636969280
ns/iter (± 6174638
)0.77
es/full/minify/libraries/vue
105952088
ns/iter (± 346388
)127661073
ns/iter (± 965296
)0.83
es/full/codegen/es3
25336
ns/iter (± 97
)28775
ns/iter (± 69
)0.88
es/full/codegen/es5
25453
ns/iter (± 70
)28832
ns/iter (± 61
)0.88
es/full/codegen/es2015
25458
ns/iter (± 39
)28865
ns/iter (± 202
)0.88
es/full/codegen/es2016
25483
ns/iter (± 26
)28841
ns/iter (± 69
)0.88
es/full/codegen/es2017
25474
ns/iter (± 69
)28799
ns/iter (± 127
)0.88
es/full/codegen/es2018
25469
ns/iter (± 47
)28655
ns/iter (± 145
)0.89
es/full/codegen/es2019
25403
ns/iter (± 67
)28627
ns/iter (± 135
)0.89
es/full/codegen/es2020
25455
ns/iter (± 52
)28557
ns/iter (± 72
)0.89
es/full/all/es3
158305600
ns/iter (± 1338493
)181893425
ns/iter (± 4744324
)0.87
es/full/all/es5
150716107
ns/iter (± 763388
)174336938
ns/iter (± 2489280
)0.86
es/full/all/es2015
110612395
ns/iter (± 723889
)137858379
ns/iter (± 1929951
)0.80
es/full/all/es2016
109839004
ns/iter (± 434236
)134664906
ns/iter (± 1166683
)0.82
es/full/all/es2017
109106222
ns/iter (± 396216
)133662887
ns/iter (± 1777677
)0.82
es/full/all/es2018
107106025
ns/iter (± 429220
)128682297
ns/iter (± 2481131
)0.83
es/full/all/es2019
106154692
ns/iter (± 461620
)125293323
ns/iter (± 1689891
)0.85
es/full/all/es2020
101379652
ns/iter (± 548962
)118497045
ns/iter (± 1106031
)0.86
es/full/parser
451498
ns/iter (± 4365
)514355
ns/iter (± 7492
)0.88
es/full/base/fixer
17733
ns/iter (± 56
)22659
ns/iter (± 85
)0.78
es/full/base/resolver_and_hygiene
75875
ns/iter (± 184
)86171
ns/iter (± 271
)0.88
serialization of serde
112
ns/iter (± 0
)120
ns/iter (± 0
)0.93
css/minify/libraries/bootstrap
23367702
ns/iter (± 13966
)27123762
ns/iter (± 86008
)0.86
css/visitor/compare/clone
1710239
ns/iter (± 5038
)2096845
ns/iter (± 9150
)0.82
css/visitor/compare/visit_mut_span
1843980
ns/iter (± 3699
)2251163
ns/iter (± 8429
)0.82
css/visitor/compare/visit_mut_span_panic
1911749
ns/iter (± 4701
)2333928
ns/iter (± 9279
)0.82
css/visitor/compare/fold_span
2617996
ns/iter (± 23104
)3040704
ns/iter (± 7662
)0.86
css/visitor/compare/fold_span_panic
2809024
ns/iter (± 9083
)3191977
ns/iter (± 10725
)0.88
css/lexer/bootstrap_5_1_3
4470101
ns/iter (± 8176
)5145179
ns/iter (± 13565
)0.87
css/lexer/foundation_6_7_4
3771868
ns/iter (± 1211
)4334948
ns/iter (± 12190
)0.87
css/lexer/tailwind_3_1_1
713734
ns/iter (± 594
)819496
ns/iter (± 2369
)0.87
css/parser/bootstrap_5_1_3
18026116
ns/iter (± 21062
)20845446
ns/iter (± 104505
)0.86
css/parser/foundation_6_7_4
14452254
ns/iter (± 17106
)16671333
ns/iter (± 61007
)0.87
css/parser/tailwind_3_1_1
2777838
ns/iter (± 1828
)3211544
ns/iter (± 7099
)0.86
es/codegen/colors
327803
ns/iter (± 185172
)321849
ns/iter (± 184729
)1.02
es/codegen/large
1213234
ns/iter (± 642303
)1250290
ns/iter (± 642413
)0.97
es/codegen/with-parser/colors
41840
ns/iter (± 506
)47594
ns/iter (± 418
)0.88
es/codegen/with-parser/large
468705
ns/iter (± 2044
)507919
ns/iter (± 2573
)0.92
es/minify/libraries/antd
1011121079
ns/iter (± 6225077
)1364978213
ns/iter (± 12483184
)0.74
es/minify/libraries/d3
202745343
ns/iter (± 359101
)243145402
ns/iter (± 1325530
)0.83
es/minify/libraries/echarts
797257187
ns/iter (± 2551791
)1032614119
ns/iter (± 9261018
)0.77
es/minify/libraries/jquery
65890591
ns/iter (± 97023
)77423137
ns/iter (± 508444
)0.85
es/minify/libraries/lodash
76441669
ns/iter (± 129816
)93053414
ns/iter (± 609981
)0.82
es/minify/libraries/moment
38227731
ns/iter (± 42926
)45055336
ns/iter (± 196189
)0.85
es/minify/libraries/react
14287434
ns/iter (± 39964
)16934012
ns/iter (± 92594
)0.84
es/minify/libraries/terser
165132473
ns/iter (± 254961
)203711668
ns/iter (± 2340352
)0.81
es/minify/libraries/three
274733476
ns/iter (± 817280
)344627477
ns/iter (± 3101184
)0.80
es/minify/libraries/typescript
1989826743
ns/iter (± 7610370
)2573515395
ns/iter (± 11096477
)0.77
es/minify/libraries/victory
406342788
ns/iter (± 1031431
)531856775
ns/iter (± 8796710
)0.76
es/minify/libraries/vue
93849822
ns/iter (± 440334
)113340621
ns/iter (± 707887
)0.83
es/visitor/compare/clone
1987315
ns/iter (± 6207
)2317491
ns/iter (± 25920
)0.86
es/visitor/compare/visit_mut_span
2327992
ns/iter (± 5903
)2680238
ns/iter (± 6924
)0.87
es/visitor/compare/visit_mut_span_panic
2347540
ns/iter (± 1575
)2712184
ns/iter (± 7494
)0.87
es/visitor/compare/fold_span
3369100
ns/iter (± 8553
)3778365
ns/iter (± 8539
)0.89
es/visitor/compare/fold_span_panic
3543594
ns/iter (± 3829
)3915056
ns/iter (± 12086
)0.91
es/lexer/colors
11437
ns/iter (± 54
)13142
ns/iter (± 65
)0.87
es/lexer/angular
5601272
ns/iter (± 2866
)6357769
ns/iter (± 17543
)0.88
es/lexer/backbone
722940
ns/iter (± 2174
)782213
ns/iter (± 3509
)0.92
es/lexer/jquery
4075316
ns/iter (± 3419
)4408375
ns/iter (± 16390
)0.92
es/lexer/jquery mobile
6257869
ns/iter (± 5578
)6890025
ns/iter (± 44337
)0.91
es/lexer/mootools
3235489
ns/iter (± 2502
)3454376
ns/iter (± 8173
)0.94
es/lexer/underscore
597771
ns/iter (± 1243
)646866
ns/iter (± 2217
)0.92
es/lexer/three
19349400
ns/iter (± 622989
)20838073
ns/iter (± 77775
)0.93
es/lexer/yui
3535285
ns/iter (± 4527
)3852238
ns/iter (± 14606
)0.92
es/parser/colors
25857
ns/iter (± 69
)28676
ns/iter (± 139
)0.90
es/parser/angular
12945776
ns/iter (± 40756
)14708384
ns/iter (± 115309
)0.88
es/parser/backbone
1915566
ns/iter (± 9826
)2121787
ns/iter (± 28898
)0.90
es/parser/jquery
10374731
ns/iter (± 29656
)11478269
ns/iter (± 110379
)0.90
es/parser/jquery mobile
16061837
ns/iter (± 257968
)17977401
ns/iter (± 97479
)0.89
es/parser/mootools
8038864
ns/iter (± 11368
)8813834
ns/iter (± 21191
)0.91
es/parser/underscore
1648284
ns/iter (± 7776
)1792488
ns/iter (± 11611
)0.92
es/parser/three
44571873
ns/iter (± 166625
)51345805
ns/iter (± 1853624
)0.87
es/parser/yui
7947813
ns/iter (± 29442
)8932208
ns/iter (± 86487
)0.89
es/preset-env/usage/builtin_type
146282
ns/iter (± 40343
)141516
ns/iter (± 34162
)1.03
es/preset-env/usage/property
15114
ns/iter (± 70
)20326
ns/iter (± 114
)0.74
es/resolver/typescript
87707891
ns/iter (± 1110870
)117124945
ns/iter (± 3370487
)0.75
es/fixer/typescript
63391076
ns/iter (± 1484025
)87261612
ns/iter (± 1549727
)0.73
es/hygiene/typescript
128071696
ns/iter (± 563547
)187125584
ns/iter (± 1341668
)0.68
es/resolver_with_hygiene/typescript
228144564
ns/iter (± 1023374
)322038972
ns/iter (± 1875265
)0.71
es/visitor/base-perf/module_clone
58417
ns/iter (± 274
)80291
ns/iter (± 640
)0.73
es/visitor/base-perf/fold_empty
63206
ns/iter (± 353
)90334
ns/iter (± 279
)0.70
es/visitor/base-perf/fold_noop_impl_all
62930
ns/iter (± 215
)90586
ns/iter (± 607
)0.69
es/visitor/base-perf/fold_noop_impl_vec
62884
ns/iter (± 267
)90475
ns/iter (± 646
)0.70
es/visitor/base-perf/boxing_boxed_clone
52
ns/iter (± 0
)56
ns/iter (± 0
)0.93
es/visitor/base-perf/boxing_unboxed_clone
37
ns/iter (± 0
)42
ns/iter (± 0
)0.88
es/visitor/base-perf/boxing_boxed
108
ns/iter (± 0
)103
ns/iter (± 0
)1.05
es/visitor/base-perf/boxing_unboxed
76
ns/iter (± 0
)78
ns/iter (± 0
)0.97
es/visitor/base-perf/visit_empty
0
ns/iter (± 0
)es/visitor/base-perf/visit_contains_this
2685
ns/iter (± 12
)3415
ns/iter (± 95
)0.79
es/base/parallel/resolver/typescript
3534455338
ns/iter (± 302210628
)6159839606
ns/iter (± 543660522
)0.57
es/base/parallel/hygiene/typescript
1418999826
ns/iter (± 19545344
)2180589045
ns/iter (± 28787817
)0.65
misc/visitors/time-complexity/time 5
102
ns/iter (± 0
)96
ns/iter (± 0
)1.06
misc/visitors/time-complexity/time 10
287
ns/iter (± 0
)323
ns/iter (± 10
)0.89
misc/visitors/time-complexity/time 15
484
ns/iter (± 0
)632
ns/iter (± 5
)0.77
misc/visitors/time-complexity/time 20
1010
ns/iter (± 15
)1199
ns/iter (± 20
)0.84
misc/visitors/time-complexity/time 40
3395
ns/iter (± 4
)6071
ns/iter (± 40
)0.56
misc/visitors/time-complexity/time 60
7151
ns/iter (± 6
)15190
ns/iter (± 87
)0.47
es/full-target/es2016
222983
ns/iter (± 484
)251386
ns/iter (± 1392
)0.89
es/full-target/es2017
211901
ns/iter (± 404
)238946
ns/iter (± 465
)0.89
es/full-target/es2018
201021
ns/iter (± 434
)229396
ns/iter (± 1425
)0.88
es2020_nullish_coalescing
67394
ns/iter (± 428
)90839
ns/iter (± 514
)0.74
es2020_optional_chaining
95827
ns/iter (± 279
)120235
ns/iter (± 612
)0.80
es2022_class_properties
116284
ns/iter (± 298
)145694
ns/iter (± 847
)0.80
es2018_object_rest_spread
72787
ns/iter (± 260
)93729
ns/iter (± 722
)0.78
es2019_optional_catch_binding
61714
ns/iter (± 359
)83396
ns/iter (± 926
)0.74
es2017_async_to_generator
62548
ns/iter (± 205
)83691
ns/iter (± 598
)0.75
es2016_exponentiation
65691
ns/iter (± 251
)88040
ns/iter (± 553
)0.75
es2015_arrow
69383
ns/iter (± 193
)90898
ns/iter (± 538
)0.76
es2015_block_scoped_fn
66152
ns/iter (± 185
)89849
ns/iter (± 574
)0.74
es2015_block_scoping
118792
ns/iter (± 515
)165039
ns/iter (± 509
)0.72
This comment was automatically generated by workflow using github-action-benchmark.