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>
Jeff Hostetler 2017-11-21 20:58:48 +00:00 committed by Junio C Hamano
parent 578d81d0c4
commit 314f354ee7
1 changed files with 22 additions and 0 deletions

View File

@ -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);
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);