66 void init() { h = NULL; t = NULL; };
67 void clear_and_free(
void (*item_free)(
EST_UItem *item));
70 EST_UList() { init(); };
71 ~ EST_UList() { clear_and_free(NULL); }
83 void exchange(
int i,
int j);
91 {
return (h == NULL) ? 1 : 0;};
93 { clear_and_free(NULL); };
104 static bool operator_eq(
const EST_UList &a,
108 static int index(
const EST_UList &l,
112 static void sort(EST_UList &a,
114 static void qsort(EST_UList &a,
117 static void sort_unique(EST_UList &l,
121 static void merge_sort_unique(EST_UList &l, EST_UList &m,