container.h 623 B

1234567891011121314151617181920212223242526272829303132
  1. /* linklist.h */
  2. #if !defined(__LINKLIST_H)
  3. #define __LINKLIST_H
  4. struct linklist {
  5. void *data;
  6. struct linklist *next;
  7. struct linklist *prev;
  8. };
  9. struct LRU_list {
  10. struct LRU_list *prev;
  11. struct LRU_list *next;
  12. void *data;
  13. };
  14. struct list_iterator {
  15. struct linklist *linklist;
  16. struct linklist *current_pos;
  17. };
  18. struct linklist *linklist_init(void);
  19. void linklist_destroy(struct linklist *, void (*destructor) (void *));
  20. int linklist_insert(struct linklist *, void *);
  21. int linklist_delete(struct linklist *, void *);
  22. void linklist_delete_all(struct linklist *, void (*) (void *));
  23. #endif