oidmap: add oidmap iterator methods
Add the usual map iterator functions to oidmap. Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com> Reviewed-by: Jonathan Tan <jonathantanmy@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
578d81d0c4
commit
314f354ee7
22
oidmap.h
22
oidmap.h
@ -65,4 +65,26 @@ extern void *oidmap_put(struct oidmap *map, void *entry);
|
|||||||
*/
|
*/
|
||||||
extern void *oidmap_remove(struct oidmap *map, const struct object_id *key);
|
extern void *oidmap_remove(struct oidmap *map, const struct object_id *key);
|
||||||
|
|
||||||
|
|
||||||
|
struct oidmap_iter {
|
||||||
|
struct hashmap_iter h_iter;
|
||||||
|
};
|
||||||
|
|
||||||
|
static inline void oidmap_iter_init(struct oidmap *map, struct oidmap_iter *iter)
|
||||||
|
{
|
||||||
|
hashmap_iter_init(&map->map, &iter->h_iter);
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline void *oidmap_iter_next(struct oidmap_iter *iter)
|
||||||
|
{
|
||||||
|
return hashmap_iter_next(&iter->h_iter);
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline void *oidmap_iter_first(struct oidmap *map,
|
||||||
|
struct oidmap_iter *iter)
|
||||||
|
{
|
||||||
|
oidmap_iter_init(map, iter);
|
||||||
|
return oidmap_iter_next(iter);
|
||||||
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user