Rev 67 | Rev 365 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 67 | Rev 68 | ||
---|---|---|---|
Line 66... | Line 66... | ||
66 | (link)->next->prev = (link)->prev; \ |
66 | (link)->next->prev = (link)->prev; \ |
67 | (link)->prev->next = (link)->next; \ |
67 | (link)->prev->next = (link)->next; \ |
68 | link_initialize(link); \ |
68 | link_initialize(link); \ |
69 | } |
69 | } |
70 | 70 | ||
71 | #define list_empty(head) (((head)->next == (head))?1:0) |
71 | #define list_empty(head) (((head)->next == (head))?true:false) |
72 | 72 | ||
73 | #define list_get_instance(link,type,member) (type *)(((__u8*)(link))-((__u8*)&(((type *)NULL)->member))) |
73 | #define list_get_instance(link,type,member) (type *)(((__u8*)(link))-((__u8*)&(((type *)NULL)->member))) |
74 | 74 | ||
75 | extern bool list_member(const link_t *link, const link_t *head); |
75 | extern bool list_member(const link_t *link, const link_t *head); |
76 | extern void list_concat(link_t *head1, link_t *head2); |
76 | extern void list_concat(link_t *head1, link_t *head2); |