47 VILLA *db = vlopen(path, VL_OWRITER | (create ? VL_OCREAT : 0), VL_CMPLEX);
64 void *rv = vlget(db, key, klen, &sp);
81 void *value,
size_t vlen)
90 bool success = vlput(db, key, klen, value, vlen, VL_DOVER);
91 return success ? 0 : dpecode ? dpecode : -1;
106 bool success = vlout(db, key, klen);
107 return success ? 0 : dpecode ? dpecode : -1;
129 return "qdbm " _QDBM_VERSION;
static void store_qdbm_close(StoreHandle **ptr)
Close a Store connection - Implements StoreOps::close() -.
static int store_qdbm_delete_record(StoreHandle *store, const char *key, size_t klen)
Delete a record from the Store - Implements StoreOps::delete_record() -.
static void * store_qdbm_fetch(StoreHandle *store, const char *key, size_t klen, size_t *vlen)
Fetch a Value from the Store - Implements StoreOps::fetch() -.
static void store_qdbm_free(StoreHandle *store, void **ptr)
Free a Value returned by fetch() - Implements StoreOps::free() -.
static StoreHandle * store_qdbm_open(const char *path, bool create)
Open a connection to a Store - Implements StoreOps::open() -.
static int store_qdbm_store(StoreHandle *store, const char *key, size_t klen, void *value, size_t vlen)
Write a Value to the Store - Implements StoreOps::store() -.
static const char * store_qdbm_version(void)
Get a Store version string - Implements StoreOps::version() -.
Convenience wrapper for the library headers.
void StoreHandle
Opaque type for store backend.
#define STORE_BACKEND_OPS(_name)