diff options
Diffstat (limited to 'filter/tree.c')
-rw-r--r-- | filter/tree.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/filter/tree.c b/filter/tree.c index 2bbc84bb..5da86b9d 100644 --- a/filter/tree.c +++ b/filter/tree.c @@ -170,3 +170,14 @@ tree_format(const struct f_tree *t, buffer *buf) buffer_puts(buf, "]"); } + +void +tree_walk(const struct f_tree *t, void (*hook)(const struct f_tree *, void *), void *data) +{ + if (!t) + return; + + tree_walk(t->left, hook, data); + hook(t, data); + tree_walk(t->right, hook, data); +} |