36#define STORE_BACKEND(name) extern const struct StoreOps store_##name##_ops;
52 &store_tokyocabinet_ops,
55 &store_kyotocabinet_ops,
86 char tmp[256] = { 0 };
90 for (; *store_ops; store_ops++)
94 len += snprintf(tmp + len,
sizeof(tmp) - len,
", ");
96 len += snprintf(tmp + len,
sizeof(tmp) - len,
"%s", (*store_ops)->name);
111 if (!str || (*str ==
'\0'))
116 for (; *store_ops; store_ops++)
Convenience wrapper for the library headers.
char * mutt_str_dup(const char *str)
Copy a string, safely.
bool mutt_str_equal(const char *a, const char *b)
Compare two strings.
static const struct StoreOps * StoreOps[]
Backend implementations.
bool store_is_valid_backend(const char *str)
Is the string a valid Store backend.
#define STORE_BACKEND(name)
const struct StoreOps * store_get_backend_ops(const char *str)
Get the API functions for an store backend.
const char * store_backend_list(void)
Get a list of backend names.