Lines Matching refs:iter

520 	HashTableIterator *iter = iterators + idx;  in zend_hash_remove_iterator_copies()  local
521 uint32_t next_idx = iter->next_copy; in zend_hash_remove_iterator_copies()
529 iter->next_copy = idx; in zend_hash_remove_iterator_copies()
534 HashTableIterator *iter = EG(ht_iterators); in zend_hash_iterator_add() local
535 HashTableIterator *end = iter + EG(ht_iterators_count); in zend_hash_iterator_add()
541 while (iter != end) { in zend_hash_iterator_add()
542 if (iter->ht == NULL) { in zend_hash_iterator_add()
543 iter->ht = ht; in zend_hash_iterator_add()
544 iter->pos = pos; in zend_hash_iterator_add()
545 idx = iter - EG(ht_iterators); in zend_hash_iterator_add()
546 iter->next_copy = idx; in zend_hash_iterator_add()
552 iter++; in zend_hash_iterator_add()
560 iter = EG(ht_iterators) + EG(ht_iterators_count); in zend_hash_iterator_add()
562 iter->ht = ht; in zend_hash_iterator_add()
563 iter->pos = pos; in zend_hash_iterator_add()
564 memset(iter + 1, 0, sizeof(HashTableIterator) * 7); in zend_hash_iterator_add()
565 idx = iter - EG(ht_iterators); in zend_hash_iterator_add()
566 iter->next_copy = idx; in zend_hash_iterator_add()
573 HashTableIterator *iter = EG(ht_iterators) + idx; in zend_hash_iterator_find_copy_pos() local
575 uint32_t next_idx = iter->next_copy; in zend_hash_iterator_find_copy_pos()
583 if (EXPECTED(iter->ht) && EXPECTED(iter->ht != HT_POISONED_PTR) in zend_hash_iterator_find_copy_pos()
584 && EXPECTED(!HT_ITERATORS_OVERFLOW(iter->ht))) { in zend_hash_iterator_find_copy_pos()
585 HT_DEC_ITERATORS_COUNT(iter->ht); in zend_hash_iterator_find_copy_pos()
590 iter->ht = copy_iter->ht; in zend_hash_iterator_find_copy_pos()
591 iter->pos = copy_iter->pos; in zend_hash_iterator_find_copy_pos()
605 HashTableIterator *iter = EG(ht_iterators) + idx; in zend_hash_iterator_pos() local
608 if (UNEXPECTED(iter->ht != ht) && !zend_hash_iterator_find_copy_pos(idx, ht)) { in zend_hash_iterator_pos()
609 if (EXPECTED(iter->ht) && EXPECTED(iter->ht != HT_POISONED_PTR) in zend_hash_iterator_pos()
610 && EXPECTED(!HT_ITERATORS_OVERFLOW(iter->ht))) { in zend_hash_iterator_pos()
611 HT_DEC_ITERATORS_COUNT(iter->ht); in zend_hash_iterator_pos()
616 iter->ht = ht; in zend_hash_iterator_pos()
617 iter->pos = _zend_hash_get_current_pos(ht); in zend_hash_iterator_pos()
619 return iter->pos; in zend_hash_iterator_pos()
625 HashTableIterator *iter = EG(ht_iterators) + idx; in zend_hash_iterator_pos_ex() local
628 if (UNEXPECTED(iter->ht != ht) && !zend_hash_iterator_find_copy_pos(idx, ht)) { in zend_hash_iterator_pos_ex()
629 if (EXPECTED(iter->ht) && EXPECTED(iter->ht != HT_POISONED_PTR) in zend_hash_iterator_pos_ex()
631 HT_DEC_ITERATORS_COUNT(iter->ht); in zend_hash_iterator_pos_ex()
638 iter->ht = ht; in zend_hash_iterator_pos_ex()
639 iter->pos = _zend_hash_get_current_pos(ht); in zend_hash_iterator_pos_ex()
641 return iter->pos; in zend_hash_iterator_pos_ex()
646 HashTableIterator *iter = EG(ht_iterators) + idx; in zend_hash_iterator_del() local
650 if (EXPECTED(iter->ht) && EXPECTED(iter->ht != HT_POISONED_PTR) in zend_hash_iterator_del()
651 && EXPECTED(!HT_ITERATORS_OVERFLOW(iter->ht))) { in zend_hash_iterator_del()
652 ZEND_ASSERT(HT_ITERATORS_COUNT(iter->ht) != 0); in zend_hash_iterator_del()
653 HT_DEC_ITERATORS_COUNT(iter->ht); in zend_hash_iterator_del()
655 iter->ht = NULL; in zend_hash_iterator_del()
657 if (UNEXPECTED(iter->next_copy != idx)) { in zend_hash_iterator_del()
671 HashTableIterator *iter = EG(ht_iterators); in _zend_hash_iterators_remove() local
672 HashTableIterator *end = iter + EG(ht_iterators_used); in _zend_hash_iterators_remove()
674 while (iter != end) { in _zend_hash_iterators_remove()
675 if (iter->ht == ht) { in _zend_hash_iterators_remove()
676 iter->ht = HT_POISONED_PTR; in _zend_hash_iterators_remove()
678 iter++; in _zend_hash_iterators_remove()
691 HashTableIterator *iter = EG(ht_iterators); in zend_hash_iterators_lower_pos() local
692 HashTableIterator *end = iter + EG(ht_iterators_used); in zend_hash_iterators_lower_pos()
695 while (iter != end) { in zend_hash_iterators_lower_pos()
696 if (iter->ht == ht) { in zend_hash_iterators_lower_pos()
697 if (iter->pos >= start && iter->pos < res) { in zend_hash_iterators_lower_pos()
698 res = iter->pos; in zend_hash_iterators_lower_pos()
701 iter++; in zend_hash_iterators_lower_pos()
708 HashTableIterator *iter = EG(ht_iterators); in _zend_hash_iterators_update() local
709 HashTableIterator *end = iter + EG(ht_iterators_used); in _zend_hash_iterators_update()
711 while (iter != end) { in _zend_hash_iterators_update()
712 if (iter->ht == ht && iter->pos == from) { in _zend_hash_iterators_update()
713 iter->pos = to; in _zend_hash_iterators_update()
715 iter++; in _zend_hash_iterators_update()
721 HashTableIterator *iter = EG(ht_iterators); in zend_hash_iterators_advance() local
722 HashTableIterator *end = iter + EG(ht_iterators_used); in zend_hash_iterators_advance()
724 while (iter != end) { in zend_hash_iterators_advance()
725 if (iter->ht == ht) { in zend_hash_iterators_advance()
726 iter->pos += step; in zend_hash_iterators_advance()
728 iter++; in zend_hash_iterators_advance()
1337 HashTableIterator *iter = EG(ht_iterators); in zend_hash_rehash() local
1338 HashTableIterator *end = iter + EG(ht_iterators_used); in zend_hash_rehash()
1339 while (iter != end) { in zend_hash_rehash()
1340 if (iter->ht == ht) { in zend_hash_rehash()
1341 iter->pos = 0; in zend_hash_rehash()
1343 iter++; in zend_hash_rehash()
1430 HashTableIterator *iter = EG(ht_iterators); in zend_hash_iterators_clamp_max() local
1431 HashTableIterator *end = iter + EG(ht_iterators_used); in zend_hash_iterators_clamp_max()
1432 while (iter != end) { in zend_hash_iterators_clamp_max()
1433 if (iter->ht == ht) { in zend_hash_iterators_clamp_max()
1434 iter->pos = MIN(iter->pos, max); in zend_hash_iterators_clamp_max()
1436 iter++; in zend_hash_iterators_clamp_max()
2343 HashTableIterator *iter = EG(ht_iterators); in zend_array_dup_ht_iterators() local
2344 HashTableIterator *end = iter + EG(ht_iterators_used); in zend_array_dup_ht_iterators()
2346 while (iter != end) { in zend_array_dup_ht_iterators()
2347 if (iter->ht == source) { in zend_array_dup_ht_iterators()
2348 uint32_t copy_idx = zend_hash_iterator_add(target, iter->pos); in zend_array_dup_ht_iterators()
2350 copy_iter->next_copy = iter->next_copy; in zend_array_dup_ht_iterators()
2351 iter->next_copy = copy_idx; in zend_array_dup_ht_iterators()
2353 iter++; in zend_array_dup_ht_iterators()