20 lines
356 B
C
20 lines
356 B
C
#ifndef LIST_H
|
|
#define LIST_H
|
|
|
|
typedef void (*acceptor)(void*);
|
|
|
|
struct list
|
|
{
|
|
void *data;
|
|
struct list *next;
|
|
acceptor print;
|
|
acceptor free;
|
|
};
|
|
|
|
void push_front(struct list **l, void *data, acceptor p, acceptor f);
|
|
void pop_front(struct list **l);
|
|
void print_list(struct list *l);
|
|
void destroy_list(struct list **l);
|
|
|
|
#endif /* ! LIST_H */
|