X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=notmuch.h;h=e93caaa6e39cf078a37af326ffea3d0186a00f60;hp=e7039ab188932f02c1d7c35c53d878341bf56825;hb=e58d85dd7589351955e220351bb68e777cfc0f88;hpb=edd37e68a96ada9187976dd0421b3f545fffbf78 diff --git a/notmuch.h b/notmuch.h index e7039ab1..e93caaa6 100644 --- a/notmuch.h +++ b/notmuch.h @@ -64,6 +64,9 @@ typedef int notmuch_bool_t; * NOTMUCH_STATUS_FILE_NOT_EMAIL: A file was presented that doesn't * appear to be an email message. * + * NOTMUCH_STATUS_DUPLICATE_MESSAGE_ID: A file contains a message ID + * that is identical to a message already in the database. + * * NOTMUCH_STATUS_NULL_POINTER: The user erroneously passed a NULL * pointer to a notmuch function. * @@ -78,6 +81,7 @@ typedef enum _notmuch_status { NOTMUCH_STATUS_XAPIAN_EXCEPTION, NOTMUCH_STATUS_FILE_ERROR, NOTMUCH_STATUS_FILE_NOT_EMAIL, + NOTMUCH_STATUS_DUPLICATE_MESSAGE_ID, NOTMUCH_STATUS_NULL_POINTER, NOTMUCH_STATUS_TAG_TOO_LONG, @@ -100,6 +104,19 @@ typedef struct _notmuch_message notmuch_message_t; typedef struct _notmuch_tags notmuch_tags_t; typedef struct _notmuch_thread_ids notmuch_thread_ids_t; +/* Lookup the default database path. + * + * This is the path that will be used by notmuch_database_create and + * notmuch_database_open if given a NULL path. Specifically it will be + * the value of the NOTMUCH_BASE environment variable if set, + * otherwise ${HOME}/mail + * + * Returns a newly allocated string which the caller should free() + * when finished with it. + */ +char * +notmuch_database_default_path (void); + /* Create a new, empty notmuch database located at 'path'. * * The path should be a top-level directory to a collection of @@ -155,19 +172,6 @@ notmuch_database_open (const char *path); void notmuch_database_close (notmuch_database_t *database); -/* Lookup the default database path. - * - * This is the path that will be used by notmuch_database_create and - * notmuch_database_open if given a NULL path. Specifically it will be - * the value of the NOTMUCH_BASE environment variable if set, - * otherwise ${HOME}/mail - * - * Returns a newly allocated string which the caller should free() - * when finished with it. - */ -char * -notmuch_database_default_path (void); - /* Return the database path of the given database. * * The return value is a string owned by notmuch so should not be @@ -239,6 +243,10 @@ notmuch_database_get_timestamp (notmuch_database_t *database, * * NOTMUCH_STATUS_SUCCESS: Message successfully added to database. * + * NOTMUCH_STATUS_DUPLICATE_MESSAGE_ID: Message has the same message + * ID as another message already in the database. Nothing added + * to the database. + * * NOTMUCH_STATUS_FILE_ERROR: an error occurred trying to open the * file, (such as permission denied, or file not found, * etc.). Nothing added to the database. @@ -400,10 +408,13 @@ notmuch_results_destroy (notmuch_results_t *results); const char * notmuch_message_get_message_id (notmuch_message_t *message); -/* Get this filename for the email corresponding to 'message'. +/* Get the filename for the email corresponding to 'message'. * * The returned filename is relative to the base of the database from - * which 'message' was obtained. See notmuch_database_get_path() .*/ + * which 'message' was obtained. See notmuch_database_get_path() . + * The returned string belongs to the message so should not be + * modified or freed by the caller (nor should it be referenced after + * the message is destroyed). */ const char * notmuch_message_get_filename (notmuch_message_t *message);