diff --git a/ext/calendar/calendar.c b/ext/calendar/calendar.c index d7c0f16ee62be..0dbd73d5d6404 100644 --- a/ext/calendar/calendar.c +++ b/ext/calendar/calendar.c @@ -23,7 +23,6 @@ #include "php.h" #include "ext/standard/info.h" -#include "calendar_arginfo.h" #include "php_calendar.h" #include "sdncal.h" @@ -35,23 +34,6 @@ #undef CAL_GREGORIAN #endif -zend_module_entry calendar_module_entry = { - STANDARD_MODULE_HEADER, - "calendar", - ext_functions, - PHP_MINIT(calendar), - NULL, - NULL, - NULL, - PHP_MINFO(calendar), - PHP_CALENDAR_VERSION, - STANDARD_MODULE_PROPERTIES, -}; - -#ifdef COMPILE_DL_CALENDAR -ZEND_GET_MODULE(calendar) -#endif - /* this order must match the conversion table below */ enum cal_name_type_t { CAL_GREGORIAN = 0, @@ -107,33 +89,29 @@ static const char alef_bet[25] = "0\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEB\ #define CAL_JEWISH_ADD_ALAFIM 0x4 #define CAL_JEWISH_ADD_GERESHAYIM 0x8 +#include "calendar_arginfo.h" + +zend_module_entry calendar_module_entry = { + STANDARD_MODULE_HEADER, + "calendar", + ext_functions, + PHP_MINIT(calendar), + NULL, + NULL, + NULL, + PHP_MINFO(calendar), + PHP_CALENDAR_VERSION, + STANDARD_MODULE_PROPERTIES, +}; + +#ifdef COMPILE_DL_CALENDAR +ZEND_GET_MODULE(calendar) +#endif + PHP_MINIT_FUNCTION(calendar) { - REGISTER_LONG_CONSTANT("CAL_GREGORIAN", CAL_GREGORIAN, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("CAL_JULIAN", CAL_JULIAN, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("CAL_JEWISH", CAL_JEWISH, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("CAL_FRENCH", CAL_FRENCH, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("CAL_NUM_CALS", CAL_NUM_CALS, CONST_CS | CONST_PERSISTENT); -/* constants for jddayofweek */ - REGISTER_LONG_CONSTANT("CAL_DOW_DAYNO", CAL_DOW_DAYNO, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("CAL_DOW_SHORT", CAL_DOW_SHORT, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("CAL_DOW_LONG", CAL_DOW_LONG, CONST_CS | CONST_PERSISTENT); -/* constants for jdmonthname */ - REGISTER_LONG_CONSTANT("CAL_MONTH_GREGORIAN_SHORT", CAL_MONTH_GREGORIAN_SHORT, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("CAL_MONTH_GREGORIAN_LONG", CAL_MONTH_GREGORIAN_LONG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("CAL_MONTH_JULIAN_SHORT", CAL_MONTH_JULIAN_SHORT, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("CAL_MONTH_JULIAN_LONG", CAL_MONTH_JULIAN_LONG, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("CAL_MONTH_JEWISH", CAL_MONTH_JEWISH, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("CAL_MONTH_FRENCH", CAL_MONTH_FRENCH, CONST_CS | CONST_PERSISTENT); -/* constants for easter calculation */ - REGISTER_LONG_CONSTANT("CAL_EASTER_DEFAULT", CAL_EASTER_DEFAULT, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("CAL_EASTER_ROMAN", CAL_EASTER_ROMAN, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("CAL_EASTER_ALWAYS_GREGORIAN", CAL_EASTER_ALWAYS_GREGORIAN, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("CAL_EASTER_ALWAYS_JULIAN", CAL_EASTER_ALWAYS_JULIAN, CONST_CS | CONST_PERSISTENT); -/* constants for Jewish date formatting */ - REGISTER_LONG_CONSTANT("CAL_JEWISH_ADD_ALAFIM_GERESH", CAL_JEWISH_ADD_ALAFIM_GERESH, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("CAL_JEWISH_ADD_ALAFIM", CAL_JEWISH_ADD_ALAFIM, CONST_CS | CONST_PERSISTENT); - REGISTER_LONG_CONSTANT("CAL_JEWISH_ADD_GERESHAYIM", CAL_JEWISH_ADD_GERESHAYIM, CONST_CS | CONST_PERSISTENT); + register_calendar_consts(module_number); + return SUCCESS; } diff --git a/ext/calendar/calendar.stub.php b/ext/calendar/calendar.stub.php index 54b96e793b31c..a20079ae3da9e 100644 --- a/ext/calendar/calendar.stub.php +++ b/ext/calendar/calendar.stub.php @@ -2,6 +2,116 @@ /** @generate-class-entries */ +/** + * @var int + * @cname CAL_GREGORIAN + */ +const CAL_GREGORIAN = UNKNOWN; +/** + * @var int + * @cname CAL_JULIAN + */ +const CAL_JULIAN = UNKNOWN; +/** + * @var int + * @cname CAL_JEWISH + */ +const CAL_JEWISH = UNKNOWN; +/** + * @var int + * @cname CAL_FRENCH + */ +const CAL_FRENCH = UNKNOWN; +/** + * @var int + * @cname CAL_NUM_CALS + */ +const CAL_NUM_CALS = UNKNOWN; + +/** + * @var int + * @cname CAL_DOW_DAYNO + */ +const CAL_DOW_DAYNO = UNKNOWN; +/** + * @var int + * @cname CAL_DOW_SHORT + */ +const CAL_DOW_SHORT = UNKNOWN; +/** + * @var int + * @cname CAL_DOW_LONG + */ +const CAL_DOW_LONG = UNKNOWN; + +/** + * @var int + * @cname CAL_MONTH_GREGORIAN_SHORT + */ +const CAL_MONTH_GREGORIAN_SHORT = UNKNOWN; +/** + * @var int + * @cname CAL_MONTH_GREGORIAN_LONG + */ +const CAL_MONTH_GREGORIAN_LONG = UNKNOWN; +/** + * @var int + * @cname CAL_MONTH_JULIAN_SHORT + */ +const CAL_MONTH_JULIAN_SHORT = UNKNOWN; +/** + * @var int + * @cname CAL_MONTH_JULIAN_LONG + */ +const CAL_MONTH_JULIAN_LONG = UNKNOWN; +/** + * @var int + * @cname CAL_MONTH_JEWISH + */ +const CAL_MONTH_JEWISH = UNKNOWN; +/** + * @var int + * @cname CAL_MONTH_FRENCH + */ +const CAL_MONTH_FRENCH = UNKNOWN; + +/** + * @var int + * @cname CAL_EASTER_DEFAULT + */ +const CAL_EASTER_DEFAULT = UNKNOWN; +/** + * @var int + * @cname CAL_EASTER_ROMAN + */ +const CAL_EASTER_ROMAN = UNKNOWN; +/** + * @var int + * @cname CAL_EASTER_ALWAYS_GREGORIAN + */ +const CAL_EASTER_ALWAYS_GREGORIAN = UNKNOWN; +/** + * @var int + * @cname CAL_EASTER_ALWAYS_JULIAN + */ +const CAL_EASTER_ALWAYS_JULIAN = UNKNOWN; + +/** + * @var int + * @cname CAL_JEWISH_ADD_ALAFIM_GERESH + */ +const CAL_JEWISH_ADD_ALAFIM_GERESH = UNKNOWN; +/** + * @var int + * @cname CAL_JEWISH_ADD_ALAFIM + */ +const CAL_JEWISH_ADD_ALAFIM = UNKNOWN; +/** + * @var int + * @cname CAL_JEWISH_ADD_GERESHAYIM + */ +const CAL_JEWISH_ADD_GERESHAYIM = UNKNOWN; + function cal_days_in_month(int $calendar, int $month, int $year): int {} /** diff --git a/ext/calendar/calendar_arginfo.h b/ext/calendar/calendar_arginfo.h index 9455c9be93f33..0b85da157af44 100644 --- a/ext/calendar/calendar_arginfo.h +++ b/ext/calendar/calendar_arginfo.h @@ -1,5 +1,5 @@ /* This is a generated file, edit the .stub.php file instead. - * Stub hash: 574dfd0c871b5c71677a3bfa07fd605aea343477 */ + * Stub hash: 6030cc249e7c1950818b3060ed2e565119710546 */ ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_cal_days_in_month, 0, 3, IS_LONG, 0) ZEND_ARG_TYPE_INFO(0, calendar, IS_LONG, 0) @@ -116,3 +116,28 @@ static const zend_function_entry ext_functions[] = { ZEND_FE(unixtojd, arginfo_unixtojd) ZEND_FE_END }; + +static void register_calendar_consts(int module_number) +{ + REGISTER_LONG_CONSTANT("CAL_GREGORIAN", CAL_GREGORIAN, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_JULIAN", CAL_JULIAN, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_JEWISH", CAL_JEWISH, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_FRENCH", CAL_FRENCH, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_NUM_CALS", CAL_NUM_CALS, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_DOW_DAYNO", CAL_DOW_DAYNO, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_DOW_SHORT", CAL_DOW_SHORT, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_DOW_LONG", CAL_DOW_LONG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_MONTH_GREGORIAN_SHORT", CAL_MONTH_GREGORIAN_SHORT, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_MONTH_GREGORIAN_LONG", CAL_MONTH_GREGORIAN_LONG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_MONTH_JULIAN_SHORT", CAL_MONTH_JULIAN_SHORT, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_MONTH_JULIAN_LONG", CAL_MONTH_JULIAN_LONG, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_MONTH_JEWISH", CAL_MONTH_JEWISH, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_MONTH_FRENCH", CAL_MONTH_FRENCH, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_EASTER_DEFAULT", CAL_EASTER_DEFAULT, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_EASTER_ROMAN", CAL_EASTER_ROMAN, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_EASTER_ALWAYS_GREGORIAN", CAL_EASTER_ALWAYS_GREGORIAN, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_EASTER_ALWAYS_JULIAN", CAL_EASTER_ALWAYS_JULIAN, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_JEWISH_ADD_ALAFIM_GERESH", CAL_JEWISH_ADD_ALAFIM_GERESH, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_JEWISH_ADD_ALAFIM", CAL_JEWISH_ADD_ALAFIM, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("CAL_JEWISH_ADD_GERESHAYIM", CAL_JEWISH_ADD_GERESHAYIM, CONST_CS | CONST_PERSISTENT); +}