*/
XBT_INLINE unsigned int xbt_dict_size(xbt_dict_t dict)
{
- return dict->count;
+ return (dict ? (unsigned int) dict->count : (unsigned int) 0);
}
/**
current = dict->table[hash_code & dict->table_size];
while (current != NULL &&
- hash_code != current->hash_code && strcmp(key, current->key))
+ (hash_code != current->hash_code || strcmp(key, current->key)))
current = current->next;
if (current == NULL)
{
fputs(s, stdout);
}
-
+/**
+ * \brief test if the dict is empty or not
+ */
+XBT_INLINE int xbt_dict_is_empty(xbt_dict_t dict)
+{
+ return (xbt_dict_size(dict) == 0);
+}
/**
* \brief Outputs the content of the structure (debugging purpose)
#include "portable.h"
XBT_LOG_EXTERNAL_CATEGORY(xbt_dict);
-XBT_LOG_NEW_DEFAULT_SUBCATEGORY(xbt_dict, xbt,
- "Dictionaries provide the same functionalities than hash tables");
+XBT_LOG_DEFAULT_CATEGORY(xbt_dict);
XBT_TEST_SUITE("dict", "Dict data container");