critbit0_allprefixed(3)

critbit0_allprefixed3

Search a critbit tree by prefix

Usage

#include <libowfat/critbit.h>

critbit0_tree cb = { 0 };

int critbit0_allprefixed(critbit0_tree* cb,const char* prefix,
int (*handle)(const char*,void*),void* arg);

Overview

critbit0_allprefixed calls the handle function on all members of cb that start with prefix. It passes arg as second argument to handle.

If handle returns 0, the search stops and critbit0_allprefixed returns 0.

If handle returns 1, the search continues and critbit0_allprefixed returns 1 if all keys with the given prefix were handled.

If handle returns something else, the search stops and critbit0_allprefixed returns -1.

Note

This function uses recursion to traverse the tree. It may require nontrivial amounts of available stack space.

Return value

1 if all keys were found and handled (or if there were no keys with that prefix).

0 if at least one key was found, handle was called and returned 0.

-1 if at least one key was found, handle was called and returned something other than 0 or 1.

Releases

5 releases since Debian 9 (Stretch); the text changed 1 time.

  1. 9–11
  2. 12–13

From libowfat-dev 0.32-5 in Debian 13 (Trixie). Parsed by carta from the page's man source.