IBNOS
|
Classes | |
struct | linkedList |
Macros | |
#define | ll_add_head ll_add_after |
#define | ll_add_tail ll_add_before |
#define | LL_INIT(list) { &(list), &(list) } |
Initializes a linkedList. More... | |
#define | LL_ENTRY(element, type, field) ((type *)((uint8_t *)(element) - offsetof(type, field))) |
#define | LL_FOR_EACH(element, list, type, field) |
Allows to iterate a linkedList similar to a for-loop. More... | |
#define | LL_FOR_EACH_SAFE(element, next_element, list, type, field) |
Allows to iterate a linkedList similar to a for-loop (safe when deleting elements). More... | |
#define LL_FOR_EACH | ( | element, | |
list, | |||
type, | |||
field | |||
) |
Allows to iterate a linkedList similar to a for-loop.
element | Iterator variable (of the object type) |
list | Pointer to the linkedList head structure |
type | Type of the iterator elements |
field | Field of the object structure which represents the iterated linkedList |
#define LL_FOR_EACH_SAFE | ( | element, | |
next_element, | |||
list, | |||
type, | |||
field | |||
) |
Allows to iterate a linkedList similar to a for-loop (safe when deleting elements).
Similar to LL_FOR_EACH(), but wil not crash, even if elements are deleted while iterating through the linkedList.
#define LL_INIT | ( | list | ) | { &(list), &(list) } |
Initializes a linkedList.
Static version of ll_init()
list | linkedList structure object |