X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=lib%2Fnotmuch.h;h=6d22d328ce1b57f1b04ee445aaa2e44d9efb54e6;hb=55f5e87096fda96280ccc4b191393c7e59b4df57;hp=7aeff56743b2e392012d5c4b58dad0f9bad3cce9;hpb=fd6f8e6c30e0443d1ead248047ab572120df85e9;p=notmuch diff --git a/lib/notmuch.h b/lib/notmuch.h index 7aeff567..6d22d328 100644 --- a/lib/notmuch.h +++ b/lib/notmuch.h @@ -208,6 +208,14 @@ typedef enum _notmuch_status { * something that notmuch doesn't know how to handle. */ NOTMUCH_STATUS_UNKNOWN_CRYPTO_PROTOCOL, + /** + * Unable to load a config file + */ + NOTMUCH_STATUS_NO_CONFIG, + /** + * Database exists, so not (re)-created + */ + NOTMUCH_STATUS_DATABASE_EXISTS, /** * Not an actual status value. Just a way to find out how many * valid status values there are. @@ -497,6 +505,18 @@ notmuch_database_compact (const char *path, notmuch_compact_status_cb_t status_cb, void *closure); +/** + * Like notmuch_database_compact, but take an open database as a + * parameter. + * + * @since libnnotmuch 5.4 (notmuch 0.32) + */ +notmuch_status_t +notmuch_database_compact_db (notmuch_database_t *database, + const char *backup_path, + notmuch_compact_status_cb_t status_cb, + void *closure); + /** * Destroy the notmuch database, closing it if necessary and freeing * all associated resources. @@ -2415,6 +2435,7 @@ typedef enum _notmuch_config_key { NOTMUCH_CONFIG_DATABASE_PATH = NOTMUCH_CONFIG_FIRST, NOTMUCH_CONFIG_EXCLUDE_TAGS, NOTMUCH_CONFIG_NEW_TAGS, + NOTMUCH_CONFIG_NEW_IGNORE, NOTMUCH_CONFIG_SYNC_MAILDIR_FLAGS, NOTMUCH_CONFIG_PRIMARY_EMAIL, NOTMUCH_CONFIG_OTHER_EMAIL, @@ -2509,6 +2530,18 @@ notmuch_config_values_get (notmuch_config_values_t *values); void notmuch_config_values_move_to_next (notmuch_config_values_t *values); + +/** + * reset the 'values' iterator to the first element + * + * @param[in,out] values iterator. A NULL value is ignored. + * + * @since libnotmuch 5.4 (notmuch 0.32) + * + */ +void +notmuch_config_values_start (notmuch_config_values_t *values); + /** * Destroy a config values iterator, along with any associated * resources. @@ -2520,6 +2553,25 @@ notmuch_config_values_move_to_next (notmuch_config_values_t *values); void notmuch_config_values_destroy (notmuch_config_values_t *values); +/** + * get a configuration value from an open database as Boolean + * + * This value reflects all configuration information given at the time + * the database was opened. + * + * @param[in] notmuch database + * @param[in] key configuration key + * @param[out] val configuration value, converted to Boolean + * + * @since libnotmuch 5.4 (notmuch 0.32) + * + * @retval #NOTMUCH_STATUS_ILLEGAL_ARGUMENT if either key is unknown + * or the corresponding value does not convert to Boolean. + */ +notmuch_status_t +notmuch_config_get_bool (notmuch_database_t *notmuch, + notmuch_config_key_t key, + notmuch_bool_t *val); /** * get the current default indexing options for a given database. *