1#ifndef __LIB_KERNEL_LIST_H
2#define __LIB_KERNEL_LIST_H
103#define list_entry(LIST_ELEM, STRUCT, MEMBER) \
104 ((STRUCT *) ((uint8_t *) &(LIST_ELEM)->next \
105 - offsetof (STRUCT, MEMBER.next)))
struct list_elem * list_pop_front(struct list *)
Definition: list.c:251
bool list_less_func(const struct list_elem *a, const struct list_elem *b, void *aux)
Definition: list.h:147
struct list_elem * list_min(struct list *, list_less_func *, void *aux)
Definition: list.c:479
void list_sort(struct list *, list_less_func *, void *aux)
Definition: list.c:381
void list_init(struct list *)
Definition: list.c:58
struct list_elem * list_begin(struct list *)
Definition: list.c:68
void list_insert_ordered(struct list *, struct list_elem *, list_less_func *, void *aux)
Definition: list.c:419
struct list_elem * list_head(struct list *)
Definition: list.c:141
void list_push_back(struct list *, struct list_elem *)
Definition: list.c:202
struct list_elem * list_prev(struct list_elem *)
Definition: list.c:105
struct list_elem * list_rbegin(struct list *)
Definition: list.c:96
struct list_elem * list_next(struct list_elem *)
Definition: list.c:77
struct list_elem * list_tail(struct list *)
Definition: list.c:148
void list_push_front(struct list *, struct list_elem *)
Definition: list.c:195
void list_splice(struct list_elem *before, struct list_elem *first, struct list_elem *last)
Definition: list.c:171
struct list_elem * list_rend(struct list *)
Definition: list.c:124
void list_insert(struct list_elem *, struct list_elem *)
Definition: list.c:157
struct list_elem * list_remove(struct list_elem *)
Definition: list.c:241
bool list_empty(struct list *)
Definition: list.c:296
void list_unique(struct list *, struct list *duplicates, list_less_func *, void *aux)
Definition: list.c:438
struct list_elem * list_max(struct list *, list_less_func *, void *aux)
Definition: list.c:462
size_t list_size(struct list *)
Definition: list.c:285
struct list_elem * list_front(struct list *)
Definition: list.c:269
struct list_elem * list_end(struct list *)
Definition: list.c:88
struct list_elem * list_back(struct list *)
Definition: list.c:277
void list_reverse(struct list *)
Definition: list.c:310
struct list_elem * list_pop_back(struct list *)
Definition: list.c:260
struct list_elem * next
Definition: list.h:89
struct list_elem * prev
Definition: list.h:88
struct list_elem tail
Definition: list.h:95
struct list_elem head
Definition: list.h:94