X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/4553b6fae9860536665e7dc1587f4fc3b1440a92..9f3329f034f04e74f367ea33d99ab9236f04fb1c:/include/xbt/dict.h diff --git a/include/xbt/dict.h b/include/xbt/dict.h index 05b34c8a2e..1dc5685c94 100644 --- a/include/xbt/dict.h +++ b/include/xbt/dict.h @@ -139,14 +139,32 @@ XBT_PUBLIC(void) xbt_dict_cursor_first(const xbt_dict_t dict, XBT_PUBLIC(void) xbt_dict_cursor_step(xbt_dict_cursor_t cursor); XBT_PUBLIC(int) xbt_dict_cursor_get_or_free(xbt_dict_cursor_t * cursor, char **key, void **data); - /** @def xbt_dict_foreach - @hideinitializer */ +/** @def xbt_dict_foreach + * @param dict a \ref xbt_dict_t iterator + * @param cursor an \ref xbt_dict_cursor_t used as cursor + * @param key a char* + * @param data a void** output + * @hideinitializer + * + * \note An example of usage: + * \code +xbt_dict_cursor_t cursor = NULL; +char *key; +char *data; + +xbt_dict_foreach(head, cursor, key, data) { + printf("Key %s with data %s\n",key,data); +} +\endcode + */ # define xbt_dict_foreach(dict,cursor,key,data) \ for (cursor=NULL, xbt_dict_cursor_first((dict),&(cursor)) ; \ xbt_dict_cursor_get_or_free(&(cursor),(char**)&(key),(void**)(&data));\ xbt_dict_cursor_step(cursor) ) /** @} */ + +#ifdef XBT_USE_DEPRECATED /** @defgroup XBT_dict_multi Multi-level dictionaries * @ingroup XBT_dict * @@ -183,6 +201,7 @@ XBT_PUBLIC(void) xbt_multidict_remove_ext(xbt_dict_t mdict, xbt_dynar_t lens); /** @} */ +#endif SG_END_DECL() #endif /* _XBT_DICT_H */