--- /dev/null
+<?php
+
+class Collator
+{
+ public function __construct(string $locale) {}
+
+ /** @return Collator|null */
+ public static function create(string $locale) {}
+
+ /** @return int|false */
+ public function compare(string $str1, string $str2) {}
+
+ /** @return bool */
+ public function sort(array &$arr, $sort_flag = Collator::SORT_REGULAR) {}
+
+ /** @return bool */
+ public function sortWithSortKeys(array &$arr) {}
+
+ /** @return bool */
+ public function asort(array &$arr, int $sort_flag = Collator::SORT_REGULAR) {}
+
+ /** @return int|false */
+ public function getAttribute(int $attr) {}
+
+ /** @return bool */
+ public function setAttribute(int $attr, int $val) {}
+
+ /** @return int */
+ public function getStrength() {}
+
+ /** @return bool */
+ public function setStrength(int $strength) {}
+
+ /** @return string|false */
+ public function getLocale(int $type) {}
+
+ /** @return int|false */
+ public function getErrorCode() {}
+
+ /** @return string|false */
+ public function getErrorMessage() {}
+
+ /** @return string|false */
+ public function getSortKey(string $str) {}
+}
+
+function collator_create(string $locale): ?Collator {}
+
+function collator_compare(Collator $object, string $str1, string $str2): int|false {}
+
+function collator_get_attribute(Collator $object, int $attr): int|false {}
+
+function collator_set_attribute(Collator $object, int $attr, int $val): bool {}
+
+function collator_get_strength(Collator $object): int {}
+
+function collator_set_strength(Collator $object, int $strength): bool {}
+
+function collator_sort(Collator $object, array &$arr, int $sort_flag = Collator::SORT_REGULAR): bool {}
+
+function collator_sort_with_sort_keys(Collator $object, array &$arr): bool {}
+
+function collator_asort(Collator $object, array &$arr, int $sort_flag = Collator::SORT_REGULAR): bool {}
+
+function collator_get_locale(Collator $object, int $type): string|false {}
+
+function collator_get_error_code(Collator $object): int|false {}
+
+function collator_get_error_message(Collator $object): string|false {}
+
+function collator_get_sort_key(Collator $object, string $str): string|false {}
--- /dev/null
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Collator___construct, 0, 0, 1)
+ ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_Collator_create arginfo_class_Collator___construct
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Collator_compare, 0, 0, 2)
+ ZEND_ARG_TYPE_INFO(0, str1, IS_STRING, 0)
+ ZEND_ARG_TYPE_INFO(0, str2, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Collator_sort, 0, 0, 1)
+ ZEND_ARG_TYPE_INFO(1, arr, IS_ARRAY, 0)
+ ZEND_ARG_INFO(0, sort_flag)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Collator_sortWithSortKeys, 0, 0, 1)
+ ZEND_ARG_TYPE_INFO(1, arr, IS_ARRAY, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Collator_asort, 0, 0, 1)
+ ZEND_ARG_TYPE_INFO(1, arr, IS_ARRAY, 0)
+ ZEND_ARG_TYPE_INFO(0, sort_flag, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Collator_getAttribute, 0, 0, 1)
+ ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Collator_setAttribute, 0, 0, 2)
+ ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
+ ZEND_ARG_TYPE_INFO(0, val, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Collator_getStrength, 0, 0, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Collator_setStrength, 0, 0, 1)
+ ZEND_ARG_TYPE_INFO(0, strength, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Collator_getLocale, 0, 0, 1)
+ ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_Collator_getErrorCode arginfo_class_Collator_getStrength
+
+#define arginfo_class_Collator_getErrorMessage arginfo_class_Collator_getStrength
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Collator_getSortKey, 0, 0, 1)
+ ZEND_ARG_TYPE_INFO(0, str, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_collator_create, 0, 1, Collator, 1)
+ ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_compare, 0, 3, MAY_BE_LONG|MAY_BE_FALSE)
+ ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+ ZEND_ARG_TYPE_INFO(0, str1, IS_STRING, 0)
+ ZEND_ARG_TYPE_INFO(0, str2, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_attribute, 0, 2, MAY_BE_LONG|MAY_BE_FALSE)
+ ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+ ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_set_attribute, 0, 3, _IS_BOOL, 0)
+ ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+ ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
+ ZEND_ARG_TYPE_INFO(0, val, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_get_strength, 0, 1, IS_LONG, 0)
+ ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_set_strength, 0, 2, _IS_BOOL, 0)
+ ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+ ZEND_ARG_TYPE_INFO(0, strength, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_sort, 0, 2, _IS_BOOL, 0)
+ ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+ ZEND_ARG_TYPE_INFO(1, arr, IS_ARRAY, 0)
+ ZEND_ARG_TYPE_INFO(0, sort_flag, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_sort_with_sort_keys, 0, 2, _IS_BOOL, 0)
+ ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+ ZEND_ARG_TYPE_INFO(1, arr, IS_ARRAY, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_collator_asort arginfo_collator_sort
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_locale, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+ ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+ ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_error_code, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
+ ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_error_message, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+ ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_sort_key, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+ ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+ ZEND_ARG_TYPE_INFO(0, str, IS_STRING, 0)
+ZEND_END_ARG_INFO()
#include "collator_locale.h"
#include "collator_create.h"
#include "collator_error.h"
+#include "collator_arginfo.h"
#include "intl_error.h"
#include <unicode/ucol.h>
* 'Collator' class registration structures & functions
*/
-/* {{{ Collator methods arguments info */
-/* NOTE: modifying 'collator_XX_args' do not forget to
- modify approptiate 'collator_XX_args' for
- the procedural API.
-*/
-ZEND_BEGIN_ARG_INFO_EX( collator_0_args, 0, 0, 0 )
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX( collator_1_arg, 0, 0, 1 )
- ZEND_ARG_INFO( 0, arg1 )
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX( collator_2_args, 0, 0, 2 )
- ZEND_ARG_INFO( 0, arg1 )
- ZEND_ARG_INFO( 0, arg2 )
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX( collator_sort_args, 0, 0, 1 )
- ZEND_ARG_ARRAY_INFO( 1, arr, 0 )
- ZEND_ARG_INFO( 0, flags )
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX( collator_sort_with_sort_keys_args, 0, 0, 1 )
- ZEND_ARG_ARRAY_INFO( 1, arr, 0 )
-ZEND_END_ARG_INFO()
-
-/* }}} */
-
/* {{{ Collator_class_functions
* Every 'Collator' class method has an entry in this table
*/
static const zend_function_entry Collator_class_functions[] = {
- PHP_ME( Collator, __construct, collator_1_arg, ZEND_ACC_PUBLIC )
- ZEND_FENTRY( create, ZEND_FN( collator_create ), collator_1_arg, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC )
- PHP_NAMED_FE( compare, ZEND_FN( collator_compare ), collator_2_args )
- PHP_NAMED_FE( sort, ZEND_FN( collator_sort ), collator_sort_args )
- PHP_NAMED_FE( sortWithSortKeys, ZEND_FN( collator_sort_with_sort_keys ), collator_sort_with_sort_keys_args )
- PHP_NAMED_FE( asort, ZEND_FN( collator_asort ), collator_sort_args )
- PHP_NAMED_FE( getAttribute, ZEND_FN( collator_get_attribute ), collator_1_arg )
- PHP_NAMED_FE( setAttribute, ZEND_FN( collator_set_attribute ), collator_2_args )
- PHP_NAMED_FE( getStrength, ZEND_FN( collator_get_strength ), collator_0_args )
- PHP_NAMED_FE( setStrength, ZEND_FN( collator_set_strength ), collator_1_arg )
- PHP_NAMED_FE( getLocale, ZEND_FN( collator_get_locale ), collator_1_arg )
- PHP_NAMED_FE( getErrorCode, ZEND_FN( collator_get_error_code ), collator_0_args )
- PHP_NAMED_FE( getErrorMessage, ZEND_FN( collator_get_error_message ), collator_0_args )
- PHP_NAMED_FE( getSortKey, ZEND_FN( collator_get_sort_key ), collator_1_arg )
+ PHP_ME( Collator, __construct, arginfo_class_Collator___construct, ZEND_ACC_PUBLIC )
+ ZEND_FENTRY( create, ZEND_FN( collator_create ), arginfo_class_Collator_create, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC )
+ PHP_NAMED_FE( compare, ZEND_FN( collator_compare ), arginfo_class_Collator_compare )
+ PHP_NAMED_FE( sort, ZEND_FN( collator_sort ), arginfo_class_Collator_sort )
+ PHP_NAMED_FE( sortWithSortKeys, ZEND_FN( collator_sort_with_sort_keys ), arginfo_class_Collator_sortWithSortKeys )
+ PHP_NAMED_FE( asort, ZEND_FN( collator_asort ), arginfo_class_Collator_asort )
+ PHP_NAMED_FE( getAttribute, ZEND_FN( collator_get_attribute ), arginfo_class_Collator_getAttribute )
+ PHP_NAMED_FE( setAttribute, ZEND_FN( collator_set_attribute ), arginfo_class_Collator_setAttribute )
+ PHP_NAMED_FE( getStrength, ZEND_FN( collator_get_strength ), arginfo_class_Collator_getStrength )
+ PHP_NAMED_FE( setStrength, ZEND_FN( collator_set_strength ), arginfo_class_Collator_setStrength )
+ PHP_NAMED_FE( getLocale, ZEND_FN( collator_get_locale ), arginfo_class_Collator_getLocale )
+ PHP_NAMED_FE( getErrorCode, ZEND_FN( collator_get_error_code ), arginfo_class_Collator_getErrorCode )
+ PHP_NAMED_FE( getErrorMessage, ZEND_FN( collator_get_error_message ), arginfo_class_Collator_getErrorMessage )
+ PHP_NAMED_FE( getSortKey, ZEND_FN( collator_get_sort_key ), arginfo_class_Collator_getSortKey )
PHP_FE_END
};
/* }}} */
--- /dev/null
+<?php
+
+class IntlIterator implements Iterator
+{
+ public function current() {}
+
+ public function key() {}
+
+ public function next() {}
+
+ public function rewind() {}
+
+ public function valid() {}
+}
+
+function intl_get_error_code(): int {}
+
+function intl_get_error_message(): string {}
+
+function intl_is_failure(int $error_code): bool {}
+
+function intl_error_name(int $error_code): string {}
--- /dev/null
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_IntlIterator_current, 0, 0, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_IntlIterator_key arginfo_class_IntlIterator_current
+
+#define arginfo_class_IntlIterator_next arginfo_class_IntlIterator_current
+
+#define arginfo_class_IntlIterator_rewind arginfo_class_IntlIterator_current
+
+#define arginfo_class_IntlIterator_valid arginfo_class_IntlIterator_current
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intl_get_error_code, 0, 0, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intl_get_error_message, 0, 0, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intl_is_failure, 0, 1, _IS_BOOL, 0)
+ ZEND_ARG_TYPE_INFO(0, error_code, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intl_error_name, 0, 1, IS_STRING, 0)
+ ZEND_ARG_TYPE_INFO(0, error_code, IS_LONG, 0)
+ZEND_END_ARG_INFO()
#include <stdio.h>
#include "common_enum.h"
+#include "common_arginfo.h"
extern "C" {
#include <zend_interfaces.h>
RETURN_BOOL(ii->iterator->funcs->valid(ii->iterator) == SUCCESS);
}
-ZEND_BEGIN_ARG_INFO_EX(ainfo_se_void, 0, 0, 0)
-ZEND_END_ARG_INFO()
-
static const zend_function_entry IntlIterator_class_functions[] = {
- PHP_ME(IntlIterator, current, ainfo_se_void, ZEND_ACC_PUBLIC)
- PHP_ME(IntlIterator, key, ainfo_se_void, ZEND_ACC_PUBLIC)
- PHP_ME(IntlIterator, next, ainfo_se_void, ZEND_ACC_PUBLIC)
- PHP_ME(IntlIterator, rewind, ainfo_se_void, ZEND_ACC_PUBLIC)
- PHP_ME(IntlIterator, valid, ainfo_se_void, ZEND_ACC_PUBLIC)
+ PHP_ME(IntlIterator, current, arginfo_class_IntlIterator_current, ZEND_ACC_PUBLIC)
+ PHP_ME(IntlIterator, key, arginfo_class_IntlIterator_key, ZEND_ACC_PUBLIC)
+ PHP_ME(IntlIterator, next, arginfo_class_IntlIterator_next, ZEND_ACC_PUBLIC)
+ PHP_ME(IntlIterator, rewind, arginfo_class_IntlIterator_rewind, ZEND_ACC_PUBLIC)
+ PHP_ME(IntlIterator, valid, arginfo_class_IntlIterator_valid, ZEND_ACC_PUBLIC)
PHP_FE_END
};
#include "collator/collator_locale.h"
#include "collator/collator_create.h"
#include "collator/collator_error.h"
+#include "collator/collator_arginfo.h"
#include "converter/converter.h"
#include "transliterator/transliterator.h"
#include "transliterator/transliterator_class.h"
#include "transliterator/transliterator_methods.h"
+#include "transliterator/transliterator_arginfo.h"
#include "timezone/timezone_class.h"
#include "timezone/timezone_methods.h"
#include "msgformat/msgformat_arginfo.h"
#include "common/common_error.h"
#include "common/common_enum.h"
+#include "common/common_arginfo.h"
#include <unicode/uloc.h>
#include <unicode/uclean.h>
return INTL_G(default_locale);
}
-/* {{{ Arguments info */
-ZEND_BEGIN_ARG_INFO_EX(collator_static_0_args, 0, 0, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(collator_static_1_arg, 0, 0, 1)
- ZEND_ARG_INFO(0, arg1)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(collator_0_args, 0, 0, 1)
- ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(collator_1_arg, 0, 0, 2)
- ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
- ZEND_ARG_INFO(0, arg1)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(collator_2_args, 0, 0, 3)
- ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
- ZEND_ARG_INFO(0, arg1)
- ZEND_ARG_INFO(0, arg2)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(collator_sort_args, 0, 0, 2)
- ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
- ZEND_ARG_ARRAY_INFO(1, arr, 0)
- ZEND_ARG_INFO(0, sort_flags)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(collator_sort_with_sort_keys_args, 0, 0, 2)
- ZEND_ARG_OBJ_INFO(0, coll, Collator, 0)
- ZEND_ARG_ARRAY_INFO(1, arr, 0)
-ZEND_END_ARG_INFO()
-
ZEND_BEGIN_ARG_INFO_EX(numfmt_parse_arginfo, 0, 0, 2)
ZEND_ARG_INFO(0, formatter)
ZEND_ARG_INFO(0, string)
ZEND_ARG_INFO(1, position)
ZEND_END_ARG_INFO()
-#define intl_0_args collator_static_0_args
-#define intl_1_arg collator_static_1_arg
-
ZEND_BEGIN_ARG_INFO_EX(arginfo_numfmt_create, 0, 0, 2)
ZEND_ARG_INFO(0, locale)
ZEND_ARG_INFO(0, style)
ZEND_ARG_INFO(0, type)
ZEND_END_ARG_INFO()
-ZEND_BEGIN_ARG_INFO_EX( arginfo_transliterator_void, 0, 0, 0 )
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX( arginfo_transliterator_create, 0, 0, 1 )
- ZEND_ARG_INFO( 0, id )
- ZEND_ARG_INFO( 0, direction )
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX( arginfo_transliterator_create_from_rules, 0, 0, 1 )
- ZEND_ARG_INFO( 0, rules )
- ZEND_ARG_INFO( 0, direction )
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX( arginfo_transliterator_create_inverse, 0, 0, 1 )
- ZEND_ARG_OBJ_INFO( 0, orig_trans, Transliterator, 0 )
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX( arginfo_transliterator_transliterate, 0, 0, 2 )
- ZEND_ARG_INFO( 0, trans )
- ZEND_ARG_INFO( 0, subject )
- ZEND_ARG_INFO( 0, start )
- ZEND_ARG_INFO( 0, end )
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX( arginfo_transliterator_error, 0, 0, 1 )
- ZEND_ARG_OBJ_INFO( 0, trans, Transliterator, 0 )
-ZEND_END_ARG_INFO()
-
/* }}} */
/* {{{ intl_functions
static const zend_function_entry intl_functions[] = {
/* collator functions */
- PHP_FE( collator_create, collator_static_1_arg )
- PHP_FE( collator_compare, collator_2_args )
- PHP_FE( collator_get_attribute, collator_1_arg )
- PHP_FE( collator_set_attribute, collator_2_args )
- PHP_FE( collator_get_strength, collator_0_args )
- PHP_FE( collator_set_strength, collator_1_arg )
- PHP_FE( collator_sort, collator_sort_args )
- PHP_FE( collator_sort_with_sort_keys, collator_sort_with_sort_keys_args )
- PHP_FE( collator_asort, collator_sort_args )
- PHP_FE( collator_get_locale, collator_1_arg )
- PHP_FE( collator_get_error_code, collator_0_args )
- PHP_FE( collator_get_error_message, collator_0_args )
- PHP_FE( collator_get_sort_key, collator_1_arg )
+ PHP_FE( collator_create, arginfo_collator_create )
+ PHP_FE( collator_compare, arginfo_collator_compare )
+ PHP_FE( collator_get_attribute, arginfo_collator_get_attribute )
+ PHP_FE( collator_set_attribute, arginfo_collator_set_attribute )
+ PHP_FE( collator_get_strength, arginfo_collator_get_strength )
+ PHP_FE( collator_set_strength, arginfo_collator_set_strength )
+ PHP_FE( collator_sort, arginfo_collator_sort )
+ PHP_FE( collator_sort_with_sort_keys, arginfo_collator_sort_with_sort_keys )
+ PHP_FE( collator_asort, arginfo_collator_asort )
+ PHP_FE( collator_get_locale, arginfo_collator_get_locale )
+ PHP_FE( collator_get_error_code, arginfo_collator_get_error_code )
+ PHP_FE( collator_get_error_message, arginfo_collator_get_error_message )
+ PHP_FE( collator_get_sort_key, arginfo_collator_get_sort_key )
/* formatter functions */
PHP_FE( numfmt_create, arginfo_numfmt_create )
/* Transliterator functions */
PHP_FE( transliterator_create, arginfo_transliterator_create )
PHP_FE( transliterator_create_from_rules, arginfo_transliterator_create_from_rules )
- PHP_FE( transliterator_list_ids, arginfo_transliterator_void )
+ PHP_FE( transliterator_list_ids, arginfo_transliterator_list_ids )
PHP_FE( transliterator_create_inverse, arginfo_transliterator_create_inverse)
PHP_FE( transliterator_transliterate, arginfo_transliterator_transliterate )
- PHP_FE( transliterator_get_error_code, arginfo_transliterator_error )
- PHP_FE( transliterator_get_error_message, arginfo_transliterator_error )
+ PHP_FE( transliterator_get_error_code, arginfo_transliterator_get_error_code )
+ PHP_FE( transliterator_get_error_message, arginfo_transliterator_get_error_message )
/* TimeZone functions */
PHP_FE( intltz_create_time_zone, arginfo_intltz_create_time_zone )
PHP_FE( intlgregcal_is_leap_year, arginfo_intlgregcal_is_leap_year )
/* common functions */
- PHP_FE( intl_get_error_code, intl_0_args )
- PHP_FE( intl_get_error_message, intl_0_args )
- PHP_FE( intl_is_failure, intl_1_arg )
- PHP_FE( intl_error_name, intl_1_arg )
+ PHP_FE( intl_get_error_code, arginfo_intl_get_error_code )
+ PHP_FE( intl_get_error_message, arginfo_intl_get_error_message )
+ PHP_FE( intl_is_failure, arginfo_intl_is_failure )
+ PHP_FE( intl_error_name, arginfo_intl_error_name )
PHP_FE_END
};
--- /dev/null
+<?php
+
+class Transliterator
+{
+ final private function __construct() {}
+
+ /** @return Transliterator|null */
+ public static function create(string $id, int $direction = Transliterator::FORWARD) {}
+
+ /** @return Transliterator|null */
+ public static function createFromRules(string $rules, int $direction = Transliterator::FORWARD) {}
+
+ /** @return Transliterator|null */
+ public function createInverse() {}
+
+ /** @return array|false */
+ public static function listIDs() {}
+
+ /** @return string|false */
+ public function transliterate(string $subject, int $start = 0, int $end = -1) {}
+
+ /** @return int|false */
+ public function getErrorCode() {}
+
+ /** @return string|false */
+ public function getErrorMessage() {}
+}
+
+function transliterator_create(string $id, int $direction = Transliterator::FORWARD): ?Transliterator {}
+
+function transliterator_create_from_rules(string $rules, int $direction = Transliterator::FORWARD): ?Transliterator {}
+
+function transliterator_list_ids(): array|false {}
+
+function transliterator_create_inverse(Transliterator $orig_trans): ?Transliterator {}
+
+/** @param Transliterator|string */
+function transliterator_transliterate($transliterator, string $subject, int $start = 0, int $end = -1): string|false {}
+
+function transliterator_get_error_code(Transliterator $trans): int|false {}
+
+function transliterator_get_error_message(Transliterator $trans): string|false {}
--- /dev/null
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Transliterator___construct, 0, 0, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Transliterator_create, 0, 0, 1)
+ ZEND_ARG_TYPE_INFO(0, id, IS_STRING, 0)
+ ZEND_ARG_TYPE_INFO(0, direction, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Transliterator_createFromRules, 0, 0, 1)
+ ZEND_ARG_TYPE_INFO(0, rules, IS_STRING, 0)
+ ZEND_ARG_TYPE_INFO(0, direction, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_Transliterator_createInverse arginfo_class_Transliterator___construct
+
+#define arginfo_class_Transliterator_listIDs arginfo_class_Transliterator___construct
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Transliterator_transliterate, 0, 0, 1)
+ ZEND_ARG_TYPE_INFO(0, subject, IS_STRING, 0)
+ ZEND_ARG_TYPE_INFO(0, start, IS_LONG, 0)
+ ZEND_ARG_TYPE_INFO(0, end, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_Transliterator_getErrorCode arginfo_class_Transliterator___construct
+
+#define arginfo_class_Transliterator_getErrorMessage arginfo_class_Transliterator___construct
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_transliterator_create, 0, 1, Transliterator, 1)
+ ZEND_ARG_TYPE_INFO(0, id, IS_STRING, 0)
+ ZEND_ARG_TYPE_INFO(0, direction, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_transliterator_create_from_rules, 0, 1, Transliterator, 1)
+ ZEND_ARG_TYPE_INFO(0, rules, IS_STRING, 0)
+ ZEND_ARG_TYPE_INFO(0, direction, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_transliterator_list_ids, 0, 0, MAY_BE_ARRAY|MAY_BE_FALSE)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_transliterator_create_inverse, 0, 1, Transliterator, 1)
+ ZEND_ARG_OBJ_INFO(0, orig_trans, Transliterator, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_transliterator_transliterate, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+ ZEND_ARG_INFO(0, transliterator)
+ ZEND_ARG_TYPE_INFO(0, subject, IS_STRING, 0)
+ ZEND_ARG_TYPE_INFO(0, start, IS_LONG, 0)
+ ZEND_ARG_TYPE_INFO(0, end, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_transliterator_get_error_code, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
+ ZEND_ARG_OBJ_INFO(0, trans, Transliterator, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_transliterator_get_error_message, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+ ZEND_ARG_OBJ_INFO(0, trans, Transliterator, 0)
+ZEND_END_ARG_INFO()
#include "transliterator_class.h"
#include "php_intl.h"
#include "transliterator_methods.h"
+#include "transliterator_arginfo.h"
#include "intl_error.h"
#include "intl_convert.h"
#include "intl_data.h"
}
/* }}} */
-/*
- * 'Transliterator' class registration structures & functions
- */
-
-/* {{{ Transliterator methods arguments info */
-
-ZEND_BEGIN_ARG_INFO_EX( ainfo_trans_void, 0, 0, 0 )
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX( ainfo_trans_create, 0, 0, 1 )
- ZEND_ARG_INFO( 0, id )
- ZEND_ARG_INFO( 0, direction )
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX( ainfo_trans_create_from_rules, 0, 0, 1 )
- ZEND_ARG_INFO( 0, rules )
- ZEND_ARG_INFO( 0, direction )
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX( ainfo_trans_me_transliterate, 0, 0, 1 )
- ZEND_ARG_INFO( 0, subject )
- ZEND_ARG_INFO( 0, start )
- ZEND_ARG_INFO( 0, end )
-ZEND_END_ARG_INFO()
-/* }}} */
-
/* {{{ Transliterator_class_functions
* Every 'Transliterator' class method has an entry in this table
*/
static const zend_function_entry Transliterator_class_functions[] = {
- PHP_ME( Transliterator, __construct, ainfo_trans_void, ZEND_ACC_PRIVATE | ZEND_ACC_FINAL )
- PHP_ME_MAPPING( create, transliterator_create, ainfo_trans_create, ZEND_ACC_STATIC |ZEND_ACC_PUBLIC )
- PHP_ME_MAPPING( createFromRules,transliterator_create_from_rules, ainfo_trans_create_from_rules, ZEND_ACC_STATIC | ZEND_ACC_PUBLIC )
- PHP_ME_MAPPING( createInverse, transliterator_create_inverse, ainfo_trans_void, ZEND_ACC_PUBLIC )
- PHP_ME_MAPPING( listIDs, transliterator_list_ids, ainfo_trans_void, ZEND_ACC_STATIC | ZEND_ACC_PUBLIC )
- PHP_ME_MAPPING( transliterate, transliterator_transliterate, ainfo_trans_me_transliterate, ZEND_ACC_PUBLIC )
- PHP_ME_MAPPING( getErrorCode, transliterator_get_error_code, ainfo_trans_void, ZEND_ACC_PUBLIC )
- PHP_ME_MAPPING( getErrorMessage,transliterator_get_error_message, ainfo_trans_void, ZEND_ACC_PUBLIC )
+ PHP_ME( Transliterator, __construct, arginfo_class_Transliterator___construct, ZEND_ACC_PRIVATE | ZEND_ACC_FINAL )
+ PHP_ME_MAPPING( create, transliterator_create, arginfo_class_Transliterator_create, ZEND_ACC_STATIC |ZEND_ACC_PUBLIC )
+ PHP_ME_MAPPING( createFromRules,transliterator_create_from_rules, arginfo_class_Transliterator_createFromRules, ZEND_ACC_STATIC | ZEND_ACC_PUBLIC )
+ PHP_ME_MAPPING( createInverse, transliterator_create_inverse, arginfo_class_Transliterator_createInverse, ZEND_ACC_PUBLIC )
+ PHP_ME_MAPPING( listIDs, transliterator_list_ids, arginfo_class_Transliterator_listIDs, ZEND_ACC_STATIC | ZEND_ACC_PUBLIC )
+ PHP_ME_MAPPING( transliterate, transliterator_transliterate, arginfo_class_Transliterator_transliterate, ZEND_ACC_PUBLIC )
+ PHP_ME_MAPPING( getErrorCode, transliterator_get_error_code, arginfo_class_Transliterator_getErrorCode, ZEND_ACC_PUBLIC )
+ PHP_ME_MAPPING( getErrorMessage,transliterator_get_error_message, arginfo_class_Transliterator_getErrorMessage, ZEND_ACC_PUBLIC )
PHP_FE_END
};
/* }}} */