1 /* This is a generated file, edit the .stub.php file instead.
2 * Stub hash: ab66d2fff7ac7556d4244582a2bd3e83a3f95243 */
3
4 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_EmptyIterator_current, 0, 0, IS_NEVER, 0)
5 ZEND_END_ARG_INFO()
6
7 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_EmptyIterator_next, 0, 0, IS_VOID, 0)
8 ZEND_END_ARG_INFO()
9
10 #define arginfo_class_EmptyIterator_key arginfo_class_EmptyIterator_current
11
12 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_EmptyIterator_valid, 0, 0, IS_FALSE, 0)
13 ZEND_END_ARG_INFO()
14
15 #define arginfo_class_EmptyIterator_rewind arginfo_class_EmptyIterator_next
16
17 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_CallbackFilterIterator___construct, 0, 0, 2)
18 ZEND_ARG_OBJ_INFO(0, iterator, Iterator, 0)
19 ZEND_ARG_TYPE_INFO(0, callback, IS_CALLABLE, 0)
20 ZEND_END_ARG_INFO()
21
22 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_CallbackFilterIterator_accept, 0, 0, _IS_BOOL, 0)
23 ZEND_END_ARG_INFO()
24
25 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_RecursiveCallbackFilterIterator___construct, 0, 0, 2)
26 ZEND_ARG_OBJ_INFO(0, iterator, RecursiveIterator, 0)
27 ZEND_ARG_TYPE_INFO(0, callback, IS_CALLABLE, 0)
28 ZEND_END_ARG_INFO()
29
30 #define arginfo_class_RecursiveCallbackFilterIterator_hasChildren arginfo_class_CallbackFilterIterator_accept
31
32 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_RecursiveCallbackFilterIterator_getChildren, 0, 0, RecursiveCallbackFilterIterator, 0)
33 ZEND_END_ARG_INFO()
34
35 #define arginfo_class_RecursiveIterator_hasChildren arginfo_class_CallbackFilterIterator_accept
36
37 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_RecursiveIterator_getChildren, 0, 0, RecursiveIterator, 1)
38 ZEND_END_ARG_INFO()
39
40 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_RecursiveIteratorIterator___construct, 0, 0, 1)
41 ZEND_ARG_OBJ_INFO(0, iterator, Traversable, 0)
42 ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, mode, IS_LONG, 0, "RecursiveIteratorIterator::LEAVES_ONLY")
43 ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "0")
44 ZEND_END_ARG_INFO()
45
46 #define arginfo_class_RecursiveIteratorIterator_rewind arginfo_class_EmptyIterator_next
47
48 #define arginfo_class_RecursiveIteratorIterator_valid arginfo_class_CallbackFilterIterator_accept
49
50 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_RecursiveIteratorIterator_key, 0, 0, IS_MIXED, 0)
51 ZEND_END_ARG_INFO()
52
53 #define arginfo_class_RecursiveIteratorIterator_current arginfo_class_RecursiveIteratorIterator_key
54
55 #define arginfo_class_RecursiveIteratorIterator_next arginfo_class_EmptyIterator_next
56
57 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_RecursiveIteratorIterator_getDepth, 0, 0, IS_LONG, 0)
58 ZEND_END_ARG_INFO()
59
60 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_RecursiveIteratorIterator_getSubIterator, 0, 0, RecursiveIterator, 1)
61 ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, level, IS_LONG, 1, "null")
62 ZEND_END_ARG_INFO()
63
64 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_RecursiveIteratorIterator_getInnerIterator, 0, 0, RecursiveIterator, 0)
65 ZEND_END_ARG_INFO()
66
67 #define arginfo_class_RecursiveIteratorIterator_beginIteration arginfo_class_EmptyIterator_next
68
69 #define arginfo_class_RecursiveIteratorIterator_endIteration arginfo_class_EmptyIterator_next
70
71 #define arginfo_class_RecursiveIteratorIterator_callHasChildren arginfo_class_CallbackFilterIterator_accept
72
73 #define arginfo_class_RecursiveIteratorIterator_callGetChildren arginfo_class_RecursiveIterator_getChildren
74
75 #define arginfo_class_RecursiveIteratorIterator_beginChildren arginfo_class_EmptyIterator_next
76
77 #define arginfo_class_RecursiveIteratorIterator_endChildren arginfo_class_EmptyIterator_next
78
79 #define arginfo_class_RecursiveIteratorIterator_nextElement arginfo_class_EmptyIterator_next
80
81 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_RecursiveIteratorIterator_setMaxDepth, 0, 0, IS_VOID, 0)
82 ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, maxDepth, IS_LONG, 0, "-1")
83 ZEND_END_ARG_INFO()
84
85 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_MASK_EX(arginfo_class_RecursiveIteratorIterator_getMaxDepth, 0, 0, MAY_BE_LONG|MAY_BE_FALSE)
86 ZEND_END_ARG_INFO()
87
88 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_OuterIterator_getInnerIterator, 0, 0, Iterator, 1)
89 ZEND_END_ARG_INFO()
90
91 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_IteratorIterator___construct, 0, 0, 1)
92 ZEND_ARG_OBJ_INFO(0, iterator, Traversable, 0)
93 ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, class, IS_STRING, 1, "null")
94 ZEND_END_ARG_INFO()
95
96 #define arginfo_class_IteratorIterator_getInnerIterator arginfo_class_OuterIterator_getInnerIterator
97
98 #define arginfo_class_IteratorIterator_rewind arginfo_class_EmptyIterator_next
99
100 #define arginfo_class_IteratorIterator_valid arginfo_class_CallbackFilterIterator_accept
101
102 #define arginfo_class_IteratorIterator_key arginfo_class_RecursiveIteratorIterator_key
103
104 #define arginfo_class_IteratorIterator_current arginfo_class_RecursiveIteratorIterator_key
105
106 #define arginfo_class_IteratorIterator_next arginfo_class_EmptyIterator_next
107
108 #define arginfo_class_FilterIterator_accept arginfo_class_CallbackFilterIterator_accept
109
110 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_FilterIterator___construct, 0, 0, 1)
111 ZEND_ARG_OBJ_INFO(0, iterator, Iterator, 0)
112 ZEND_END_ARG_INFO()
113
114 #define arginfo_class_FilterIterator_rewind arginfo_class_EmptyIterator_next
115
116 #define arginfo_class_FilterIterator_next arginfo_class_EmptyIterator_next
117
118 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_RecursiveFilterIterator___construct, 0, 0, 1)
119 ZEND_ARG_OBJ_INFO(0, iterator, RecursiveIterator, 0)
120 ZEND_END_ARG_INFO()
121
122 #define arginfo_class_RecursiveFilterIterator_hasChildren arginfo_class_CallbackFilterIterator_accept
123
124 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_RecursiveFilterIterator_getChildren, 0, 0, RecursiveFilterIterator, 1)
125 ZEND_END_ARG_INFO()
126
127 #define arginfo_class_ParentIterator___construct arginfo_class_RecursiveFilterIterator___construct
128
129 #define arginfo_class_ParentIterator_accept arginfo_class_CallbackFilterIterator_accept
130
131 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_SeekableIterator_seek, 0, 1, IS_VOID, 0)
132 ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0)
133 ZEND_END_ARG_INFO()
134
135 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_LimitIterator___construct, 0, 0, 1)
136 ZEND_ARG_OBJ_INFO(0, iterator, Iterator, 0)
137 ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, offset, IS_LONG, 0, "0")
138 ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, limit, IS_LONG, 0, "-1")
139 ZEND_END_ARG_INFO()
140
141 #define arginfo_class_LimitIterator_rewind arginfo_class_EmptyIterator_next
142
143 #define arginfo_class_LimitIterator_valid arginfo_class_CallbackFilterIterator_accept
144
145 #define arginfo_class_LimitIterator_next arginfo_class_EmptyIterator_next
146
147 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_LimitIterator_seek, 0, 1, IS_LONG, 0)
148 ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0)
149 ZEND_END_ARG_INFO()
150
151 #define arginfo_class_LimitIterator_getPosition arginfo_class_RecursiveIteratorIterator_getDepth
152
153 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_CachingIterator___construct, 0, 0, 1)
154 ZEND_ARG_OBJ_INFO(0, iterator, Iterator, 0)
155 ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "CachingIterator::CALL_TOSTRING")
156 ZEND_END_ARG_INFO()
157
158 #define arginfo_class_CachingIterator_rewind arginfo_class_EmptyIterator_next
159
160 #define arginfo_class_CachingIterator_valid arginfo_class_CallbackFilterIterator_accept
161
162 #define arginfo_class_CachingIterator_next arginfo_class_EmptyIterator_next
163
164 #define arginfo_class_CachingIterator_hasNext arginfo_class_CallbackFilterIterator_accept
165
166 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_CachingIterator___toString, 0, 0, IS_STRING, 0)
167 ZEND_END_ARG_INFO()
168
169 #define arginfo_class_CachingIterator_getFlags arginfo_class_RecursiveIteratorIterator_getDepth
170
171 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_CachingIterator_setFlags, 0, 1, IS_VOID, 0)
172 ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0)
173 ZEND_END_ARG_INFO()
174
175 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_CachingIterator_offsetGet, 0, 1, IS_MIXED, 0)
176 ZEND_ARG_INFO(0, key)
177 ZEND_END_ARG_INFO()
178
179 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_CachingIterator_offsetSet, 0, 2, IS_VOID, 0)
180 ZEND_ARG_INFO(0, key)
181 ZEND_ARG_TYPE_INFO(0, value, IS_MIXED, 0)
182 ZEND_END_ARG_INFO()
183
184 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_CachingIterator_offsetUnset, 0, 1, IS_VOID, 0)
185 ZEND_ARG_INFO(0, key)
186 ZEND_END_ARG_INFO()
187
188 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_CachingIterator_offsetExists, 0, 1, _IS_BOOL, 0)
189 ZEND_ARG_INFO(0, key)
190 ZEND_END_ARG_INFO()
191
192 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_CachingIterator_getCache, 0, 0, IS_ARRAY, 0)
193 ZEND_END_ARG_INFO()
194
195 #define arginfo_class_CachingIterator_count arginfo_class_RecursiveIteratorIterator_getDepth
196
197 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_RecursiveCachingIterator___construct, 0, 0, 1)
198 ZEND_ARG_OBJ_INFO(0, iterator, Iterator, 0)
199 ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "RecursiveCachingIterator::CALL_TOSTRING")
200 ZEND_END_ARG_INFO()
201
202 #define arginfo_class_RecursiveCachingIterator_hasChildren arginfo_class_CallbackFilterIterator_accept
203
204 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_RecursiveCachingIterator_getChildren, 0, 0, RecursiveCachingIterator, 1)
205 ZEND_END_ARG_INFO()
206
207 #define arginfo_class_NoRewindIterator___construct arginfo_class_FilterIterator___construct
208
209 #define arginfo_class_NoRewindIterator_rewind arginfo_class_EmptyIterator_next
210
211 #define arginfo_class_NoRewindIterator_valid arginfo_class_CallbackFilterIterator_accept
212
213 #define arginfo_class_NoRewindIterator_key arginfo_class_RecursiveIteratorIterator_key
214
215 #define arginfo_class_NoRewindIterator_current arginfo_class_RecursiveIteratorIterator_key
216
217 #define arginfo_class_NoRewindIterator_next arginfo_class_EmptyIterator_next
218
219 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_AppendIterator___construct, 0, 0, 0)
220 ZEND_END_ARG_INFO()
221
222 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_AppendIterator_append, 0, 1, IS_VOID, 0)
223 ZEND_ARG_OBJ_INFO(0, iterator, Iterator, 0)
224 ZEND_END_ARG_INFO()
225
226 #define arginfo_class_AppendIterator_rewind arginfo_class_EmptyIterator_next
227
228 #define arginfo_class_AppendIterator_valid arginfo_class_CallbackFilterIterator_accept
229
230 #define arginfo_class_AppendIterator_current arginfo_class_RecursiveIteratorIterator_key
231
232 #define arginfo_class_AppendIterator_next arginfo_class_EmptyIterator_next
233
234 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_AppendIterator_getIteratorIndex, 0, 0, IS_LONG, 1)
235 ZEND_END_ARG_INFO()
236
237 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_AppendIterator_getArrayIterator, 0, 0, ArrayIterator, 0)
238 ZEND_END_ARG_INFO()
239
240 #define arginfo_class_InfiniteIterator___construct arginfo_class_FilterIterator___construct
241
242 #define arginfo_class_InfiniteIterator_next arginfo_class_EmptyIterator_next
243
244 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_RegexIterator___construct, 0, 0, 2)
245 ZEND_ARG_OBJ_INFO(0, iterator, Iterator, 0)
246 ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
247 ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, mode, IS_LONG, 0, "RegexIterator::MATCH")
248 ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "0")
249 ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, pregFlags, IS_LONG, 0, "0")
250 ZEND_END_ARG_INFO()
251
252 #define arginfo_class_RegexIterator_accept arginfo_class_CallbackFilterIterator_accept
253
254 #define arginfo_class_RegexIterator_getMode arginfo_class_RecursiveIteratorIterator_getDepth
255
256 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_RegexIterator_setMode, 0, 1, IS_VOID, 0)
257 ZEND_ARG_TYPE_INFO(0, mode, IS_LONG, 0)
258 ZEND_END_ARG_INFO()
259
260 #define arginfo_class_RegexIterator_getFlags arginfo_class_RecursiveIteratorIterator_getDepth
261
262 #define arginfo_class_RegexIterator_setFlags arginfo_class_CachingIterator_setFlags
263
264 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_RegexIterator_getRegex, 0, 0, IS_STRING, 0)
265 ZEND_END_ARG_INFO()
266
267 #define arginfo_class_RegexIterator_getPregFlags arginfo_class_RecursiveIteratorIterator_getDepth
268
269 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_RegexIterator_setPregFlags, 0, 1, IS_VOID, 0)
270 ZEND_ARG_TYPE_INFO(0, pregFlags, IS_LONG, 0)
271 ZEND_END_ARG_INFO()
272
273 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_RecursiveRegexIterator___construct, 0, 0, 2)
274 ZEND_ARG_OBJ_INFO(0, iterator, RecursiveIterator, 0)
275 ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
276 ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, mode, IS_LONG, 0, "RecursiveRegexIterator::MATCH")
277 ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "0")
278 ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, pregFlags, IS_LONG, 0, "0")
279 ZEND_END_ARG_INFO()
280
281 #define arginfo_class_RecursiveRegexIterator_accept arginfo_class_CallbackFilterIterator_accept
282
283 #define arginfo_class_RecursiveRegexIterator_hasChildren arginfo_class_CallbackFilterIterator_accept
284
285 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_OBJ_INFO_EX(arginfo_class_RecursiveRegexIterator_getChildren, 0, 0, RecursiveRegexIterator, 0)
286 ZEND_END_ARG_INFO()
287
288 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_RecursiveTreeIterator___construct, 0, 0, 1)
289 ZEND_ARG_OBJ_TYPE_MASK(0, iterator, RecursiveIterator|IteratorAggregate, 0, NULL)
290 ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "RecursiveTreeIterator::BYPASS_KEY")
291 ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, cachingIteratorFlags, IS_LONG, 0, "CachingIterator::CATCH_GET_CHILD")
292 ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, mode, IS_LONG, 0, "RecursiveTreeIterator::SELF_FIRST")
293 ZEND_END_ARG_INFO()
294
295 #define arginfo_class_RecursiveTreeIterator_key arginfo_class_RecursiveIteratorIterator_key
296
297 #define arginfo_class_RecursiveTreeIterator_current arginfo_class_RecursiveIteratorIterator_key
298
299 #define arginfo_class_RecursiveTreeIterator_getPrefix arginfo_class_RegexIterator_getRegex
300
301 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_RecursiveTreeIterator_setPostfix, 0, 1, IS_VOID, 0)
302 ZEND_ARG_TYPE_INFO(0, postfix, IS_STRING, 0)
303 ZEND_END_ARG_INFO()
304
305 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_RecursiveTreeIterator_setPrefixPart, 0, 2, IS_VOID, 0)
306 ZEND_ARG_TYPE_INFO(0, part, IS_LONG, 0)
307 ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
308 ZEND_END_ARG_INFO()
309
310 #define arginfo_class_RecursiveTreeIterator_getEntry arginfo_class_RegexIterator_getRegex
311
312 #define arginfo_class_RecursiveTreeIterator_getPostfix arginfo_class_RegexIterator_getRegex
313
314 ZEND_METHOD(EmptyIterator, current);
315 ZEND_METHOD(EmptyIterator, next);
316 ZEND_METHOD(EmptyIterator, key);
317 ZEND_METHOD(EmptyIterator, valid);
318 ZEND_METHOD(EmptyIterator, rewind);
319 ZEND_METHOD(CallbackFilterIterator, __construct);
320 ZEND_METHOD(CallbackFilterIterator, accept);
321 ZEND_METHOD(RecursiveCallbackFilterIterator, __construct);
322 ZEND_METHOD(RecursiveFilterIterator, hasChildren);
323 ZEND_METHOD(RecursiveCallbackFilterIterator, getChildren);
324 ZEND_METHOD(RecursiveIteratorIterator, __construct);
325 ZEND_METHOD(RecursiveIteratorIterator, rewind);
326 ZEND_METHOD(RecursiveIteratorIterator, valid);
327 ZEND_METHOD(RecursiveIteratorIterator, key);
328 ZEND_METHOD(RecursiveIteratorIterator, current);
329 ZEND_METHOD(RecursiveIteratorIterator, next);
330 ZEND_METHOD(RecursiveIteratorIterator, getDepth);
331 ZEND_METHOD(RecursiveIteratorIterator, getSubIterator);
332 ZEND_METHOD(RecursiveIteratorIterator, getInnerIterator);
333 ZEND_METHOD(RecursiveIteratorIterator, beginIteration);
334 ZEND_METHOD(RecursiveIteratorIterator, endIteration);
335 ZEND_METHOD(RecursiveIteratorIterator, callHasChildren);
336 ZEND_METHOD(RecursiveIteratorIterator, callGetChildren);
337 ZEND_METHOD(RecursiveIteratorIterator, beginChildren);
338 ZEND_METHOD(RecursiveIteratorIterator, endChildren);
339 ZEND_METHOD(RecursiveIteratorIterator, nextElement);
340 ZEND_METHOD(RecursiveIteratorIterator, setMaxDepth);
341 ZEND_METHOD(RecursiveIteratorIterator, getMaxDepth);
342 ZEND_METHOD(IteratorIterator, __construct);
343 ZEND_METHOD(IteratorIterator, getInnerIterator);
344 ZEND_METHOD(IteratorIterator, rewind);
345 ZEND_METHOD(IteratorIterator, valid);
346 ZEND_METHOD(IteratorIterator, key);
347 ZEND_METHOD(IteratorIterator, current);
348 ZEND_METHOD(IteratorIterator, next);
349 ZEND_METHOD(FilterIterator, __construct);
350 ZEND_METHOD(FilterIterator, rewind);
351 ZEND_METHOD(FilterIterator, next);
352 ZEND_METHOD(RecursiveFilterIterator, __construct);
353 ZEND_METHOD(RecursiveFilterIterator, getChildren);
354 ZEND_METHOD(ParentIterator, __construct);
355 ZEND_METHOD(LimitIterator, __construct);
356 ZEND_METHOD(LimitIterator, rewind);
357 ZEND_METHOD(LimitIterator, valid);
358 ZEND_METHOD(LimitIterator, next);
359 ZEND_METHOD(LimitIterator, seek);
360 ZEND_METHOD(LimitIterator, getPosition);
361 ZEND_METHOD(CachingIterator, __construct);
362 ZEND_METHOD(CachingIterator, rewind);
363 ZEND_METHOD(CachingIterator, valid);
364 ZEND_METHOD(CachingIterator, next);
365 ZEND_METHOD(CachingIterator, hasNext);
366 ZEND_METHOD(CachingIterator, __toString);
367 ZEND_METHOD(CachingIterator, getFlags);
368 ZEND_METHOD(CachingIterator, setFlags);
369 ZEND_METHOD(CachingIterator, offsetGet);
370 ZEND_METHOD(CachingIterator, offsetSet);
371 ZEND_METHOD(CachingIterator, offsetUnset);
372 ZEND_METHOD(CachingIterator, offsetExists);
373 ZEND_METHOD(CachingIterator, getCache);
374 ZEND_METHOD(CachingIterator, count);
375 ZEND_METHOD(RecursiveCachingIterator, __construct);
376 ZEND_METHOD(RecursiveCachingIterator, hasChildren);
377 ZEND_METHOD(RecursiveCachingIterator, getChildren);
378 ZEND_METHOD(NoRewindIterator, __construct);
379 ZEND_METHOD(NoRewindIterator, rewind);
380 ZEND_METHOD(NoRewindIterator, valid);
381 ZEND_METHOD(NoRewindIterator, key);
382 ZEND_METHOD(NoRewindIterator, current);
383 ZEND_METHOD(NoRewindIterator, next);
384 ZEND_METHOD(AppendIterator, __construct);
385 ZEND_METHOD(AppendIterator, append);
386 ZEND_METHOD(AppendIterator, rewind);
387 ZEND_METHOD(AppendIterator, valid);
388 ZEND_METHOD(AppendIterator, current);
389 ZEND_METHOD(AppendIterator, next);
390 ZEND_METHOD(AppendIterator, getIteratorIndex);
391 ZEND_METHOD(AppendIterator, getArrayIterator);
392 ZEND_METHOD(InfiniteIterator, __construct);
393 ZEND_METHOD(InfiniteIterator, next);
394 ZEND_METHOD(RegexIterator, __construct);
395 ZEND_METHOD(RegexIterator, accept);
396 ZEND_METHOD(RegexIterator, getMode);
397 ZEND_METHOD(RegexIterator, setMode);
398 ZEND_METHOD(RegexIterator, getFlags);
399 ZEND_METHOD(RegexIterator, setFlags);
400 ZEND_METHOD(RegexIterator, getRegex);
401 ZEND_METHOD(RegexIterator, getPregFlags);
402 ZEND_METHOD(RegexIterator, setPregFlags);
403 ZEND_METHOD(RecursiveRegexIterator, __construct);
404 ZEND_METHOD(RecursiveRegexIterator, accept);
405 ZEND_METHOD(RecursiveRegexIterator, getChildren);
406 ZEND_METHOD(RecursiveTreeIterator, __construct);
407 ZEND_METHOD(RecursiveTreeIterator, key);
408 ZEND_METHOD(RecursiveTreeIterator, current);
409 ZEND_METHOD(RecursiveTreeIterator, getPrefix);
410 ZEND_METHOD(RecursiveTreeIterator, setPostfix);
411 ZEND_METHOD(RecursiveTreeIterator, setPrefixPart);
412 ZEND_METHOD(RecursiveTreeIterator, getEntry);
413 ZEND_METHOD(RecursiveTreeIterator, getPostfix);
414
415 static const zend_function_entry class_EmptyIterator_methods[] = {
416 ZEND_ME(EmptyIterator, current, arginfo_class_EmptyIterator_current, ZEND_ACC_PUBLIC)
417 ZEND_ME(EmptyIterator, next, arginfo_class_EmptyIterator_next, ZEND_ACC_PUBLIC)
418 ZEND_ME(EmptyIterator, key, arginfo_class_EmptyIterator_key, ZEND_ACC_PUBLIC)
419 ZEND_ME(EmptyIterator, valid, arginfo_class_EmptyIterator_valid, ZEND_ACC_PUBLIC)
420 ZEND_ME(EmptyIterator, rewind, arginfo_class_EmptyIterator_rewind, ZEND_ACC_PUBLIC)
421 ZEND_FE_END
422 };
423
424 static const zend_function_entry class_CallbackFilterIterator_methods[] = {
425 ZEND_ME(CallbackFilterIterator, __construct, arginfo_class_CallbackFilterIterator___construct, ZEND_ACC_PUBLIC)
426 ZEND_ME(CallbackFilterIterator, accept, arginfo_class_CallbackFilterIterator_accept, ZEND_ACC_PUBLIC)
427 ZEND_FE_END
428 };
429
430 static const zend_function_entry class_RecursiveCallbackFilterIterator_methods[] = {
431 ZEND_ME(RecursiveCallbackFilterIterator, __construct, arginfo_class_RecursiveCallbackFilterIterator___construct, ZEND_ACC_PUBLIC)
432 ZEND_RAW_FENTRY("hasChildren", zim_RecursiveFilterIterator_hasChildren, arginfo_class_RecursiveCallbackFilterIterator_hasChildren, ZEND_ACC_PUBLIC, NULL, NULL)
433 ZEND_ME(RecursiveCallbackFilterIterator, getChildren, arginfo_class_RecursiveCallbackFilterIterator_getChildren, ZEND_ACC_PUBLIC)
434 ZEND_FE_END
435 };
436
437 static const zend_function_entry class_RecursiveIterator_methods[] = {
438 ZEND_RAW_FENTRY("hasChildren", NULL, arginfo_class_RecursiveIterator_hasChildren, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT, NULL, NULL)
439 ZEND_RAW_FENTRY("getChildren", NULL, arginfo_class_RecursiveIterator_getChildren, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT, NULL, NULL)
440 ZEND_FE_END
441 };
442
443 static const zend_function_entry class_RecursiveIteratorIterator_methods[] = {
444 ZEND_ME(RecursiveIteratorIterator, __construct, arginfo_class_RecursiveIteratorIterator___construct, ZEND_ACC_PUBLIC)
445 ZEND_ME(RecursiveIteratorIterator, rewind, arginfo_class_RecursiveIteratorIterator_rewind, ZEND_ACC_PUBLIC)
446 ZEND_ME(RecursiveIteratorIterator, valid, arginfo_class_RecursiveIteratorIterator_valid, ZEND_ACC_PUBLIC)
447 ZEND_ME(RecursiveIteratorIterator, key, arginfo_class_RecursiveIteratorIterator_key, ZEND_ACC_PUBLIC)
448 ZEND_ME(RecursiveIteratorIterator, current, arginfo_class_RecursiveIteratorIterator_current, ZEND_ACC_PUBLIC)
449 ZEND_ME(RecursiveIteratorIterator, next, arginfo_class_RecursiveIteratorIterator_next, ZEND_ACC_PUBLIC)
450 ZEND_ME(RecursiveIteratorIterator, getDepth, arginfo_class_RecursiveIteratorIterator_getDepth, ZEND_ACC_PUBLIC)
451 ZEND_ME(RecursiveIteratorIterator, getSubIterator, arginfo_class_RecursiveIteratorIterator_getSubIterator, ZEND_ACC_PUBLIC)
452 ZEND_ME(RecursiveIteratorIterator, getInnerIterator, arginfo_class_RecursiveIteratorIterator_getInnerIterator, ZEND_ACC_PUBLIC)
453 ZEND_ME(RecursiveIteratorIterator, beginIteration, arginfo_class_RecursiveIteratorIterator_beginIteration, ZEND_ACC_PUBLIC)
454 ZEND_ME(RecursiveIteratorIterator, endIteration, arginfo_class_RecursiveIteratorIterator_endIteration, ZEND_ACC_PUBLIC)
455 ZEND_ME(RecursiveIteratorIterator, callHasChildren, arginfo_class_RecursiveIteratorIterator_callHasChildren, ZEND_ACC_PUBLIC)
456 ZEND_ME(RecursiveIteratorIterator, callGetChildren, arginfo_class_RecursiveIteratorIterator_callGetChildren, ZEND_ACC_PUBLIC)
457 ZEND_ME(RecursiveIteratorIterator, beginChildren, arginfo_class_RecursiveIteratorIterator_beginChildren, ZEND_ACC_PUBLIC)
458 ZEND_ME(RecursiveIteratorIterator, endChildren, arginfo_class_RecursiveIteratorIterator_endChildren, ZEND_ACC_PUBLIC)
459 ZEND_ME(RecursiveIteratorIterator, nextElement, arginfo_class_RecursiveIteratorIterator_nextElement, ZEND_ACC_PUBLIC)
460 ZEND_ME(RecursiveIteratorIterator, setMaxDepth, arginfo_class_RecursiveIteratorIterator_setMaxDepth, ZEND_ACC_PUBLIC)
461 ZEND_ME(RecursiveIteratorIterator, getMaxDepth, arginfo_class_RecursiveIteratorIterator_getMaxDepth, ZEND_ACC_PUBLIC)
462 ZEND_FE_END
463 };
464
465 static const zend_function_entry class_OuterIterator_methods[] = {
466 ZEND_RAW_FENTRY("getInnerIterator", NULL, arginfo_class_OuterIterator_getInnerIterator, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT, NULL, NULL)
467 ZEND_FE_END
468 };
469
470 static const zend_function_entry class_IteratorIterator_methods[] = {
471 ZEND_ME(IteratorIterator, __construct, arginfo_class_IteratorIterator___construct, ZEND_ACC_PUBLIC)
472 ZEND_ME(IteratorIterator, getInnerIterator, arginfo_class_IteratorIterator_getInnerIterator, ZEND_ACC_PUBLIC)
473 ZEND_ME(IteratorIterator, rewind, arginfo_class_IteratorIterator_rewind, ZEND_ACC_PUBLIC)
474 ZEND_ME(IteratorIterator, valid, arginfo_class_IteratorIterator_valid, ZEND_ACC_PUBLIC)
475 ZEND_ME(IteratorIterator, key, arginfo_class_IteratorIterator_key, ZEND_ACC_PUBLIC)
476 ZEND_ME(IteratorIterator, current, arginfo_class_IteratorIterator_current, ZEND_ACC_PUBLIC)
477 ZEND_ME(IteratorIterator, next, arginfo_class_IteratorIterator_next, ZEND_ACC_PUBLIC)
478 ZEND_FE_END
479 };
480
481 static const zend_function_entry class_FilterIterator_methods[] = {
482 ZEND_RAW_FENTRY("accept", NULL, arginfo_class_FilterIterator_accept, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT, NULL, NULL)
483 ZEND_ME(FilterIterator, __construct, arginfo_class_FilterIterator___construct, ZEND_ACC_PUBLIC)
484 ZEND_ME(FilterIterator, rewind, arginfo_class_FilterIterator_rewind, ZEND_ACC_PUBLIC)
485 ZEND_ME(FilterIterator, next, arginfo_class_FilterIterator_next, ZEND_ACC_PUBLIC)
486 ZEND_FE_END
487 };
488
489 static const zend_function_entry class_RecursiveFilterIterator_methods[] = {
490 ZEND_ME(RecursiveFilterIterator, __construct, arginfo_class_RecursiveFilterIterator___construct, ZEND_ACC_PUBLIC)
491 ZEND_ME(RecursiveFilterIterator, hasChildren, arginfo_class_RecursiveFilterIterator_hasChildren, ZEND_ACC_PUBLIC)
492 ZEND_ME(RecursiveFilterIterator, getChildren, arginfo_class_RecursiveFilterIterator_getChildren, ZEND_ACC_PUBLIC)
493 ZEND_FE_END
494 };
495
496 static const zend_function_entry class_ParentIterator_methods[] = {
497 ZEND_ME(ParentIterator, __construct, arginfo_class_ParentIterator___construct, ZEND_ACC_PUBLIC)
498 ZEND_RAW_FENTRY("accept", zim_RecursiveFilterIterator_hasChildren, arginfo_class_ParentIterator_accept, ZEND_ACC_PUBLIC, NULL, NULL)
499 ZEND_FE_END
500 };
501
502 static const zend_function_entry class_SeekableIterator_methods[] = {
503 ZEND_RAW_FENTRY("seek", NULL, arginfo_class_SeekableIterator_seek, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT, NULL, NULL)
504 ZEND_FE_END
505 };
506
507 static const zend_function_entry class_LimitIterator_methods[] = {
508 ZEND_ME(LimitIterator, __construct, arginfo_class_LimitIterator___construct, ZEND_ACC_PUBLIC)
509 ZEND_ME(LimitIterator, rewind, arginfo_class_LimitIterator_rewind, ZEND_ACC_PUBLIC)
510 ZEND_ME(LimitIterator, valid, arginfo_class_LimitIterator_valid, ZEND_ACC_PUBLIC)
511 ZEND_ME(LimitIterator, next, arginfo_class_LimitIterator_next, ZEND_ACC_PUBLIC)
512 ZEND_ME(LimitIterator, seek, arginfo_class_LimitIterator_seek, ZEND_ACC_PUBLIC)
513 ZEND_ME(LimitIterator, getPosition, arginfo_class_LimitIterator_getPosition, ZEND_ACC_PUBLIC)
514 ZEND_FE_END
515 };
516
517 static const zend_function_entry class_CachingIterator_methods[] = {
518 ZEND_ME(CachingIterator, __construct, arginfo_class_CachingIterator___construct, ZEND_ACC_PUBLIC)
519 ZEND_ME(CachingIterator, rewind, arginfo_class_CachingIterator_rewind, ZEND_ACC_PUBLIC)
520 ZEND_ME(CachingIterator, valid, arginfo_class_CachingIterator_valid, ZEND_ACC_PUBLIC)
521 ZEND_ME(CachingIterator, next, arginfo_class_CachingIterator_next, ZEND_ACC_PUBLIC)
522 ZEND_ME(CachingIterator, hasNext, arginfo_class_CachingIterator_hasNext, ZEND_ACC_PUBLIC)
523 ZEND_ME(CachingIterator, __toString, arginfo_class_CachingIterator___toString, ZEND_ACC_PUBLIC)
524 ZEND_ME(CachingIterator, getFlags, arginfo_class_CachingIterator_getFlags, ZEND_ACC_PUBLIC)
525 ZEND_ME(CachingIterator, setFlags, arginfo_class_CachingIterator_setFlags, ZEND_ACC_PUBLIC)
526 ZEND_ME(CachingIterator, offsetGet, arginfo_class_CachingIterator_offsetGet, ZEND_ACC_PUBLIC)
527 ZEND_ME(CachingIterator, offsetSet, arginfo_class_CachingIterator_offsetSet, ZEND_ACC_PUBLIC)
528 ZEND_ME(CachingIterator, offsetUnset, arginfo_class_CachingIterator_offsetUnset, ZEND_ACC_PUBLIC)
529 ZEND_ME(CachingIterator, offsetExists, arginfo_class_CachingIterator_offsetExists, ZEND_ACC_PUBLIC)
530 ZEND_ME(CachingIterator, getCache, arginfo_class_CachingIterator_getCache, ZEND_ACC_PUBLIC)
531 ZEND_ME(CachingIterator, count, arginfo_class_CachingIterator_count, ZEND_ACC_PUBLIC)
532 ZEND_FE_END
533 };
534
535 static const zend_function_entry class_RecursiveCachingIterator_methods[] = {
536 ZEND_ME(RecursiveCachingIterator, __construct, arginfo_class_RecursiveCachingIterator___construct, ZEND_ACC_PUBLIC)
537 ZEND_ME(RecursiveCachingIterator, hasChildren, arginfo_class_RecursiveCachingIterator_hasChildren, ZEND_ACC_PUBLIC)
538 ZEND_ME(RecursiveCachingIterator, getChildren, arginfo_class_RecursiveCachingIterator_getChildren, ZEND_ACC_PUBLIC)
539 ZEND_FE_END
540 };
541
542 static const zend_function_entry class_NoRewindIterator_methods[] = {
543 ZEND_ME(NoRewindIterator, __construct, arginfo_class_NoRewindIterator___construct, ZEND_ACC_PUBLIC)
544 ZEND_ME(NoRewindIterator, rewind, arginfo_class_NoRewindIterator_rewind, ZEND_ACC_PUBLIC)
545 ZEND_ME(NoRewindIterator, valid, arginfo_class_NoRewindIterator_valid, ZEND_ACC_PUBLIC)
546 ZEND_ME(NoRewindIterator, key, arginfo_class_NoRewindIterator_key, ZEND_ACC_PUBLIC)
547 ZEND_ME(NoRewindIterator, current, arginfo_class_NoRewindIterator_current, ZEND_ACC_PUBLIC)
548 ZEND_ME(NoRewindIterator, next, arginfo_class_NoRewindIterator_next, ZEND_ACC_PUBLIC)
549 ZEND_FE_END
550 };
551
552 static const zend_function_entry class_AppendIterator_methods[] = {
553 ZEND_ME(AppendIterator, __construct, arginfo_class_AppendIterator___construct, ZEND_ACC_PUBLIC)
554 ZEND_ME(AppendIterator, append, arginfo_class_AppendIterator_append, ZEND_ACC_PUBLIC)
555 ZEND_ME(AppendIterator, rewind, arginfo_class_AppendIterator_rewind, ZEND_ACC_PUBLIC)
556 ZEND_ME(AppendIterator, valid, arginfo_class_AppendIterator_valid, ZEND_ACC_PUBLIC)
557 ZEND_ME(AppendIterator, current, arginfo_class_AppendIterator_current, ZEND_ACC_PUBLIC)
558 ZEND_ME(AppendIterator, next, arginfo_class_AppendIterator_next, ZEND_ACC_PUBLIC)
559 ZEND_ME(AppendIterator, getIteratorIndex, arginfo_class_AppendIterator_getIteratorIndex, ZEND_ACC_PUBLIC)
560 ZEND_ME(AppendIterator, getArrayIterator, arginfo_class_AppendIterator_getArrayIterator, ZEND_ACC_PUBLIC)
561 ZEND_FE_END
562 };
563
564 static const zend_function_entry class_InfiniteIterator_methods[] = {
565 ZEND_ME(InfiniteIterator, __construct, arginfo_class_InfiniteIterator___construct, ZEND_ACC_PUBLIC)
566 ZEND_ME(InfiniteIterator, next, arginfo_class_InfiniteIterator_next, ZEND_ACC_PUBLIC)
567 ZEND_FE_END
568 };
569
570 static const zend_function_entry class_RegexIterator_methods[] = {
571 ZEND_ME(RegexIterator, __construct, arginfo_class_RegexIterator___construct, ZEND_ACC_PUBLIC)
572 ZEND_ME(RegexIterator, accept, arginfo_class_RegexIterator_accept, ZEND_ACC_PUBLIC)
573 ZEND_ME(RegexIterator, getMode, arginfo_class_RegexIterator_getMode, ZEND_ACC_PUBLIC)
574 ZEND_ME(RegexIterator, setMode, arginfo_class_RegexIterator_setMode, ZEND_ACC_PUBLIC)
575 ZEND_ME(RegexIterator, getFlags, arginfo_class_RegexIterator_getFlags, ZEND_ACC_PUBLIC)
576 ZEND_ME(RegexIterator, setFlags, arginfo_class_RegexIterator_setFlags, ZEND_ACC_PUBLIC)
577 ZEND_ME(RegexIterator, getRegex, arginfo_class_RegexIterator_getRegex, ZEND_ACC_PUBLIC)
578 ZEND_ME(RegexIterator, getPregFlags, arginfo_class_RegexIterator_getPregFlags, ZEND_ACC_PUBLIC)
579 ZEND_ME(RegexIterator, setPregFlags, arginfo_class_RegexIterator_setPregFlags, ZEND_ACC_PUBLIC)
580 ZEND_FE_END
581 };
582
583 static const zend_function_entry class_RecursiveRegexIterator_methods[] = {
584 ZEND_ME(RecursiveRegexIterator, __construct, arginfo_class_RecursiveRegexIterator___construct, ZEND_ACC_PUBLIC)
585 ZEND_ME(RecursiveRegexIterator, accept, arginfo_class_RecursiveRegexIterator_accept, ZEND_ACC_PUBLIC)
586 ZEND_RAW_FENTRY("hasChildren", zim_RecursiveFilterIterator_hasChildren, arginfo_class_RecursiveRegexIterator_hasChildren, ZEND_ACC_PUBLIC, NULL, NULL)
587 ZEND_ME(RecursiveRegexIterator, getChildren, arginfo_class_RecursiveRegexIterator_getChildren, ZEND_ACC_PUBLIC)
588 ZEND_FE_END
589 };
590
591 static const zend_function_entry class_RecursiveTreeIterator_methods[] = {
592 ZEND_ME(RecursiveTreeIterator, __construct, arginfo_class_RecursiveTreeIterator___construct, ZEND_ACC_PUBLIC)
593 ZEND_ME(RecursiveTreeIterator, key, arginfo_class_RecursiveTreeIterator_key, ZEND_ACC_PUBLIC)
594 ZEND_ME(RecursiveTreeIterator, current, arginfo_class_RecursiveTreeIterator_current, ZEND_ACC_PUBLIC)
595 ZEND_ME(RecursiveTreeIterator, getPrefix, arginfo_class_RecursiveTreeIterator_getPrefix, ZEND_ACC_PUBLIC)
596 ZEND_ME(RecursiveTreeIterator, setPostfix, arginfo_class_RecursiveTreeIterator_setPostfix, ZEND_ACC_PUBLIC)
597 ZEND_ME(RecursiveTreeIterator, setPrefixPart, arginfo_class_RecursiveTreeIterator_setPrefixPart, ZEND_ACC_PUBLIC)
598 ZEND_ME(RecursiveTreeIterator, getEntry, arginfo_class_RecursiveTreeIterator_getEntry, ZEND_ACC_PUBLIC)
599 ZEND_ME(RecursiveTreeIterator, getPostfix, arginfo_class_RecursiveTreeIterator_getPostfix, ZEND_ACC_PUBLIC)
600 ZEND_FE_END
601 };
602
register_class_EmptyIterator(zend_class_entry * class_entry_Iterator)603 static zend_class_entry *register_class_EmptyIterator(zend_class_entry *class_entry_Iterator)
604 {
605 zend_class_entry ce, *class_entry;
606
607 INIT_CLASS_ENTRY(ce, "EmptyIterator", class_EmptyIterator_methods);
608 class_entry = zend_register_internal_class_with_flags(&ce, NULL, 0);
609 zend_class_implements(class_entry, 1, class_entry_Iterator);
610
611 return class_entry;
612 }
613
register_class_CallbackFilterIterator(zend_class_entry * class_entry_FilterIterator)614 static zend_class_entry *register_class_CallbackFilterIterator(zend_class_entry *class_entry_FilterIterator)
615 {
616 zend_class_entry ce, *class_entry;
617
618 INIT_CLASS_ENTRY(ce, "CallbackFilterIterator", class_CallbackFilterIterator_methods);
619 class_entry = zend_register_internal_class_with_flags(&ce, class_entry_FilterIterator, 0);
620
621 return class_entry;
622 }
623
register_class_RecursiveCallbackFilterIterator(zend_class_entry * class_entry_CallbackFilterIterator,zend_class_entry * class_entry_RecursiveIterator)624 static zend_class_entry *register_class_RecursiveCallbackFilterIterator(zend_class_entry *class_entry_CallbackFilterIterator, zend_class_entry *class_entry_RecursiveIterator)
625 {
626 zend_class_entry ce, *class_entry;
627
628 INIT_CLASS_ENTRY(ce, "RecursiveCallbackFilterIterator", class_RecursiveCallbackFilterIterator_methods);
629 class_entry = zend_register_internal_class_with_flags(&ce, class_entry_CallbackFilterIterator, 0);
630 zend_class_implements(class_entry, 1, class_entry_RecursiveIterator);
631
632 return class_entry;
633 }
634
register_class_RecursiveIterator(zend_class_entry * class_entry_Iterator)635 static zend_class_entry *register_class_RecursiveIterator(zend_class_entry *class_entry_Iterator)
636 {
637 zend_class_entry ce, *class_entry;
638
639 INIT_CLASS_ENTRY(ce, "RecursiveIterator", class_RecursiveIterator_methods);
640 class_entry = zend_register_internal_interface(&ce);
641 zend_class_implements(class_entry, 1, class_entry_Iterator);
642
643 return class_entry;
644 }
645
register_class_RecursiveIteratorIterator(zend_class_entry * class_entry_OuterIterator)646 static zend_class_entry *register_class_RecursiveIteratorIterator(zend_class_entry *class_entry_OuterIterator)
647 {
648 zend_class_entry ce, *class_entry;
649
650 INIT_CLASS_ENTRY(ce, "RecursiveIteratorIterator", class_RecursiveIteratorIterator_methods);
651 class_entry = zend_register_internal_class_with_flags(&ce, NULL, 0);
652 zend_class_implements(class_entry, 1, class_entry_OuterIterator);
653
654 zval const_LEAVES_ONLY_value;
655 ZVAL_LONG(&const_LEAVES_ONLY_value, RIT_LEAVES_ONLY);
656 zend_string *const_LEAVES_ONLY_name = zend_string_init_interned("LEAVES_ONLY", sizeof("LEAVES_ONLY") - 1, 1);
657 zend_declare_typed_class_constant(class_entry, const_LEAVES_ONLY_name, &const_LEAVES_ONLY_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
658 zend_string_release(const_LEAVES_ONLY_name);
659
660 zval const_SELF_FIRST_value;
661 ZVAL_LONG(&const_SELF_FIRST_value, RIT_SELF_FIRST);
662 zend_string *const_SELF_FIRST_name = zend_string_init_interned("SELF_FIRST", sizeof("SELF_FIRST") - 1, 1);
663 zend_declare_typed_class_constant(class_entry, const_SELF_FIRST_name, &const_SELF_FIRST_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
664 zend_string_release(const_SELF_FIRST_name);
665
666 zval const_CHILD_FIRST_value;
667 ZVAL_LONG(&const_CHILD_FIRST_value, RIT_CHILD_FIRST);
668 zend_string *const_CHILD_FIRST_name = zend_string_init_interned("CHILD_FIRST", sizeof("CHILD_FIRST") - 1, 1);
669 zend_declare_typed_class_constant(class_entry, const_CHILD_FIRST_name, &const_CHILD_FIRST_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
670 zend_string_release(const_CHILD_FIRST_name);
671
672 zval const_CATCH_GET_CHILD_value;
673 ZVAL_LONG(&const_CATCH_GET_CHILD_value, RIT_CATCH_GET_CHILD);
674 zend_string *const_CATCH_GET_CHILD_name = zend_string_init_interned("CATCH_GET_CHILD", sizeof("CATCH_GET_CHILD") - 1, 1);
675 zend_declare_typed_class_constant(class_entry, const_CATCH_GET_CHILD_name, &const_CATCH_GET_CHILD_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
676 zend_string_release(const_CATCH_GET_CHILD_name);
677
678 return class_entry;
679 }
680
register_class_OuterIterator(zend_class_entry * class_entry_Iterator)681 static zend_class_entry *register_class_OuterIterator(zend_class_entry *class_entry_Iterator)
682 {
683 zend_class_entry ce, *class_entry;
684
685 INIT_CLASS_ENTRY(ce, "OuterIterator", class_OuterIterator_methods);
686 class_entry = zend_register_internal_interface(&ce);
687 zend_class_implements(class_entry, 1, class_entry_Iterator);
688
689 return class_entry;
690 }
691
register_class_IteratorIterator(zend_class_entry * class_entry_OuterIterator)692 static zend_class_entry *register_class_IteratorIterator(zend_class_entry *class_entry_OuterIterator)
693 {
694 zend_class_entry ce, *class_entry;
695
696 INIT_CLASS_ENTRY(ce, "IteratorIterator", class_IteratorIterator_methods);
697 class_entry = zend_register_internal_class_with_flags(&ce, NULL, 0);
698 zend_class_implements(class_entry, 1, class_entry_OuterIterator);
699
700 return class_entry;
701 }
702
register_class_FilterIterator(zend_class_entry * class_entry_IteratorIterator)703 static zend_class_entry *register_class_FilterIterator(zend_class_entry *class_entry_IteratorIterator)
704 {
705 zend_class_entry ce, *class_entry;
706
707 INIT_CLASS_ENTRY(ce, "FilterIterator", class_FilterIterator_methods);
708 class_entry = zend_register_internal_class_with_flags(&ce, class_entry_IteratorIterator, ZEND_ACC_ABSTRACT);
709
710 return class_entry;
711 }
712
register_class_RecursiveFilterIterator(zend_class_entry * class_entry_FilterIterator,zend_class_entry * class_entry_RecursiveIterator)713 static zend_class_entry *register_class_RecursiveFilterIterator(zend_class_entry *class_entry_FilterIterator, zend_class_entry *class_entry_RecursiveIterator)
714 {
715 zend_class_entry ce, *class_entry;
716
717 INIT_CLASS_ENTRY(ce, "RecursiveFilterIterator", class_RecursiveFilterIterator_methods);
718 class_entry = zend_register_internal_class_with_flags(&ce, class_entry_FilterIterator, ZEND_ACC_ABSTRACT);
719 zend_class_implements(class_entry, 1, class_entry_RecursiveIterator);
720
721 return class_entry;
722 }
723
register_class_ParentIterator(zend_class_entry * class_entry_RecursiveFilterIterator)724 static zend_class_entry *register_class_ParentIterator(zend_class_entry *class_entry_RecursiveFilterIterator)
725 {
726 zend_class_entry ce, *class_entry;
727
728 INIT_CLASS_ENTRY(ce, "ParentIterator", class_ParentIterator_methods);
729 class_entry = zend_register_internal_class_with_flags(&ce, class_entry_RecursiveFilterIterator, 0);
730
731 return class_entry;
732 }
733
register_class_SeekableIterator(zend_class_entry * class_entry_Iterator)734 static zend_class_entry *register_class_SeekableIterator(zend_class_entry *class_entry_Iterator)
735 {
736 zend_class_entry ce, *class_entry;
737
738 INIT_CLASS_ENTRY(ce, "SeekableIterator", class_SeekableIterator_methods);
739 class_entry = zend_register_internal_interface(&ce);
740 zend_class_implements(class_entry, 1, class_entry_Iterator);
741
742 return class_entry;
743 }
744
register_class_LimitIterator(zend_class_entry * class_entry_IteratorIterator)745 static zend_class_entry *register_class_LimitIterator(zend_class_entry *class_entry_IteratorIterator)
746 {
747 zend_class_entry ce, *class_entry;
748
749 INIT_CLASS_ENTRY(ce, "LimitIterator", class_LimitIterator_methods);
750 class_entry = zend_register_internal_class_with_flags(&ce, class_entry_IteratorIterator, 0);
751
752 return class_entry;
753 }
754
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)755 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)
756 {
757 zend_class_entry ce, *class_entry;
758
759 INIT_CLASS_ENTRY(ce, "CachingIterator", class_CachingIterator_methods);
760 class_entry = zend_register_internal_class_with_flags(&ce, class_entry_IteratorIterator, 0);
761 zend_class_implements(class_entry, 3, class_entry_ArrayAccess, class_entry_Countable, class_entry_Stringable);
762
763 zval const_CALL_TOSTRING_value;
764 ZVAL_LONG(&const_CALL_TOSTRING_value, CIT_CALL_TOSTRING);
765 zend_string *const_CALL_TOSTRING_name = zend_string_init_interned("CALL_TOSTRING", sizeof("CALL_TOSTRING") - 1, 1);
766 zend_declare_typed_class_constant(class_entry, const_CALL_TOSTRING_name, &const_CALL_TOSTRING_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
767 zend_string_release(const_CALL_TOSTRING_name);
768
769 zval const_CATCH_GET_CHILD_value;
770 ZVAL_LONG(&const_CATCH_GET_CHILD_value, CIT_CATCH_GET_CHILD);
771 zend_string *const_CATCH_GET_CHILD_name = zend_string_init_interned("CATCH_GET_CHILD", sizeof("CATCH_GET_CHILD") - 1, 1);
772 zend_declare_typed_class_constant(class_entry, const_CATCH_GET_CHILD_name, &const_CATCH_GET_CHILD_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
773 zend_string_release(const_CATCH_GET_CHILD_name);
774
775 zval const_TOSTRING_USE_KEY_value;
776 ZVAL_LONG(&const_TOSTRING_USE_KEY_value, CIT_TOSTRING_USE_KEY);
777 zend_string *const_TOSTRING_USE_KEY_name = zend_string_init_interned("TOSTRING_USE_KEY", sizeof("TOSTRING_USE_KEY") - 1, 1);
778 zend_declare_typed_class_constant(class_entry, const_TOSTRING_USE_KEY_name, &const_TOSTRING_USE_KEY_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
779 zend_string_release(const_TOSTRING_USE_KEY_name);
780
781 zval const_TOSTRING_USE_CURRENT_value;
782 ZVAL_LONG(&const_TOSTRING_USE_CURRENT_value, CIT_TOSTRING_USE_CURRENT);
783 zend_string *const_TOSTRING_USE_CURRENT_name = zend_string_init_interned("TOSTRING_USE_CURRENT", sizeof("TOSTRING_USE_CURRENT") - 1, 1);
784 zend_declare_typed_class_constant(class_entry, const_TOSTRING_USE_CURRENT_name, &const_TOSTRING_USE_CURRENT_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
785 zend_string_release(const_TOSTRING_USE_CURRENT_name);
786
787 zval const_TOSTRING_USE_INNER_value;
788 ZVAL_LONG(&const_TOSTRING_USE_INNER_value, CIT_TOSTRING_USE_INNER);
789 zend_string *const_TOSTRING_USE_INNER_name = zend_string_init_interned("TOSTRING_USE_INNER", sizeof("TOSTRING_USE_INNER") - 1, 1);
790 zend_declare_typed_class_constant(class_entry, const_TOSTRING_USE_INNER_name, &const_TOSTRING_USE_INNER_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
791 zend_string_release(const_TOSTRING_USE_INNER_name);
792
793 zval const_FULL_CACHE_value;
794 ZVAL_LONG(&const_FULL_CACHE_value, CIT_FULL_CACHE);
795 zend_string *const_FULL_CACHE_name = zend_string_init_interned("FULL_CACHE", sizeof("FULL_CACHE") - 1, 1);
796 zend_declare_typed_class_constant(class_entry, const_FULL_CACHE_name, &const_FULL_CACHE_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
797 zend_string_release(const_FULL_CACHE_name);
798
799 return class_entry;
800 }
801
register_class_RecursiveCachingIterator(zend_class_entry * class_entry_CachingIterator,zend_class_entry * class_entry_RecursiveIterator)802 static zend_class_entry *register_class_RecursiveCachingIterator(zend_class_entry *class_entry_CachingIterator, zend_class_entry *class_entry_RecursiveIterator)
803 {
804 zend_class_entry ce, *class_entry;
805
806 INIT_CLASS_ENTRY(ce, "RecursiveCachingIterator", class_RecursiveCachingIterator_methods);
807 class_entry = zend_register_internal_class_with_flags(&ce, class_entry_CachingIterator, 0);
808 zend_class_implements(class_entry, 1, class_entry_RecursiveIterator);
809
810 return class_entry;
811 }
812
register_class_NoRewindIterator(zend_class_entry * class_entry_IteratorIterator)813 static zend_class_entry *register_class_NoRewindIterator(zend_class_entry *class_entry_IteratorIterator)
814 {
815 zend_class_entry ce, *class_entry;
816
817 INIT_CLASS_ENTRY(ce, "NoRewindIterator", class_NoRewindIterator_methods);
818 class_entry = zend_register_internal_class_with_flags(&ce, class_entry_IteratorIterator, 0);
819
820 return class_entry;
821 }
822
register_class_AppendIterator(zend_class_entry * class_entry_IteratorIterator)823 static zend_class_entry *register_class_AppendIterator(zend_class_entry *class_entry_IteratorIterator)
824 {
825 zend_class_entry ce, *class_entry;
826
827 INIT_CLASS_ENTRY(ce, "AppendIterator", class_AppendIterator_methods);
828 class_entry = zend_register_internal_class_with_flags(&ce, class_entry_IteratorIterator, 0);
829
830 return class_entry;
831 }
832
register_class_InfiniteIterator(zend_class_entry * class_entry_IteratorIterator)833 static zend_class_entry *register_class_InfiniteIterator(zend_class_entry *class_entry_IteratorIterator)
834 {
835 zend_class_entry ce, *class_entry;
836
837 INIT_CLASS_ENTRY(ce, "InfiniteIterator", class_InfiniteIterator_methods);
838 class_entry = zend_register_internal_class_with_flags(&ce, class_entry_IteratorIterator, 0);
839
840 return class_entry;
841 }
842
register_class_RegexIterator(zend_class_entry * class_entry_FilterIterator)843 static zend_class_entry *register_class_RegexIterator(zend_class_entry *class_entry_FilterIterator)
844 {
845 zend_class_entry ce, *class_entry;
846
847 INIT_CLASS_ENTRY(ce, "RegexIterator", class_RegexIterator_methods);
848 class_entry = zend_register_internal_class_with_flags(&ce, class_entry_FilterIterator, 0);
849
850 zval const_USE_KEY_value;
851 ZVAL_LONG(&const_USE_KEY_value, REGIT_USE_KEY);
852 zend_string *const_USE_KEY_name = zend_string_init_interned("USE_KEY", sizeof("USE_KEY") - 1, 1);
853 zend_declare_typed_class_constant(class_entry, const_USE_KEY_name, &const_USE_KEY_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
854 zend_string_release(const_USE_KEY_name);
855
856 zval const_INVERT_MATCH_value;
857 ZVAL_LONG(&const_INVERT_MATCH_value, REGIT_INVERTED);
858 zend_string *const_INVERT_MATCH_name = zend_string_init_interned("INVERT_MATCH", sizeof("INVERT_MATCH") - 1, 1);
859 zend_declare_typed_class_constant(class_entry, const_INVERT_MATCH_name, &const_INVERT_MATCH_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
860 zend_string_release(const_INVERT_MATCH_name);
861
862 zval const_MATCH_value;
863 ZVAL_LONG(&const_MATCH_value, REGIT_MODE_MATCH);
864 zend_string *const_MATCH_name = zend_string_init_interned("MATCH", sizeof("MATCH") - 1, 1);
865 zend_declare_typed_class_constant(class_entry, const_MATCH_name, &const_MATCH_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
866 zend_string_release(const_MATCH_name);
867
868 zval const_GET_MATCH_value;
869 ZVAL_LONG(&const_GET_MATCH_value, REGIT_MODE_GET_MATCH);
870 zend_string *const_GET_MATCH_name = zend_string_init_interned("GET_MATCH", sizeof("GET_MATCH") - 1, 1);
871 zend_declare_typed_class_constant(class_entry, const_GET_MATCH_name, &const_GET_MATCH_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
872 zend_string_release(const_GET_MATCH_name);
873
874 zval const_ALL_MATCHES_value;
875 ZVAL_LONG(&const_ALL_MATCHES_value, REGIT_MODE_ALL_MATCHES);
876 zend_string *const_ALL_MATCHES_name = zend_string_init_interned("ALL_MATCHES", sizeof("ALL_MATCHES") - 1, 1);
877 zend_declare_typed_class_constant(class_entry, const_ALL_MATCHES_name, &const_ALL_MATCHES_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
878 zend_string_release(const_ALL_MATCHES_name);
879
880 zval const_SPLIT_value;
881 ZVAL_LONG(&const_SPLIT_value, REGIT_MODE_SPLIT);
882 zend_string *const_SPLIT_name = zend_string_init_interned("SPLIT", sizeof("SPLIT") - 1, 1);
883 zend_declare_typed_class_constant(class_entry, const_SPLIT_name, &const_SPLIT_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
884 zend_string_release(const_SPLIT_name);
885
886 zval const_REPLACE_value;
887 ZVAL_LONG(&const_REPLACE_value, REGIT_MODE_REPLACE);
888 zend_string *const_REPLACE_name = zend_string_init_interned("REPLACE", sizeof("REPLACE") - 1, 1);
889 zend_declare_typed_class_constant(class_entry, const_REPLACE_name, &const_REPLACE_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
890 zend_string_release(const_REPLACE_name);
891
892 zval property_replacement_default_value;
893 ZVAL_NULL(&property_replacement_default_value);
894 zend_string *property_replacement_name = zend_string_init("replacement", sizeof("replacement") - 1, 1);
895 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));
896 zend_string_release(property_replacement_name);
897
898 return class_entry;
899 }
900
register_class_RecursiveRegexIterator(zend_class_entry * class_entry_RegexIterator,zend_class_entry * class_entry_RecursiveIterator)901 static zend_class_entry *register_class_RecursiveRegexIterator(zend_class_entry *class_entry_RegexIterator, zend_class_entry *class_entry_RecursiveIterator)
902 {
903 zend_class_entry ce, *class_entry;
904
905 INIT_CLASS_ENTRY(ce, "RecursiveRegexIterator", class_RecursiveRegexIterator_methods);
906 class_entry = zend_register_internal_class_with_flags(&ce, class_entry_RegexIterator, 0);
907 zend_class_implements(class_entry, 1, class_entry_RecursiveIterator);
908
909 return class_entry;
910 }
911
register_class_RecursiveTreeIterator(zend_class_entry * class_entry_RecursiveIteratorIterator)912 static zend_class_entry *register_class_RecursiveTreeIterator(zend_class_entry *class_entry_RecursiveIteratorIterator)
913 {
914 zend_class_entry ce, *class_entry;
915
916 INIT_CLASS_ENTRY(ce, "RecursiveTreeIterator", class_RecursiveTreeIterator_methods);
917 class_entry = zend_register_internal_class_with_flags(&ce, class_entry_RecursiveIteratorIterator, 0);
918
919 zval const_BYPASS_CURRENT_value;
920 ZVAL_LONG(&const_BYPASS_CURRENT_value, RTIT_BYPASS_CURRENT);
921 zend_string *const_BYPASS_CURRENT_name = zend_string_init_interned("BYPASS_CURRENT", sizeof("BYPASS_CURRENT") - 1, 1);
922 zend_declare_typed_class_constant(class_entry, const_BYPASS_CURRENT_name, &const_BYPASS_CURRENT_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
923 zend_string_release(const_BYPASS_CURRENT_name);
924
925 zval const_BYPASS_KEY_value;
926 ZVAL_LONG(&const_BYPASS_KEY_value, RTIT_BYPASS_KEY);
927 zend_string *const_BYPASS_KEY_name = zend_string_init_interned("BYPASS_KEY", sizeof("BYPASS_KEY") - 1, 1);
928 zend_declare_typed_class_constant(class_entry, const_BYPASS_KEY_name, &const_BYPASS_KEY_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
929 zend_string_release(const_BYPASS_KEY_name);
930
931 zval const_PREFIX_LEFT_value;
932 ZVAL_LONG(&const_PREFIX_LEFT_value, 0);
933 zend_string *const_PREFIX_LEFT_name = zend_string_init_interned("PREFIX_LEFT", sizeof("PREFIX_LEFT") - 1, 1);
934 zend_declare_typed_class_constant(class_entry, const_PREFIX_LEFT_name, &const_PREFIX_LEFT_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
935 zend_string_release(const_PREFIX_LEFT_name);
936
937 zval const_PREFIX_MID_HAS_NEXT_value;
938 ZVAL_LONG(&const_PREFIX_MID_HAS_NEXT_value, 1);
939 zend_string *const_PREFIX_MID_HAS_NEXT_name = zend_string_init_interned("PREFIX_MID_HAS_NEXT", sizeof("PREFIX_MID_HAS_NEXT") - 1, 1);
940 zend_declare_typed_class_constant(class_entry, const_PREFIX_MID_HAS_NEXT_name, &const_PREFIX_MID_HAS_NEXT_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
941 zend_string_release(const_PREFIX_MID_HAS_NEXT_name);
942
943 zval const_PREFIX_MID_LAST_value;
944 ZVAL_LONG(&const_PREFIX_MID_LAST_value, 2);
945 zend_string *const_PREFIX_MID_LAST_name = zend_string_init_interned("PREFIX_MID_LAST", sizeof("PREFIX_MID_LAST") - 1, 1);
946 zend_declare_typed_class_constant(class_entry, const_PREFIX_MID_LAST_name, &const_PREFIX_MID_LAST_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
947 zend_string_release(const_PREFIX_MID_LAST_name);
948
949 zval const_PREFIX_END_HAS_NEXT_value;
950 ZVAL_LONG(&const_PREFIX_END_HAS_NEXT_value, 3);
951 zend_string *const_PREFIX_END_HAS_NEXT_name = zend_string_init_interned("PREFIX_END_HAS_NEXT", sizeof("PREFIX_END_HAS_NEXT") - 1, 1);
952 zend_declare_typed_class_constant(class_entry, const_PREFIX_END_HAS_NEXT_name, &const_PREFIX_END_HAS_NEXT_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
953 zend_string_release(const_PREFIX_END_HAS_NEXT_name);
954
955 zval const_PREFIX_END_LAST_value;
956 ZVAL_LONG(&const_PREFIX_END_LAST_value, 4);
957 zend_string *const_PREFIX_END_LAST_name = zend_string_init_interned("PREFIX_END_LAST", sizeof("PREFIX_END_LAST") - 1, 1);
958 zend_declare_typed_class_constant(class_entry, const_PREFIX_END_LAST_name, &const_PREFIX_END_LAST_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
959 zend_string_release(const_PREFIX_END_LAST_name);
960
961 zval const_PREFIX_RIGHT_value;
962 ZVAL_LONG(&const_PREFIX_RIGHT_value, 5);
963 zend_string *const_PREFIX_RIGHT_name = zend_string_init_interned("PREFIX_RIGHT", sizeof("PREFIX_RIGHT") - 1, 1);
964 zend_declare_typed_class_constant(class_entry, const_PREFIX_RIGHT_name, &const_PREFIX_RIGHT_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG));
965 zend_string_release(const_PREFIX_RIGHT_name);
966
967 return class_entry;
968 }
969