php_date_arginfo.h 35 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764
  1. /* This is a generated file, edit the .stub.php file instead.
  2. * Stub hash: ea354510fbf64c42ee1cdd6fd786ab937516226c */
  3. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_strtotime, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
  4. ZEND_ARG_TYPE_INFO(0, datetime, IS_STRING, 0)
  5. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, baseTimestamp, IS_LONG, 1, "null")
  6. ZEND_END_ARG_INFO()
  7. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_date, 0, 1, IS_STRING, 0)
  8. ZEND_ARG_TYPE_INFO(0, format, IS_STRING, 0)
  9. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, timestamp, IS_LONG, 1, "null")
  10. ZEND_END_ARG_INFO()
  11. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_idate, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
  12. ZEND_ARG_TYPE_INFO(0, format, IS_STRING, 0)
  13. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, timestamp, IS_LONG, 1, "null")
  14. ZEND_END_ARG_INFO()
  15. #define arginfo_gmdate arginfo_date
  16. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mktime, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
  17. ZEND_ARG_TYPE_INFO(0, hour, IS_LONG, 0)
  18. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, minute, IS_LONG, 1, "null")
  19. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, second, IS_LONG, 1, "null")
  20. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, month, IS_LONG, 1, "null")
  21. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, day, IS_LONG, 1, "null")
  22. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, year, IS_LONG, 1, "null")
  23. ZEND_END_ARG_INFO()
  24. #define arginfo_gmmktime arginfo_mktime
  25. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_checkdate, 0, 3, _IS_BOOL, 0)
  26. ZEND_ARG_TYPE_INFO(0, month, IS_LONG, 0)
  27. ZEND_ARG_TYPE_INFO(0, day, IS_LONG, 0)
  28. ZEND_ARG_TYPE_INFO(0, year, IS_LONG, 0)
  29. ZEND_END_ARG_INFO()
  30. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_strftime, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
  31. ZEND_ARG_TYPE_INFO(0, format, IS_STRING, 0)
  32. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, timestamp, IS_LONG, 1, "null")
  33. ZEND_END_ARG_INFO()
  34. #define arginfo_gmstrftime arginfo_strftime
  35. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_time, 0, 0, IS_LONG, 0)
  36. ZEND_END_ARG_INFO()
  37. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_localtime, 0, 0, IS_ARRAY, 0)
  38. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, timestamp, IS_LONG, 1, "null")
  39. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, associative, _IS_BOOL, 0, "false")
  40. ZEND_END_ARG_INFO()
  41. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_getdate, 0, 0, IS_ARRAY, 0)
  42. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, timestamp, IS_LONG, 1, "null")
  43. ZEND_END_ARG_INFO()
  44. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_date_create, 0, 0, DateTime, MAY_BE_FALSE)
  45. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, datetime, IS_STRING, 0, "\"now\"")
  46. ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, timezone, DateTimeZone, 1, "null")
  47. ZEND_END_ARG_INFO()
  48. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_date_create_immutable, 0, 0, DateTimeImmutable, MAY_BE_FALSE)
  49. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, datetime, IS_STRING, 0, "\"now\"")
  50. ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, timezone, DateTimeZone, 1, "null")
  51. ZEND_END_ARG_INFO()
  52. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_date_create_from_format, 0, 2, DateTime, MAY_BE_FALSE)
  53. ZEND_ARG_TYPE_INFO(0, format, IS_STRING, 0)
  54. ZEND_ARG_TYPE_INFO(0, datetime, IS_STRING, 0)
  55. ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, timezone, DateTimeZone, 1, "null")
  56. ZEND_END_ARG_INFO()
  57. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_date_create_immutable_from_format, 0, 2, DateTimeImmutable, MAY_BE_FALSE)
  58. ZEND_ARG_TYPE_INFO(0, format, IS_STRING, 0)
  59. ZEND_ARG_TYPE_INFO(0, datetime, IS_STRING, 0)
  60. ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, timezone, DateTimeZone, 1, "null")
  61. ZEND_END_ARG_INFO()
  62. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_date_parse, 0, 1, IS_ARRAY, 0)
  63. ZEND_ARG_TYPE_INFO(0, datetime, IS_STRING, 0)
  64. ZEND_END_ARG_INFO()
  65. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_date_parse_from_format, 0, 2, IS_ARRAY, 0)
  66. ZEND_ARG_TYPE_INFO(0, format, IS_STRING, 0)
  67. ZEND_ARG_TYPE_INFO(0, datetime, IS_STRING, 0)
  68. ZEND_END_ARG_INFO()
  69. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_date_get_last_errors, 0, 0, MAY_BE_ARRAY|MAY_BE_FALSE)
  70. ZEND_END_ARG_INFO()
  71. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_date_format, 0, 2, IS_STRING, 0)
  72. ZEND_ARG_OBJ_INFO(0, object, DateTimeInterface, 0)
  73. ZEND_ARG_TYPE_INFO(0, format, IS_STRING, 0)
  74. ZEND_END_ARG_INFO()
  75. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_date_modify, 0, 2, DateTime, MAY_BE_FALSE)
  76. ZEND_ARG_OBJ_INFO(0, object, DateTime, 0)
  77. ZEND_ARG_TYPE_INFO(0, modifier, IS_STRING, 0)
  78. ZEND_END_ARG_INFO()
  79. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_date_add, 0, 2, DateTime, 0)
  80. ZEND_ARG_OBJ_INFO(0, object, DateTime, 0)
  81. ZEND_ARG_OBJ_INFO(0, interval, DateInterval, 0)
  82. ZEND_END_ARG_INFO()
  83. #define arginfo_date_sub arginfo_date_add
  84. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_date_timezone_get, 0, 1, DateTimeZone, MAY_BE_FALSE)
  85. ZEND_ARG_OBJ_INFO(0, object, DateTimeInterface, 0)
  86. ZEND_END_ARG_INFO()
  87. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_date_timezone_set, 0, 2, DateTime, 0)
  88. ZEND_ARG_OBJ_INFO(0, object, DateTime, 0)
  89. ZEND_ARG_OBJ_INFO(0, timezone, DateTimeZone, 0)
  90. ZEND_END_ARG_INFO()
  91. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_date_offset_get, 0, 1, IS_LONG, 0)
  92. ZEND_ARG_OBJ_INFO(0, object, DateTimeInterface, 0)
  93. ZEND_END_ARG_INFO()
  94. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_date_diff, 0, 2, DateInterval, 0)
  95. ZEND_ARG_OBJ_INFO(0, baseObject, DateTimeInterface, 0)
  96. ZEND_ARG_OBJ_INFO(0, targetObject, DateTimeInterface, 0)
  97. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, absolute, _IS_BOOL, 0, "false")
  98. ZEND_END_ARG_INFO()
  99. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_date_time_set, 0, 3, DateTime, 0)
  100. ZEND_ARG_OBJ_INFO(0, object, DateTime, 0)
  101. ZEND_ARG_TYPE_INFO(0, hour, IS_LONG, 0)
  102. ZEND_ARG_TYPE_INFO(0, minute, IS_LONG, 0)
  103. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, second, IS_LONG, 0, "0")
  104. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, microsecond, IS_LONG, 0, "0")
  105. ZEND_END_ARG_INFO()
  106. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_date_date_set, 0, 4, DateTime, 0)
  107. ZEND_ARG_OBJ_INFO(0, object, DateTime, 0)
  108. ZEND_ARG_TYPE_INFO(0, year, IS_LONG, 0)
  109. ZEND_ARG_TYPE_INFO(0, month, IS_LONG, 0)
  110. ZEND_ARG_TYPE_INFO(0, day, IS_LONG, 0)
  111. ZEND_END_ARG_INFO()
  112. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_date_isodate_set, 0, 3, DateTime, 0)
  113. ZEND_ARG_OBJ_INFO(0, object, DateTime, 0)
  114. ZEND_ARG_TYPE_INFO(0, year, IS_LONG, 0)
  115. ZEND_ARG_TYPE_INFO(0, week, IS_LONG, 0)
  116. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, dayOfWeek, IS_LONG, 0, "1")
  117. ZEND_END_ARG_INFO()
  118. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_date_timestamp_set, 0, 2, DateTime, 0)
  119. ZEND_ARG_OBJ_INFO(0, object, DateTime, 0)
  120. ZEND_ARG_TYPE_INFO(0, timestamp, IS_LONG, 0)
  121. ZEND_END_ARG_INFO()
  122. #define arginfo_date_timestamp_get arginfo_date_offset_get
  123. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_timezone_open, 0, 1, DateTimeZone, MAY_BE_FALSE)
  124. ZEND_ARG_TYPE_INFO(0, timezone, IS_STRING, 0)
  125. ZEND_END_ARG_INFO()
  126. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_timezone_name_get, 0, 1, IS_STRING, 0)
  127. ZEND_ARG_OBJ_INFO(0, object, DateTimeZone, 0)
  128. ZEND_END_ARG_INFO()
  129. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_timezone_name_from_abbr, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
  130. ZEND_ARG_TYPE_INFO(0, abbr, IS_STRING, 0)
  131. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, utcOffset, IS_LONG, 0, "-1")
  132. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, isDST, IS_LONG, 0, "-1")
  133. ZEND_END_ARG_INFO()
  134. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_timezone_offset_get, 0, 2, IS_LONG, 0)
  135. ZEND_ARG_OBJ_INFO(0, object, DateTimeZone, 0)
  136. ZEND_ARG_OBJ_INFO(0, datetime, DateTimeInterface, 0)
  137. ZEND_END_ARG_INFO()
  138. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_timezone_transitions_get, 0, 1, MAY_BE_ARRAY|MAY_BE_FALSE)
  139. ZEND_ARG_OBJ_INFO(0, object, DateTimeZone, 0)
  140. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, timestampBegin, IS_LONG, 0, "PHP_INT_MIN")
  141. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, timestampEnd, IS_LONG, 0, "PHP_INT_MAX")
  142. ZEND_END_ARG_INFO()
  143. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_timezone_location_get, 0, 1, MAY_BE_ARRAY|MAY_BE_FALSE)
  144. ZEND_ARG_OBJ_INFO(0, object, DateTimeZone, 0)
  145. ZEND_END_ARG_INFO()
  146. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_timezone_identifiers_list, 0, 0, IS_ARRAY, 0)
  147. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, timezoneGroup, IS_LONG, 0, "DateTimeZone::ALL")
  148. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, countryCode, IS_STRING, 1, "null")
  149. ZEND_END_ARG_INFO()
  150. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_timezone_abbreviations_list, 0, 0, IS_ARRAY, 0)
  151. ZEND_END_ARG_INFO()
  152. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_timezone_version_get, 0, 0, IS_STRING, 0)
  153. ZEND_END_ARG_INFO()
  154. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_date_interval_create_from_date_string, 0, 1, DateInterval, MAY_BE_FALSE)
  155. ZEND_ARG_TYPE_INFO(0, datetime, IS_STRING, 0)
  156. ZEND_END_ARG_INFO()
  157. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_date_interval_format, 0, 2, IS_STRING, 0)
  158. ZEND_ARG_OBJ_INFO(0, object, DateInterval, 0)
  159. ZEND_ARG_TYPE_INFO(0, format, IS_STRING, 0)
  160. ZEND_END_ARG_INFO()
  161. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_date_default_timezone_set, 0, 1, _IS_BOOL, 0)
  162. ZEND_ARG_TYPE_INFO(0, timezoneId, IS_STRING, 0)
  163. ZEND_END_ARG_INFO()
  164. #define arginfo_date_default_timezone_get arginfo_timezone_version_get
  165. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_date_sunrise, 0, 1, MAY_BE_STRING|MAY_BE_LONG|MAY_BE_DOUBLE|MAY_BE_FALSE)
  166. ZEND_ARG_TYPE_INFO(0, timestamp, IS_LONG, 0)
  167. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, returnFormat, IS_LONG, 0, "SUNFUNCS_RET_STRING")
  168. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, latitude, IS_DOUBLE, 1, "null")
  169. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, longitude, IS_DOUBLE, 1, "null")
  170. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, zenith, IS_DOUBLE, 1, "null")
  171. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, utcOffset, IS_DOUBLE, 1, "null")
  172. ZEND_END_ARG_INFO()
  173. #define arginfo_date_sunset arginfo_date_sunrise
  174. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_date_sun_info, 0, 3, IS_ARRAY, 0)
  175. ZEND_ARG_TYPE_INFO(0, timestamp, IS_LONG, 0)
  176. ZEND_ARG_TYPE_INFO(0, latitude, IS_DOUBLE, 0)
  177. ZEND_ARG_TYPE_INFO(0, longitude, IS_DOUBLE, 0)
  178. ZEND_END_ARG_INFO()
  179. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_DateTimeInterface_format, 0, 1, IS_STRING, 0)
  180. ZEND_ARG_TYPE_INFO(0, format, IS_STRING, 0)
  181. ZEND_END_ARG_INFO()
  182. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_TYPE_MASK_EX(arginfo_class_DateTimeInterface_getTimezone, 0, 0, DateTimeZone, MAY_BE_FALSE)
  183. ZEND_END_ARG_INFO()
  184. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_DateTimeInterface_getOffset, 0, 0, IS_LONG, 0)
  185. ZEND_END_ARG_INFO()
  186. #define arginfo_class_DateTimeInterface_getTimestamp arginfo_class_DateTimeInterface_getOffset
  187. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateTimeInterface_diff, 0, 1, DateInterval, 0)
  188. ZEND_ARG_OBJ_INFO(0, targetObject, DateTimeInterface, 0)
  189. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, absolute, _IS_BOOL, 0, "false")
  190. ZEND_END_ARG_INFO()
  191. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_DateTimeInterface___wakeup, 0, 0, IS_VOID, 0)
  192. ZEND_END_ARG_INFO()
  193. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DateTime___construct, 0, 0, 0)
  194. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, datetime, IS_STRING, 0, "\"now\"")
  195. ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, timezone, DateTimeZone, 1, "null")
  196. ZEND_END_ARG_INFO()
  197. #define arginfo_class_DateTime___wakeup arginfo_class_DateTimeInterface___wakeup
  198. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateTime___set_state, 0, 1, DateTime, 0)
  199. ZEND_ARG_TYPE_INFO(0, array, IS_ARRAY, 0)
  200. ZEND_END_ARG_INFO()
  201. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateTime_createFromImmutable, 0, 1, DateTime, 0)
  202. ZEND_ARG_OBJ_INFO(0, object, DateTimeImmutable, 0)
  203. ZEND_END_ARG_INFO()
  204. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_class_DateTime_createFromInterface, 0, 1, DateTime, 0)
  205. ZEND_ARG_OBJ_INFO(0, object, DateTimeInterface, 0)
  206. ZEND_END_ARG_INFO()
  207. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_TYPE_MASK_EX(arginfo_class_DateTime_createFromFormat, 0, 2, DateTime, MAY_BE_FALSE)
  208. ZEND_ARG_TYPE_INFO(0, format, IS_STRING, 0)
  209. ZEND_ARG_TYPE_INFO(0, datetime, IS_STRING, 0)
  210. ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, timezone, DateTimeZone, 1, "null")
  211. ZEND_END_ARG_INFO()
  212. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_MASK_EX(arginfo_class_DateTime_getLastErrors, 0, 0, MAY_BE_ARRAY|MAY_BE_FALSE)
  213. ZEND_END_ARG_INFO()
  214. #define arginfo_class_DateTime_format arginfo_class_DateTimeInterface_format
  215. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_TYPE_MASK_EX(arginfo_class_DateTime_modify, 0, 1, DateTime, MAY_BE_FALSE)
  216. ZEND_ARG_TYPE_INFO(0, modifier, IS_STRING, 0)
  217. ZEND_END_ARG_INFO()
  218. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateTime_add, 0, 1, DateTime, 0)
  219. ZEND_ARG_OBJ_INFO(0, interval, DateInterval, 0)
  220. ZEND_END_ARG_INFO()
  221. #define arginfo_class_DateTime_sub arginfo_class_DateTime_add
  222. #define arginfo_class_DateTime_getTimezone arginfo_class_DateTimeInterface_getTimezone
  223. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateTime_setTimezone, 0, 1, DateTime, 0)
  224. ZEND_ARG_OBJ_INFO(0, timezone, DateTimeZone, 0)
  225. ZEND_END_ARG_INFO()
  226. #define arginfo_class_DateTime_getOffset arginfo_class_DateTimeInterface_getOffset
  227. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateTime_setTime, 0, 2, DateTime, 0)
  228. ZEND_ARG_TYPE_INFO(0, hour, IS_LONG, 0)
  229. ZEND_ARG_TYPE_INFO(0, minute, IS_LONG, 0)
  230. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, second, IS_LONG, 0, "0")
  231. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, microsecond, IS_LONG, 0, "0")
  232. ZEND_END_ARG_INFO()
  233. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateTime_setDate, 0, 3, DateTime, 0)
  234. ZEND_ARG_TYPE_INFO(0, year, IS_LONG, 0)
  235. ZEND_ARG_TYPE_INFO(0, month, IS_LONG, 0)
  236. ZEND_ARG_TYPE_INFO(0, day, IS_LONG, 0)
  237. ZEND_END_ARG_INFO()
  238. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateTime_setISODate, 0, 2, DateTime, 0)
  239. ZEND_ARG_TYPE_INFO(0, year, IS_LONG, 0)
  240. ZEND_ARG_TYPE_INFO(0, week, IS_LONG, 0)
  241. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, dayOfWeek, IS_LONG, 0, "1")
  242. ZEND_END_ARG_INFO()
  243. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateTime_setTimestamp, 0, 1, DateTime, 0)
  244. ZEND_ARG_TYPE_INFO(0, timestamp, IS_LONG, 0)
  245. ZEND_END_ARG_INFO()
  246. #define arginfo_class_DateTime_getTimestamp arginfo_class_DateTimeInterface_getOffset
  247. #define arginfo_class_DateTime_diff arginfo_class_DateTimeInterface_diff
  248. #define arginfo_class_DateTimeImmutable___construct arginfo_class_DateTime___construct
  249. #define arginfo_class_DateTimeImmutable___wakeup arginfo_class_DateTimeInterface___wakeup
  250. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateTimeImmutable___set_state, 0, 1, DateTimeImmutable, 0)
  251. ZEND_ARG_TYPE_INFO(0, array, IS_ARRAY, 0)
  252. ZEND_END_ARG_INFO()
  253. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_TYPE_MASK_EX(arginfo_class_DateTimeImmutable_createFromFormat, 0, 2, DateTimeImmutable, MAY_BE_FALSE)
  254. ZEND_ARG_TYPE_INFO(0, format, IS_STRING, 0)
  255. ZEND_ARG_TYPE_INFO(0, datetime, IS_STRING, 0)
  256. ZEND_ARG_OBJ_INFO_WITH_DEFAULT_VALUE(0, timezone, DateTimeZone, 1, "null")
  257. ZEND_END_ARG_INFO()
  258. #define arginfo_class_DateTimeImmutable_getLastErrors arginfo_class_DateTime_getLastErrors
  259. #define arginfo_class_DateTimeImmutable_format arginfo_class_DateTimeInterface_format
  260. #define arginfo_class_DateTimeImmutable_getTimezone arginfo_class_DateTimeInterface_getTimezone
  261. #define arginfo_class_DateTimeImmutable_getOffset arginfo_class_DateTimeInterface_getOffset
  262. #define arginfo_class_DateTimeImmutable_getTimestamp arginfo_class_DateTimeInterface_getOffset
  263. #define arginfo_class_DateTimeImmutable_diff arginfo_class_DateTimeInterface_diff
  264. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_TYPE_MASK_EX(arginfo_class_DateTimeImmutable_modify, 0, 1, DateTimeImmutable, MAY_BE_FALSE)
  265. ZEND_ARG_TYPE_INFO(0, modifier, IS_STRING, 0)
  266. ZEND_END_ARG_INFO()
  267. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateTimeImmutable_add, 0, 1, DateTimeImmutable, 0)
  268. ZEND_ARG_OBJ_INFO(0, interval, DateInterval, 0)
  269. ZEND_END_ARG_INFO()
  270. #define arginfo_class_DateTimeImmutable_sub arginfo_class_DateTimeImmutable_add
  271. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateTimeImmutable_setTimezone, 0, 1, DateTimeImmutable, 0)
  272. ZEND_ARG_OBJ_INFO(0, timezone, DateTimeZone, 0)
  273. ZEND_END_ARG_INFO()
  274. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateTimeImmutable_setTime, 0, 2, DateTimeImmutable, 0)
  275. ZEND_ARG_TYPE_INFO(0, hour, IS_LONG, 0)
  276. ZEND_ARG_TYPE_INFO(0, minute, IS_LONG, 0)
  277. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, second, IS_LONG, 0, "0")
  278. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, microsecond, IS_LONG, 0, "0")
  279. ZEND_END_ARG_INFO()
  280. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateTimeImmutable_setDate, 0, 3, DateTimeImmutable, 0)
  281. ZEND_ARG_TYPE_INFO(0, year, IS_LONG, 0)
  282. ZEND_ARG_TYPE_INFO(0, month, IS_LONG, 0)
  283. ZEND_ARG_TYPE_INFO(0, day, IS_LONG, 0)
  284. ZEND_END_ARG_INFO()
  285. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateTimeImmutable_setISODate, 0, 2, DateTimeImmutable, 0)
  286. ZEND_ARG_TYPE_INFO(0, year, IS_LONG, 0)
  287. ZEND_ARG_TYPE_INFO(0, week, IS_LONG, 0)
  288. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, dayOfWeek, IS_LONG, 0, "1")
  289. ZEND_END_ARG_INFO()
  290. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateTimeImmutable_setTimestamp, 0, 1, DateTimeImmutable, 0)
  291. ZEND_ARG_TYPE_INFO(0, timestamp, IS_LONG, 0)
  292. ZEND_END_ARG_INFO()
  293. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateTimeImmutable_createFromMutable, 0, 1, DateTimeImmutable, 0)
  294. ZEND_ARG_OBJ_INFO(0, object, DateTime, 0)
  295. ZEND_END_ARG_INFO()
  296. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_class_DateTimeImmutable_createFromInterface, 0, 1, DateTimeImmutable, 0)
  297. ZEND_ARG_OBJ_INFO(0, object, DateTimeInterface, 0)
  298. ZEND_END_ARG_INFO()
  299. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DateTimeZone___construct, 0, 0, 1)
  300. ZEND_ARG_TYPE_INFO(0, timezone, IS_STRING, 0)
  301. ZEND_END_ARG_INFO()
  302. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_DateTimeZone_getName, 0, 0, IS_STRING, 0)
  303. ZEND_END_ARG_INFO()
  304. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_DateTimeZone_getOffset, 0, 1, IS_LONG, 0)
  305. ZEND_ARG_OBJ_INFO(0, datetime, DateTimeInterface, 0)
  306. ZEND_END_ARG_INFO()
  307. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_MASK_EX(arginfo_class_DateTimeZone_getTransitions, 0, 0, MAY_BE_ARRAY|MAY_BE_FALSE)
  308. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, timestampBegin, IS_LONG, 0, "PHP_INT_MIN")
  309. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, timestampEnd, IS_LONG, 0, "PHP_INT_MAX")
  310. ZEND_END_ARG_INFO()
  311. #define arginfo_class_DateTimeZone_getLocation arginfo_class_DateTime_getLastErrors
  312. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_DateTimeZone_listAbbreviations, 0, 0, IS_ARRAY, 0)
  313. ZEND_END_ARG_INFO()
  314. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_DateTimeZone_listIdentifiers, 0, 0, IS_ARRAY, 0)
  315. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, timezoneGroup, IS_LONG, 0, "DateTimeZone::ALL")
  316. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, countryCode, IS_STRING, 1, "null")
  317. ZEND_END_ARG_INFO()
  318. #define arginfo_class_DateTimeZone___wakeup arginfo_class_DateTimeInterface___wakeup
  319. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateTimeZone___set_state, 0, 1, DateTimeZone, 0)
  320. ZEND_ARG_TYPE_INFO(0, array, IS_ARRAY, 0)
  321. ZEND_END_ARG_INFO()
  322. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DateInterval___construct, 0, 0, 1)
  323. ZEND_ARG_TYPE_INFO(0, duration, IS_STRING, 0)
  324. ZEND_END_ARG_INFO()
  325. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_TYPE_MASK_EX(arginfo_class_DateInterval_createFromDateString, 0, 1, DateInterval, MAY_BE_FALSE)
  326. ZEND_ARG_TYPE_INFO(0, datetime, IS_STRING, 0)
  327. ZEND_END_ARG_INFO()
  328. #define arginfo_class_DateInterval_format arginfo_class_DateTimeInterface_format
  329. #define arginfo_class_DateInterval___wakeup arginfo_class_DateTimeInterface___wakeup
  330. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DateInterval___set_state, 0, 1, DateInterval, 0)
  331. ZEND_ARG_TYPE_INFO(0, array, IS_ARRAY, 0)
  332. ZEND_END_ARG_INFO()
  333. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DatePeriod___construct, 0, 0, 1)
  334. ZEND_ARG_INFO(0, start)
  335. ZEND_ARG_INFO(0, interval)
  336. ZEND_ARG_INFO(0, end)
  337. ZEND_ARG_INFO(0, options)
  338. ZEND_END_ARG_INFO()
  339. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DatePeriod_getStartDate, 0, 0, DateTimeInterface, 0)
  340. ZEND_END_ARG_INFO()
  341. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DatePeriod_getEndDate, 0, 0, DateTimeInterface, 1)
  342. ZEND_END_ARG_INFO()
  343. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DatePeriod_getDateInterval, 0, 0, DateInterval, 0)
  344. ZEND_END_ARG_INFO()
  345. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_DatePeriod_getRecurrences, 0, 0, IS_LONG, 1)
  346. ZEND_END_ARG_INFO()
  347. #define arginfo_class_DatePeriod___wakeup arginfo_class_DateTimeInterface___wakeup
  348. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_DatePeriod___set_state, 0, 1, DatePeriod, 0)
  349. ZEND_ARG_TYPE_INFO(0, array, IS_ARRAY, 0)
  350. ZEND_END_ARG_INFO()
  351. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_class_DatePeriod_getIterator, 0, 0, Iterator, 0)
  352. ZEND_END_ARG_INFO()
  353. ZEND_FUNCTION(strtotime);
  354. ZEND_FUNCTION(date);
  355. ZEND_FUNCTION(idate);
  356. ZEND_FUNCTION(gmdate);
  357. ZEND_FUNCTION(mktime);
  358. ZEND_FUNCTION(gmmktime);
  359. ZEND_FUNCTION(checkdate);
  360. ZEND_FUNCTION(strftime);
  361. ZEND_FUNCTION(gmstrftime);
  362. ZEND_FUNCTION(time);
  363. ZEND_FUNCTION(localtime);
  364. ZEND_FUNCTION(getdate);
  365. ZEND_FUNCTION(date_create);
  366. ZEND_FUNCTION(date_create_immutable);
  367. ZEND_FUNCTION(date_create_from_format);
  368. ZEND_FUNCTION(date_create_immutable_from_format);
  369. ZEND_FUNCTION(date_parse);
  370. ZEND_FUNCTION(date_parse_from_format);
  371. ZEND_FUNCTION(date_get_last_errors);
  372. ZEND_FUNCTION(date_format);
  373. ZEND_FUNCTION(date_modify);
  374. ZEND_FUNCTION(date_add);
  375. ZEND_FUNCTION(date_sub);
  376. ZEND_FUNCTION(date_timezone_get);
  377. ZEND_FUNCTION(date_timezone_set);
  378. ZEND_FUNCTION(date_offset_get);
  379. ZEND_FUNCTION(date_diff);
  380. ZEND_FUNCTION(date_time_set);
  381. ZEND_FUNCTION(date_date_set);
  382. ZEND_FUNCTION(date_isodate_set);
  383. ZEND_FUNCTION(date_timestamp_set);
  384. ZEND_FUNCTION(date_timestamp_get);
  385. ZEND_FUNCTION(timezone_open);
  386. ZEND_FUNCTION(timezone_name_get);
  387. ZEND_FUNCTION(timezone_name_from_abbr);
  388. ZEND_FUNCTION(timezone_offset_get);
  389. ZEND_FUNCTION(timezone_transitions_get);
  390. ZEND_FUNCTION(timezone_location_get);
  391. ZEND_FUNCTION(timezone_identifiers_list);
  392. ZEND_FUNCTION(timezone_abbreviations_list);
  393. ZEND_FUNCTION(timezone_version_get);
  394. ZEND_FUNCTION(date_interval_create_from_date_string);
  395. ZEND_FUNCTION(date_interval_format);
  396. ZEND_FUNCTION(date_default_timezone_set);
  397. ZEND_FUNCTION(date_default_timezone_get);
  398. ZEND_FUNCTION(date_sunrise);
  399. ZEND_FUNCTION(date_sunset);
  400. ZEND_FUNCTION(date_sun_info);
  401. ZEND_METHOD(DateTime, __construct);
  402. ZEND_METHOD(DateTime, __wakeup);
  403. ZEND_METHOD(DateTime, __set_state);
  404. ZEND_METHOD(DateTime, createFromImmutable);
  405. ZEND_METHOD(DateTime, createFromInterface);
  406. ZEND_METHOD(DateTimeImmutable, __construct);
  407. ZEND_METHOD(DateTimeImmutable, __wakeup);
  408. ZEND_METHOD(DateTimeImmutable, __set_state);
  409. ZEND_METHOD(DateTimeImmutable, modify);
  410. ZEND_METHOD(DateTimeImmutable, add);
  411. ZEND_METHOD(DateTimeImmutable, sub);
  412. ZEND_METHOD(DateTimeImmutable, setTimezone);
  413. ZEND_METHOD(DateTimeImmutable, setTime);
  414. ZEND_METHOD(DateTimeImmutable, setDate);
  415. ZEND_METHOD(DateTimeImmutable, setISODate);
  416. ZEND_METHOD(DateTimeImmutable, setTimestamp);
  417. ZEND_METHOD(DateTimeImmutable, createFromMutable);
  418. ZEND_METHOD(DateTimeImmutable, createFromInterface);
  419. ZEND_METHOD(DateTimeZone, __construct);
  420. ZEND_METHOD(DateTimeZone, __wakeup);
  421. ZEND_METHOD(DateTimeZone, __set_state);
  422. ZEND_METHOD(DateInterval, __construct);
  423. ZEND_METHOD(DateInterval, __wakeup);
  424. ZEND_METHOD(DateInterval, __set_state);
  425. ZEND_METHOD(DatePeriod, __construct);
  426. ZEND_METHOD(DatePeriod, getStartDate);
  427. ZEND_METHOD(DatePeriod, getEndDate);
  428. ZEND_METHOD(DatePeriod, getDateInterval);
  429. ZEND_METHOD(DatePeriod, getRecurrences);
  430. ZEND_METHOD(DatePeriod, __wakeup);
  431. ZEND_METHOD(DatePeriod, __set_state);
  432. ZEND_METHOD(DatePeriod, getIterator);
  433. static const zend_function_entry ext_functions[] = {
  434. ZEND_FE(strtotime, arginfo_strtotime)
  435. ZEND_FE(date, arginfo_date)
  436. ZEND_FE(idate, arginfo_idate)
  437. ZEND_FE(gmdate, arginfo_gmdate)
  438. ZEND_FE(mktime, arginfo_mktime)
  439. ZEND_FE(gmmktime, arginfo_gmmktime)
  440. ZEND_FE(checkdate, arginfo_checkdate)
  441. ZEND_DEP_FE(strftime, arginfo_strftime)
  442. ZEND_DEP_FE(gmstrftime, arginfo_gmstrftime)
  443. ZEND_FE(time, arginfo_time)
  444. ZEND_FE(localtime, arginfo_localtime)
  445. ZEND_FE(getdate, arginfo_getdate)
  446. ZEND_FE(date_create, arginfo_date_create)
  447. ZEND_FE(date_create_immutable, arginfo_date_create_immutable)
  448. ZEND_FE(date_create_from_format, arginfo_date_create_from_format)
  449. ZEND_FE(date_create_immutable_from_format, arginfo_date_create_immutable_from_format)
  450. ZEND_FE(date_parse, arginfo_date_parse)
  451. ZEND_FE(date_parse_from_format, arginfo_date_parse_from_format)
  452. ZEND_FE(date_get_last_errors, arginfo_date_get_last_errors)
  453. ZEND_FE(date_format, arginfo_date_format)
  454. ZEND_FE(date_modify, arginfo_date_modify)
  455. ZEND_FE(date_add, arginfo_date_add)
  456. ZEND_FE(date_sub, arginfo_date_sub)
  457. ZEND_FE(date_timezone_get, arginfo_date_timezone_get)
  458. ZEND_FE(date_timezone_set, arginfo_date_timezone_set)
  459. ZEND_FE(date_offset_get, arginfo_date_offset_get)
  460. ZEND_FE(date_diff, arginfo_date_diff)
  461. ZEND_FE(date_time_set, arginfo_date_time_set)
  462. ZEND_FE(date_date_set, arginfo_date_date_set)
  463. ZEND_FE(date_isodate_set, arginfo_date_isodate_set)
  464. ZEND_FE(date_timestamp_set, arginfo_date_timestamp_set)
  465. ZEND_FE(date_timestamp_get, arginfo_date_timestamp_get)
  466. ZEND_FE(timezone_open, arginfo_timezone_open)
  467. ZEND_FE(timezone_name_get, arginfo_timezone_name_get)
  468. ZEND_FE(timezone_name_from_abbr, arginfo_timezone_name_from_abbr)
  469. ZEND_FE(timezone_offset_get, arginfo_timezone_offset_get)
  470. ZEND_FE(timezone_transitions_get, arginfo_timezone_transitions_get)
  471. ZEND_FE(timezone_location_get, arginfo_timezone_location_get)
  472. ZEND_FE(timezone_identifiers_list, arginfo_timezone_identifiers_list)
  473. ZEND_FE(timezone_abbreviations_list, arginfo_timezone_abbreviations_list)
  474. ZEND_FE(timezone_version_get, arginfo_timezone_version_get)
  475. ZEND_FE(date_interval_create_from_date_string, arginfo_date_interval_create_from_date_string)
  476. ZEND_FE(date_interval_format, arginfo_date_interval_format)
  477. ZEND_FE(date_default_timezone_set, arginfo_date_default_timezone_set)
  478. ZEND_FE(date_default_timezone_get, arginfo_date_default_timezone_get)
  479. ZEND_DEP_FE(date_sunrise, arginfo_date_sunrise)
  480. ZEND_DEP_FE(date_sunset, arginfo_date_sunset)
  481. ZEND_FE(date_sun_info, arginfo_date_sun_info)
  482. ZEND_FE_END
  483. };
  484. static const zend_function_entry class_DateTimeInterface_methods[] = {
  485. ZEND_ABSTRACT_ME_WITH_FLAGS(DateTimeInterface, format, arginfo_class_DateTimeInterface_format, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT)
  486. ZEND_ABSTRACT_ME_WITH_FLAGS(DateTimeInterface, getTimezone, arginfo_class_DateTimeInterface_getTimezone, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT)
  487. ZEND_ABSTRACT_ME_WITH_FLAGS(DateTimeInterface, getOffset, arginfo_class_DateTimeInterface_getOffset, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT)
  488. ZEND_ABSTRACT_ME_WITH_FLAGS(DateTimeInterface, getTimestamp, arginfo_class_DateTimeInterface_getTimestamp, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT)
  489. ZEND_ABSTRACT_ME_WITH_FLAGS(DateTimeInterface, diff, arginfo_class_DateTimeInterface_diff, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT)
  490. ZEND_ABSTRACT_ME_WITH_FLAGS(DateTimeInterface, __wakeup, arginfo_class_DateTimeInterface___wakeup, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT)
  491. ZEND_FE_END
  492. };
  493. static const zend_function_entry class_DateTime_methods[] = {
  494. ZEND_ME(DateTime, __construct, arginfo_class_DateTime___construct, ZEND_ACC_PUBLIC)
  495. ZEND_ME(DateTime, __wakeup, arginfo_class_DateTime___wakeup, ZEND_ACC_PUBLIC)
  496. ZEND_ME(DateTime, __set_state, arginfo_class_DateTime___set_state, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
  497. ZEND_ME(DateTime, createFromImmutable, arginfo_class_DateTime_createFromImmutable, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
  498. ZEND_ME(DateTime, createFromInterface, arginfo_class_DateTime_createFromInterface, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
  499. ZEND_ME_MAPPING(createFromFormat, date_create_from_format, arginfo_class_DateTime_createFromFormat, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
  500. ZEND_ME_MAPPING(getLastErrors, date_get_last_errors, arginfo_class_DateTime_getLastErrors, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
  501. ZEND_ME_MAPPING(format, date_format, arginfo_class_DateTime_format, ZEND_ACC_PUBLIC)
  502. ZEND_ME_MAPPING(modify, date_modify, arginfo_class_DateTime_modify, ZEND_ACC_PUBLIC)
  503. ZEND_ME_MAPPING(add, date_add, arginfo_class_DateTime_add, ZEND_ACC_PUBLIC)
  504. ZEND_ME_MAPPING(sub, date_sub, arginfo_class_DateTime_sub, ZEND_ACC_PUBLIC)
  505. ZEND_ME_MAPPING(getTimezone, date_timezone_get, arginfo_class_DateTime_getTimezone, ZEND_ACC_PUBLIC)
  506. ZEND_ME_MAPPING(setTimezone, date_timezone_set, arginfo_class_DateTime_setTimezone, ZEND_ACC_PUBLIC)
  507. ZEND_ME_MAPPING(getOffset, date_offset_get, arginfo_class_DateTime_getOffset, ZEND_ACC_PUBLIC)
  508. ZEND_ME_MAPPING(setTime, date_time_set, arginfo_class_DateTime_setTime, ZEND_ACC_PUBLIC)
  509. ZEND_ME_MAPPING(setDate, date_date_set, arginfo_class_DateTime_setDate, ZEND_ACC_PUBLIC)
  510. ZEND_ME_MAPPING(setISODate, date_isodate_set, arginfo_class_DateTime_setISODate, ZEND_ACC_PUBLIC)
  511. ZEND_ME_MAPPING(setTimestamp, date_timestamp_set, arginfo_class_DateTime_setTimestamp, ZEND_ACC_PUBLIC)
  512. ZEND_ME_MAPPING(getTimestamp, date_timestamp_get, arginfo_class_DateTime_getTimestamp, ZEND_ACC_PUBLIC)
  513. ZEND_ME_MAPPING(diff, date_diff, arginfo_class_DateTime_diff, ZEND_ACC_PUBLIC)
  514. ZEND_FE_END
  515. };
  516. static const zend_function_entry class_DateTimeImmutable_methods[] = {
  517. ZEND_ME(DateTimeImmutable, __construct, arginfo_class_DateTimeImmutable___construct, ZEND_ACC_PUBLIC)
  518. ZEND_ME(DateTimeImmutable, __wakeup, arginfo_class_DateTimeImmutable___wakeup, ZEND_ACC_PUBLIC)
  519. ZEND_ME(DateTimeImmutable, __set_state, arginfo_class_DateTimeImmutable___set_state, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
  520. ZEND_ME_MAPPING(createFromFormat, date_create_immutable_from_format, arginfo_class_DateTimeImmutable_createFromFormat, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
  521. ZEND_ME_MAPPING(getLastErrors, date_get_last_errors, arginfo_class_DateTimeImmutable_getLastErrors, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
  522. ZEND_ME_MAPPING(format, date_format, arginfo_class_DateTimeImmutable_format, ZEND_ACC_PUBLIC)
  523. ZEND_ME_MAPPING(getTimezone, date_timezone_get, arginfo_class_DateTimeImmutable_getTimezone, ZEND_ACC_PUBLIC)
  524. ZEND_ME_MAPPING(getOffset, date_offset_get, arginfo_class_DateTimeImmutable_getOffset, ZEND_ACC_PUBLIC)
  525. ZEND_ME_MAPPING(getTimestamp, date_timestamp_get, arginfo_class_DateTimeImmutable_getTimestamp, ZEND_ACC_PUBLIC)
  526. ZEND_ME_MAPPING(diff, date_diff, arginfo_class_DateTimeImmutable_diff, ZEND_ACC_PUBLIC)
  527. ZEND_ME(DateTimeImmutable, modify, arginfo_class_DateTimeImmutable_modify, ZEND_ACC_PUBLIC)
  528. ZEND_ME(DateTimeImmutable, add, arginfo_class_DateTimeImmutable_add, ZEND_ACC_PUBLIC)
  529. ZEND_ME(DateTimeImmutable, sub, arginfo_class_DateTimeImmutable_sub, ZEND_ACC_PUBLIC)
  530. ZEND_ME(DateTimeImmutable, setTimezone, arginfo_class_DateTimeImmutable_setTimezone, ZEND_ACC_PUBLIC)
  531. ZEND_ME(DateTimeImmutable, setTime, arginfo_class_DateTimeImmutable_setTime, ZEND_ACC_PUBLIC)
  532. ZEND_ME(DateTimeImmutable, setDate, arginfo_class_DateTimeImmutable_setDate, ZEND_ACC_PUBLIC)
  533. ZEND_ME(DateTimeImmutable, setISODate, arginfo_class_DateTimeImmutable_setISODate, ZEND_ACC_PUBLIC)
  534. ZEND_ME(DateTimeImmutable, setTimestamp, arginfo_class_DateTimeImmutable_setTimestamp, ZEND_ACC_PUBLIC)
  535. ZEND_ME(DateTimeImmutable, createFromMutable, arginfo_class_DateTimeImmutable_createFromMutable, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
  536. ZEND_ME(DateTimeImmutable, createFromInterface, arginfo_class_DateTimeImmutable_createFromInterface, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
  537. ZEND_FE_END
  538. };
  539. static const zend_function_entry class_DateTimeZone_methods[] = {
  540. ZEND_ME(DateTimeZone, __construct, arginfo_class_DateTimeZone___construct, ZEND_ACC_PUBLIC)
  541. ZEND_ME_MAPPING(getName, timezone_name_get, arginfo_class_DateTimeZone_getName, ZEND_ACC_PUBLIC)
  542. ZEND_ME_MAPPING(getOffset, timezone_offset_get, arginfo_class_DateTimeZone_getOffset, ZEND_ACC_PUBLIC)
  543. ZEND_ME_MAPPING(getTransitions, timezone_transitions_get, arginfo_class_DateTimeZone_getTransitions, ZEND_ACC_PUBLIC)
  544. ZEND_ME_MAPPING(getLocation, timezone_location_get, arginfo_class_DateTimeZone_getLocation, ZEND_ACC_PUBLIC)
  545. ZEND_ME_MAPPING(listAbbreviations, timezone_abbreviations_list, arginfo_class_DateTimeZone_listAbbreviations, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
  546. ZEND_ME_MAPPING(listIdentifiers, timezone_identifiers_list, arginfo_class_DateTimeZone_listIdentifiers, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
  547. ZEND_ME(DateTimeZone, __wakeup, arginfo_class_DateTimeZone___wakeup, ZEND_ACC_PUBLIC)
  548. ZEND_ME(DateTimeZone, __set_state, arginfo_class_DateTimeZone___set_state, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
  549. ZEND_FE_END
  550. };
  551. static const zend_function_entry class_DateInterval_methods[] = {
  552. ZEND_ME(DateInterval, __construct, arginfo_class_DateInterval___construct, ZEND_ACC_PUBLIC)
  553. ZEND_ME_MAPPING(createFromDateString, date_interval_create_from_date_string, arginfo_class_DateInterval_createFromDateString, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
  554. ZEND_ME_MAPPING(format, date_interval_format, arginfo_class_DateInterval_format, ZEND_ACC_PUBLIC)
  555. ZEND_ME(DateInterval, __wakeup, arginfo_class_DateInterval___wakeup, ZEND_ACC_PUBLIC)
  556. ZEND_ME(DateInterval, __set_state, arginfo_class_DateInterval___set_state, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
  557. ZEND_FE_END
  558. };
  559. static const zend_function_entry class_DatePeriod_methods[] = {
  560. ZEND_ME(DatePeriod, __construct, arginfo_class_DatePeriod___construct, ZEND_ACC_PUBLIC)
  561. ZEND_ME(DatePeriod, getStartDate, arginfo_class_DatePeriod_getStartDate, ZEND_ACC_PUBLIC)
  562. ZEND_ME(DatePeriod, getEndDate, arginfo_class_DatePeriod_getEndDate, ZEND_ACC_PUBLIC)
  563. ZEND_ME(DatePeriod, getDateInterval, arginfo_class_DatePeriod_getDateInterval, ZEND_ACC_PUBLIC)
  564. ZEND_ME(DatePeriod, getRecurrences, arginfo_class_DatePeriod_getRecurrences, ZEND_ACC_PUBLIC)
  565. ZEND_ME(DatePeriod, __wakeup, arginfo_class_DatePeriod___wakeup, ZEND_ACC_PUBLIC)
  566. ZEND_ME(DatePeriod, __set_state, arginfo_class_DatePeriod___set_state, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC)
  567. ZEND_ME(DatePeriod, getIterator, arginfo_class_DatePeriod_getIterator, ZEND_ACC_PUBLIC)
  568. ZEND_FE_END
  569. };
  570. static zend_class_entry *register_class_DateTimeInterface(void)
  571. {
  572. zend_class_entry ce, *class_entry;
  573. INIT_CLASS_ENTRY(ce, "DateTimeInterface", class_DateTimeInterface_methods);
  574. class_entry = zend_register_internal_interface(&ce);
  575. return class_entry;
  576. }
  577. static zend_class_entry *register_class_DateTime(zend_class_entry *class_entry_DateTimeInterface)
  578. {
  579. zend_class_entry ce, *class_entry;
  580. INIT_CLASS_ENTRY(ce, "DateTime", class_DateTime_methods);
  581. class_entry = zend_register_internal_class_ex(&ce, NULL);
  582. zend_class_implements(class_entry, 1, class_entry_DateTimeInterface);
  583. return class_entry;
  584. }
  585. static zend_class_entry *register_class_DateTimeImmutable(zend_class_entry *class_entry_DateTimeInterface)
  586. {
  587. zend_class_entry ce, *class_entry;
  588. INIT_CLASS_ENTRY(ce, "DateTimeImmutable", class_DateTimeImmutable_methods);
  589. class_entry = zend_register_internal_class_ex(&ce, NULL);
  590. zend_class_implements(class_entry, 1, class_entry_DateTimeInterface);
  591. return class_entry;
  592. }
  593. static zend_class_entry *register_class_DateTimeZone(void)
  594. {
  595. zend_class_entry ce, *class_entry;
  596. INIT_CLASS_ENTRY(ce, "DateTimeZone", class_DateTimeZone_methods);
  597. class_entry = zend_register_internal_class_ex(&ce, NULL);
  598. return class_entry;
  599. }
  600. static zend_class_entry *register_class_DateInterval(void)
  601. {
  602. zend_class_entry ce, *class_entry;
  603. INIT_CLASS_ENTRY(ce, "DateInterval", class_DateInterval_methods);
  604. class_entry = zend_register_internal_class_ex(&ce, NULL);
  605. return class_entry;
  606. }
  607. static zend_class_entry *register_class_DatePeriod(zend_class_entry *class_entry_IteratorAggregate)
  608. {
  609. zend_class_entry ce, *class_entry;
  610. INIT_CLASS_ENTRY(ce, "DatePeriod", class_DatePeriod_methods);
  611. class_entry = zend_register_internal_class_ex(&ce, NULL);
  612. zend_class_implements(class_entry, 1, class_entry_IteratorAggregate);
  613. return class_entry;
  614. }