Simple doubly linked list implementation. More...
Go to the source code of this file.
Data Structures | |
| struct | list_head |
Macros | |
| #define | ATALK_LIST_HEAD_INIT(name) |
| #define | ATALK_LIST_HEAD(name) |
| #define | ATALK_INIT_LIST_HEAD(ptr) |
| #define | list_entry(ptr, type, member) |
| get the struct for this entry | |
| #define | list_for_each(pos, head) |
| iterate over a list | |
| #define | list_for_each_prev(pos, head) |
| iterate over a list in reverse order | |
Simple doubly linked list implementation.
Some of the internal functions ("__xxx") are useful when manipulating whole lists rather than single entries, as sometimes we already know the next/prev entries and we can generate better code by using them directly rather than using the generic single-entry routines.
| #define ATALK_INIT_LIST_HEAD | ( | ptr | ) |
| #define ATALK_LIST_HEAD | ( | name | ) |
| #define ATALK_LIST_HEAD_INIT | ( | name | ) |
| #define list_entry | ( | ptr, | |
| type, | |||
| member ) |
| #define list_for_each | ( | pos, | |
| head ) |
| #define list_for_each_prev | ( | pos, | |
| head ) |
iterate over a list in reverse order
| pos | the &struct list_head to use as a loop counter. |
| head | the head for your list. |