X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/a5fa0e26004ac8dafe1c9d50c1c14e6d7190f16f..66d97e68ea51b5514594e5818f75c7d844586eae:/include/xbt/set.h diff --git a/include/xbt/set.h b/include/xbt/set.h index ef0817e14f..0d79c101c5 100644 --- a/include/xbt/set.h +++ b/include/xbt/set.h @@ -37,7 +37,7 @@ SG_BEGIN_DECL() // my other fields, constituting the payload } my_element_type_t; \endverbatim * - * It is impossible to remove an element from such a data structure. + * It is now possible to remove an element from such a data structure. * * @todo * Such a datastructure was necessary/useful to store the GRAS type @@ -67,8 +67,8 @@ typedef struct xbt_set_elm_ { } s_xbt_set_elm_t,*xbt_set_elm_t; /*####[ Functions ]##########################################################*/ -xbt_set_t xbt_set_new (void); -void xbt_set_free(xbt_set_t *set); +XBT_PUBLIC(xbt_set_t) xbt_set_new (void); +XBT_PUBLIC(void) xbt_set_free(xbt_set_t *set); /** @} */ /** @defgroup XBT_set_basic Sets basic usage @@ -77,13 +77,17 @@ void xbt_set_free(xbt_set_t *set); * @{ */ -void xbt_set_add (xbt_set_t set, xbt_set_elm_t elm, void_f_pvoid_t *free_func); +XBT_PUBLIC(void) xbt_set_add (xbt_set_t set, xbt_set_elm_t elm, void_f_pvoid_t free_func); +XBT_PUBLIC(void) xbt_set_remove (xbt_set_t set, xbt_set_elm_t elm); +XBT_PUBLIC(void) xbt_set_remove_by_name (xbt_set_t set, const char *key); +XBT_PUBLIC(void) xbt_set_remove_by_name_ext (xbt_set_t set, const char *key, int key_len); +XBT_PUBLIC(void) xbt_set_remove_by_id (xbt_set_t set, int id); -xbt_set_elm_t xbt_set_get_by_name (xbt_set_t set, const char *key); -xbt_set_elm_t xbt_set_get_by_name_ext(xbt_set_t set, const char *key, int key_len); -xbt_set_elm_t xbt_set_get_by_id (xbt_set_t set, int id); +XBT_PUBLIC(xbt_set_elm_t) xbt_set_get_by_name (xbt_set_t set, const char *key); +XBT_PUBLIC(xbt_set_elm_t) xbt_set_get_by_name_ext(xbt_set_t set, const char *key, int key_len); +XBT_PUBLIC(xbt_set_elm_t) xbt_set_get_by_id (xbt_set_t set, int id); -unsigned long xbt_set_length (const xbt_set_t set); +XBT_PUBLIC(unsigned long) xbt_set_length (const xbt_set_t set); /** @} */ @@ -98,10 +102,10 @@ unsigned long xbt_set_length (const xbt_set_t set); /** @brief Cursor type */ typedef struct xbt_set_cursor_ *xbt_set_cursor_t; -void xbt_set_cursor_first (xbt_set_t set, +XBT_PUBLIC(void) xbt_set_cursor_first (xbt_set_t set, xbt_set_cursor_t *cursor); -void xbt_set_cursor_step (xbt_set_cursor_t cursor); -int xbt_set_cursor_get_or_free (xbt_set_cursor_t *cursor, +XBT_PUBLIC(void) xbt_set_cursor_step (xbt_set_cursor_t cursor); +XBT_PUBLIC(int) xbt_set_cursor_get_or_free (xbt_set_cursor_t *cursor, xbt_set_elm_t *elm); /** @brief Iterates over the whole set