]> granicus.if.org Git - php/commitdiff
add some stubs for array func in basic_functions
authorjason-liew <jason_liew@163.com>
Sun, 11 Aug 2019 16:32:12 +0000 (00:32 +0800)
committerChristoph M. Becker <cmbecker69@gmx.de>
Wed, 14 Aug 2019 13:27:58 +0000 (15:27 +0200)
ext/standard/basic_functions.c
ext/standard/basic_functions.stub.php
ext/standard/basic_functions_arginfo.h

index 94dcc67bcc59b72d683f26afda2766e59aa2af96..3a17613347e50ca4c7f902fc16af2b10e36054c4 100644 (file)
@@ -123,48 +123,6 @@ static void user_tick_function_dtor(user_tick_function_entry *tick_function_entr
 /* {{{ arginfo */
 
 /* {{{ array.c */
-ZEND_BEGIN_ARG_INFO_EX(arginfo_krsort, 0, 0, 1)
-       ZEND_ARG_INFO(1, arg) /* ARRAY_INFO(1, arg, 0) */
-       ZEND_ARG_INFO(0, sort_flags)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_ksort, 0, 0, 1)
-       ZEND_ARG_INFO(1, arg) /* ARRAY_INFO(1, arg, 0) */
-       ZEND_ARG_INFO(0, sort_flags)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_count, 0, 0, 1)
-       ZEND_ARG_INFO(0, var)
-       ZEND_ARG_INFO(0, mode)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_natsort, 0)
-       ZEND_ARG_INFO(1, arg) /* ARRAY_INFO(1, arg, 0) */
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_natcasesort, 0)
-       ZEND_ARG_INFO(1, arg) /* ARRAY_INFO(1, arg, 0) */
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_asort, 0, 0, 1)
-       ZEND_ARG_INFO(1, arg) /* ARRAY_INFO(1, arg, 0) */
-       ZEND_ARG_INFO(0, sort_flags)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_arsort, 0, 0, 1)
-       ZEND_ARG_INFO(1, arg) /* ARRAY_INFO(1, arg, 0) */
-       ZEND_ARG_INFO(0, sort_flags)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_sort, 0, 0, 1)
-       ZEND_ARG_INFO(1, arg) /* ARRAY_INFO(1, arg, 0) */
-       ZEND_ARG_INFO(0, sort_flags)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_rsort, 0, 0, 1)
-       ZEND_ARG_INFO(1, arg) /* ARRAY_INFO(1, arg, 0) */
-       ZEND_ARG_INFO(0, sort_flags)
-ZEND_END_ARG_INFO()
 
 ZEND_BEGIN_ARG_INFO(arginfo_usort, 0)
        ZEND_ARG_INFO(1, arg) /* ARRAY_INFO(1, arg, 0) */
index fcc804f6f71a8152d8fb3291947fd98ea4d17cf1..418170970d14e87b989a3a772fbae512d2f25560 100644 (file)
@@ -60,6 +60,25 @@ function stream_wrapper_restore(string $protocol): bool {}
 /** @return int|false */
 function array_push(array &$stack, ...$args) {}
 
+function krsort(array &$arg, int $sort_flags = SORT_REGULAR): bool {}
+
+function ksort(array &$arg, int $sort_flags = SORT_REGULAR): bool {}
+
+/** @param array|Countable $array */
+function count($var, int $mode = COUNT_NORAML): int {}
+
+function natsort(array &$arg): bool {}
+
+function natcasesort(array &$arg): bool {}
+
+function asort(array &$arg, int $sort_flags = SORT_REGULAR): bool {}
+
+function arsort(array &$arg, int $sort_flags = SORT_REGULAR): bool {}
+
+function sort(array &$arg, int $sort_flags = SORT_REGULAR): bool {}
+
+function rsort(array &$arg, int $sort_flags = SORT_REGULAR): bool {}
+
 /* base64.c */
 
 function base64_encode(string $str): string {}
index a32e8991f765fef714bcd7e14049d6347aede48a..54fcce7217033e257eb2bc95f8edcd55674b43c2 100644 (file)
@@ -70,6 +70,32 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_array_push, 0, 0, 1)
        ZEND_ARG_VARIADIC_INFO(0, args)
 ZEND_END_ARG_INFO()
 
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_krsort, 0, 1, _IS_BOOL, 0)
+       ZEND_ARG_TYPE_INFO(1, arg, IS_ARRAY, 0)
+       ZEND_ARG_TYPE_INFO(0, sort_flags, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_ksort arginfo_krsort
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_count, 0, 1, IS_LONG, 0)
+       ZEND_ARG_INFO(0, var)
+       ZEND_ARG_TYPE_INFO(0, mode, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_natsort, 0, 1, _IS_BOOL, 0)
+       ZEND_ARG_TYPE_INFO(1, arg, IS_ARRAY, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_natcasesort arginfo_natsort
+
+#define arginfo_asort arginfo_krsort
+
+#define arginfo_arsort arginfo_krsort
+
+#define arginfo_sort arginfo_krsort
+
+#define arginfo_rsort arginfo_krsort
+
 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_base64_encode, 0, 1, IS_STRING, 0)
        ZEND_ARG_TYPE_INFO(0, str, IS_STRING, 0)
 ZEND_END_ARG_INFO()