return ret;
}
+#if 0
/*
* There are reports of skiplist_append() being buggy.
* Use at own risk
skiplist_remove_all(sl2, NULL);
return sl1;
}
+#endif
int skiplist_remove(Skiplist *sl, void *data, FreeFunc myfree)
{
skiplistnode *skiplist_insert(Skiplist* sl, void *data);
-skiplistnode *skiplist_append(Skiplist *sl, void *data);
-
int skiplist_remove_compare(Skiplist *sl, void *data,
FreeFunc myfree, SkiplistComparator comp);
void *skiplist_peek(Skiplist *a);
+/* Below 2 are buggy */
+#if 0
Skiplist *skiplist_concat(Skiplist *sl1, Skiplist *sl2);
+skiplistnode *skiplist_append(Skiplist *sl, void *data);
+#endif
Skiplist *skiplist_merge(Skiplist *sl1, Skiplist *sl2);