mupdf
Loading...
Searching...
No Matches
tree.h File Reference
Include dependency graph for tree.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

typedef struct fz_tree fz_tree

Functions

void * fz_tree_lookup (fz_context *ctx, fz_tree *node, const char *key)
fz_treefz_tree_insert (fz_context *ctx, fz_tree *root, const char *key, void *value)
void fz_drop_tree (fz_context *ctx, fz_tree *node, void(*dropfunc)(fz_context *ctx, void *value))

Typedef Documentation

◆ fz_tree

typedef struct fz_tree fz_tree

AA-tree to look up things by strings.

Function Documentation

◆ fz_drop_tree()

void fz_drop_tree ( fz_context * ctx,
fz_tree * node,
void(* dropfunc )(fz_context *ctx, void *value) )

Drop the tree.

The storage used by the tree is freed, and each value has dropfunc called on it.

◆ fz_tree_insert()

fz_tree * fz_tree_insert ( fz_context * ctx,
fz_tree * root,
const char * key,
void * value )

Insert a new key/value pair and rebalance the tree. Return the new root of the tree after inserting and rebalancing. May be called with a NULL root to create a new tree.

No data is copied into the tree structure; key and value are merely kept as pointers.

◆ fz_tree_lookup()

void * fz_tree_lookup ( fz_context * ctx,
fz_tree * node,
const char * key )

Look for the value of a node in the tree with the given key.

Simple pointer equivalence is used for key.

Returns NULL for no match.