@@ -535,6 +535,16 @@ macro_rules! to_integer {
535
535
} } ;
536
536
}
537
537
538
+ macro_rules! to_number {
539
+ ( $val: expr) => { {
540
+ ComponentValue :: Number ( Box :: new( Number {
541
+ span: DUMMY_SP ,
542
+ value: $val,
543
+ raw: None ,
544
+ } ) )
545
+ } } ;
546
+ }
547
+
538
548
#[ derive( Debug , PartialEq , Eq , Clone , Copy ) ]
539
549
pub enum Prefix {
540
550
Webkit ,
@@ -1431,6 +1441,36 @@ impl VisitMut for Prefixer {
1431
1441
}
1432
1442
}
1433
1443
} } ;
1444
+
1445
+ ( $property: expr, $value: expr) => { {
1446
+ if should_prefix( $property, self . env, true ) {
1447
+ // Check we don't have prefixed property
1448
+
1449
+ let name = DeclarationName :: Ident ( Ident {
1450
+ span: DUMMY_SP ,
1451
+ value: $property. into( ) ,
1452
+ raw: None ,
1453
+ } ) ;
1454
+
1455
+ let value: Option <Box <dyn Fn ( ) -> Vec <ComponentValue >>> = $value;
1456
+
1457
+ if let Some ( value) = value {
1458
+ self . added_declarations. push( Box :: new( Declaration {
1459
+ span: n. span,
1460
+ name,
1461
+ value: value( ) ,
1462
+ important: n. important. clone( ) ,
1463
+ } ) ) ;
1464
+ } else {
1465
+ self . added_declarations. push( Box :: new( Declaration {
1466
+ span: n. span,
1467
+ name,
1468
+ value: n. value. clone( ) ,
1469
+ important: n. important. clone( ) ,
1470
+ } ) ) ;
1471
+ }
1472
+ }
1473
+ } } ;
1434
1474
}
1435
1475
1436
1476
let property_name = & * name. to_ascii_lowercase ( ) ;
@@ -1970,6 +2010,22 @@ impl VisitMut for Prefixer {
1970
2010
) ;
1971
2011
}
1972
2012
2013
+ "opacity" if should_prefix ( "opacity" , self . env , true ) => {
2014
+ let old_value = match n. value . get ( 0 ) {
2015
+ Some ( ComponentValue :: Percentage ( percentage) ) => Some ( percentage. value . value ) ,
2016
+ _ => None ,
2017
+ } ;
2018
+
2019
+ if let Some ( old_value) = old_value {
2020
+ let rounded_alpha = ( old_value * 1000.0 ) . round ( ) / 100000.0 ;
2021
+
2022
+ add_declaration ! (
2023
+ "opacity" ,
2024
+ Some ( Box :: new( || { vec![ to_number!( rounded_alpha) ] } ) )
2025
+ ) ;
2026
+ }
2027
+ }
2028
+
1973
2029
"order" => {
1974
2030
let old_spec_num = match n. value . get ( 0 ) {
1975
2031
Some ( ComponentValue :: Integer ( integer) ) => Some ( integer. value + 1 ) ,
1 commit comments
github-actions[bot] commentedon Dec 13, 2022
Benchmark
es/full/bugs-1
307617
ns/iter (± 25843
)289305
ns/iter (± 12314
)1.06
es/full/minify/libraries/antd
1810193190
ns/iter (± 32588297
)1622302807
ns/iter (± 19009959
)1.12
es/full/minify/libraries/d3
357039043
ns/iter (± 5266207
)328954115
ns/iter (± 4369289
)1.09
es/full/minify/libraries/echarts
1484687000
ns/iter (± 12023424
)1376411860
ns/iter (± 10905624
)1.08
es/full/minify/libraries/jquery
93750776
ns/iter (± 1821231
)93289499
ns/iter (± 2608491
)1.00
es/full/minify/libraries/lodash
113374688
ns/iter (± 1836321
)109401411
ns/iter (± 1914471
)1.04
es/full/minify/libraries/moment
54587306
ns/iter (± 279001
)51852104
ns/iter (± 743712
)1.05
es/full/minify/libraries/react
19986321
ns/iter (± 178193
)19184968
ns/iter (± 98360
)1.04
es/full/minify/libraries/terser
279205068
ns/iter (± 5864105
)245370800
ns/iter (± 1830200
)1.14
es/full/minify/libraries/three
501601963
ns/iter (± 6459160
)443480259
ns/iter (± 5054937
)1.13
es/full/minify/libraries/typescript
3390087412
ns/iter (± 17711527
)3051773069
ns/iter (± 22100513
)1.11
es/full/minify/libraries/victory
769816428
ns/iter (± 14159115
)650799246
ns/iter (± 13887793
)1.18
es/full/minify/libraries/vue
139754164
ns/iter (± 1015870
)130533571
ns/iter (± 1249151
)1.07
es/full/codegen/es3
27380
ns/iter (± 37
)27677
ns/iter (± 53
)0.99
es/full/codegen/es5
27429
ns/iter (± 53
)27676
ns/iter (± 79
)0.99
es/full/codegen/es2015
27453
ns/iter (± 36
)27699
ns/iter (± 28
)0.99
es/full/codegen/es2016
27450
ns/iter (± 47
)27697
ns/iter (± 46
)0.99
es/full/codegen/es2017
27504
ns/iter (± 60
)27706
ns/iter (± 46
)0.99
es/full/codegen/es2018
27479
ns/iter (± 41
)27696
ns/iter (± 26
)0.99
es/full/codegen/es2019
27490
ns/iter (± 235
)27684
ns/iter (± 32
)0.99
es/full/codegen/es2020
27467
ns/iter (± 39
)27720
ns/iter (± 61
)0.99
es/full/all/es3
169187174
ns/iter (± 2675382
)170946460
ns/iter (± 1794723
)0.99
es/full/all/es5
162702537
ns/iter (± 2707807
)161460722
ns/iter (± 3566650
)1.01
es/full/all/es2015
122749552
ns/iter (± 3983319
)119706380
ns/iter (± 2217628
)1.03
es/full/all/es2016
120189695
ns/iter (± 682485
)118387573
ns/iter (± 738347
)1.02
es/full/all/es2017
120770905
ns/iter (± 1760447
)118220181
ns/iter (± 724906
)1.02
es/full/all/es2018
118436170
ns/iter (± 1913050
)116217264
ns/iter (± 1110681
)1.02
es/full/all/es2019
117554806
ns/iter (± 1004920
)114686202
ns/iter (± 658838
)1.03
es/full/all/es2020
113216879
ns/iter (± 2180248
)110257701
ns/iter (± 1023928
)1.03
es/full/parser
519598
ns/iter (± 8950
)517593
ns/iter (± 7122
)1.00
es/full/base/fixer
22074
ns/iter (± 46
)21989
ns/iter (± 25
)1.00
es/full/base/resolver_and_hygiene
78120
ns/iter (± 65
)77925
ns/iter (± 75
)1.00
serialization of ast node
142
ns/iter (± 0
)121
ns/iter (± 0
)1.17
serialization of serde
123
ns/iter (± 0
)125
ns/iter (± 0
)0.98
css/minify/libraries/bootstrap
27400070
ns/iter (± 97702
)26807848
ns/iter (± 98572
)1.02
css/visitor/compare/clone
2050014
ns/iter (± 9827
)2046545
ns/iter (± 5051
)1.00
css/visitor/compare/visit_mut_span
2257746
ns/iter (± 5884
)2235681
ns/iter (± 6856
)1.01
css/visitor/compare/visit_mut_span_panic
2336799
ns/iter (± 4186
)2287660
ns/iter (± 5254
)1.02
css/visitor/compare/fold_span
2996887
ns/iter (± 22851
)2955804
ns/iter (± 21403
)1.01
css/visitor/compare/fold_span_panic
3154218
ns/iter (± 14104
)3095060
ns/iter (± 15554
)1.02
css/lexer/bootstrap_5_1_3
5220100
ns/iter (± 2743
)5180695
ns/iter (± 1188
)1.01
css/lexer/foundation_6_7_4
4433909
ns/iter (± 2434
)4402033
ns/iter (± 12929
)1.01
css/lexer/tailwind_3_1_1
831330
ns/iter (± 312
)826881
ns/iter (± 211
)1.01
css/parser/bootstrap_5_1_3
20847616
ns/iter (± 224941
)20570424
ns/iter (± 28167
)1.01
css/parser/foundation_6_7_4
16731367
ns/iter (± 94348
)16443760
ns/iter (± 26591
)1.02
css/parser/tailwind_3_1_1
3169036
ns/iter (± 4975
)3184246
ns/iter (± 5797
)1.00
es/codegen/colors
325177
ns/iter (± 182601
)330378
ns/iter (± 185496
)0.98
es/codegen/large
1207797
ns/iter (± 644260
)1229344
ns/iter (± 624145
)0.98
es/codegen/with-parser/colors
46031
ns/iter (± 75
)46387
ns/iter (± 255
)0.99
es/codegen/with-parser/large
512456
ns/iter (± 1954
)509405
ns/iter (± 1499
)1.01
es/minify/libraries/antd
1569737747
ns/iter (± 18969616
)1405396649
ns/iter (± 31871365
)1.12
es/minify/libraries/d3
310542251
ns/iter (± 4129761
)277343355
ns/iter (± 6661147
)1.12
es/minify/libraries/echarts
1319483259
ns/iter (± 9432214
)1191004310
ns/iter (± 23064667
)1.11
es/minify/libraries/jquery
81080352
ns/iter (± 1686018
)77287443
ns/iter (± 461727
)1.05
es/minify/libraries/lodash
98536979
ns/iter (± 1386592
)95050907
ns/iter (± 854418
)1.04
es/minify/libraries/moment
46882835
ns/iter (± 987810
)45173664
ns/iter (± 165873
)1.04
es/minify/libraries/react
17631001
ns/iter (± 243650
)16963008
ns/iter (± 77284
)1.04
es/minify/libraries/terser
228408342
ns/iter (± 3974983
)210085598
ns/iter (± 1391481
)1.09
es/minify/libraries/three
417554955
ns/iter (± 7943432
)365826739
ns/iter (± 4855485
)1.14
es/minify/libraries/typescript
2910487273
ns/iter (± 15463572
)2603519008
ns/iter (± 6880265
)1.12
es/minify/libraries/victory
663614931
ns/iter (± 11752370
)538272194
ns/iter (± 8164739
)1.23
es/minify/libraries/vue
121606737
ns/iter (± 3111002
)116340863
ns/iter (± 724727
)1.05
es/visitor/compare/clone
2409354
ns/iter (± 6637
)2413736
ns/iter (± 6014
)1.00
es/visitor/compare/visit_mut_span
2813309
ns/iter (± 20975
)2792102
ns/iter (± 5782
)1.01
es/visitor/compare/visit_mut_span_panic
2837245
ns/iter (± 12725
)2837517
ns/iter (± 7276
)1.00
es/visitor/compare/fold_span
3919707
ns/iter (± 7754
)3943033
ns/iter (± 7428
)0.99
es/visitor/compare/fold_span_panic
4104159
ns/iter (± 39143
)4043881
ns/iter (± 5293
)1.01
es/lexer/colors
17376
ns/iter (± 8
)17237
ns/iter (± 6
)1.01
es/lexer/angular
8222936
ns/iter (± 8224
)8192065
ns/iter (± 4174
)1.00
es/lexer/backbone
1071139
ns/iter (± 315
)1067724
ns/iter (± 896
)1.00
es/lexer/jquery
5957179
ns/iter (± 2031
)5921730
ns/iter (± 5857
)1.01
es/lexer/jquery mobile
9161935
ns/iter (± 2840
)9138154
ns/iter (± 6810
)1.00
es/lexer/mootools
4673111
ns/iter (± 1804
)4646015
ns/iter (± 2103
)1.01
es/lexer/underscore
894981
ns/iter (± 591
)889562
ns/iter (± 340
)1.01
es/lexer/three
27953985
ns/iter (± 90632
)27737815
ns/iter (± 13578
)1.01
es/lexer/yui
5052603
ns/iter (± 3344
)5032806
ns/iter (± 5999
)1.00
es/parser/colors
31392
ns/iter (± 91
)30190
ns/iter (± 134
)1.04
es/parser/angular
16469205
ns/iter (± 104690
)15250691
ns/iter (± 114667
)1.08
es/parser/backbone
2340502
ns/iter (± 14038
)2285163
ns/iter (± 32217
)1.02
es/parser/jquery
12717226
ns/iter (± 120191
)12370365
ns/iter (± 52142
)1.03
es/parser/jquery mobile
20644686
ns/iter (± 395065
)19544362
ns/iter (± 305575
)1.06
es/parser/mootools
9653015
ns/iter (± 50611
)9493215
ns/iter (± 23226
)1.02
es/parser/underscore
1997453
ns/iter (± 11625
)1944699
ns/iter (± 10591
)1.03
es/parser/three
61615262
ns/iter (± 387333
)56228395
ns/iter (± 785135
)1.10
es/parser/yui
9761035
ns/iter (± 60288
)9446312
ns/iter (± 51919
)1.03
es/preset-env/usage/builtin_type
142158
ns/iter (± 32518
)140917
ns/iter (± 31529
)1.01
es/preset-env/usage/property
21019
ns/iter (± 81
)21169
ns/iter (± 73
)0.99
es/resolver/typescript
124355491
ns/iter (± 3518932
)108047755
ns/iter (± 1649249
)1.15
es/fixer/typescript
97801900
ns/iter (± 752929
)87924717
ns/iter (± 2771281
)1.11
es/hygiene/typescript
189949048
ns/iter (± 1237706
)165722714
ns/iter (± 1718036
)1.15
es/resolver_with_hygiene/typescript
329337158
ns/iter (± 3886389
)298210181
ns/iter (± 1830802
)1.10
es/visitor/base-perf/module_clone
74124
ns/iter (± 981
)74349
ns/iter (± 681
)1.00
es/visitor/base-perf/fold_empty
85765
ns/iter (± 1452
)86393
ns/iter (± 1220
)0.99
es/visitor/base-perf/fold_noop_impl_all
87594
ns/iter (± 1386
)86102
ns/iter (± 1004
)1.02
es/visitor/base-perf/fold_noop_impl_vec
85855
ns/iter (± 1471
)86233
ns/iter (± 960
)1.00
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
100
ns/iter (± 0
)99
ns/iter (± 0
)1.01
es/visitor/base-perf/boxing_unboxed
100
ns/iter (± 0
)100
ns/iter (± 0
)1
es/visitor/base-perf/visit_contains_this
3464
ns/iter (± 94
)3523
ns/iter (± 79
)0.98
es/base/parallel/resolver/typescript
5603987902
ns/iter (± 467853657
)4847292128
ns/iter (± 258993526
)1.16
es/base/parallel/hygiene/typescript
2268253487
ns/iter (± 40085879
)1970960140
ns/iter (± 35435056
)1.15
misc/visitors/time-complexity/time 5
96
ns/iter (± 1
)95
ns/iter (± 1
)1.01
misc/visitors/time-complexity/time 10
296
ns/iter (± 4
)301
ns/iter (± 0
)0.98
misc/visitors/time-complexity/time 15
660
ns/iter (± 11
)625
ns/iter (± 0
)1.06
misc/visitors/time-complexity/time 20
1179
ns/iter (± 2
)1162
ns/iter (± 2
)1.01
misc/visitors/time-complexity/time 40
6115
ns/iter (± 4
)6118
ns/iter (± 3
)1.00
misc/visitors/time-complexity/time 60
15506
ns/iter (± 7
)15481
ns/iter (± 44
)1.00
es/full-target/es2016
187639
ns/iter (± 435
)187370
ns/iter (± 355
)1.00
es/full-target/es2017
180583
ns/iter (± 683
)180211
ns/iter (± 362
)1.00
es/full-target/es2018
170259
ns/iter (± 581
)169654
ns/iter (± 621
)1.00
es2020_nullish_coalescing
65539
ns/iter (± 118
)65508
ns/iter (± 111
)1.00
es2020_optional_chaining
93915
ns/iter (± 249
)93396
ns/iter (± 262
)1.01
es2022_class_properties
92200
ns/iter (± 186
)91831
ns/iter (± 141
)1.00
es2018_object_rest_spread
70140
ns/iter (± 119
)69953
ns/iter (± 86
)1.00
es2019_optional_catch_binding
60033
ns/iter (± 114
)59700
ns/iter (± 136
)1.01
es2017_async_to_generator
60544
ns/iter (± 81
)60061
ns/iter (± 113
)1.01
es2016_exponentiation
63606
ns/iter (± 79
)63406
ns/iter (± 177
)1.00
es2015_arrow
68662
ns/iter (± 185
)68492
ns/iter (± 157
)1.00
es2015_block_scoped_fn
64912
ns/iter (± 89
)64735
ns/iter (± 159
)1.00
es2015_block_scoping
153078
ns/iter (± 10631
)136365
ns/iter (± 11584
)1.12
es2015_classes
114566
ns/iter (± 386
)113636
ns/iter (± 348
)1.01
es2015_computed_props
59870
ns/iter (± 76
)59910
ns/iter (± 86
)1.00
es2015_destructuring
113855
ns/iter (± 220
)114004
ns/iter (± 245
)1.00
es2015_duplicate_keys
62491
ns/iter (± 81
)62178
ns/iter (± 102
)1.01
es2015_parameters
78658
ns/iter (± 107
)77926
ns/iter (± 61
)1.01
es2015_fn_name
65925
ns/iter (± 639
)64904
ns/iter (± 444
)1.02
es2015_for_of
63114
ns/iter (± 113
)62624
ns/iter (± 90
)1.01
es2015_instanceof
62215
ns/iter (± 83
)61591
ns/iter (± 104
)1.01
es2015_shorthand_property
59887
ns/iter (± 135
)59920
ns/iter (± 95
)1.00
es2015_spread
59807
ns/iter (± 119
)59514
ns/iter (± 89
)1.00
es2015_sticky_regex
61158
ns/iter (± 70
)60392
ns/iter (± 123
)1.01
es2015_typeof_symbol
61053
ns/iter (± 127
)60884
ns/iter (± 70
)1.00
es/transform/baseline/base
50679
ns/iter (± 57
)50217
ns/iter (± 88
)1.01
es/transform/baseline/common_reserved_word
61360
ns/iter (± 77
)61157
ns/iter (± 107
)1.00
es/transform/baseline/common_typescript
145394
ns/iter (± 3344
)141351
ns/iter (± 4856
)1.03
es/target/es3
167724
ns/iter (± 355
)167094
ns/iter (± 2311
)1.00
es/target/es2015
630699
ns/iter (± 1495
)622494
ns/iter (± 1558
)1.01
es/target/es2016
63831
ns/iter (± 124
)63544
ns/iter (± 109
)1.00
es/target/es2017
60711
ns/iter (± 133
)60209
ns/iter (± 209
)1.01
es/target/es2018
80148
ns/iter (± 86
)80097
ns/iter (± 77
)1.00
es/target/es2020
130881
ns/iter (± 321
)130896
ns/iter (± 198
)1.00
babelify-only
676233
ns/iter (± 10462
)660212
ns/iter (± 1003
)1.02
parse_and_babelify_angular
43873105
ns/iter (± 511683
)40574355
ns/iter (± 281420
)1.08
parse_and_babelify_backbone
5491818
ns/iter (± 82738
)5154974
ns/iter (± 25555
)1.07
parse_and_babelify_jquery
34424767
ns/iter (± 518289
)30461489
ns/iter (± 207846
)1.13
parse_and_babelify_jquery_mobile
58444017
ns/iter (± 1141178
)51544600
ns/iter (± 800460
)1.13
parse_and_babelify_mootools
35214498
ns/iter (± 503962
)31290980
ns/iter (± 804775
)1.13
parse_and_babelify_underscore
4367556
ns/iter (± 56584
)4174321
ns/iter (± 14836
)1.05
parse_and_babelify_yui
35287917
ns/iter (± 372737
)30006111
ns/iter (± 193233
)1.18
html/minify/document/css_spec
43053444
ns/iter (± 305404
)40383288
ns/iter (± 110318
)1.07
html/minify/document/github
17484279
ns/iter (± 73168
)17178034
ns/iter (± 26727
)1.02
html/minify/document/stackoverflow
15820747
ns/iter (± 81817
)15340888
ns/iter (± 25553
)1.03
html/minify/document_fragment/css_spec
40529471
ns/iter (± 407915
)38790304
ns/iter (± 92670
)1.04
html/minify/document_fragment/github
16798082
ns/iter (± 56807
)16542536
ns/iter (± 12901
)1.02
html/minify/document_fragment/stackoverflow
15298476
ns/iter (± 54035
)14956123
ns/iter (± 17015
)1.02
html/document/visitor/compare/clone
341789
ns/iter (± 1845
)336403
ns/iter (± 2050
)1.02
html/document/visitor/compare/visit_mut_span
373398
ns/iter (± 1428
)365025
ns/iter (± 2006
)1.02
html/document/visitor/compare/visit_mut_span_panic
379297
ns/iter (± 1626
)372259
ns/iter (± 1820
)1.02
html/document/visitor/compare/fold_span
409038
ns/iter (± 2373
)409518
ns/iter (± 2678
)1.00
html/document/visitor/compare/fold_span_panic
467605
ns/iter (± 2169
)462525
ns/iter (± 2182
)1.01
html/document_fragment/visitor/compare/clone
340192
ns/iter (± 2328
)330841
ns/iter (± 1648
)1.03
html/document_fragment/visitor/compare/visit_mut_span
368280
ns/iter (± 3003
)361405
ns/iter (± 2138
)1.02
html/document_fragment/visitor/compare/visit_mut_span_panic
374567
ns/iter (± 2356
)367437
ns/iter (± 2033
)1.02
html/document_fragment/visitor/compare/fold_span
405502
ns/iter (± 4238
)397938
ns/iter (± 1372
)1.02
html/document_fragment/visitor/compare/fold_span_panic
460705
ns/iter (± 1330
)454007
ns/iter (± 1765
)1.01
html/lexer/css_2021_spec
15555440
ns/iter (± 14633
)15587662
ns/iter (± 6748
)1.00
html/lexer/github_com_17_05_2022
6050985
ns/iter (± 2543
)6054534
ns/iter (± 2116
)1.00
html/lexer/stackoverflow_com_17_05_2022
5645611
ns/iter (± 2649
)5652681
ns/iter (± 3808
)1.00
html/parser/parser_document/css_2021_spec
26062169
ns/iter (± 194542
)25374873
ns/iter (± 85658
)1.03
html/parser/parser_document/github_com_17_05_2022
8813047
ns/iter (± 119984
)8777002
ns/iter (± 4244
)1.00
html/parser/parser_document/stackoverflow_com_17_05_2022
7836106
ns/iter (± 7357
)7723362
ns/iter (± 3189
)1.01
html/parser/parser_document_fragment/css_2021_spec
26146441
ns/iter (± 203481
)25612188
ns/iter (± 108809
)1.02
html/parser/parser_document_fragment/github_com_17_05_2022
8847555
ns/iter (± 13940
)8798200
ns/iter (± 4771
)1.01
html/parser/parser_document_fragment/stackoverflow_com_17_05_2022
7744773
ns/iter (± 5029
)7759300
ns/iter (± 8457
)1.00
This comment was automatically generated by workflow using github-action-benchmark.