aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cheesemap.h3
-rw-r--r--cm-demo.c2
2 files changed, 4 insertions, 1 deletions
diff --git a/cheesemap.h b/cheesemap.h
index 436bfe1..50fa7bf 100644
--- a/cheesemap.h
+++ b/cheesemap.h
@@ -176,6 +176,9 @@ void cm_iter_init(struct cheesemap_iter* iter, const struct cheesemap* map);
bool cm_iter_next(struct cheesemap_iter* iter, const struct cheesemap* map,
uint8_t** out_key, uint8_t** out_value);
+#define cm_iter_next_(iter, map, out_key, out_val) \
+ cm_iter_next(iter, map, (uint8_t**)(out_key), (uint8_t**)(out_val))
+
#ifdef __cplusplus
}
#endif
diff --git a/cm-demo.c b/cm-demo.c
index 3d91843..7a5a3e2 100644
--- a/cm-demo.c
+++ b/cm-demo.c
@@ -46,7 +46,7 @@ int main(void) {
cm_iter_init(&iter, &map);
const char** word;
int* count;
- while (cm_iter_next(&iter, &map, (uint8_t**)&word, (uint8_t**)&count)) {
+ while (cm_iter_next_(&iter, &map, &word, &count)) {
printf(" %s: %d\n", *word, *count);
}