From c36c7fedf969fa49e832c7d2739ea4d1ad1108f2 Mon Sep 17 00:00:00 2001 From: Jonas Gunz Date: Mon, 16 Mar 2020 16:59:36 +0100 Subject: updated tree to be generic --- src/tree.h | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/tree.h') diff --git a/src/tree.h b/src/tree.h index 958b5ed..38b4b38 100644 --- a/src/tree.h +++ b/src/tree.h @@ -9,6 +9,11 @@ #include #include +#include + +#define _TREE_FREE_DATA 0x01 +#define _TREE_FREE_KEY 0x02 + struct tree_node { char* key; void* data; @@ -20,9 +25,12 @@ int tree_insert ( struct tree_node** _root, char* _key, void* _data ); int tree_balance( struct tree_node** _root ); +/** + * Returns (void*)node->data on success, NULL on failure + * */ void* tree_get ( struct tree_node** _root, char* _query ); -int tree_destroy( struct tree_node** _root ); +int tree_destroy( struct tree_node** _root, uint8_t _options ); /** * ignore-case alphabetical string compare -- cgit v1.2.3