11#include "uchar.h"
22#include "intl_data.h"
33#include "intl_convert.h"
4+ #include "uchar_arginfo.h"
45
56#include <unicode/uchar.h>
67#include <unicode/utf8.h>
@@ -30,7 +31,7 @@ static inline int convert_cp(UChar32* pcp, zval *zcp) {
3031 }
3132 } else {
3233 intl_error_set_code (NULL , U_ILLEGAL_ARGUMENT_ERROR );
33- intl_error_set_custom_msg (NULL , "Invalid parameter for unicode point. Must be either integer or UTF-8 sequence." , 0 );
34+ intl_error_set_custom_msg (NULL , "Invalid parameter for unicode point. Must be either integer or UTF-8 sequence." , 0 );
3435 return FAILURE ;
3536 }
3637 if ((cp < UCHAR_MIN_VALUE ) || (cp > UCHAR_MAX_VALUE )) {
@@ -46,9 +47,6 @@ static inline int convert_cp(UChar32* pcp, zval *zcp) {
4647 * Converts a numeric codepoint to UTF-8
4748 * Acts as an identify function when given a valid UTF-8 encoded codepoint
4849 */
49- ZEND_BEGIN_ARG_INFO_EX (chr_arginfo , 0 , ZEND_RETURN_VALUE , 1 )
50- ZEND_ARG_INFO (0 , codepoint )
51- ZEND_END_ARG_INFO ();
5250IC_METHOD (chr ) {
5351 UChar32 cp ;
5452 zval * zcp ;
@@ -76,9 +74,6 @@ IC_METHOD(chr) {
7674 * Converts a UTf-8 encoded codepoint to its integer U32 value
7775 * Acts as an identity function when passed a valid integer codepoint
7876 */
79- ZEND_BEGIN_ARG_INFO_EX (ord_arginfo , 0 , ZEND_RETURN_VALUE , 1 )
80- ZEND_ARG_INFO (0 , character )
81- ZEND_END_ARG_INFO ();
8277IC_METHOD (ord ) {
8378 UChar32 cp ;
8479 zval * zcp ;
@@ -96,10 +91,6 @@ IC_METHOD(ord) {
9691/* }}} */
9792
9893/* {{{ proto bool IntlChar::hasBinaryProperty(int|string $codepoint, int $property) */
99- ZEND_BEGIN_ARG_INFO_EX (hasBinaryProperty_arginfo , 0 , ZEND_RETURN_VALUE , 2 )
100- ZEND_ARG_INFO (0 , codepoint )
101- ZEND_ARG_INFO (0 , property )
102- ZEND_END_ARG_INFO ();
10394IC_METHOD (hasBinaryProperty ) {
10495 UChar32 cp ;
10596 zend_long prop ;
@@ -118,10 +109,6 @@ IC_METHOD(hasBinaryProperty) {
118109/* }}} */
119110
120111/* {{{ proto int IntlChar::getIntPropertyValue(int|string $codepoint, int $property) */
121- ZEND_BEGIN_ARG_INFO_EX (getIntPropertyValue_arginfo , 0 , ZEND_RETURN_VALUE , 2 )
122- ZEND_ARG_INFO (0 , codepoint )
123- ZEND_ARG_INFO (0 , property )
124- ZEND_END_ARG_INFO ();
125112IC_METHOD (getIntPropertyValue ) {
126113 UChar32 cp ;
127114 zend_long prop ;
@@ -140,9 +127,6 @@ IC_METHOD(getIntPropertyValue) {
140127/* }}} */
141128
142129/* {{{ proto int IntlChar::getIntPropertyMinValue(int $property) */
143- ZEND_BEGIN_ARG_INFO_EX (getIntPropertyMinValue_arginfo , 0 , ZEND_RETURN_VALUE , 1 )
144- ZEND_ARG_INFO (0 , property )
145- ZEND_END_ARG_INFO ();
146130IC_METHOD (getIntPropertyMinValue ) {
147131 zend_long prop ;
148132
@@ -155,9 +139,6 @@ IC_METHOD(getIntPropertyMinValue) {
155139/* }}} */
156140
157141/* {{{ proto int IntlChar::getIntPropertyMaxValue(int $property) */
158- ZEND_BEGIN_ARG_INFO_EX (getIntPropertyMaxValue_arginfo , 0 , ZEND_RETURN_VALUE , 1 )
159- ZEND_ARG_INFO (0 , property )
160- ZEND_END_ARG_INFO ();
161142IC_METHOD (getIntPropertyMaxValue ) {
162143 zend_long prop ;
163144
@@ -170,9 +151,6 @@ IC_METHOD(getIntPropertyMaxValue) {
170151/* }}} */
171152
172153/* {{{ proto float IntlChar::getNumericValue(int|string $codepoint) */
173- ZEND_BEGIN_ARG_INFO_EX (getNumericValue_arginfo , 0 , ZEND_RETURN_VALUE , 1 )
174- ZEND_ARG_INFO (0 , codepoint )
175- ZEND_END_ARG_INFO ();
176154IC_METHOD (getNumericValue ) {
177155 UChar32 cp ;
178156 zval * zcp ;
@@ -190,9 +168,6 @@ IC_METHOD(getNumericValue) {
190168/* }}} */
191169
192170/* {{{ proto void IntlChar::enumCharTypes(callable $callback) */
193- ZEND_BEGIN_ARG_INFO_EX (enumCharTypes_arginfo , 0 , ZEND_RETURN_VALUE , 0 )
194- ZEND_ARG_INFO (0 , callback )
195- ZEND_END_ARG_INFO ();
196171typedef struct _enumCharType_data {
197172 zend_fcall_info fci ;
198173 zend_fcall_info_cache fci_cache ;
@@ -235,9 +210,6 @@ IC_METHOD(enumCharTypes) {
235210/* }}} */
236211
237212/* {{{ proto int IntlChar::getBlockCode(int|string $codepoint) */
238- ZEND_BEGIN_ARG_INFO_EX (getBlockCode_arginfo , 0 , ZEND_RETURN_VALUE , 1 )
239- ZEND_ARG_INFO (0 , codepoint )
240- ZEND_END_ARG_INFO ()
241213IC_METHOD (getBlockCode ) {
242214 UChar32 cp ;
243215 zval * zcp ;
@@ -255,10 +227,6 @@ IC_METHOD(getBlockCode) {
255227/* }}} */
256228
257229/* {{{ proto string IntlChar::charName(int|string $codepoint, int $nameChoice = IntlChar::UNICODE_CHAR_NAME) */
258- ZEND_BEGIN_ARG_INFO_EX (charName_arginfo , 0 , ZEND_RETURN_VALUE , 1 )
259- ZEND_ARG_INFO (0 , codepoint )
260- ZEND_ARG_INFO (0 , nameChoice )
261- ZEND_END_ARG_INFO ()
262230IC_METHOD (charName ) {
263231 UChar32 cp ;
264232 zval * zcp ;
@@ -288,10 +256,6 @@ IC_METHOD(charName) {
288256/* }}} */
289257
290258/* {{{ proto int IntlChar::charFromName(string $characterName, int $nameChoice = IntlChar::UNICODE_CHAR_NAME) */
291- ZEND_BEGIN_ARG_INFO_EX (charFromName_arginfo , 0 , ZEND_RETURN_VALUE , 1 )
292- ZEND_ARG_INFO (0 , characterName )
293- ZEND_ARG_INFO (0 , nameChoice )
294- ZEND_END_ARG_INFO ()
295259IC_METHOD (charFromName ) {
296260 char * name ;
297261 size_t name_len ;
@@ -310,12 +274,6 @@ IC_METHOD(charFromName) {
310274/* }}} */
311275
312276/* {{{ void void IntlChar::enumCharNames(int|string $start, int|string $limit, callable $callback, int $nameChoice = IntlChar::UNICODE_CHAR_NAME) */
313- ZEND_BEGIN_ARG_INFO_EX (enumCharNames_arginfo , 0 , ZEND_RETURN_VALUE , 3 )
314- ZEND_ARG_INFO (0 , start )
315- ZEND_ARG_INFO (0 , limit )
316- ZEND_ARG_INFO (0 , callback )
317- ZEND_ARG_INFO (0 , nameChoice )
318- ZEND_END_ARG_INFO ();
319277typedef struct _enumCharNames_data {
320278 zend_fcall_info fci ;
321279 zend_fcall_info_cache fci_cache ;
@@ -367,10 +325,6 @@ IC_METHOD(enumCharNames) {
367325/* }}} */
368326
369327/* {{{ proto string IntlChar::getPropertyName(int $property, int $nameChoice = IntlChar::LONG_PROPERTY_NAME) */
370- ZEND_BEGIN_ARG_INFO_EX (getPropertyName_arginfo , 0 , ZEND_RETURN_VALUE , 1 )
371- ZEND_ARG_INFO (0 , property )
372- ZEND_ARG_INFO (0 , nameChoice )
373- ZEND_END_ARG_INFO ();
374328IC_METHOD (getPropertyName ) {
375329 zend_long property ;
376330 zend_long nameChoice = U_LONG_PROPERTY_NAME ;
@@ -392,9 +346,6 @@ IC_METHOD(getPropertyName) {
392346/* }}} */
393347
394348/* {{{ proto int IntlChar::getPropertyEnum(string $alias) */
395- ZEND_BEGIN_ARG_INFO_EX (getPropertyEnum_arginfo , 0 , ZEND_RETURN_VALUE , 1 )
396- ZEND_ARG_INFO (0 , alias )
397- ZEND_END_ARG_INFO ();
398349IC_METHOD (getPropertyEnum ) {
399350 char * alias ;
400351 size_t alias_len ;
@@ -408,11 +359,6 @@ IC_METHOD(getPropertyEnum) {
408359/* }}} */
409360
410361/* {{{ proto string IntlChar::getPropertyValueName(int $property, int $value[, int $nameChoice = IntlChar::LONG_PROPERTY_NAME) */
411- ZEND_BEGIN_ARG_INFO_EX (getPropertyValueName_arginfo , 0 , ZEND_RETURN_VALUE , 2 )
412- ZEND_ARG_INFO (0 , property )
413- ZEND_ARG_INFO (0 , value )
414- ZEND_ARG_INFO (0 , nameChoice )
415- ZEND_END_ARG_INFO ();
416362IC_METHOD (getPropertyValueName ) {
417363 zend_long property , value , nameChoice = U_LONG_PROPERTY_NAME ;
418364 const char * ret ;
@@ -433,10 +379,6 @@ IC_METHOD(getPropertyValueName) {
433379/* }}} */
434380
435381/* {{{ proto int IntlChar::getPropertyValueEnum(int $property, string $name) */
436- ZEND_BEGIN_ARG_INFO_EX (getPropertyValueEnum_arginfo , 0 , ZEND_RETURN_VALUE , 2 )
437- ZEND_ARG_INFO (0 , property )
438- ZEND_ARG_INFO (0 , name )
439- ZEND_END_ARG_INFO ();
440382IC_METHOD (getPropertyValueEnum ) {
441383 zend_long property ;
442384 char * name ;
@@ -451,10 +393,6 @@ IC_METHOD(getPropertyValueEnum) {
451393/* }}} */
452394
453395/* {{{ proto int|string IntlChar::foldCase(int|string $codepoint, int $options = IntlChar::FOLD_CASE_DEFAULT) */
454- ZEND_BEGIN_ARG_INFO_EX (foldCase_arginfo , 0 , ZEND_RETURN_VALUE , 1 )
455- ZEND_ARG_INFO (0 , codepoint )
456- ZEND_ARG_INFO (0 , options )
457- ZEND_END_ARG_INFO ();
458396IC_METHOD (foldCase ) {
459397 UChar32 cp , ret ;
460398 zval * zcp ;
@@ -482,10 +420,6 @@ IC_METHOD(foldCase) {
482420/* }}} */
483421
484422/* {{{ proto int IntlChar::digit(int|string $codepoint[, int $radix = 10]) */
485- ZEND_BEGIN_ARG_INFO_EX (digit_arginfo , 0 , ZEND_RETURN_VALUE , 1 )
486- ZEND_ARG_INFO (0 , codepoint )
487- ZEND_ARG_INFO (0 , radix )
488- ZEND_END_ARG_INFO ();
489423IC_METHOD (digit ) {
490424 UChar32 cp ;
491425 zval * zcp ;
@@ -511,10 +445,6 @@ IC_METHOD(digit) {
511445/* }}} */
512446
513447/* {{{ proto int IntlChar::forDigit(int $digit[, int $radix = 10]) */
514- ZEND_BEGIN_ARG_INFO_EX (forDigit_arginfo , 0 , ZEND_RETURN_VALUE , 1 )
515- ZEND_ARG_INFO (0 , digit )
516- ZEND_ARG_INFO (0 , radix )
517- ZEND_END_ARG_INFO ();
518448IC_METHOD (forDigit ) {
519449 zend_long digit , radix = 10 ;
520450
@@ -527,9 +457,6 @@ IC_METHOD(forDigit) {
527457/* }}} */
528458
529459/* {{{ proto array IntlChar::charAge(int|string $codepoint) */
530- ZEND_BEGIN_ARG_INFO_EX (charAge_arginfo , 0 , ZEND_RETURN_VALUE , 1 )
531- ZEND_ARG_INFO (0 , codepoint )
532- ZEND_END_ARG_INFO ();
533460IC_METHOD (charAge ) {
534461 UChar32 cp ;
535462 zval * zcp ;
@@ -553,8 +480,6 @@ IC_METHOD(charAge) {
553480/* }}} */
554481
555482/* {{{ proto array IntlChar::getUnicodeVersion() */
556- ZEND_BEGIN_ARG_INFO_EX (getUnicodeVersion_arginfo , 0 , ZEND_RETURN_VALUE , 0 )
557- ZEND_END_ARG_INFO ();
558483IC_METHOD (getUnicodeVersion ) {
559484 UVersionInfo version ;
560485 int i ;
@@ -572,9 +497,6 @@ IC_METHOD(getUnicodeVersion) {
572497/* }}} */
573498
574499/* {{{ proto string IntlChar::getFC_NFKC_Closure(int|string $codepoint) */
575- ZEND_BEGIN_ARG_INFO_EX (getFC_NFKC_Closure_arginfo , 0 , ZEND_RETURN_VALUE , 1 )
576- ZEND_ARG_INFO (0 , codepoint )
577- ZEND_END_ARG_INFO ();
578500IC_METHOD (getFC_NFKC_Closure ) {
579501 UChar32 cp ;
580502 zval * zcp ;
@@ -613,9 +535,6 @@ IC_METHOD(getFC_NFKC_Closure) {
613535
614536/* {{{ proto bool IntlChar::<name>(int|string $codepoint) */
615537#define IC_BOOL_METHOD_CHAR (name ) \
616- ZEND_BEGIN_ARG_INFO_EX(name##_arginfo, 0, ZEND_RETURN_VALUE, 1) \
617- ZEND_ARG_INFO(0, codepoint) \
618- ZEND_END_ARG_INFO(); \
619538IC_METHOD(name) { \
620539 UChar32 cp; zval *zcp; \
621540 if ((zend_parse_parameters(ZEND_NUM_ARGS(), "z", &zcp) == FAILURE) || \
@@ -655,9 +574,6 @@ IC_BOOL_METHOD_CHAR(isJavaIDPart)
655574
656575/* {{{ proto int IntlChar::<name>(int|string $codepoint) */
657576#define IC_INT_METHOD_CHAR (name ) \
658- ZEND_BEGIN_ARG_INFO_EX (name ##_arginfo , 0 , ZEND_RETURN_VALUE , 1 ) \
659- ZEND_ARG_INFO (0 , codepoint ) \
660- ZEND_END_ARG_INFO (); \
661577IC_METHOD (name ) { \
662578 UChar32 cp ; zval * zcp ; \
663579 if ((zend_parse_parameters (ZEND_NUM_ARGS (), "z" , & zcp ) == FAILURE ) || \
@@ -676,9 +592,6 @@ IC_INT_METHOD_CHAR(charDigitValue)
676592 * Returns an int otherwise
677593 */
678594#define IC_CHAR_METHOD_CHAR (name ) \
679- ZEND_BEGIN_ARG_INFO_EX(name##_arginfo, 0, ZEND_RETURN_VALUE, 1) \
680- ZEND_ARG_INFO(0, codepoint) \
681- ZEND_END_ARG_INFO(); \
682595IC_METHOD(name) { \
683596 UChar32 cp, ret; zval *zcp; \
684597 if ((zend_parse_parameters(ZEND_NUM_ARGS(), "z", &zcp) == FAILURE) || \
@@ -705,7 +618,7 @@ IC_CHAR_METHOD_CHAR(getBidiPairedBracket)
705618/* }}} */
706619
707620static const zend_function_entry intlchar_methods [] = {
708- #define IC_ME (mname ) PHP_ME (IntlChar , mname , mname ## _arginfo , ZEND_ACC_PUBLIC | ZEND_ACC_STATIC )
621+ #define IC_ME (mname ) PHP_ME (IntlChar , mname , arginfo_class_IntlChar_ # #mname , ZEND_ACC_PUBLIC | ZEND_ACC_STATIC )
709622 IC_ME (chr )
710623 IC_ME (ord )
711624 IC_ME (hasBinaryProperty )
0 commit comments