Linked list manipulation routines. More...
Go to the source code of this file.
Defines | |
#define | LIST(name) |
Declare a linked list. | |
#define | LIST_STRUCT(name) |
Declare a linked list inside a structure declaraction. | |
#define | LIST_STRUCT_INIT(struct_ptr, name) |
Initialize a linked list that is part of a structure. | |
Typedefs | |
typedef void ** | list_t |
The linked list type. | |
Functions | |
void | list_init (list_t list) |
Initialize a list. | |
void * | list_head (list_t list) |
Get a pointer to the first element of a list. | |
void * | list_tail (list_t list) |
Get the tail of a list. | |
void * | list_pop (list_t list) |
Remove the first object on a list. | |
void | list_push (list_t list, void *item) |
Add an item to the start of the list. | |
void * | list_chop (list_t list) |
Remove the last object on the list. | |
void | list_add (list_t list, void *item) |
Add an item at the end of a list. | |
void | list_remove (list_t list, void *item) |
Remove a specific element from a list. | |
int | list_length (list_t list) |
Get the length of a list. | |
void | list_copy (list_t dest, list_t src) |
Duplicate a list. | |
void | list_insert (list_t list, void *previtem, void *newitem) |
Insert an item after a specified item on the list. | |
void * | list_item_next (void *item) |
Get the next item following this item. |
Linked list manipulation routines.
Definition in file list.h.