From: Marcus Boerger Date: Sun, 20 Jul 2003 12:23:46 +0000 (+0000) Subject: Make it a macro X-Git-Tag: BEFORE_ARG_INFO~179 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=184118d9a94981c9aa0a3ed4140bfc06ca1da311;p=php Make it a macro --- diff --git a/Zend/zend_hash.c b/Zend/zend_hash.c index 2081bd6ce4..08ca21ad31 100644 --- a/Zend/zend_hash.c +++ b/Zend/zend_hash.c @@ -1005,20 +1005,6 @@ ZEND_API void zend_hash_internal_pointer_end_ex(HashTable *ht, HashPosition *pos } -ZEND_API int zend_hash_has_more_elements_ex(HashTable *ht, HashPosition *pos) -{ - HashPosition *current = pos ? pos : &ht->pInternalPointer; - - IS_CONSISTENT(ht); - - if (*current) { - return SUCCESS; - } else { - return FAILURE; - } -} - - ZEND_API int zend_hash_move_forward_ex(HashTable *ht, HashPosition *pos) { HashPosition *current = pos ? pos : &ht->pInternalPointer; diff --git a/Zend/zend_hash.h b/Zend/zend_hash.h index 9aa0315c38..976ec72dc5 100644 --- a/Zend/zend_hash.h +++ b/Zend/zend_hash.h @@ -164,7 +164,8 @@ ZEND_API int zend_hash_index_exists(HashTable *ht, ulong h); ZEND_API ulong zend_hash_next_free_element(HashTable *ht); /* traversing */ -ZEND_API int zend_hash_has_more_elements_ex(HashTable *ht, HashPosition *pos); +#define zend_hash_has_more_elements_ex(ht, pos) \ + (zend_hash_get_current_key_type_ex(ht, pos) == HASH_KEY_NON_EXISTANT ? FAILURE : SUCCESS) ZEND_API int zend_hash_move_forward_ex(HashTable *ht, HashPosition *pos); ZEND_API int zend_hash_move_backwards_ex(HashTable *ht, HashPosition *pos); ZEND_API int zend_hash_get_current_key_ex(HashTable *ht, char **str_index, uint *str_length, ulong *num_index, zend_bool duplicate, HashPosition *pos);