A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid
[simgrid.git]
/
src
/
xbt
/
dict_cursor.c
diff --git
a/src/xbt/dict_cursor.c
b/src/xbt/dict_cursor.c
index
d7d3543
..
68c5440
100644
(file)
--- a/
src/xbt/dict_cursor.c
+++ b/
src/xbt/dict_cursor.c
@@
-1,6
+1,6
@@
/* dict_cursor - iterators over dictionnaries */
/* dict_cursor - iterators over dictionnaries */
-/* Copyright (c) 2004
, 2005, 2006, 2007, 2008, 2009, 2010
. The SimGrid Team.
+/* Copyright (c) 2004
-2014
. The SimGrid Team.
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
@@
-12,7
+12,6
@@
#include <string.h> /* strlen() */
#include <string.h> /* strlen() */
-XBT_LOG_EXTERNAL_CATEGORY(xbt_dict);
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(xbt_dict_cursor, xbt_dict,
"To traverse dictionaries");
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(xbt_dict_cursor, xbt_dict,
"To traverse dictionaries");
@@
-21,11
+20,6
@@
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(xbt_dict_cursor, xbt_dict,
/* To traverse (simple) dicts */
/* Don't add or remove entries to the dict while traversing !!! */
/*###########################################################################*/
/* To traverse (simple) dicts */
/* Don't add or remove entries to the dict while traversing !!! */
/*###########################################################################*/
-struct xbt_dict_cursor_ {
- xbt_dictelm_t current;
- int line;
- xbt_dict_t dict;
-};
#undef xbt_dict_CURSOR_DEBUG
/*#define xbt_dict_CURSOR_DEBUG 1*/
#undef xbt_dict_CURSOR_DEBUG
/*#define xbt_dict_CURSOR_DEBUG 1*/
@@
-51,10
+45,8
@@
XBT_INLINE xbt_dict_cursor_t xbt_dict_cursor_new(const xbt_dict_t dict)
*/
XBT_INLINE void xbt_dict_cursor_free(xbt_dict_cursor_t * cursor)
{
*/
XBT_INLINE void xbt_dict_cursor_free(xbt_dict_cursor_t * cursor)
{
- if (*cursor) {
- xbt_free(*cursor);
- *cursor = NULL;
- }
+ xbt_free(*cursor);
+ *cursor = NULL;
}
/*
}
/*
@@
-62,14
+54,14
@@
XBT_INLINE void xbt_dict_cursor_free(xbt_dict_cursor_t * cursor)
*/
static XBT_INLINE void __cursor_not_null(xbt_dict_cursor_t cursor)
{
*/
static XBT_INLINE void __cursor_not_null(xbt_dict_cursor_t cursor)
{
- xbt_assert
0
(cursor, "Null cursor");
+ xbt_assert(cursor, "Null cursor");
}
/** @brief Reinitialize the cursor. Mandatory after removal or add in dict. */
XBT_INLINE void xbt_dict_cursor_rewind(xbt_dict_cursor_t cursor)
{
}
/** @brief Reinitialize the cursor. Mandatory after removal or add in dict. */
XBT_INLINE void xbt_dict_cursor_rewind(xbt_dict_cursor_t cursor)
{
-
CDEBUG0
(xbt_dict_cursor, "xbt_dict_cursor_rewind");
+
XBT_CDEBUG
(xbt_dict_cursor, "xbt_dict_cursor_rewind");
xbt_assert(cursor);
cursor->line = 0;
xbt_assert(cursor);
cursor->line = 0;
@@
-89,9
+81,9
@@
XBT_INLINE void xbt_dict_cursor_rewind(xbt_dict_cursor_t cursor)
XBT_INLINE void xbt_dict_cursor_first(const xbt_dict_t dict,
xbt_dict_cursor_t * cursor)
{
XBT_INLINE void xbt_dict_cursor_first(const xbt_dict_t dict,
xbt_dict_cursor_t * cursor)
{
-
DEBUG0(
"xbt_dict_cursor_first");
+
XBT_CDEBUG(xbt_dict_cursor,
"xbt_dict_cursor_first");
if (!*cursor) {
if (!*cursor) {
-
DEBUG0(
"Create the cursor on first use");
+
XBT_CDEBUG(xbt_dict_cursor,
"Create the cursor on first use");
*cursor = xbt_dict_cursor_new(dict);
} else {
xbt_dict_cursor_rewind(*cursor);
*cursor = xbt_dict_cursor_new(dict);
} else {
xbt_dict_cursor_rewind(*cursor);
@@
-110,7
+102,7
@@
XBT_INLINE void xbt_dict_cursor_step(xbt_dict_cursor_t cursor)
xbt_dictelm_t current;
int line;
xbt_dictelm_t current;
int line;
-
DEBUG0(
"xbt_dict_cursor_step");
+
XBT_CDEBUG(xbt_dict_cursor,
"xbt_dict_cursor_step");
xbt_assert(cursor);
current = cursor->current;
xbt_assert(cursor);
current = cursor->current;
@@
-119,17
+111,17
@@
XBT_INLINE void xbt_dict_cursor_step(xbt_dict_cursor_t cursor)
if (cursor->dict != NULL) {
if (current != NULL) {
if (cursor->dict != NULL) {
if (current != NULL) {
-
DEBUG0(
"current is not null, take the next element");
+
XBT_CDEBUG(xbt_dict_cursor,
"current is not null, take the next element");
current = current->next;
current = current->next;
-
DEBUG1(
"next element: %p", current);
+
XBT_CDEBUG(xbt_dict_cursor,
"next element: %p", current);
}
while (current == NULL && ++line <= cursor->dict->table_size) {
}
while (current == NULL && ++line <= cursor->dict->table_size) {
-
DEBUG0(
"current is NULL, take the next line");
+
XBT_CDEBUG(xbt_dict_cursor,
"current is NULL, take the next line");
current = cursor->dict->table[line];
current = cursor->dict->table[line];
-
DEBUG1(
"element in the next line: %p", current);
+
XBT_CDEBUG(xbt_dict_cursor,
"element in the next line: %p", current);
}
}
-
DEBUG2(
"search finished, current = %p, line = %d", current, line);
+
XBT_CDEBUG(xbt_dict_cursor,
"search finished, current = %p, line = %d", current, line);
cursor->current = current;
cursor->line = line;
cursor->current = current;
cursor->line = line;
@@
-147,7
+139,7
@@
XBT_INLINE int xbt_dict_cursor_get_or_free(xbt_dict_cursor_t * cursor,
xbt_dictelm_t current;
xbt_dictelm_t current;
-
DEBUG0(
"xbt_dict_get_or_free");
+
XBT_CDEBUG(xbt_dict_cursor,
"xbt_dict_get_or_free");
if (!cursor || !(*cursor))
if (!cursor || !(*cursor))
@@
-199,10
+191,5
@@
XBT_INLINE void xbt_dict_cursor_set_data(xbt_dict_cursor_t cursor,
void_f_pvoid_t free_ctn)
{
__cursor_not_null(cursor);
void_f_pvoid_t free_ctn)
{
__cursor_not_null(cursor);
- if (cursor->current->free_f)
- cursor->current->free_f(cursor->current->content);
-
- cursor->current->content = data;
- cursor->current->free_f = free_ctn;
- return;
+ xbt_dictelm_set_data(cursor->dict, cursor->current, data, free_ctn);
}
}