Skip to content

Commit a829ed4

Browse files
committed
add some stubs for array func in basic_functions
1 parent 0c5b75b commit a829ed4

File tree

3 files changed

+45
-42
lines changed

3 files changed

+45
-42
lines changed

ext/standard/basic_functions.c

Lines changed: 0 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -123,48 +123,6 @@ static void user_tick_function_dtor(user_tick_function_entry *tick_function_entr
123123
/* {{{ arginfo */
124124

125125
/* {{{ array.c */
126-
ZEND_BEGIN_ARG_INFO_EX(arginfo_krsort, 0, 0, 1)
127-
ZEND_ARG_INFO(1, arg) /* ARRAY_INFO(1, arg, 0) */
128-
ZEND_ARG_INFO(0, sort_flags)
129-
ZEND_END_ARG_INFO()
130-
131-
ZEND_BEGIN_ARG_INFO_EX(arginfo_ksort, 0, 0, 1)
132-
ZEND_ARG_INFO(1, arg) /* ARRAY_INFO(1, arg, 0) */
133-
ZEND_ARG_INFO(0, sort_flags)
134-
ZEND_END_ARG_INFO()
135-
136-
ZEND_BEGIN_ARG_INFO_EX(arginfo_count, 0, 0, 1)
137-
ZEND_ARG_INFO(0, var)
138-
ZEND_ARG_INFO(0, mode)
139-
ZEND_END_ARG_INFO()
140-
141-
ZEND_BEGIN_ARG_INFO(arginfo_natsort, 0)
142-
ZEND_ARG_INFO(1, arg) /* ARRAY_INFO(1, arg, 0) */
143-
ZEND_END_ARG_INFO()
144-
145-
ZEND_BEGIN_ARG_INFO(arginfo_natcasesort, 0)
146-
ZEND_ARG_INFO(1, arg) /* ARRAY_INFO(1, arg, 0) */
147-
ZEND_END_ARG_INFO()
148-
149-
ZEND_BEGIN_ARG_INFO_EX(arginfo_asort, 0, 0, 1)
150-
ZEND_ARG_INFO(1, arg) /* ARRAY_INFO(1, arg, 0) */
151-
ZEND_ARG_INFO(0, sort_flags)
152-
ZEND_END_ARG_INFO()
153-
154-
ZEND_BEGIN_ARG_INFO_EX(arginfo_arsort, 0, 0, 1)
155-
ZEND_ARG_INFO(1, arg) /* ARRAY_INFO(1, arg, 0) */
156-
ZEND_ARG_INFO(0, sort_flags)
157-
ZEND_END_ARG_INFO()
158-
159-
ZEND_BEGIN_ARG_INFO_EX(arginfo_sort, 0, 0, 1)
160-
ZEND_ARG_INFO(1, arg) /* ARRAY_INFO(1, arg, 0) */
161-
ZEND_ARG_INFO(0, sort_flags)
162-
ZEND_END_ARG_INFO()
163-
164-
ZEND_BEGIN_ARG_INFO_EX(arginfo_rsort, 0, 0, 1)
165-
ZEND_ARG_INFO(1, arg) /* ARRAY_INFO(1, arg, 0) */
166-
ZEND_ARG_INFO(0, sort_flags)
167-
ZEND_END_ARG_INFO()
168126

169127
ZEND_BEGIN_ARG_INFO(arginfo_usort, 0)
170128
ZEND_ARG_INFO(1, arg) /* ARRAY_INFO(1, arg, 0) */

ext/standard/basic_functions.stub.php

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,25 @@ function stream_wrapper_restore(string $protocol): bool {}
6060
/** @return int|false */
6161
function array_push(array &$stack, ...$args) {}
6262

63+
function krsort(array &$arg, int $sort_flags = PHP_SORT_REGULAR): bool {}
64+
65+
function ksort(array &$arg, int $sort_flags = PHP_SORT_REGULAR): bool {}
66+
67+
/** @param array|Countable $array */
68+
function count($var, int $mode = COUNT_NORAML): int {}
69+
70+
function natsort(array &$arg): bool {}
71+
72+
function natcasesort(array &$arg): bool {}
73+
74+
function asort(array &$arg, int $sort_flags = PHP_SORT_REGULAR): bool {}
75+
76+
function arsort(array &$arg, int $sort_flags = PHP_SORT_REGULAR): bool {}
77+
78+
function sort(array &$arg, int $sort_flags = PHP_SORT_REGULAR): bool {}
79+
80+
function rsort(array &$arg, int $sort_flags = PHP_SORT_REGULAR): bool {}
81+
6382
/* base64.c */
6483

6584
function base64_encode(string $str): string {}

ext/standard/basic_functions_arginfo.h

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,32 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_array_push, 0, 0, 1)
7070
ZEND_ARG_VARIADIC_INFO(0, args)
7171
ZEND_END_ARG_INFO()
7272

73+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_krsort, 0, 1, _IS_BOOL, 0)
74+
ZEND_ARG_TYPE_INFO(1, arg, IS_ARRAY, 0)
75+
ZEND_ARG_TYPE_INFO(0, sort_flags, IS_LONG, 0)
76+
ZEND_END_ARG_INFO()
77+
78+
#define arginfo_ksort arginfo_krsort
79+
80+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_count, 0, 1, IS_LONG, 0)
81+
ZEND_ARG_INFO(0, var)
82+
ZEND_ARG_TYPE_INFO(0, mode, IS_LONG, 0)
83+
ZEND_END_ARG_INFO()
84+
85+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_natsort, 0, 1, _IS_BOOL, 0)
86+
ZEND_ARG_TYPE_INFO(1, arg, IS_ARRAY, 0)
87+
ZEND_END_ARG_INFO()
88+
89+
#define arginfo_natcasesort arginfo_natsort
90+
91+
#define arginfo_asort arginfo_krsort
92+
93+
#define arginfo_arsort arginfo_krsort
94+
95+
#define arginfo_sort arginfo_krsort
96+
97+
#define arginfo_rsort arginfo_krsort
98+
7399
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_base64_encode, 0, 1, IS_STRING, 0)
74100
ZEND_ARG_TYPE_INFO(0, str, IS_STRING, 0)
75101
ZEND_END_ARG_INFO()

0 commit comments

Comments
 (0)