X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;ds=sidebyside;f=lib%2Fnotmuch-private.h;h=34f7ac7c588f74eb80482bd91f7ff773cb1b90b6;hb=67ae2377a9ec2da296a2e012352f962664a4d1a8;hp=3886e0ca0c86475e242ca6a7adf61b6b91c2d74e;hpb=de0557477d908be26615e8fda9f5eb62bed68b65;p=notmuch diff --git a/lib/notmuch-private.h b/lib/notmuch-private.h index 3886e0ca..34f7ac7c 100644 --- a/lib/notmuch-private.h +++ b/lib/notmuch-private.h @@ -146,6 +146,13 @@ typedef enum _notmuch_private_status { : \ (notmuch_status_t) private_status) +/* Flags shared by various lookup functions. */ +typedef enum _notmuch_find_flags { + /* If set, create the necessary document (or documents) if they + * are missing. Requires a read/write database. */ + NOTMUCH_FIND_CREATE = 1<<0, +} notmuch_find_flags_t; + typedef struct _notmuch_doc_id_set notmuch_doc_id_set_t; typedef struct _notmuch_string_list notmuch_string_list_t; @@ -188,6 +195,7 @@ _notmuch_database_find_unique_doc_id (notmuch_database_t *notmuch, notmuch_status_t _notmuch_database_find_directory_id (notmuch_database_t *database, const char *path, + notmuch_find_flags_t flags, unsigned int *directory_id); const char * @@ -199,6 +207,7 @@ notmuch_status_t _notmuch_database_filename_to_direntry (void *ctx, notmuch_database_t *notmuch, const char *filename, + notmuch_find_flags_t flags, char **direntry); /* directory.cc */ @@ -206,6 +215,7 @@ _notmuch_database_filename_to_direntry (void *ctx, notmuch_directory_t * _notmuch_directory_create (notmuch_database_t *notmuch, const char *path, + notmuch_find_flags_t flags, notmuch_status_t *status_ret); unsigned int