Skip to content

Commit 3c44a2e

Browse files
committed
Add pureUnlessCallableIsImpureParameters to functionMetadata_original.php
1 parent f1324e0 commit 3c44a2e

File tree

2 files changed

+38
-20
lines changed

2 files changed

+38
-20
lines changed

bin/functionMetadata_original.php

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,39 +14,43 @@
1414
'array_diff' => ['hasSideEffects' => false],
1515
'array_diff_assoc' => ['hasSideEffects' => false],
1616
'array_diff_key' => ['hasSideEffects' => false],
17-
'array_diff_uassoc' => ['hasSideEffects' => false],
18-
'array_diff_ukey' => ['hasSideEffects' => false],
17+
'array_diff_uassoc' => ['pureUnlessCallableIsImpureParameters' => ['key_compare_func' => true]],
18+
'array_diff_ukey' => ['pureUnlessCallableIsImpureParameters' => ['key_comp_func' => true]],
1919
'array_fill' => ['hasSideEffects' => false],
2020
'array_fill_keys' => ['hasSideEffects' => false],
21+
'array_filter' => ['pureUnlessCallableIsImpureParameters' => ['callback' => true]],
22+
'array_find' => ['pureUnlessCallableIsImpureParameters' => ['callback' => true]],
2123
'array_flip' => ['hasSideEffects' => false],
2224
'array_intersect' => ['hasSideEffects' => false],
2325
'array_intersect_assoc' => ['hasSideEffects' => false],
2426
'array_intersect_key' => ['hasSideEffects' => false],
25-
'array_intersect_uassoc' => ['hasSideEffects' => false],
26-
'array_intersect_ukey' => ['hasSideEffects' => false],
27+
'array_intersect_uassoc' => ['pureUnlessCallableIsImpureParameters' => ['key_compare_func' => true]],
28+
'array_intersect_ukey' => ['pureUnlessCallableIsImpureParameters' => ['key_compare_func' => true]],
2729
'array_key_first' => ['hasSideEffects' => false],
2830
'array_key_last' => ['hasSideEffects' => false],
2931
'array_key_exists' => ['hasSideEffects' => false],
3032
'array_keys' => ['hasSideEffects' => false],
33+
'array_map' => ['pureUnlessCallableIsImpureParameters' => ['callback' => true]],
3134
'array_merge' => ['hasSideEffects' => false],
3235
'array_merge_recursive' => ['hasSideEffects' => false],
3336
'array_pad' => ['hasSideEffects' => false],
3437
'array_pop' => ['hasSideEffects' => true],
3538
'array_product' => ['hasSideEffects' => false],
3639
'array_push' => ['hasSideEffects' => true],
3740
'array_rand' => ['hasSideEffects' => false],
41+
'array_reduce' => ['pureUnlessCallableIsImpureParameters' => ['callback' => true]],
3842
'array_replace' => ['hasSideEffects' => false],
3943
'array_replace_recursive' => ['hasSideEffects' => false],
4044
'array_reverse' => ['hasSideEffects' => false],
4145
'array_shift' => ['hasSideEffects' => true],
4246
'array_slice' => ['hasSideEffects' => false],
4347
'array_sum' => ['hasSideEffects' => false],
44-
'array_udiff' => ['hasSideEffects' => false],
45-
'array_udiff_assoc' => ['hasSideEffects' => false],
46-
'array_udiff_uassoc' => ['hasSideEffects' => false],
47-
'array_uintersect' => ['hasSideEffects' => false],
48-
'array_uintersect_assoc' => ['hasSideEffects' => false],
49-
'array_uintersect_uassoc' => ['hasSideEffects' => false],
48+
'array_udiff' => ['pureUnlessCallableIsImpureParameters' => ['data_comp_func' => true]],
49+
'array_udiff_assoc' => ['pureUnlessCallableIsImpureParameters' => ['key_comp_func' => true]],
50+
'array_udiff_uassoc' => ['pureUnlessCallableIsImpureParameters' => ['data_comp_func' => true, 'key_comp_func' => true]],
51+
'array_uintersect' => ['pureUnlessCallableIsImpureParameters' => ['data_compare_func' => true]],
52+
'array_uintersect_assoc' => ['pureUnlessCallableIsImpureParameters' => ['data_compare_func' => true]],
53+
'array_uintersect_uassoc' => ['pureUnlessCallableIsImpureParameters' => ['data_compare_func' => true, 'key_compare_func' => true]],
5054
'array_unique' => ['hasSideEffects' => false],
5155
'array_unshift' => ['hasSideEffects' => true],
5256
'array_values' => ['hasSideEffects' => false],
@@ -64,6 +68,8 @@
6468
'bcdiv' => ['hasSideEffects' => false],
6569
'bcmod' => ['hasSideEffects' => false],
6670
'bcmul' => ['hasSideEffects' => false],
71+
'call_user_func' => ['pureUnlessCallableIsImpureParameters' => ['function' => true]],
72+
'call_user_func_array' => ['pureUnlessCallableIsImpureParameters' => ['function' => true]],
6773
// continue functionMap.php, line 424
6874
'chgrp' => ['hasSideEffects' => true],
6975
'chmod' => ['hasSideEffects' => true],
@@ -80,6 +86,8 @@
8086
'file_put_contents' => ['hasSideEffects' => true],
8187
'flock' => ['hasSideEffects' => true],
8288
'fopen' => ['hasSideEffects' => true],
89+
'forward_static_call' => ['pureUnlessCallableIsImpureParameters' => ['function' => true]],
90+
'forward_static_call_array' => ['pureUnlessCallableIsImpureParameters' => ['function' => true]],
8391
'fpassthru' => ['hasSideEffects' => true],
8492
'fputcsv' => ['hasSideEffects' => true],
8593
'fputs' => ['hasSideEffects' => true],
@@ -109,6 +117,7 @@
109117
'output_reset_rewrite_vars' => ['hasSideEffects' => true],
110118
'pclose' => ['hasSideEffects' => true],
111119
'popen' => ['hasSideEffects' => true],
120+
'preg_replace_callback' => ['pureUnlessCallableIsImpureParameters' => ['callback' => true]],
112121
'readfile' => ['hasSideEffects' => true],
113122
'rename' => ['hasSideEffects' => true],
114123
'rewind' => ['hasSideEffects' => true],

resources/functionMetadata.php

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -720,41 +720,45 @@
720720
'array_diff' => ['hasSideEffects' => false],
721721
'array_diff_assoc' => ['hasSideEffects' => false],
722722
'array_diff_key' => ['hasSideEffects' => false],
723-
'array_diff_uassoc' => ['hasSideEffects' => false],
724-
'array_diff_ukey' => ['hasSideEffects' => false],
723+
'array_diff_uassoc' => ['pureUnlessCallableIsImpureParameters' => ['key_compare_func' => true]],
724+
'array_diff_ukey' => ['pureUnlessCallableIsImpureParameters' => ['key_comp_func' => true]],
725725
'array_fill' => ['hasSideEffects' => false],
726726
'array_fill_keys' => ['hasSideEffects' => false],
727+
'array_filter' => ['pureUnlessCallableIsImpureParameters' => ['callback' => true]],
728+
'array_find' => ['pureUnlessCallableIsImpureParameters' => ['callback' => true]],
727729
'array_flip' => ['hasSideEffects' => false],
728730
'array_intersect' => ['hasSideEffects' => false],
729731
'array_intersect_assoc' => ['hasSideEffects' => false],
730732
'array_intersect_key' => ['hasSideEffects' => false],
731-
'array_intersect_uassoc' => ['hasSideEffects' => false],
732-
'array_intersect_ukey' => ['hasSideEffects' => false],
733+
'array_intersect_uassoc' => ['pureUnlessCallableIsImpureParameters' => ['key_compare_func' => true]],
734+
'array_intersect_ukey' => ['pureUnlessCallableIsImpureParameters' => ['key_compare_func' => true]],
733735
'array_is_list' => ['hasSideEffects' => false],
734736
'array_key_exists' => ['hasSideEffects' => false],
735737
'array_key_first' => ['hasSideEffects' => false],
736738
'array_key_last' => ['hasSideEffects' => false],
737739
'array_keys' => ['hasSideEffects' => false],
740+
'array_map' => ['pureUnlessCallableIsImpureParameters' => ['callback' => true]],
738741
'array_merge' => ['hasSideEffects' => false],
739742
'array_merge_recursive' => ['hasSideEffects' => false],
740743
'array_pad' => ['hasSideEffects' => false],
741744
'array_pop' => ['hasSideEffects' => true],
742745
'array_product' => ['hasSideEffects' => false],
743746
'array_push' => ['hasSideEffects' => true],
744747
'array_rand' => ['hasSideEffects' => false],
748+
'array_reduce' => ['pureUnlessCallableIsImpureParameters' => ['callback' => true]],
745749
'array_replace' => ['hasSideEffects' => false],
746750
'array_replace_recursive' => ['hasSideEffects' => false],
747751
'array_reverse' => ['hasSideEffects' => false],
748752
'array_search' => ['hasSideEffects' => false],
749753
'array_shift' => ['hasSideEffects' => true],
750754
'array_slice' => ['hasSideEffects' => false],
751755
'array_sum' => ['hasSideEffects' => false],
752-
'array_udiff' => ['hasSideEffects' => false],
753-
'array_udiff_assoc' => ['hasSideEffects' => false],
754-
'array_udiff_uassoc' => ['hasSideEffects' => false],
755-
'array_uintersect' => ['hasSideEffects' => false],
756-
'array_uintersect_assoc' => ['hasSideEffects' => false],
757-
'array_uintersect_uassoc' => ['hasSideEffects' => false],
756+
'array_udiff' => ['pureUnlessCallableIsImpureParameters' => ['data_comp_func' => true]],
757+
'array_udiff_assoc' => ['pureUnlessCallableIsImpureParameters' => ['key_comp_func' => true]],
758+
'array_udiff_uassoc' => ['pureUnlessCallableIsImpureParameters' => ['data_comp_func' => true ,'key_comp_func' => true]],
759+
'array_uintersect' => ['pureUnlessCallableIsImpureParameters' => ['data_compare_func' => true]],
760+
'array_uintersect_assoc' => ['pureUnlessCallableIsImpureParameters' => ['data_compare_func' => true]],
761+
'array_uintersect_uassoc' => ['pureUnlessCallableIsImpureParameters' => ['data_compare_func' => true ,'key_compare_func' => true]],
758762
'array_unique' => ['hasSideEffects' => false],
759763
'array_unshift' => ['hasSideEffects' => true],
760764
'array_values' => ['hasSideEffects' => false],
@@ -785,6 +789,8 @@
785789
'bzerror' => ['hasSideEffects' => false],
786790
'bzerrstr' => ['hasSideEffects' => false],
787791
'bzopen' => ['hasSideEffects' => false],
792+
'call_user_func' => ['pureUnlessCallableIsImpureParameters' => ['function' => true]],
793+
'call_user_func_array' => ['pureUnlessCallableIsImpureParameters' => ['function' => true]],
788794
'ceil' => ['hasSideEffects' => false],
789795
'checkdate' => ['hasSideEffects' => false],
790796
'checkdnsrr' => ['hasSideEffects' => false],
@@ -936,6 +942,8 @@
936942
'fmod' => ['hasSideEffects' => false],
937943
'fnmatch' => ['hasSideEffects' => true],
938944
'fopen' => ['hasSideEffects' => true],
945+
'forward_static_call' => ['pureUnlessCallableIsImpureParameters' => ['function' => true]],
946+
'forward_static_call_array' => ['pureUnlessCallableIsImpureParameters' => ['function' => true]],
939947
'fpassthru' => ['hasSideEffects' => true],
940948
'fputcsv' => ['hasSideEffects' => true],
941949
'fputs' => ['hasSideEffects' => true],
@@ -1482,6 +1490,7 @@
14821490
'preg_last_error' => ['hasSideEffects' => true],
14831491
'preg_last_error_msg' => ['hasSideEffects' => true],
14841492
'preg_quote' => ['hasSideEffects' => false],
1493+
'preg_replace_callback' => ['pureUnlessCallableIsImpureParameters' => ['callback' => true]],
14851494
'preg_split' => ['hasSideEffects' => false],
14861495
'property_exists' => ['hasSideEffects' => false],
14871496
'quoted_printable_decode' => ['hasSideEffects' => false],

0 commit comments

Comments
 (0)