1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
#ifndef ELIST_H
#define ELIST_H
/* $Header: /home/ksheff/src/e2tools/RCS/elist.h,v 0.3 2002/06/05 22:04:13 ksheff Exp $ */
/* Copyright 2002 Keith W. Sheffield */
/*
* $Log: elist.h,v $
* Revision 0.3 2002/06/05 22:04:13 ksheff
* Added elist_delete.
*
* Revision 0.2 2002/06/03 21:02:39 ksheff
* Added elist_sort() definition.
*
* Revision 0.1 2002/03/07 07:24:50 ksheff
* initial revision
*
*/
typedef struct _elist_t
{
struct _elist_t *prev;
struct _elist_t *next;
void *data;
} elist_t;
#ifndef ELIST_C
extern elist_t * elist_new();
extern elist_t *elist_delete(elist_t *l, void (*data_free)(void *));
extern void elist_free(elist_t *l, void (*data_free)(void *));
extern elist_t * elist_append(elist_t *l, void *data);
extern elist_t * elist_insert(elist_t *l, void *data);
extern void
elist_sort(elist_t *l, int (sort_func)(void *, void *), int reverse);
#endif
#endif
|