Man page - mtbl_source(3)

Packages contains this manual

Manual

MTBL_SOURCE

NAME
SYNOPSIS
DESCRIPTION
RETURN VALUE
SEE ALSO

NAME

mtbl_source - obtain key-value entries from a data source

SYNOPSIS

#include <mtbl.h>

struct mtbl_iter *
mtbl_source_iter(const struct mtbl_source *
s );

struct mtbl_iter *
mtbl_source_get(const struct mtbl_source *
s , const uint8_t * key , size_t len_key );

struct mtbl_iter *
mtbl_source_get_prefix(
const struct mtbl_source *
s ,
const uint8_t *
prefix , size_t len_prefix );

struct mtbl_iter *
mtbl_source_get_range(
const struct mtbl_source *
s ,
const uint8_t *
key0 , size_t len_key0 ,
const uint8_t *
key1 , size_t len_key1 );

mtbl_res
mtbl_source_write(const struct mtbl_source *
s , struct mtbl_writer * w );

void
mtbl_source_destroy(struct mtbl_source **
s );

DESCRIPTION

The mtbl_source interface provides an abstraction for reading key-value entries from mtbl data sources.

mtbl_source_iter () provides an iterator over all of the entries in the data source.

mtbl_source_get () provides an exact match iterator which returns all entries whose key matches the key provided in the arguments key and len_key .

mtbl_source_get_prefix () provides a prefix iterator which returns all entries whose keys start with prefix and are at least len_prefix bytes long.

mtbl_source_get_range () provides a range iterator which returns all entries whose keys are between key0 and key1 inclusive.

mtbl_source_write () is a convenience function for reading all of the entries from a source and writing them to an mtbl_writer object. It is equivalent to calling mtbl_writer_add () on all of the entries returned from mtbl_source_iter ().

RETURN VALUE

mtbl_source_iter (), mtbl_source_get (), mtbl_source_get_prefix (), and mtbl_source_get_range () return mtbl_iter objects.

mtbl_source_write () returns mtbl_res_success if all of the entries in the data source were successfully written to the mtbl_writer argument, and mtbl_res_failure otherwise.

SEE ALSO

mtbl_iter (3)