llist.h 881 B

1234567891011121314151617181920212223242526
  1. /** BEGIN COPYRIGHT BLOCK
  2. * Copyright (C) 2001 Sun Microsystems, Inc. Used by permission.
  3. * Copyright (C) 2005 Red Hat, Inc.
  4. * All rights reserved.
  5. * END COPYRIGHT BLOCK **/
  6. /* llist.h - single link list interface */
  7. #ifndef LLIST_H
  8. #define LLIST_H
  9. typedef struct llist LList;
  10. LList* llistNew ();
  11. void llistDestroy (LList **list, FNFree fnFree);
  12. void* llistGetFirst(LList *list, void **iterator);
  13. void* llistGetNext (LList *list, void **iterator);
  14. void* llistRemoveCurrentAndGetNext (LList *list, void **iterator);
  15. void* llistGetHead (LList *list);
  16. void* llistGetTail (LList *list);
  17. void* llistGet (LList *list, const char* key);
  18. int llistInsertHead (LList *list, const char *key, void *data);
  19. int llistInsertTail (LList *list, const char *key, void *data);
  20. void* llistRemoveHead (LList *list);
  21. void* llistRemove (LList *list, const char *key);
  22. #endif