X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/98fcf9f030a152fb946c3860abc7b7d748d6f1a5..fd28ea3d66eee426ac29108bc8a5d4f017dc326d:/src/xbt/dict.c diff --git a/src/xbt/dict.c b/src/xbt/dict.c index cd98fa742b..2a79ff183f 100644 --- a/src/xbt/dict.c +++ b/src/xbt/dict.c @@ -8,8 +8,6 @@ /* This program is free software; you can redistribute it and/or modify it under the terms of the license (GNU LGPL) which comes with this package. */ - -#include "gras_private.h" #include "dict_private.h" #include /* malloc() */ @@ -17,7 +15,7 @@ #include -GRAS_LOG_NEW_DEFAULT_SUBCATEGORY(dict,gros, +GRAS_LOG_NEW_DEFAULT_SUBCATEGORY(dict,xbt, "Dictionaries provide the same functionnalities than hash tables"); /*####[ Private prototypes ]#################################################*/ @@ -32,18 +30,11 @@ GRAS_LOG_NEW_DEFAULT_SUBCATEGORY(dict,gros, * * Creates and initialize a new dictionnary */ -gras_error_t -gras_dict_new(gras_dict_t **whereto) { - gras_dict_t *dict; - - if (!(dict = calloc(1, sizeof(gras_dict_t)))) - RAISE_MALLOC; - - dict->head=NULL; - - *whereto = dict; - - return no_error; +gras_dict_t +gras_dict_new(void) { + gras_dict_t res= gras_new(s_gras_dict_t,1); + res->head=NULL; + return res; } /** * gras_dict_free: @@ -52,13 +43,13 @@ gras_dict_new(gras_dict_t **whereto) { * Frees a cache structure with all its childs. */ void -gras_dict_free(gras_dict_t **dict) { +gras_dict_free(gras_dict_t *dict) { if (dict && *dict) { if ((*dict)->head) { gras_dictelm_free( &( (*dict)->head ) ); (*dict)->head = NULL; } - free(*dict); + gras_free(*dict); *dict=NULL; } } @@ -74,17 +65,17 @@ gras_dict_free(gras_dict_t **dict) { * set the @data in the structure under the @key, which can be any kind * of data, as long as its length is provided in @key_len. */ -gras_error_t -gras_dict_set_ext(gras_dict_t *p_dict, - const char *key, - int key_len, - void *data, - void_f_pvoid_t *free_ctn) { +void +gras_dict_set_ext(gras_dict_t dict, + const char *key, + int key_len, + void *data, + void_f_pvoid_t *free_ctn) { - gras_assert(p_dict); + gras_assert(dict); - return gras_dictelm_set_ext(&(p_dict->head), - key, key_len, data, free_ctn); + gras_dictelm_set_ext(&(dict->head), + key, key_len, data, free_ctn); } /** @@ -98,15 +89,15 @@ gras_dict_set_ext(gras_dict_t *p_dict, * set the @data in the structure under the @key, which is a * null terminated string. */ -gras_error_t -gras_dict_set(gras_dict_t *p_dict, - const char *key, - void *data, - void_f_pvoid_t *free_ctn) { +void +gras_dict_set(gras_dict_t dict, + const char *key, + void *data, + void_f_pvoid_t *free_ctn) { - gras_assert(p_dict); + gras_assert(dict); - return gras_dictelm_set(&(p_dict->head), key, data, free_ctn); + gras_dictelm_set(&(dict->head), key, data, free_ctn); } /** @@ -120,10 +111,10 @@ gras_dict_set(gras_dict_t *p_dict, * Search the given @key. mismatch_error when not found. */ gras_error_t -gras_dict_get_ext(gras_dict_t *dict, - const char *key, - int key_len, - /* OUT */void **data) { +gras_dict_get_ext(gras_dict_t dict, + const char *key, + int key_len, + /* OUT */void **data) { gras_assert(dict); @@ -141,9 +132,9 @@ gras_dict_get_ext(gras_dict_t *dict, * Search the given @key. mismatch_error when not found. */ gras_error_t -gras_dict_get(gras_dict_t *dict, - const char *key, - /* OUT */void **data) { +gras_dict_get(gras_dict_t dict, + const char *key, + /* OUT */void **data) { gras_assert(dict); return gras_dictelm_get(dict->head, key, data); @@ -160,7 +151,7 @@ gras_dict_get(gras_dict_t *dict, * Remove the entry associated with the given @key */ gras_error_t -gras_dict_remove_ext(gras_dict_t *dict, +gras_dict_remove_ext(gras_dict_t dict, const char *key, int key_len) { gras_assert(dict); @@ -178,7 +169,7 @@ gras_dict_remove_ext(gras_dict_t *dict, * Remove the entry associated with the given @key */ gras_error_t -gras_dict_remove(gras_dict_t *dict, +gras_dict_remove(gras_dict_t dict, const char *key) { if (!dict) RAISE1(mismatch_error,"Asked to remove key %s from NULL dict",key); @@ -198,11 +189,11 @@ gras_dict_remove(gras_dict_t *dict, * function to output the data. If NULL, data won't be displayed. */ -gras_error_t -gras_dict_dump(gras_dict_t *dict, +void +gras_dict_dump(gras_dict_t dict, void_f_pvoid_t *output) { - printf("Dict %p:\n", dict); - return gras_dictelm_dump(dict ? dict->head: NULL, output); + printf("Dict %p:\n", (void*)dict); + gras_dictelm_dump(dict ? dict->head: NULL, output); }