/* dict_multi - dictionnaries of dictionnaries of ... of data */
-/* Copyright (c) 2003-2005 Martin Quinson. All rights reserved. */
+/* Copyright (c) 2004, 2005, 2006, 2007, 2008, 2009, 2010. The SimGrid Team.
+ * All rights reserved. */
/* 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. */
DEBUG2("xbt_multidict_set(%p,%d)", mdict, keys_len);
- for (i = 0, thislevel = mdict; i < keys_len - 1; i++, thislevel = nextlevel) {
+ for (i = 0, thislevel = mdict; i < keys_len - 1;
+ i++, thislevel = nextlevel) {
xbt_dynar_get_cpy(keys, i, &thiskey);
xbt_dynar_get_cpy(lens, i, &thislen);
/* make sure the dict of next level exists */
nextlevel = xbt_dict_new();
VERB1("Create a dict (%p)", nextlevel);
- xbt_dict_set_ext(thislevel, thiskey, thislen, nextlevel, &_free_dict);
+ xbt_dict_set_ext(thislevel, thiskey, thislen, nextlevel,
+ &_free_dict);
}
}
TRY {
xbt_multidict_set_ext(mdict, keys, lens, data, free_ctn);
- } CLEANUP {
+ } TRY_CLEANUP {
xbt_dynar_free(&lens);
} CATCH(e) {
RETHROW;
DEBUG2("xbt_multidict_get(%p, %ld)", mdict, xbt_dynar_length(keys));
- for (i = 0, thislevel = mdict; i < keys_len - 1; i++, thislevel = nextlevel) {
+ for (i = 0, thislevel = mdict; i < keys_len - 1;
+ i++, thislevel = nextlevel) {
xbt_dynar_get_cpy(keys, i, &thiskey);
xbt_dynar_get_cpy(lens, i, &thislen);
*/
void
-xbt_multidict_remove_ext(xbt_dict_t mdict, xbt_dynar_t keys, xbt_dynar_t lens)
+xbt_multidict_remove_ext(xbt_dict_t mdict, xbt_dynar_t keys,
+ xbt_dynar_t lens)
{
xbt_dict_t thislevel, nextlevel = NULL;
int i;
xbt_assert0(xbt_dynar_length(keys),
"Can't remove a zero-long key set in a multidict");
- for (i = 0, thislevel = mdict; i < keys_len - 1; i++, thislevel = nextlevel) {
+ for (i = 0, thislevel = mdict; i < keys_len - 1;
+ i++, thislevel = nextlevel) {
xbt_dynar_get_cpy(keys, i, &thiskey);
xbt_dynar_get_cpy(lens, i, &thislen);
TRY {
xbt_multidict_remove_ext(mdict, keys, lens);
- } CLEANUP {
+ } TRY_CLEANUP {
xbt_dynar_free(&lens);
} CATCH(e) {
RETHROW;