blob: ab4148d3ad2c249a9f98e4b9c4582a69dfbabe5a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
#ifndef LIB_LL_H
#define LIB_LL_H
struct LL {
struct LL* prev;
struct LL* next;
void* data;
};
struct LL* new_ll(void* val);
void push_ll(struct LL* l, void* val);
void remove_ll(struct LL* l, unsigned long idx);
#define show_ll(L, TYPE) { \
struct LL* t = L; \
do { \
uart_hex(*(TYPE*)t->data); \
t = t->next; \
if (t != l) \
uart_char(' '); \
} while (t != l); \
}
#endif
|