Add the external API for the ptrmap implementation. Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@xxxxxxxxx> --- ptrmap.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/ptrmap.h b/ptrmap.h index 070db15e2..cbbb61da9 100644 --- a/ptrmap.h +++ b/ptrmap.h @@ -3,6 +3,22 @@ struct ptrmap; +#define DECLARE_PTRMAP(name, ktype, vtype) \ + struct name ## _pair { ktype key; vtype val; }; \ + struct name { struct name ## _pair block[1]; }; \ + static inline \ + void name##_add(struct name **map, ktype k, vtype v) { \ + __ptrmap_add((struct ptrmap**)map, k, v); \ + } \ + static inline \ + void name##_update(struct name **map, ktype k, vtype v) { \ + __ptrmap_update((struct ptrmap**)map, k, v); \ + } \ + static inline \ + vtype name##_lookup(struct name *map, ktype k) { \ + vtype val = __ptrmap_lookup((struct ptrmap*)map, k); \ + return val; \ + } \ /* ptrmap.c */ void __ptrmap_add(struct ptrmap **mapp, void *key, void *val); -- 2.14.0 -- To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html