]> granicus.if.org Git - php/commitdiff
Add return type for string functions
authorGabriel Caruso <carusogabriel34@gmail.com>
Thu, 30 May 2019 18:03:28 +0000 (15:03 -0300)
committerGabriel Caruso <carusogabriel34@gmail.com>
Sat, 1 Jun 2019 14:52:06 +0000 (11:52 -0300)
ext/standard/basic_functions.c
ext/standard/string.c

index 7d42375a020d356eb9756d84dff1495653fbae55..31311ace8a7cbfa6dbc03c0767958db14823ffa7 100644 (file)
@@ -2157,23 +2157,23 @@ ZEND_END_ARG_INFO()
 #endif
 
 #ifdef HAVE_STRCOLL
-ZEND_BEGIN_ARG_INFO(arginfo_strcoll, 0)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_strcoll, IS_LONG, 0)
        ZEND_ARG_INFO(0, str1)
        ZEND_ARG_INFO(0, str2)
 ZEND_END_ARG_INFO()
 #endif
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_trim, 0, 0, 1)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_trim, 0, 1, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
        ZEND_ARG_INFO(0, character_mask)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_rtrim, 0, 0, 1)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_rtrim, 0, 1, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
        ZEND_ARG_INFO(0, character_mask)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_ltrim, 0, 0, 1)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_ltrim, 0, 1, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
        ZEND_ARG_INFO(0, character_mask)
 ZEND_END_ARG_INFO()
@@ -2201,15 +2201,15 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_strtok, 0, 0, 1)
        ZEND_ARG_INFO(0, token)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO(arginfo_strtoupper, 0)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_strtoupper, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO(arginfo_strtolower, 0)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_strtolower, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_basename, 0, 0, 1)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_basename, 0, 1, IS_STRING, 0)
        ZEND_ARG_INFO(0, path)
        ZEND_ARG_INFO(0, suffix)
 ZEND_END_ARG_INFO()
@@ -2284,27 +2284,27 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_substr_replace, 0, 0, 3)
        ZEND_ARG_INFO(0, length)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO(arginfo_quotemeta, 0)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_quotemeta, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO(arginfo_ord, 0)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_ord, IS_LONG, 0)
        ZEND_ARG_INFO(0, character)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO(arginfo_chr, 0)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_chr, IS_STRING, 0)
        ZEND_ARG_INFO(0, codepoint)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO(arginfo_ucfirst, 0)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_ucfirst, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO(arginfo_lcfirst, 0)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_lcfirst, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_ucwords, 0, 0, 1)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_ucwords, 0, 1, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
        ZEND_ARG_INFO(0, delimiters)
 ZEND_END_ARG_INFO()
@@ -2319,26 +2319,26 @@ ZEND_BEGIN_ARG_INFO(arginfo_strrev, 0)
        ZEND_ARG_INFO(0, str)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_similar_text, 0, 0, 2)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_similar_text, 0, 2, IS_LONG, 0)
        ZEND_ARG_INFO(0, str1)
        ZEND_ARG_INFO(0, str2)
        ZEND_ARG_INFO(1, percent)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO(arginfo_addcslashes, 0)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_addcslashes, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
        ZEND_ARG_INFO(0, charlist)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO(arginfo_addslashes, 0)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_addslashes, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO(arginfo_stripcslashes, 0)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_stripcslashes, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO(arginfo_stripslashes, 0)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_stripslashes, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
 ZEND_END_ARG_INFO()
 
@@ -2356,22 +2356,22 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_str_ireplace, 0, 0, 3)
        ZEND_ARG_INFO(1, replace_count)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_hebrev, 0, 0, 1)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_hebrev, 0, 1, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
        ZEND_ARG_INFO(0, max_chars_per_line)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_hebrevc, 0, 0, 1)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_hebrevc, 0, 1, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
        ZEND_ARG_INFO(0, max_chars_per_line)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_nl2br, 0, 0, 1)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_nl2br, 0, 1, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
        ZEND_ARG_INFO(0, is_xhtml)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_strip_tags, 0, 0, 1)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_strip_tags, 0, 1, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
        ZEND_ARG_INFO(0, allowable_tags)
 ZEND_END_ARG_INFO()
@@ -2381,7 +2381,7 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_setlocale, 0, 0, 2)
        ZEND_ARG_VARIADIC_INFO(0, locales)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_parse_str, 0, 0, 2)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_parse_str, 0, 2, IS_VOID, 0)
        ZEND_ARG_INFO(0, encoded_string)
        ZEND_ARG_INFO(1, result)
 ZEND_END_ARG_INFO()
@@ -2403,7 +2403,7 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_count_chars, 0, 0, 1)
        ZEND_ARG_INFO(0, mode)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO(arginfo_strnatcmp, 0)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_strnatcmp, IS_LONG, 0)
        ZEND_ARG_INFO(0, s1)
        ZEND_ARG_INFO(0, s2)
 ZEND_END_ARG_INFO()
@@ -2411,7 +2411,7 @@ ZEND_END_ARG_INFO()
 ZEND_BEGIN_ARG_INFO(arginfo_localeconv, 0)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO(arginfo_strnatcasecmp, 0)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_strnatcasecmp, IS_LONG, 0)
        ZEND_ARG_INFO(0, s1)
        ZEND_ARG_INFO(0, s2)
 ZEND_END_ARG_INFO()
@@ -2436,11 +2436,11 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_sscanf, 0, 0, 2)
        ZEND_ARG_VARIADIC_INFO(1, vars)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO(arginfo_str_rot13, 0)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_str_rot13, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO(arginfo_str_shuffle, 0)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(arginfo_str_shuffle, IS_STRING, 0)
        ZEND_ARG_INFO(0, str)
 ZEND_END_ARG_INFO()
 
@@ -2475,11 +2475,11 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_substr_compare, 0, 0, 3)
        ZEND_ARG_INFO(0, case_sensitivity)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_utf8_encode, 0, 0, 1)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_utf8_encode, 0, 1, IS_STRING, 0)
        ZEND_ARG_INFO(0, data)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_utf8_decode, 0, 0, 1)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_utf8_decode, 0, 1, IS_STRING, 0)
        ZEND_ARG_INFO(0, data)
 ZEND_END_ARG_INFO()
 /* }}} */
index 860dfd59d7ecf55885dc7cd5bfdaf41c31f698c0..8db42ba1ff6d209822325d883aae04152d1b2adf 100644 (file)
@@ -223,7 +223,7 @@ PHP_MSHUTDOWN_FUNCTION(localeconv)
 /* }}} */
 #endif
 
-/* {{{ proto string bin2hex(string data)
+/* {{{ proto string|false bin2hex(string data)
    Converts the binary representation of data to hex */
 PHP_FUNCTION(bin2hex)
 {
@@ -244,7 +244,7 @@ PHP_FUNCTION(bin2hex)
 }
 /* }}} */
 
-/* {{{ proto string hex2bin(string data)
+/* {{{ proto string|false hex2bin(string data)
    Converts the hex representation of data to binary */
 PHP_FUNCTION(hex2bin)
 {
@@ -5458,7 +5458,7 @@ PHP_FUNCTION(strnatcasecmp)
 }
 /* }}} */
 
-/* {{{ proto int substr_count(string haystack, string needle [, int offset [, int length]])
+/* {{{ proto int|false substr_count(string haystack, string needle [, int offset [, int length]])
    Returns the number of times a substring occurs in the string */
 PHP_FUNCTION(substr_count)
 {