spl_iterators_arginfo.h 39 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840
  1. /* This is a generated file, edit the .stub.php file instead.
  2. * Stub hash: 889a6eed2d62fbb6af168146840189d37765dbaa */
  3. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_EmptyIterator_current, 0, 0, IS_NEVER, 0)
  4. ZEND_END_ARG_INFO()
  5. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_EmptyIterator_next, 0, 0, IS_VOID, 0)
  6. ZEND_END_ARG_INFO()
  7. #define arginfo_class_EmptyIterator_key arginfo_class_EmptyIterator_current
  8. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_EmptyIterator_valid, 0, 0, _IS_BOOL, 0)
  9. ZEND_END_ARG_INFO()
  10. #define arginfo_class_EmptyIterator_rewind arginfo_class_EmptyIterator_next
  11. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_CallbackFilterIterator___construct, 0, 0, 2)
  12. ZEND_ARG_OBJ_INFO(0, iterator, Iterator, 0)
  13. ZEND_ARG_TYPE_INFO(0, callback, IS_CALLABLE, 0)
  14. ZEND_END_ARG_INFO()
  15. #define arginfo_class_CallbackFilterIterator_accept arginfo_class_EmptyIterator_valid
  16. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_RecursiveCallbackFilterIterator___construct, 0, 0, 2)
  17. ZEND_ARG_OBJ_INFO(0, iterator, RecursiveIterator, 0)
  18. ZEND_ARG_TYPE_INFO(0, callback, IS_CALLABLE, 0)
  19. ZEND_END_ARG_INFO()
  20. #define arginfo_class_RecursiveCallbackFilterIterator_hasChildren arginfo_class_EmptyIterator_valid
  21. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_RecursiveCallbackFilterIterator_getChildren, 0, 0, RecursiveCallbackFilterIterator, 0)
  22. ZEND_END_ARG_INFO()
  23. #define arginfo_class_RecursiveIterator_hasChildren arginfo_class_EmptyIterator_valid
  24. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_RecursiveIterator_getChildren, 0, 0, RecursiveIterator, 1)
  25. ZEND_END_ARG_INFO()
  26. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_RecursiveIteratorIterator___construct, 0, 0, 1)
  27. ZEND_ARG_OBJ_INFO(0, iterator, Traversable, 0)
  28. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, mode, IS_LONG, 0, "RecursiveIteratorIterator::LEAVES_ONLY")
  29. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "0")
  30. ZEND_END_ARG_INFO()
  31. #define arginfo_class_RecursiveIteratorIterator_rewind arginfo_class_EmptyIterator_next
  32. #define arginfo_class_RecursiveIteratorIterator_valid arginfo_class_EmptyIterator_valid
  33. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_RecursiveIteratorIterator_key, 0, 0, IS_MIXED, 0)
  34. ZEND_END_ARG_INFO()
  35. #define arginfo_class_RecursiveIteratorIterator_current arginfo_class_RecursiveIteratorIterator_key
  36. #define arginfo_class_RecursiveIteratorIterator_next arginfo_class_EmptyIterator_next
  37. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_RecursiveIteratorIterator_getDepth, 0, 0, IS_LONG, 0)
  38. ZEND_END_ARG_INFO()
  39. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_RecursiveIteratorIterator_getSubIterator, 0, 0, RecursiveIterator, 1)
  40. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, level, IS_LONG, 1, "null")
  41. ZEND_END_ARG_INFO()
  42. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_RecursiveIteratorIterator_getInnerIterator, 0, 0, RecursiveIterator, 0)
  43. ZEND_END_ARG_INFO()
  44. #define arginfo_class_RecursiveIteratorIterator_beginIteration arginfo_class_EmptyIterator_next
  45. #define arginfo_class_RecursiveIteratorIterator_endIteration arginfo_class_EmptyIterator_next
  46. #define arginfo_class_RecursiveIteratorIterator_callHasChildren arginfo_class_EmptyIterator_valid
  47. #define arginfo_class_RecursiveIteratorIterator_callGetChildren arginfo_class_RecursiveIterator_getChildren
  48. #define arginfo_class_RecursiveIteratorIterator_beginChildren arginfo_class_EmptyIterator_next
  49. #define arginfo_class_RecursiveIteratorIterator_endChildren arginfo_class_EmptyIterator_next
  50. #define arginfo_class_RecursiveIteratorIterator_nextElement arginfo_class_EmptyIterator_next
  51. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_RecursiveIteratorIterator_setMaxDepth, 0, 0, IS_VOID, 0)
  52. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, maxDepth, IS_LONG, 0, "-1")
  53. ZEND_END_ARG_INFO()
  54. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_MASK_EX(arginfo_class_RecursiveIteratorIterator_getMaxDepth, 0, 0, MAY_BE_LONG|MAY_BE_FALSE)
  55. ZEND_END_ARG_INFO()
  56. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_OuterIterator_getInnerIterator, 0, 0, Iterator, 1)
  57. ZEND_END_ARG_INFO()
  58. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_IteratorIterator___construct, 0, 0, 1)
  59. ZEND_ARG_OBJ_INFO(0, iterator, Traversable, 0)
  60. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, class, IS_STRING, 1, "null")
  61. ZEND_END_ARG_INFO()
  62. #define arginfo_class_IteratorIterator_getInnerIterator arginfo_class_OuterIterator_getInnerIterator
  63. #define arginfo_class_IteratorIterator_rewind arginfo_class_EmptyIterator_next
  64. #define arginfo_class_IteratorIterator_valid arginfo_class_EmptyIterator_valid
  65. #define arginfo_class_IteratorIterator_key arginfo_class_RecursiveIteratorIterator_key
  66. #define arginfo_class_IteratorIterator_current arginfo_class_RecursiveIteratorIterator_key
  67. #define arginfo_class_IteratorIterator_next arginfo_class_EmptyIterator_next
  68. #define arginfo_class_FilterIterator_accept arginfo_class_EmptyIterator_valid
  69. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_FilterIterator___construct, 0, 0, 1)
  70. ZEND_ARG_OBJ_INFO(0, iterator, Iterator, 0)
  71. ZEND_END_ARG_INFO()
  72. #define arginfo_class_FilterIterator_rewind arginfo_class_EmptyIterator_next
  73. #define arginfo_class_FilterIterator_next arginfo_class_EmptyIterator_next
  74. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_RecursiveFilterIterator___construct, 0, 0, 1)
  75. ZEND_ARG_OBJ_INFO(0, iterator, RecursiveIterator, 0)
  76. ZEND_END_ARG_INFO()
  77. #define arginfo_class_RecursiveFilterIterator_hasChildren arginfo_class_EmptyIterator_valid
  78. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_RecursiveFilterIterator_getChildren, 0, 0, RecursiveFilterIterator, 1)
  79. ZEND_END_ARG_INFO()
  80. #define arginfo_class_ParentIterator___construct arginfo_class_RecursiveFilterIterator___construct
  81. #define arginfo_class_ParentIterator_accept arginfo_class_EmptyIterator_valid
  82. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_SeekableIterator_seek, 0, 1, IS_VOID, 0)
  83. ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0)
  84. ZEND_END_ARG_INFO()
  85. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_LimitIterator___construct, 0, 0, 1)
  86. ZEND_ARG_OBJ_INFO(0, iterator, Iterator, 0)
  87. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, offset, IS_LONG, 0, "0")
  88. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, limit, IS_LONG, 0, "-1")
  89. ZEND_END_ARG_INFO()
  90. #define arginfo_class_LimitIterator_rewind arginfo_class_EmptyIterator_next
  91. #define arginfo_class_LimitIterator_valid arginfo_class_EmptyIterator_valid
  92. #define arginfo_class_LimitIterator_next arginfo_class_EmptyIterator_next
  93. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_LimitIterator_seek, 0, 1, IS_LONG, 0)
  94. ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0)
  95. ZEND_END_ARG_INFO()
  96. #define arginfo_class_LimitIterator_getPosition arginfo_class_RecursiveIteratorIterator_getDepth
  97. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_CachingIterator___construct, 0, 0, 1)
  98. ZEND_ARG_OBJ_INFO(0, iterator, Iterator, 0)
  99. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "CachingIterator::CALL_TOSTRING")
  100. ZEND_END_ARG_INFO()
  101. #define arginfo_class_CachingIterator_rewind arginfo_class_EmptyIterator_next
  102. #define arginfo_class_CachingIterator_valid arginfo_class_EmptyIterator_valid
  103. #define arginfo_class_CachingIterator_next arginfo_class_EmptyIterator_next
  104. #define arginfo_class_CachingIterator_hasNext arginfo_class_EmptyIterator_valid
  105. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_CachingIterator___toString, 0, 0, IS_STRING, 0)
  106. ZEND_END_ARG_INFO()
  107. #define arginfo_class_CachingIterator_getFlags arginfo_class_RecursiveIteratorIterator_getDepth
  108. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_CachingIterator_setFlags, 0, 1, IS_VOID, 0)
  109. ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0)
  110. ZEND_END_ARG_INFO()
  111. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_CachingIterator_offsetGet, 0, 1, IS_MIXED, 0)
  112. ZEND_ARG_INFO(0, key)
  113. ZEND_END_ARG_INFO()
  114. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_CachingIterator_offsetSet, 0, 2, IS_VOID, 0)
  115. ZEND_ARG_INFO(0, key)
  116. ZEND_ARG_TYPE_INFO(0, value, IS_MIXED, 0)
  117. ZEND_END_ARG_INFO()
  118. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_CachingIterator_offsetUnset, 0, 1, IS_VOID, 0)
  119. ZEND_ARG_INFO(0, key)
  120. ZEND_END_ARG_INFO()
  121. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_CachingIterator_offsetExists, 0, 1, _IS_BOOL, 0)
  122. ZEND_ARG_INFO(0, key)
  123. ZEND_END_ARG_INFO()
  124. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_CachingIterator_getCache, 0, 0, IS_ARRAY, 0)
  125. ZEND_END_ARG_INFO()
  126. #define arginfo_class_CachingIterator_count arginfo_class_RecursiveIteratorIterator_getDepth
  127. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_RecursiveCachingIterator___construct, 0, 0, 1)
  128. ZEND_ARG_OBJ_INFO(0, iterator, Iterator, 0)
  129. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "RecursiveCachingIterator::CALL_TOSTRING")
  130. ZEND_END_ARG_INFO()
  131. #define arginfo_class_RecursiveCachingIterator_hasChildren arginfo_class_EmptyIterator_valid
  132. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_RecursiveCachingIterator_getChildren, 0, 0, RecursiveCachingIterator, 1)
  133. ZEND_END_ARG_INFO()
  134. #define arginfo_class_NoRewindIterator___construct arginfo_class_FilterIterator___construct
  135. #define arginfo_class_NoRewindIterator_rewind arginfo_class_EmptyIterator_next
  136. #define arginfo_class_NoRewindIterator_valid arginfo_class_EmptyIterator_valid
  137. #define arginfo_class_NoRewindIterator_key arginfo_class_RecursiveIteratorIterator_key
  138. #define arginfo_class_NoRewindIterator_current arginfo_class_RecursiveIteratorIterator_key
  139. #define arginfo_class_NoRewindIterator_next arginfo_class_EmptyIterator_next
  140. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_AppendIterator___construct, 0, 0, 0)
  141. ZEND_END_ARG_INFO()
  142. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_AppendIterator_append, 0, 1, IS_VOID, 0)
  143. ZEND_ARG_OBJ_INFO(0, iterator, Iterator, 0)
  144. ZEND_END_ARG_INFO()
  145. #define arginfo_class_AppendIterator_rewind arginfo_class_EmptyIterator_next
  146. #define arginfo_class_AppendIterator_valid arginfo_class_EmptyIterator_valid
  147. #define arginfo_class_AppendIterator_current arginfo_class_RecursiveIteratorIterator_key
  148. #define arginfo_class_AppendIterator_next arginfo_class_EmptyIterator_next
  149. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_AppendIterator_getIteratorIndex, 0, 0, IS_LONG, 1)
  150. ZEND_END_ARG_INFO()
  151. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_AppendIterator_getArrayIterator, 0, 0, ArrayIterator, 0)
  152. ZEND_END_ARG_INFO()
  153. #define arginfo_class_InfiniteIterator___construct arginfo_class_FilterIterator___construct
  154. #define arginfo_class_InfiniteIterator_next arginfo_class_EmptyIterator_next
  155. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_RegexIterator___construct, 0, 0, 2)
  156. ZEND_ARG_OBJ_INFO(0, iterator, Iterator, 0)
  157. ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
  158. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, mode, IS_LONG, 0, "RegexIterator::MATCH")
  159. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "0")
  160. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, pregFlags, IS_LONG, 0, "0")
  161. ZEND_END_ARG_INFO()
  162. #define arginfo_class_RegexIterator_accept arginfo_class_EmptyIterator_valid
  163. #define arginfo_class_RegexIterator_getMode arginfo_class_RecursiveIteratorIterator_getDepth
  164. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_RegexIterator_setMode, 0, 1, IS_VOID, 0)
  165. ZEND_ARG_TYPE_INFO(0, mode, IS_LONG, 0)
  166. ZEND_END_ARG_INFO()
  167. #define arginfo_class_RegexIterator_getFlags arginfo_class_RecursiveIteratorIterator_getDepth
  168. #define arginfo_class_RegexIterator_setFlags arginfo_class_CachingIterator_setFlags
  169. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_RegexIterator_getRegex, 0, 0, IS_STRING, 0)
  170. ZEND_END_ARG_INFO()
  171. #define arginfo_class_RegexIterator_getPregFlags arginfo_class_RecursiveIteratorIterator_getDepth
  172. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_RegexIterator_setPregFlags, 0, 1, IS_VOID, 0)
  173. ZEND_ARG_TYPE_INFO(0, pregFlags, IS_LONG, 0)
  174. ZEND_END_ARG_INFO()
  175. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_RecursiveRegexIterator___construct, 0, 0, 2)
  176. ZEND_ARG_OBJ_INFO(0, iterator, RecursiveIterator, 0)
  177. ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
  178. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, mode, IS_LONG, 0, "RecursiveRegexIterator::MATCH")
  179. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "0")
  180. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, pregFlags, IS_LONG, 0, "0")
  181. ZEND_END_ARG_INFO()
  182. #define arginfo_class_RecursiveRegexIterator_accept arginfo_class_EmptyIterator_valid
  183. #define arginfo_class_RecursiveRegexIterator_hasChildren arginfo_class_EmptyIterator_valid
  184. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_RecursiveRegexIterator_getChildren, 0, 0, RecursiveRegexIterator, 0)
  185. ZEND_END_ARG_INFO()
  186. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_RecursiveTreeIterator___construct, 0, 0, 1)
  187. ZEND_ARG_INFO(0, iterator)
  188. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "RecursiveTreeIterator::BYPASS_KEY")
  189. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, cachingIteratorFlags, IS_LONG, 0, "CachingIterator::CATCH_GET_CHILD")
  190. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, mode, IS_LONG, 0, "RecursiveTreeIterator::SELF_FIRST")
  191. ZEND_END_ARG_INFO()
  192. #define arginfo_class_RecursiveTreeIterator_key arginfo_class_RecursiveIteratorIterator_key
  193. #define arginfo_class_RecursiveTreeIterator_current arginfo_class_RecursiveIteratorIterator_key
  194. #define arginfo_class_RecursiveTreeIterator_getPrefix arginfo_class_RegexIterator_getRegex
  195. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_RecursiveTreeIterator_setPostfix, 0, 1, IS_VOID, 0)
  196. ZEND_ARG_TYPE_INFO(0, postfix, IS_STRING, 0)
  197. ZEND_END_ARG_INFO()
  198. ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_RecursiveTreeIterator_setPrefixPart, 0, 2, IS_VOID, 0)
  199. ZEND_ARG_TYPE_INFO(0, part, IS_LONG, 0)
  200. ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
  201. ZEND_END_ARG_INFO()
  202. #define arginfo_class_RecursiveTreeIterator_getEntry arginfo_class_RegexIterator_getRegex
  203. #define arginfo_class_RecursiveTreeIterator_getPostfix arginfo_class_RegexIterator_getRegex
  204. ZEND_METHOD(EmptyIterator, current);
  205. ZEND_METHOD(EmptyIterator, next);
  206. ZEND_METHOD(EmptyIterator, key);
  207. ZEND_METHOD(EmptyIterator, valid);
  208. ZEND_METHOD(EmptyIterator, rewind);
  209. ZEND_METHOD(CallbackFilterIterator, __construct);
  210. ZEND_METHOD(CallbackFilterIterator, accept);
  211. ZEND_METHOD(RecursiveCallbackFilterIterator, __construct);
  212. ZEND_METHOD(RecursiveFilterIterator, hasChildren);
  213. ZEND_METHOD(RecursiveCallbackFilterIterator, getChildren);
  214. ZEND_METHOD(RecursiveIteratorIterator, __construct);
  215. ZEND_METHOD(RecursiveIteratorIterator, rewind);
  216. ZEND_METHOD(RecursiveIteratorIterator, valid);
  217. ZEND_METHOD(RecursiveIteratorIterator, key);
  218. ZEND_METHOD(RecursiveIteratorIterator, current);
  219. ZEND_METHOD(RecursiveIteratorIterator, next);
  220. ZEND_METHOD(RecursiveIteratorIterator, getDepth);
  221. ZEND_METHOD(RecursiveIteratorIterator, getSubIterator);
  222. ZEND_METHOD(RecursiveIteratorIterator, getInnerIterator);
  223. ZEND_METHOD(RecursiveIteratorIterator, beginIteration);
  224. ZEND_METHOD(RecursiveIteratorIterator, endIteration);
  225. ZEND_METHOD(RecursiveIteratorIterator, callHasChildren);
  226. ZEND_METHOD(RecursiveIteratorIterator, callGetChildren);
  227. ZEND_METHOD(RecursiveIteratorIterator, beginChildren);
  228. ZEND_METHOD(RecursiveIteratorIterator, endChildren);
  229. ZEND_METHOD(RecursiveIteratorIterator, nextElement);
  230. ZEND_METHOD(RecursiveIteratorIterator, setMaxDepth);
  231. ZEND_METHOD(RecursiveIteratorIterator, getMaxDepth);
  232. ZEND_METHOD(IteratorIterator, __construct);
  233. ZEND_METHOD(IteratorIterator, getInnerIterator);
  234. ZEND_METHOD(IteratorIterator, rewind);
  235. ZEND_METHOD(IteratorIterator, valid);
  236. ZEND_METHOD(IteratorIterator, key);
  237. ZEND_METHOD(IteratorIterator, current);
  238. ZEND_METHOD(IteratorIterator, next);
  239. ZEND_METHOD(FilterIterator, __construct);
  240. ZEND_METHOD(FilterIterator, rewind);
  241. ZEND_METHOD(FilterIterator, next);
  242. ZEND_METHOD(RecursiveFilterIterator, __construct);
  243. ZEND_METHOD(RecursiveFilterIterator, getChildren);
  244. ZEND_METHOD(ParentIterator, __construct);
  245. ZEND_METHOD(LimitIterator, __construct);
  246. ZEND_METHOD(LimitIterator, rewind);
  247. ZEND_METHOD(LimitIterator, valid);
  248. ZEND_METHOD(LimitIterator, next);
  249. ZEND_METHOD(LimitIterator, seek);
  250. ZEND_METHOD(LimitIterator, getPosition);
  251. ZEND_METHOD(CachingIterator, __construct);
  252. ZEND_METHOD(CachingIterator, rewind);
  253. ZEND_METHOD(CachingIterator, valid);
  254. ZEND_METHOD(CachingIterator, next);
  255. ZEND_METHOD(CachingIterator, hasNext);
  256. ZEND_METHOD(CachingIterator, __toString);
  257. ZEND_METHOD(CachingIterator, getFlags);
  258. ZEND_METHOD(CachingIterator, setFlags);
  259. ZEND_METHOD(CachingIterator, offsetGet);
  260. ZEND_METHOD(CachingIterator, offsetSet);
  261. ZEND_METHOD(CachingIterator, offsetUnset);
  262. ZEND_METHOD(CachingIterator, offsetExists);
  263. ZEND_METHOD(CachingIterator, getCache);
  264. ZEND_METHOD(CachingIterator, count);
  265. ZEND_METHOD(RecursiveCachingIterator, __construct);
  266. ZEND_METHOD(RecursiveCachingIterator, hasChildren);
  267. ZEND_METHOD(RecursiveCachingIterator, getChildren);
  268. ZEND_METHOD(NoRewindIterator, __construct);
  269. ZEND_METHOD(NoRewindIterator, rewind);
  270. ZEND_METHOD(NoRewindIterator, valid);
  271. ZEND_METHOD(NoRewindIterator, key);
  272. ZEND_METHOD(NoRewindIterator, current);
  273. ZEND_METHOD(NoRewindIterator, next);
  274. ZEND_METHOD(AppendIterator, __construct);
  275. ZEND_METHOD(AppendIterator, append);
  276. ZEND_METHOD(AppendIterator, rewind);
  277. ZEND_METHOD(AppendIterator, valid);
  278. ZEND_METHOD(AppendIterator, current);
  279. ZEND_METHOD(AppendIterator, next);
  280. ZEND_METHOD(AppendIterator, getIteratorIndex);
  281. ZEND_METHOD(AppendIterator, getArrayIterator);
  282. ZEND_METHOD(InfiniteIterator, __construct);
  283. ZEND_METHOD(InfiniteIterator, next);
  284. ZEND_METHOD(RegexIterator, __construct);
  285. ZEND_METHOD(RegexIterator, accept);
  286. ZEND_METHOD(RegexIterator, getMode);
  287. ZEND_METHOD(RegexIterator, setMode);
  288. ZEND_METHOD(RegexIterator, getFlags);
  289. ZEND_METHOD(RegexIterator, setFlags);
  290. ZEND_METHOD(RegexIterator, getRegex);
  291. ZEND_METHOD(RegexIterator, getPregFlags);
  292. ZEND_METHOD(RegexIterator, setPregFlags);
  293. ZEND_METHOD(RecursiveRegexIterator, __construct);
  294. ZEND_METHOD(RecursiveRegexIterator, accept);
  295. ZEND_METHOD(RecursiveRegexIterator, getChildren);
  296. ZEND_METHOD(RecursiveTreeIterator, __construct);
  297. ZEND_METHOD(RecursiveTreeIterator, key);
  298. ZEND_METHOD(RecursiveTreeIterator, current);
  299. ZEND_METHOD(RecursiveTreeIterator, getPrefix);
  300. ZEND_METHOD(RecursiveTreeIterator, setPostfix);
  301. ZEND_METHOD(RecursiveTreeIterator, setPrefixPart);
  302. ZEND_METHOD(RecursiveTreeIterator, getEntry);
  303. ZEND_METHOD(RecursiveTreeIterator, getPostfix);
  304. static const zend_function_entry class_EmptyIterator_methods[] = {
  305. ZEND_ME(EmptyIterator, current, arginfo_class_EmptyIterator_current, ZEND_ACC_PUBLIC)
  306. ZEND_ME(EmptyIterator, next, arginfo_class_EmptyIterator_next, ZEND_ACC_PUBLIC)
  307. ZEND_ME(EmptyIterator, key, arginfo_class_EmptyIterator_key, ZEND_ACC_PUBLIC)
  308. ZEND_ME(EmptyIterator, valid, arginfo_class_EmptyIterator_valid, ZEND_ACC_PUBLIC)
  309. ZEND_ME(EmptyIterator, rewind, arginfo_class_EmptyIterator_rewind, ZEND_ACC_PUBLIC)
  310. ZEND_FE_END
  311. };
  312. static const zend_function_entry class_CallbackFilterIterator_methods[] = {
  313. ZEND_ME(CallbackFilterIterator, __construct, arginfo_class_CallbackFilterIterator___construct, ZEND_ACC_PUBLIC)
  314. ZEND_ME(CallbackFilterIterator, accept, arginfo_class_CallbackFilterIterator_accept, ZEND_ACC_PUBLIC)
  315. ZEND_FE_END
  316. };
  317. static const zend_function_entry class_RecursiveCallbackFilterIterator_methods[] = {
  318. ZEND_ME(RecursiveCallbackFilterIterator, __construct, arginfo_class_RecursiveCallbackFilterIterator___construct, ZEND_ACC_PUBLIC)
  319. ZEND_MALIAS(RecursiveFilterIterator, hasChildren, hasChildren, arginfo_class_RecursiveCallbackFilterIterator_hasChildren, ZEND_ACC_PUBLIC)
  320. ZEND_ME(RecursiveCallbackFilterIterator, getChildren, arginfo_class_RecursiveCallbackFilterIterator_getChildren, ZEND_ACC_PUBLIC)
  321. ZEND_FE_END
  322. };
  323. static const zend_function_entry class_RecursiveIterator_methods[] = {
  324. ZEND_ABSTRACT_ME_WITH_FLAGS(RecursiveIterator, hasChildren, arginfo_class_RecursiveIterator_hasChildren, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT)
  325. ZEND_ABSTRACT_ME_WITH_FLAGS(RecursiveIterator, getChildren, arginfo_class_RecursiveIterator_getChildren, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT)
  326. ZEND_FE_END
  327. };
  328. static const zend_function_entry class_RecursiveIteratorIterator_methods[] = {
  329. ZEND_ME(RecursiveIteratorIterator, __construct, arginfo_class_RecursiveIteratorIterator___construct, ZEND_ACC_PUBLIC)
  330. ZEND_ME(RecursiveIteratorIterator, rewind, arginfo_class_RecursiveIteratorIterator_rewind, ZEND_ACC_PUBLIC)
  331. ZEND_ME(RecursiveIteratorIterator, valid, arginfo_class_RecursiveIteratorIterator_valid, ZEND_ACC_PUBLIC)
  332. ZEND_ME(RecursiveIteratorIterator, key, arginfo_class_RecursiveIteratorIterator_key, ZEND_ACC_PUBLIC)
  333. ZEND_ME(RecursiveIteratorIterator, current, arginfo_class_RecursiveIteratorIterator_current, ZEND_ACC_PUBLIC)
  334. ZEND_ME(RecursiveIteratorIterator, next, arginfo_class_RecursiveIteratorIterator_next, ZEND_ACC_PUBLIC)
  335. ZEND_ME(RecursiveIteratorIterator, getDepth, arginfo_class_RecursiveIteratorIterator_getDepth, ZEND_ACC_PUBLIC)
  336. ZEND_ME(RecursiveIteratorIterator, getSubIterator, arginfo_class_RecursiveIteratorIterator_getSubIterator, ZEND_ACC_PUBLIC)
  337. ZEND_ME(RecursiveIteratorIterator, getInnerIterator, arginfo_class_RecursiveIteratorIterator_getInnerIterator, ZEND_ACC_PUBLIC)
  338. ZEND_ME(RecursiveIteratorIterator, beginIteration, arginfo_class_RecursiveIteratorIterator_beginIteration, ZEND_ACC_PUBLIC)
  339. ZEND_ME(RecursiveIteratorIterator, endIteration, arginfo_class_RecursiveIteratorIterator_endIteration, ZEND_ACC_PUBLIC)
  340. ZEND_ME(RecursiveIteratorIterator, callHasChildren, arginfo_class_RecursiveIteratorIterator_callHasChildren, ZEND_ACC_PUBLIC)
  341. ZEND_ME(RecursiveIteratorIterator, callGetChildren, arginfo_class_RecursiveIteratorIterator_callGetChildren, ZEND_ACC_PUBLIC)
  342. ZEND_ME(RecursiveIteratorIterator, beginChildren, arginfo_class_RecursiveIteratorIterator_beginChildren, ZEND_ACC_PUBLIC)
  343. ZEND_ME(RecursiveIteratorIterator, endChildren, arginfo_class_RecursiveIteratorIterator_endChildren, ZEND_ACC_PUBLIC)
  344. ZEND_ME(RecursiveIteratorIterator, nextElement, arginfo_class_RecursiveIteratorIterator_nextElement, ZEND_ACC_PUBLIC)
  345. ZEND_ME(RecursiveIteratorIterator, setMaxDepth, arginfo_class_RecursiveIteratorIterator_setMaxDepth, ZEND_ACC_PUBLIC)
  346. ZEND_ME(RecursiveIteratorIterator, getMaxDepth, arginfo_class_RecursiveIteratorIterator_getMaxDepth, ZEND_ACC_PUBLIC)
  347. ZEND_FE_END
  348. };
  349. static const zend_function_entry class_OuterIterator_methods[] = {
  350. ZEND_ABSTRACT_ME_WITH_FLAGS(OuterIterator, getInnerIterator, arginfo_class_OuterIterator_getInnerIterator, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT)
  351. ZEND_FE_END
  352. };
  353. static const zend_function_entry class_IteratorIterator_methods[] = {
  354. ZEND_ME(IteratorIterator, __construct, arginfo_class_IteratorIterator___construct, ZEND_ACC_PUBLIC)
  355. ZEND_ME(IteratorIterator, getInnerIterator, arginfo_class_IteratorIterator_getInnerIterator, ZEND_ACC_PUBLIC)
  356. ZEND_ME(IteratorIterator, rewind, arginfo_class_IteratorIterator_rewind, ZEND_ACC_PUBLIC)
  357. ZEND_ME(IteratorIterator, valid, arginfo_class_IteratorIterator_valid, ZEND_ACC_PUBLIC)
  358. ZEND_ME(IteratorIterator, key, arginfo_class_IteratorIterator_key, ZEND_ACC_PUBLIC)
  359. ZEND_ME(IteratorIterator, current, arginfo_class_IteratorIterator_current, ZEND_ACC_PUBLIC)
  360. ZEND_ME(IteratorIterator, next, arginfo_class_IteratorIterator_next, ZEND_ACC_PUBLIC)
  361. ZEND_FE_END
  362. };
  363. static const zend_function_entry class_FilterIterator_methods[] = {
  364. ZEND_ABSTRACT_ME_WITH_FLAGS(FilterIterator, accept, arginfo_class_FilterIterator_accept, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT)
  365. ZEND_ME(FilterIterator, __construct, arginfo_class_FilterIterator___construct, ZEND_ACC_PUBLIC)
  366. ZEND_ME(FilterIterator, rewind, arginfo_class_FilterIterator_rewind, ZEND_ACC_PUBLIC)
  367. ZEND_ME(FilterIterator, next, arginfo_class_FilterIterator_next, ZEND_ACC_PUBLIC)
  368. ZEND_FE_END
  369. };
  370. static const zend_function_entry class_RecursiveFilterIterator_methods[] = {
  371. ZEND_ME(RecursiveFilterIterator, __construct, arginfo_class_RecursiveFilterIterator___construct, ZEND_ACC_PUBLIC)
  372. ZEND_ME(RecursiveFilterIterator, hasChildren, arginfo_class_RecursiveFilterIterator_hasChildren, ZEND_ACC_PUBLIC)
  373. ZEND_ME(RecursiveFilterIterator, getChildren, arginfo_class_RecursiveFilterIterator_getChildren, ZEND_ACC_PUBLIC)
  374. ZEND_FE_END
  375. };
  376. static const zend_function_entry class_ParentIterator_methods[] = {
  377. ZEND_ME(ParentIterator, __construct, arginfo_class_ParentIterator___construct, ZEND_ACC_PUBLIC)
  378. ZEND_MALIAS(RecursiveFilterIterator, accept, hasChildren, arginfo_class_ParentIterator_accept, ZEND_ACC_PUBLIC)
  379. ZEND_FE_END
  380. };
  381. static const zend_function_entry class_SeekableIterator_methods[] = {
  382. ZEND_ABSTRACT_ME_WITH_FLAGS(SeekableIterator, seek, arginfo_class_SeekableIterator_seek, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT)
  383. ZEND_FE_END
  384. };
  385. static const zend_function_entry class_LimitIterator_methods[] = {
  386. ZEND_ME(LimitIterator, __construct, arginfo_class_LimitIterator___construct, ZEND_ACC_PUBLIC)
  387. ZEND_ME(LimitIterator, rewind, arginfo_class_LimitIterator_rewind, ZEND_ACC_PUBLIC)
  388. ZEND_ME(LimitIterator, valid, arginfo_class_LimitIterator_valid, ZEND_ACC_PUBLIC)
  389. ZEND_ME(LimitIterator, next, arginfo_class_LimitIterator_next, ZEND_ACC_PUBLIC)
  390. ZEND_ME(LimitIterator, seek, arginfo_class_LimitIterator_seek, ZEND_ACC_PUBLIC)
  391. ZEND_ME(LimitIterator, getPosition, arginfo_class_LimitIterator_getPosition, ZEND_ACC_PUBLIC)
  392. ZEND_FE_END
  393. };
  394. static const zend_function_entry class_CachingIterator_methods[] = {
  395. ZEND_ME(CachingIterator, __construct, arginfo_class_CachingIterator___construct, ZEND_ACC_PUBLIC)
  396. ZEND_ME(CachingIterator, rewind, arginfo_class_CachingIterator_rewind, ZEND_ACC_PUBLIC)
  397. ZEND_ME(CachingIterator, valid, arginfo_class_CachingIterator_valid, ZEND_ACC_PUBLIC)
  398. ZEND_ME(CachingIterator, next, arginfo_class_CachingIterator_next, ZEND_ACC_PUBLIC)
  399. ZEND_ME(CachingIterator, hasNext, arginfo_class_CachingIterator_hasNext, ZEND_ACC_PUBLIC)
  400. ZEND_ME(CachingIterator, __toString, arginfo_class_CachingIterator___toString, ZEND_ACC_PUBLIC)
  401. ZEND_ME(CachingIterator, getFlags, arginfo_class_CachingIterator_getFlags, ZEND_ACC_PUBLIC)
  402. ZEND_ME(CachingIterator, setFlags, arginfo_class_CachingIterator_setFlags, ZEND_ACC_PUBLIC)
  403. ZEND_ME(CachingIterator, offsetGet, arginfo_class_CachingIterator_offsetGet, ZEND_ACC_PUBLIC)
  404. ZEND_ME(CachingIterator, offsetSet, arginfo_class_CachingIterator_offsetSet, ZEND_ACC_PUBLIC)
  405. ZEND_ME(CachingIterator, offsetUnset, arginfo_class_CachingIterator_offsetUnset, ZEND_ACC_PUBLIC)
  406. ZEND_ME(CachingIterator, offsetExists, arginfo_class_CachingIterator_offsetExists, ZEND_ACC_PUBLIC)
  407. ZEND_ME(CachingIterator, getCache, arginfo_class_CachingIterator_getCache, ZEND_ACC_PUBLIC)
  408. ZEND_ME(CachingIterator, count, arginfo_class_CachingIterator_count, ZEND_ACC_PUBLIC)
  409. ZEND_FE_END
  410. };
  411. static const zend_function_entry class_RecursiveCachingIterator_methods[] = {
  412. ZEND_ME(RecursiveCachingIterator, __construct, arginfo_class_RecursiveCachingIterator___construct, ZEND_ACC_PUBLIC)
  413. ZEND_ME(RecursiveCachingIterator, hasChildren, arginfo_class_RecursiveCachingIterator_hasChildren, ZEND_ACC_PUBLIC)
  414. ZEND_ME(RecursiveCachingIterator, getChildren, arginfo_class_RecursiveCachingIterator_getChildren, ZEND_ACC_PUBLIC)
  415. ZEND_FE_END
  416. };
  417. static const zend_function_entry class_NoRewindIterator_methods[] = {
  418. ZEND_ME(NoRewindIterator, __construct, arginfo_class_NoRewindIterator___construct, ZEND_ACC_PUBLIC)
  419. ZEND_ME(NoRewindIterator, rewind, arginfo_class_NoRewindIterator_rewind, ZEND_ACC_PUBLIC)
  420. ZEND_ME(NoRewindIterator, valid, arginfo_class_NoRewindIterator_valid, ZEND_ACC_PUBLIC)
  421. ZEND_ME(NoRewindIterator, key, arginfo_class_NoRewindIterator_key, ZEND_ACC_PUBLIC)
  422. ZEND_ME(NoRewindIterator, current, arginfo_class_NoRewindIterator_current, ZEND_ACC_PUBLIC)
  423. ZEND_ME(NoRewindIterator, next, arginfo_class_NoRewindIterator_next, ZEND_ACC_PUBLIC)
  424. ZEND_FE_END
  425. };
  426. static const zend_function_entry class_AppendIterator_methods[] = {
  427. ZEND_ME(AppendIterator, __construct, arginfo_class_AppendIterator___construct, ZEND_ACC_PUBLIC)
  428. ZEND_ME(AppendIterator, append, arginfo_class_AppendIterator_append, ZEND_ACC_PUBLIC)
  429. ZEND_ME(AppendIterator, rewind, arginfo_class_AppendIterator_rewind, ZEND_ACC_PUBLIC)
  430. ZEND_ME(AppendIterator, valid, arginfo_class_AppendIterator_valid, ZEND_ACC_PUBLIC)
  431. ZEND_ME(AppendIterator, current, arginfo_class_AppendIterator_current, ZEND_ACC_PUBLIC)
  432. ZEND_ME(AppendIterator, next, arginfo_class_AppendIterator_next, ZEND_ACC_PUBLIC)
  433. ZEND_ME(AppendIterator, getIteratorIndex, arginfo_class_AppendIterator_getIteratorIndex, ZEND_ACC_PUBLIC)
  434. ZEND_ME(AppendIterator, getArrayIterator, arginfo_class_AppendIterator_getArrayIterator, ZEND_ACC_PUBLIC)
  435. ZEND_FE_END
  436. };
  437. static const zend_function_entry class_InfiniteIterator_methods[] = {
  438. ZEND_ME(InfiniteIterator, __construct, arginfo_class_InfiniteIterator___construct, ZEND_ACC_PUBLIC)
  439. ZEND_ME(InfiniteIterator, next, arginfo_class_InfiniteIterator_next, ZEND_ACC_PUBLIC)
  440. ZEND_FE_END
  441. };
  442. static const zend_function_entry class_RegexIterator_methods[] = {
  443. ZEND_ME(RegexIterator, __construct, arginfo_class_RegexIterator___construct, ZEND_ACC_PUBLIC)
  444. ZEND_ME(RegexIterator, accept, arginfo_class_RegexIterator_accept, ZEND_ACC_PUBLIC)
  445. ZEND_ME(RegexIterator, getMode, arginfo_class_RegexIterator_getMode, ZEND_ACC_PUBLIC)
  446. ZEND_ME(RegexIterator, setMode, arginfo_class_RegexIterator_setMode, ZEND_ACC_PUBLIC)
  447. ZEND_ME(RegexIterator, getFlags, arginfo_class_RegexIterator_getFlags, ZEND_ACC_PUBLIC)
  448. ZEND_ME(RegexIterator, setFlags, arginfo_class_RegexIterator_setFlags, ZEND_ACC_PUBLIC)
  449. ZEND_ME(RegexIterator, getRegex, arginfo_class_RegexIterator_getRegex, ZEND_ACC_PUBLIC)
  450. ZEND_ME(RegexIterator, getPregFlags, arginfo_class_RegexIterator_getPregFlags, ZEND_ACC_PUBLIC)
  451. ZEND_ME(RegexIterator, setPregFlags, arginfo_class_RegexIterator_setPregFlags, ZEND_ACC_PUBLIC)
  452. ZEND_FE_END
  453. };
  454. static const zend_function_entry class_RecursiveRegexIterator_methods[] = {
  455. ZEND_ME(RecursiveRegexIterator, __construct, arginfo_class_RecursiveRegexIterator___construct, ZEND_ACC_PUBLIC)
  456. ZEND_ME(RecursiveRegexIterator, accept, arginfo_class_RecursiveRegexIterator_accept, ZEND_ACC_PUBLIC)
  457. ZEND_MALIAS(RecursiveFilterIterator, hasChildren, hasChildren, arginfo_class_RecursiveRegexIterator_hasChildren, ZEND_ACC_PUBLIC)
  458. ZEND_ME(RecursiveRegexIterator, getChildren, arginfo_class_RecursiveRegexIterator_getChildren, ZEND_ACC_PUBLIC)
  459. ZEND_FE_END
  460. };
  461. static const zend_function_entry class_RecursiveTreeIterator_methods[] = {
  462. ZEND_ME(RecursiveTreeIterator, __construct, arginfo_class_RecursiveTreeIterator___construct, ZEND_ACC_PUBLIC)
  463. ZEND_ME(RecursiveTreeIterator, key, arginfo_class_RecursiveTreeIterator_key, ZEND_ACC_PUBLIC)
  464. ZEND_ME(RecursiveTreeIterator, current, arginfo_class_RecursiveTreeIterator_current, ZEND_ACC_PUBLIC)
  465. ZEND_ME(RecursiveTreeIterator, getPrefix, arginfo_class_RecursiveTreeIterator_getPrefix, ZEND_ACC_PUBLIC)
  466. ZEND_ME(RecursiveTreeIterator, setPostfix, arginfo_class_RecursiveTreeIterator_setPostfix, ZEND_ACC_PUBLIC)
  467. ZEND_ME(RecursiveTreeIterator, setPrefixPart, arginfo_class_RecursiveTreeIterator_setPrefixPart, ZEND_ACC_PUBLIC)
  468. ZEND_ME(RecursiveTreeIterator, getEntry, arginfo_class_RecursiveTreeIterator_getEntry, ZEND_ACC_PUBLIC)
  469. ZEND_ME(RecursiveTreeIterator, getPostfix, arginfo_class_RecursiveTreeIterator_getPostfix, ZEND_ACC_PUBLIC)
  470. ZEND_FE_END
  471. };
  472. static zend_class_entry *register_class_EmptyIterator(zend_class_entry *class_entry_Iterator)
  473. {
  474. zend_class_entry ce, *class_entry;
  475. INIT_CLASS_ENTRY(ce, "EmptyIterator", class_EmptyIterator_methods);
  476. class_entry = zend_register_internal_class_ex(&ce, NULL);
  477. zend_class_implements(class_entry, 1, class_entry_Iterator);
  478. return class_entry;
  479. }
  480. static zend_class_entry *register_class_CallbackFilterIterator(zend_class_entry *class_entry_FilterIterator)
  481. {
  482. zend_class_entry ce, *class_entry;
  483. INIT_CLASS_ENTRY(ce, "CallbackFilterIterator", class_CallbackFilterIterator_methods);
  484. class_entry = zend_register_internal_class_ex(&ce, class_entry_FilterIterator);
  485. return class_entry;
  486. }
  487. static zend_class_entry *register_class_RecursiveCallbackFilterIterator(zend_class_entry *class_entry_CallbackFilterIterator, zend_class_entry *class_entry_RecursiveIterator)
  488. {
  489. zend_class_entry ce, *class_entry;
  490. INIT_CLASS_ENTRY(ce, "RecursiveCallbackFilterIterator", class_RecursiveCallbackFilterIterator_methods);
  491. class_entry = zend_register_internal_class_ex(&ce, class_entry_CallbackFilterIterator);
  492. zend_class_implements(class_entry, 1, class_entry_RecursiveIterator);
  493. return class_entry;
  494. }
  495. static zend_class_entry *register_class_RecursiveIterator(zend_class_entry *class_entry_Iterator)
  496. {
  497. zend_class_entry ce, *class_entry;
  498. INIT_CLASS_ENTRY(ce, "RecursiveIterator", class_RecursiveIterator_methods);
  499. class_entry = zend_register_internal_interface(&ce);
  500. zend_class_implements(class_entry, 1, class_entry_Iterator);
  501. return class_entry;
  502. }
  503. static zend_class_entry *register_class_RecursiveIteratorIterator(zend_class_entry *class_entry_OuterIterator)
  504. {
  505. zend_class_entry ce, *class_entry;
  506. INIT_CLASS_ENTRY(ce, "RecursiveIteratorIterator", class_RecursiveIteratorIterator_methods);
  507. class_entry = zend_register_internal_class_ex(&ce, NULL);
  508. zend_class_implements(class_entry, 1, class_entry_OuterIterator);
  509. return class_entry;
  510. }
  511. static zend_class_entry *register_class_OuterIterator(zend_class_entry *class_entry_Iterator)
  512. {
  513. zend_class_entry ce, *class_entry;
  514. INIT_CLASS_ENTRY(ce, "OuterIterator", class_OuterIterator_methods);
  515. class_entry = zend_register_internal_interface(&ce);
  516. zend_class_implements(class_entry, 1, class_entry_Iterator);
  517. return class_entry;
  518. }
  519. static zend_class_entry *register_class_IteratorIterator(zend_class_entry *class_entry_OuterIterator)
  520. {
  521. zend_class_entry ce, *class_entry;
  522. INIT_CLASS_ENTRY(ce, "IteratorIterator", class_IteratorIterator_methods);
  523. class_entry = zend_register_internal_class_ex(&ce, NULL);
  524. zend_class_implements(class_entry, 1, class_entry_OuterIterator);
  525. return class_entry;
  526. }
  527. static zend_class_entry *register_class_FilterIterator(zend_class_entry *class_entry_IteratorIterator)
  528. {
  529. zend_class_entry ce, *class_entry;
  530. INIT_CLASS_ENTRY(ce, "FilterIterator", class_FilterIterator_methods);
  531. class_entry = zend_register_internal_class_ex(&ce, class_entry_IteratorIterator);
  532. class_entry->ce_flags |= ZEND_ACC_ABSTRACT;
  533. return class_entry;
  534. }
  535. static zend_class_entry *register_class_RecursiveFilterIterator(zend_class_entry *class_entry_FilterIterator, zend_class_entry *class_entry_RecursiveIterator)
  536. {
  537. zend_class_entry ce, *class_entry;
  538. INIT_CLASS_ENTRY(ce, "RecursiveFilterIterator", class_RecursiveFilterIterator_methods);
  539. class_entry = zend_register_internal_class_ex(&ce, class_entry_FilterIterator);
  540. class_entry->ce_flags |= ZEND_ACC_ABSTRACT;
  541. zend_class_implements(class_entry, 1, class_entry_RecursiveIterator);
  542. return class_entry;
  543. }
  544. static zend_class_entry *register_class_ParentIterator(zend_class_entry *class_entry_RecursiveFilterIterator)
  545. {
  546. zend_class_entry ce, *class_entry;
  547. INIT_CLASS_ENTRY(ce, "ParentIterator", class_ParentIterator_methods);
  548. class_entry = zend_register_internal_class_ex(&ce, class_entry_RecursiveFilterIterator);
  549. return class_entry;
  550. }
  551. static zend_class_entry *register_class_SeekableIterator(zend_class_entry *class_entry_Iterator)
  552. {
  553. zend_class_entry ce, *class_entry;
  554. INIT_CLASS_ENTRY(ce, "SeekableIterator", class_SeekableIterator_methods);
  555. class_entry = zend_register_internal_interface(&ce);
  556. zend_class_implements(class_entry, 1, class_entry_Iterator);
  557. return class_entry;
  558. }
  559. static zend_class_entry *register_class_LimitIterator(zend_class_entry *class_entry_IteratorIterator)
  560. {
  561. zend_class_entry ce, *class_entry;
  562. INIT_CLASS_ENTRY(ce, "LimitIterator", class_LimitIterator_methods);
  563. class_entry = zend_register_internal_class_ex(&ce, class_entry_IteratorIterator);
  564. return class_entry;
  565. }
  566. static zend_class_entry *register_class_CachingIterator(zend_class_entry *class_entry_IteratorIterator, zend_class_entry *class_entry_ArrayAccess, zend_class_entry *class_entry_Countable, zend_class_entry *class_entry_Stringable)
  567. {
  568. zend_class_entry ce, *class_entry;
  569. INIT_CLASS_ENTRY(ce, "CachingIterator", class_CachingIterator_methods);
  570. class_entry = zend_register_internal_class_ex(&ce, class_entry_IteratorIterator);
  571. zend_class_implements(class_entry, 3, class_entry_ArrayAccess, class_entry_Countable, class_entry_Stringable);
  572. return class_entry;
  573. }
  574. static zend_class_entry *register_class_RecursiveCachingIterator(zend_class_entry *class_entry_CachingIterator, zend_class_entry *class_entry_RecursiveIterator)
  575. {
  576. zend_class_entry ce, *class_entry;
  577. INIT_CLASS_ENTRY(ce, "RecursiveCachingIterator", class_RecursiveCachingIterator_methods);
  578. class_entry = zend_register_internal_class_ex(&ce, class_entry_CachingIterator);
  579. zend_class_implements(class_entry, 1, class_entry_RecursiveIterator);
  580. return class_entry;
  581. }
  582. static zend_class_entry *register_class_NoRewindIterator(zend_class_entry *class_entry_IteratorIterator)
  583. {
  584. zend_class_entry ce, *class_entry;
  585. INIT_CLASS_ENTRY(ce, "NoRewindIterator", class_NoRewindIterator_methods);
  586. class_entry = zend_register_internal_class_ex(&ce, class_entry_IteratorIterator);
  587. return class_entry;
  588. }
  589. static zend_class_entry *register_class_AppendIterator(zend_class_entry *class_entry_IteratorIterator)
  590. {
  591. zend_class_entry ce, *class_entry;
  592. INIT_CLASS_ENTRY(ce, "AppendIterator", class_AppendIterator_methods);
  593. class_entry = zend_register_internal_class_ex(&ce, class_entry_IteratorIterator);
  594. return class_entry;
  595. }
  596. static zend_class_entry *register_class_InfiniteIterator(zend_class_entry *class_entry_IteratorIterator)
  597. {
  598. zend_class_entry ce, *class_entry;
  599. INIT_CLASS_ENTRY(ce, "InfiniteIterator", class_InfiniteIterator_methods);
  600. class_entry = zend_register_internal_class_ex(&ce, class_entry_IteratorIterator);
  601. return class_entry;
  602. }
  603. static zend_class_entry *register_class_RegexIterator(zend_class_entry *class_entry_FilterIterator)
  604. {
  605. zend_class_entry ce, *class_entry;
  606. INIT_CLASS_ENTRY(ce, "RegexIterator", class_RegexIterator_methods);
  607. class_entry = zend_register_internal_class_ex(&ce, class_entry_FilterIterator);
  608. zval property_replacement_default_value;
  609. ZVAL_NULL(&property_replacement_default_value);
  610. zend_string *property_replacement_name = zend_string_init("replacement", sizeof("replacement") - 1, 1);
  611. zend_declare_typed_property(class_entry, property_replacement_name, &property_replacement_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING|MAY_BE_NULL));
  612. zend_string_release(property_replacement_name);
  613. return class_entry;
  614. }
  615. static zend_class_entry *register_class_RecursiveRegexIterator(zend_class_entry *class_entry_RegexIterator, zend_class_entry *class_entry_RecursiveIterator)
  616. {
  617. zend_class_entry ce, *class_entry;
  618. INIT_CLASS_ENTRY(ce, "RecursiveRegexIterator", class_RecursiveRegexIterator_methods);
  619. class_entry = zend_register_internal_class_ex(&ce, class_entry_RegexIterator);
  620. zend_class_implements(class_entry, 1, class_entry_RecursiveIterator);
  621. return class_entry;
  622. }
  623. static zend_class_entry *register_class_RecursiveTreeIterator(zend_class_entry *class_entry_RecursiveIteratorIterator)
  624. {
  625. zend_class_entry ce, *class_entry;
  626. INIT_CLASS_ENTRY(ce, "RecursiveTreeIterator", class_RecursiveTreeIterator_methods);
  627. class_entry = zend_register_internal_class_ex(&ce, class_entry_RecursiveIteratorIterator);
  628. return class_entry;
  629. }