Lines Matching refs:iterators
103 spl_sub_iterator *iterators; member
149 if(!(object)->iterators) { \
154 (var) = (object)->iterators[(object)->level].element; \
159 if(!(object)->iterators) { \
164 (var) = &(object)->iterators[(object)->level].element; \
177 if (!Z_ISUNDEF(object->iterators[object->level].zobject)) { in spl_recursive_it_dtor()
178 sub_iter = object->iterators[object->level].iterator; in spl_recursive_it_dtor()
180 zval_ptr_dtor(&object->iterators[object->level].zobject); in spl_recursive_it_dtor()
184 object->iterators = erealloc(object->iterators, sizeof(spl_sub_iterator)); in spl_recursive_it_dtor()
195 if(!object->iterators) { in spl_recursive_it_valid_ex()
199 sub_iter = object->iterators[level].iterator; in spl_recursive_it_valid_ex()
220 zend_object_iterator *sub_iter = object->iterators[object->level].iterator; in spl_recursive_it_get_current_data()
228 zend_object_iterator *sub_iter = object->iterators[object->level].iterator; in spl_recursive_it_get_current_key()
250 iterator = object->iterators[object->level].iterator; in spl_recursive_it_move_forward_ex()
251 switch (object->iterators[object->level].state) { in spl_recursive_it_move_forward_ex()
266 object->iterators[object->level].state = RS_TEST; in spl_recursive_it_move_forward_ex()
269 ce = object->iterators[object->level].ce; in spl_recursive_it_move_forward_ex()
270 zobject = &object->iterators[object->level].zobject; in spl_recursive_it_move_forward_ex()
278 object->iterators[object->level].state = RS_NEXT; in spl_recursive_it_move_forward_ex()
292 object->iterators[object->level].state = RS_CHILD; in spl_recursive_it_move_forward_ex()
295 object->iterators[object->level].state = RS_SELF; in spl_recursive_it_move_forward_ex()
302 object->iterators[object->level].state = RS_NEXT; in spl_recursive_it_move_forward_ex()
311 object->iterators[object->level].state = RS_NEXT; in spl_recursive_it_move_forward_ex()
325 object->iterators[object->level].state = RS_CHILD; in spl_recursive_it_move_forward_ex()
327 object->iterators[object->level].state = RS_NEXT; in spl_recursive_it_move_forward_ex()
331 ce = object->iterators[object->level].ce; in spl_recursive_it_move_forward_ex()
332 zobject = &object->iterators[object->level].zobject; in spl_recursive_it_move_forward_ex()
345 object->iterators[object->level].state = RS_NEXT; in spl_recursive_it_move_forward_ex()
358 object->iterators[object->level].state = RS_SELF; in spl_recursive_it_move_forward_ex()
360 object->iterators[object->level].state = RS_NEXT; in spl_recursive_it_move_forward_ex()
362 object->iterators = erealloc(object->iterators, sizeof(spl_sub_iterator) * (++object->level+1)); in spl_recursive_it_move_forward_ex()
364 ZVAL_COPY_VALUE(&object->iterators[object->level].zobject, &child); in spl_recursive_it_move_forward_ex()
365 object->iterators[object->level].iterator = sub_iter; in spl_recursive_it_move_forward_ex()
366 object->iterators[object->level].ce = ce; in spl_recursive_it_move_forward_ex()
367 object->iterators[object->level].state = RS_START; in spl_recursive_it_move_forward_ex()
397 ZVAL_COPY_VALUE(&garbage, &object->iterators[object->level].zobject); in spl_recursive_it_move_forward_ex()
398 ZVAL_UNDEF(&object->iterators[object->level].zobject); in spl_recursive_it_move_forward_ex()
416 sub_iter = object->iterators[object->level].iterator; in spl_recursive_it_rewind_ex()
418 zval_ptr_dtor(&object->iterators[object->level--].zobject); in spl_recursive_it_rewind_ex()
423 object->iterators = erealloc(object->iterators, sizeof(spl_sub_iterator)); in spl_recursive_it_rewind_ex()
424 object->iterators[0].state = RS_START; in spl_recursive_it_rewind_ex()
425 sub_iter = object->iterators[0].iterator; in spl_recursive_it_rewind_ex()
456 if (object->iterators == NULL) { in spl_recursive_it_get_iterator()
547 intern->iterators = emalloc(sizeof(spl_sub_iterator)); in spl_recursive_it_it_construct()
585 intern->iterators[0].iterator = ce_iterator->get_iterator(ce_iterator, iterator, 0); in spl_recursive_it_it_construct()
586 ZVAL_COPY_VALUE(&intern->iterators[0].zobject, iterator); in spl_recursive_it_it_construct()
587 intern->iterators[0].ce = ce_iterator; in spl_recursive_it_it_construct()
588 intern->iterators[0].state = RS_START; in spl_recursive_it_it_construct()
596 sub_iter = intern->iterators[intern->level].iterator; in spl_recursive_it_it_construct()
598 zval_ptr_dtor(&intern->iterators[intern->level--].zobject); in spl_recursive_it_it_construct()
600 efree(intern->iterators); in spl_recursive_it_it_construct()
601 intern->iterators = NULL; in spl_recursive_it_it_construct()
720 if(!object->iterators) { in SPL_METHOD()
726 value = &object->iterators[level].zobject; in SPL_METHOD()
780 if (!object->iterators) { in SPL_METHOD()
786 zobject = &object->iterators[object->level].zobject; in SPL_METHOD()
811 zobject = &object->iterators[object->level].zobject; in SPL_METHOD()
896 if (!object->iterators) { in spl_recursive_it_get_method()
899 zobj = &object->iterators[level].zobject; in spl_recursive_it_get_method()
924 if (object->iterators) { in spl_RecursiveIteratorIterator_dtor()
926 sub_iter = object->iterators[object->level].iterator; in spl_RecursiveIteratorIterator_dtor()
928 zval_ptr_dtor(&object->iterators[object->level--].zobject); in spl_RecursiveIteratorIterator_dtor()
930 efree(object->iterators); in spl_RecursiveIteratorIterator_dtor()
931 object->iterators = NULL; in spl_RecursiveIteratorIterator_dtor()
941 if (object->iterators) { in spl_RecursiveIteratorIterator_free_storage()
942 efree(object->iterators); in spl_RecursiveIteratorIterator_free_storage()
943 object->iterators = NULL; in spl_RecursiveIteratorIterator_free_storage()
1044 …zend_call_method_with_0_params(&object->iterators[level].zobject, object->iterators[level].ce, NUL… in spl_recursive_tree_iterator_get_prefix()
1054 …zend_call_method_with_0_params(&object->iterators[level].zobject, object->iterators[level].ce, NUL… in spl_recursive_tree_iterator_get_prefix()
1072 zend_object_iterator *iterator = object->iterators[object->level].iterator; in spl_recursive_tree_iterator_get_entry()
1138 if(!object->iterators) { in SPL_METHOD()
1173 if(!object->iterators) { in SPL_METHOD()
1192 if(!object->iterators) { in SPL_METHOD()
1214 if(!object->iterators) { in SPL_METHOD()
1221 zend_object_iterator *iterator = object->iterators[object->level].iterator; in SPL_METHOD()