From 974eade1a6445222812fc03f60896def74b7dd06 Mon Sep 17 00:00:00 2001 From: Thiago de Arruda Date: Mon, 19 May 2014 10:52:04 -0300 Subject: Improve map module: Change scopes - Move `Map` structure definition to `map_defs.h` - Use `KHASH_DECLARE` on map_defs.h to declare khash function prototypes. - Redefine `map_foreach` into a macro - Refactor server.c module to use the new `map_foreach` macro. --- src/nvim/map.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'src/nvim/map.h') diff --git a/src/nvim/map.h b/src/nvim/map.h index 39536a0c10..3e9ab389bd 100644 --- a/src/nvim/map.h +++ b/src/nvim/map.h @@ -47,11 +47,11 @@ void *map_put(Map *map, const char *key, void *value); /// @return The current value if exists or NULL otherwise void *map_del(Map *map, const char *key); -/// Iterates through each key/value pair in the map -/// -/// @param map The `Map` instance -/// @param cb A function that will be called for each key/value -void map_foreach(Map *map, key_value_cb cb); +#define map_foreach(map, key, value, block) \ + kh_foreach(map->table, key, value, block) + +#define map_foreach_value(map, value, block) \ + kh_foreach_value(map->table, value, block) #endif // NVIM_MAP_H -- cgit