mtbl_iter - iterate over a sequence of key-value pairs
#include <mtbl.h>
mtbl_res
mtbl_iter_next(struct mtbl_iter *it,
const uint8_t **key, size_t *len_key,
const uint8_t **val, size_t *len_val);
void
mtbl_iter_destroy(struct mtbl_iter **it);
mtbl_res
mtbl_iter_seek(struct mtbl_iter *it,
const uint8_t *key, size_t len_key);
The mtbl_iter interface is used to return a sequence of one or more
key-value pairs. Once the caller obtains an mtbl_iter object,
mtbl_iter_next() should be repeatedly called on it until there are no
more key-value entries to retrieve, at which point the iterator object must be
freed by calling mtbl_iter_destroy(). mtbl_iter_seek() can be
called on the iterator to seek to a different location in the index without
having to destroy the iterator and create a new one.
mtbl_iter_next() returns mtbl_res_success if a key-value entry was
successfully retrieved, in which case key and val will point to
buffers of length len_key and len_val respectively. The value
mtbl_res_failure is returned if there are no more entries to read, or
if the it argument is NULL.