summaryrefslogtreecommitdiff
path: root/testtern.c
diff options
context:
space:
mode:
authorMike Pavone <pavone@retrodev.com>2013-07-09 20:51:42 -0700
committerMike Pavone <pavone@retrodev.com>2013-07-09 20:51:42 -0700
commit5d758f6938dc3c73e2c858255748f781aac17010 (patch)
treedfb49f8495254b4b72607c14d5b4fad98b7ec9c2 /testtern.c
parentecaea87e95c90f4534351cc0121ab8c176d55d78 (diff)
Added ternary tree implementation and a simple test program for it
Diffstat (limited to 'testtern.c')
-rw-r--r--testtern.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/testtern.c b/testtern.c
new file mode 100644
index 0000000..6898371
--- /dev/null
+++ b/testtern.c
@@ -0,0 +1,21 @@
+#include "tern.h"
+#include <stdio.h>
+#include <stddef.h>
+
+int main(int argc, char ** argv)
+{
+ tern_node * tree = tern_insert_ptr(NULL, "foo", "bar");
+ tree = tern_insert_ptr(tree, "foobar", "baz");
+ tree = tern_insert_ptr(tree, "goobar", "qux");
+ tree = tern_insert_int(tree, "foobarbaz", 42);
+ tree = tern_insert_int(tree, "goobarbaz", 21);
+ printf("foo: %s\n", (char *)tern_find_ptr(tree, "foo"));
+ printf("foobar: %s\n", (char *)tern_find_ptr(tree, "foobar"));
+ printf("goobar: %s\n", (char *)tern_find_ptr(tree, "goobar"));
+ printf("foob: %s\n", (char *)tern_find_ptr(tree, "foob"));
+ printf("foobarbaz: %d\n", (int)tern_find_int(tree, "foobarbaz", 0));
+ printf("goobarbaz: %d\n", (int)tern_find_int(tree, "goobarbaz", 0));
+ printf("foobarb: %d\n", (int)tern_find_int(tree, "foobarb", 0));
+ return 0;
+}
+