#define HV_HOLE ((void*) 1)
/**
- * Find the item, if any, with the given key and assign *x with its
- * address. Returns 1 on success and 0 on failure to find the keyed
- * item. Note that when the function returns 0, *x is unchanged.
+ * \brief Find next keyed item at or after the given index.
+ * \param hv is the hasvector concerned
+ * \param index is a pointer to the index to advance
+ * \param key is the query key
+ * \returns the next matching item, or 0 if none, with the index updated.
*
* \related hashvector
*/
-extern int hashvector_find(hashvector *hv,void *key,void **x);
+extern void *hashvector_next(hashvector *hv,vector_index *i,void *key);
/**
* Add the given item into the hashvector, growing the hashvector as
/**
* Create a hashvector for of given variant for given itemkeyfun*
*/
-extern hashvector *hashvector_create(int variant,itemkeyfun *type);
+extern hashvector *hashvector_create(
+ enum vector_variant variant,itemkeyfun *type);
#endif