-/* $Id$ */
-
-/* Copyright (c) 2004 Arnaud Legrand. 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. */
*
* insert \a obj in \a swag
*/
-void xbt_swag_insert(void *obj, xbt_swag_t swag)
+XBT_INLINE void xbt_swag_insert(void *obj, xbt_swag_t swag)
{
if (xbt_swag_belongs(obj, swag))
}
xbt_swag_getPrev(obj, swag->offset) = swag->tail;
- xbt_swag_getNext(xbt_swag_getPrev(obj, swag->offset), swag->offset) = obj;
+ xbt_swag_getNext(xbt_swag_getPrev(obj, swag->offset), swag->offset) =
+ obj;
swag->tail = obj;
}
* insert (at the head... you probably had a very good reason to do
* that, I hope you know what you're doing) \a obj in \a swag
*/
-void xbt_swag_insert_at_head(void *obj, xbt_swag_t swag)
+XBT_INLINE void xbt_swag_insert_at_head(void *obj, xbt_swag_t swag)
{
if (xbt_swag_belongs(obj, swag))
}
xbt_swag_getNext(obj, swag->offset) = swag->head;
- xbt_swag_getPrev(xbt_swag_getNext(obj, swag->offset), swag->offset) = obj;
+ xbt_swag_getPrev(xbt_swag_getNext(obj, swag->offset), swag->offset) =
+ obj;
swag->head = obj;
}
* insert (at the tail... you probably had a very good reason to do
* that, I hope you know what you're doing) \a obj in \a swag
*/
-void xbt_swag_insert_at_tail(void *obj, xbt_swag_t swag)
+XBT_INLINE void xbt_swag_insert_at_tail(void *obj, xbt_swag_t swag)
{
if (xbt_swag_belongs(obj, swag))
}
xbt_swag_getPrev(obj, swag->offset) = swag->tail;
- xbt_swag_getNext(xbt_swag_getPrev(obj, swag->offset), swag->offset) = obj;
+ xbt_swag_getNext(xbt_swag_getPrev(obj, swag->offset), swag->offset) =
+ obj;
swag->tail = obj;
}
*
* removes \a obj from \a swag
*/
-void *xbt_swag_remove(void *obj, xbt_swag_t swag)
+XBT_INLINE void *xbt_swag_remove(void *obj, xbt_swag_t swag)
{
size_t offset = swag->offset;
xbt_swag_getNext(swag->tail, offset) = NULL;
xbt_swag_getPrev(obj, offset) = NULL;
} else { /* It's in the middle */
- xbt_swag_getNext(xbt_swag_getPrev(obj, offset), offset) = xbt_swag_getNext(obj, offset);
- xbt_swag_getPrev(xbt_swag_getNext(obj, offset), offset) = xbt_swag_getPrev(obj, offset);
+ xbt_swag_getNext(xbt_swag_getPrev(obj, offset), offset) =
+ xbt_swag_getNext(obj, offset);
+ xbt_swag_getPrev(xbt_swag_getNext(obj, offset), offset) =
+ xbt_swag_getPrev(obj, offset);
xbt_swag_getPrev(obj, offset) = xbt_swag_getNext(obj, offset) = NULL;
}
(swag->count)--;
xbt_swag_free(setB);
}
-#endif /* SIMGRID_TEST */
+#endif /* SIMGRID_TEST */