#include <stddef.h>
#include <lucid/mem.h>
Include dependency graph for list.h:
This graph shows which files directly or indirectly include this file:
Go to the source code of this file.
Data Structures | |
struct | list_head |
list head More... | |
Defines | |
#define | container_of(ptr, type, member) ((type *)((char *)(ptr) - offsetof(type, member))) |
get container of list head | |
#define | LIST_NODE_ALLOC(NAME) NAME = mem_alloc(sizeof(*NAME)) |
#define | list_entry(ptr, type, member) container_of(ptr, type, member) |
get the struct for this entry | |
#define | list_for_each(pos, head) for (pos = (head)->next; pos != (head); pos = pos->next) |
iterate over a list | |
#define | list_for_each_prev(pos, head) for (pos = (head)->prev; pos != (head); pos = pos->prev) |
iterate over a list backwards | |
#define | list_for_each_safe(pos, n, head) |
iterate over a list safe against removal of list entry | |
#define | list_for_each_entry(pos, head, member) |
iterate over list of given type | |
#define | list_for_each_entry_reverse(pos, head, member) |
iterate backwards over list of given type. | |
#define | list_for_each_entry_safe(pos, n, head, member) |
iterate over list of given type safe against removal of list entry | |
#define | list_for_each_entry_safe_reverse(pos, n, head, member) |
iterate backwards over list of given type safe against removal of list entry | |
Typedefs | |
typedef list_head | list_t |
list head |