summaryrefslogtreecommitdiff
path: root/src/libdatastruct/avltree_init.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libdatastruct/avltree_init.c')
-rw-r--r--src/libdatastruct/avltree_init.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/libdatastruct/avltree_init.c b/src/libdatastruct/avltree_init.c
new file mode 100644
index 0000000..290ff64
--- /dev/null
+++ b/src/libdatastruct/avltree_init.c
@@ -0,0 +1,16 @@
+/* ISC license. */
+
+#include <errno.h>
+#include <skalibs/functypes.h>
+#include <skalibs/gensetdyn.h>
+#include <skalibs/avlnode.h>
+#include <skalibs/avltree.h>
+
+void avltree_init (avltree_ref t, unsigned int base, unsigned int fracnum, unsigned int fracden, dtokfunc_t_ref dtok, cmpfunc_t_ref f, void *p)
+{
+ gensetdyn_init(&t->x, sizeof(avlnode), base, fracnum, fracden) ;
+ t->root = (unsigned int)-1 ;
+ t->dtok = dtok ;
+ t->kcmp = f ;
+ t->external = p ;
+}