From: Gabriel Caruso Date: Wed, 29 May 2019 22:23:30 +0000 (-0300) Subject: Add return type to some array_* functions X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=192170a39ad73539a1bbda374e17cdf502e99885;p=php Add return type to some array_* functions --- diff --git a/ext/standard/array.c b/ext/standard/array.c index 355f13dfa9..544f239637 100644 --- a/ext/standard/array.c +++ b/ext/standard/array.c @@ -2713,7 +2713,7 @@ PHP_FUNCTION(array_fill_keys) zend_hash_real_init_packed(Z_ARRVAL_P(return_value)); \ } while (0) -/* {{{ proto array range(mixed low, mixed high[, int step]) +/* {{{ proto array|false range(mixed low, mixed high[, int step]) Create an array containing the range of integers or characters from low to high (inclusive) */ PHP_FUNCTION(range) { @@ -3136,7 +3136,7 @@ static void php_splice(HashTable *in_hash, zend_long offset, zend_long length, H } /* }}} */ -/* {{{ proto int array_push(array stack, mixed var [, mixed ...]) +/* {{{ proto int|false array_push(array stack, mixed var [, mixed ...]) Pushes elements onto the end of the array */ PHP_FUNCTION(array_push) { @@ -3382,7 +3382,7 @@ PHP_FUNCTION(array_unshift) } /* }}} */ -/* {{{ proto array array_splice(array input, int offset [, int length [, array replacement]]) +/* {{{ proto array|null array_splice(array input, int offset [, int length [, array replacement]]) Removes the elements designated by offset and length and replace them with supplied array */ PHP_FUNCTION(array_splice) { @@ -4308,7 +4308,7 @@ PHP_FUNCTION(array_reverse) } /* }}} */ -/* {{{ proto array array_pad(array input, int pad_size, mixed pad_value) +/* {{{ proto array|false array_pad(array input, int pad_size, mixed pad_value) Returns a copy of input array padded with pad_value to size pad_size */ PHP_FUNCTION(array_pad) { @@ -5897,7 +5897,7 @@ PHP_FUNCTION(array_rand) } /* }}} */ -/* {{{ proto mixed array_sum(array input) +/* {{{ proto int|float array_sum(array input) Returns the sum of the array entries */ PHP_FUNCTION(array_sum) { @@ -5922,7 +5922,7 @@ PHP_FUNCTION(array_sum) } /* }}} */ -/* {{{ proto mixed array_product(array input) +/* {{{ proto int|float array_product(array input) Returns the product of the array entries */ PHP_FUNCTION(array_product) { diff --git a/ext/standard/basic_functions.c b/ext/standard/basic_functions.c index 31311ace8a..ce133d61f0 100644 --- a/ext/standard/basic_functions.c +++ b/ext/standard/basic_functions.c @@ -292,19 +292,19 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_max, 0, 0, 1) ZEND_ARG_VARIADIC_INFO(0, args) ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_INFO_EX(arginfo_array_walk, 0, 0, 2) +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_array_walk, 0, 2, _IS_BOOL, 0) ZEND_ARG_INFO(1, input) /* ARRAY_INFO(1, arg, 0) */ ZEND_ARG_INFO(0, funcname) ZEND_ARG_INFO(0, userdata) ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_INFO_EX(arginfo_array_walk_recursive, 0, 0, 2) +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_array_walk_recursive, 0, 2, _IS_BOOL, 0) ZEND_ARG_INFO(1, input) /* ARRAY_INFO(1, arg, 0) */ ZEND_ARG_INFO(0, funcname) ZEND_ARG_INFO(0, userdata) ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_INFO_EX(arginfo_in_array, 0, 0, 2) +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_in_array, 0, 2, _IS_BOOL, 0) ZEND_ARG_INFO(0, needle) ZEND_ARG_INFO(0, haystack) /* ARRAY_INFO(0, haystack, 0) */ ZEND_ARG_INFO(0, strict) @@ -332,7 +332,7 @@ ZEND_BEGIN_ARG_INFO(arginfo_array_fill, 0) ZEND_ARG_INFO(0, val) ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_INFO(arginfo_array_fill_keys, 0) +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_array_fill_keys, IS_ARRAY, 0) ZEND_ARG_INFO(0, keys) /* ARRAY_INFO(0, keys, 0) */ ZEND_ARG_INFO(0, val) ZEND_END_ARG_INFO() @@ -360,7 +360,7 @@ ZEND_BEGIN_ARG_INFO(arginfo_array_shift, 0) ZEND_ARG_INFO(1, stack) /* ARRAY_INFO(1, stack, 0) */ ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_INFO_EX(arginfo_array_unshift, 0, 0, 1) +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_array_unshift, 0, 1, IS_LONG, 0) ZEND_ARG_INFO(1, stack) /* ARRAY_INFO(1, stack, 0) */ ZEND_ARG_VARIADIC_INFO(0, vars) ZEND_END_ARG_INFO() @@ -372,18 +372,18 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_array_splice, 0, 0, 2) ZEND_ARG_INFO(0, replacement) /* ARRAY_INFO(0, arg, 1) */ ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_INFO_EX(arginfo_array_slice, 0, 0, 2) +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_array_slice, 0, 2, IS_ARRAY, 0) ZEND_ARG_INFO(0, arg) /* ARRAY_INFO(1, arg, 0) */ ZEND_ARG_INFO(0, offset) ZEND_ARG_INFO(0, length) ZEND_ARG_INFO(0, preserve_keys) ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_INFO_EX(arginfo_array_merge, 0, 0, 0) +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_array_merge, 0, 0, IS_ARRAY, 0) ZEND_ARG_VARIADIC_INFO(0, arrays) ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_INFO_EX(arginfo_array_merge_recursive, 0, 0, 0) +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_array_merge_recursive, 0, 0, IS_ARRAY, 0) ZEND_ARG_VARIADIC_INFO(0, arrays) ZEND_END_ARG_INFO() @@ -397,7 +397,7 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_array_replace_recursive, 0, 0, 1) ZEND_ARG_VARIADIC_INFO(0, arrays) ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_INFO_EX(arginfo_array_keys, 0, 0, 1) +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_array_keys, 0, 1, IS_ARRAY, 0) ZEND_ARG_INFO(0, arg) /* ARRAY_INFO(0, arg, 0) */ ZEND_ARG_INFO(0, search_value) ZEND_ARG_INFO(0, strict) @@ -412,7 +412,7 @@ ZEND_BEGIN_ARG_INFO(arginfo_array_key_last, 0) ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_INFO(arginfo_array_values, 0) +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_array_values, IS_ARRAY, 0) ZEND_ARG_INFO(0, arg) /* ARRAY_INFO(0, arg, 0) */ ZEND_END_ARG_INFO() @@ -426,7 +426,7 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_array_column, 0, 0, 2) ZEND_ARG_INFO(0, index_key) ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_INFO_EX(arginfo_array_reverse, 0, 0, 1) +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_array_reverse, 0, 1, IS_ARRAY, 0) ZEND_ARG_INFO(0, input) /* ARRAY_INFO(0, arg, 0) */ ZEND_ARG_INFO(0, preserve_keys) ZEND_END_ARG_INFO() @@ -437,16 +437,16 @@ ZEND_BEGIN_ARG_INFO(arginfo_array_pad, 0) ZEND_ARG_INFO(0, pad_value) ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_INFO(arginfo_array_flip, 0) +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_array_flip, IS_ARRAY, 0) ZEND_ARG_INFO(0, arg) /* ARRAY_INFO(0, arg, 0) */ ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_INFO_EX(arginfo_array_change_key_case, 0, 0, 1) +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_array_change_key_case, 0, 1, IS_ARRAY, 0) ZEND_ARG_INFO(0, input) /* ARRAY_INFO(0, arg, 0) */ ZEND_ARG_INFO(0, case) ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_INFO_EX(arginfo_array_unique, 0, 0, 1) +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_array_unique, 0, 1, IS_ARRAY, 0) ZEND_ARG_INFO(0, arg) /* ARRAY_INFO(0, arg, 0) */ ZEND_ARG_INFO(0, flags) ZEND_END_ARG_INFO() @@ -569,7 +569,7 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_array_reduce, 0, 0, 2) ZEND_ARG_INFO(0, initial) ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_INFO_EX(arginfo_array_filter, 0, 0, 1) +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_array_filter, 0, 1, IS_ARRAY, 0) ZEND_ARG_INFO(0, arg) /* ARRAY_INFO(0, arg, 0) */ ZEND_ARG_INFO(0, callback) ZEND_ARG_INFO(0, use_keys) @@ -580,7 +580,7 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_array_map, 0, 0, 2) ZEND_ARG_VARIADIC_INFO(0, arrays) ZEND_END_ARG_INFO() -ZEND_BEGIN_ARG_INFO(arginfo_array_key_exists, 0) +ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_array_key_exists, _IS_BOOL, 0) ZEND_ARG_INFO(0, key) ZEND_ARG_INFO(0, search) ZEND_END_ARG_INFO()