From: Jeff Hostetler <jeffhost@xxxxxxxxxxxxx> Add the usual map iterator functions to oidmap. Signed-off-by: Jeff Hostetler <jeffhost@xxxxxxxxxxxxx> --- oidmap.h | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/oidmap.h b/oidmap.h index 18f54cd..d3cd2bb 100644 --- a/oidmap.h +++ b/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); + +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 -- 2.9.3