43 int (*
compare)(
const void *key1,
const void *key2,
void *user);
55CLOD_API CLOD_NONNULL(1)
62CLOD_API CLOD_NONNULL(1)
77CLOD_API CLOD_NONNULL(1, 2, 3)
78bool clod_tree_add(const struct
clod_tree *tree, const
void *key, const
void *val,
void *key_out,
void *val_out);
89CLOD_API CLOD_NONNULL(1, 2)
101CLOD_API CLOD_NONNULL(1, 2)
124CLOD_API CLOD_NONNULL(1, 2, 3)
134CLOD_API CLOD_NONNULL(1, 2)
144CLOD_API CLOD_NONNULL(1, 2)
Memory allocation methods.
int(* compare)(const void *key1, const void *key2, void *user)
Comparison function.
unsigned char val_size
Size of values in the tree.
unsigned short node_size
Size of each node in the tree.
void * compare_user
User variable passed to invocations of compare.
bool disable_checksum
Disables the checksum used to validate each node.
unsigned char key_size
Size of keys in the tree.
struct clod_tree_node * root
Pointer to the root node.
bool clod_tree_find(struct clod_tree *tree, struct clod_tree_location *location, const void *key)
bool clod_tree_create(struct clod_tree *tree)
bool clod_tree_del(const struct clod_tree *tree, const void *key, void *key_out, void *val_out)
void clod_tree_destroy(struct clod_tree *tree)
bool clod_tree_prev(struct clod_tree *tree, struct clod_tree_location *location)
bool clod_tree_next(struct clod_tree *tree, struct clod_tree_location *location)
bool clod_tree_get(const struct clod_tree *tree, const void *key, void *key_out, void *val_out)
bool clod_tree_add(const struct clod_tree *tree, const void *key, const void *val, void *key_out, void *val_out)