X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=lib%2Fnotmuch-private.h;h=92807975bb94562faefc949c19c080b9ad76618e;hp=dc58a2fd9cfaa94b3fecce214ee77a17f92af260;hb=9eebae3da4510a671cbbb2f476c2dc04099b4415;hpb=9b73a8bcc9cb381fc1a15013f4baa3ec9fdb97a7 diff --git a/lib/notmuch-private.h b/lib/notmuch-private.h index dc58a2fd..92807975 100644 --- a/lib/notmuch-private.h +++ b/lib/notmuch-private.h @@ -50,6 +50,7 @@ NOTMUCH_BEGIN_DECLS #include "xutil.h" #include "error_util.h" +#include "string-util.h" #pragma GCC visibility push(hidden) @@ -107,7 +108,8 @@ typedef enum { NOTMUCH_VALUE_TIMESTAMP = 0, NOTMUCH_VALUE_MESSAGE_ID, NOTMUCH_VALUE_FROM, - NOTMUCH_VALUE_SUBJECT + NOTMUCH_VALUE_SUBJECT, + NOTMUCH_VALUE_LAST_MOD, } notmuch_value_t; /* Xapian (with flint backend) complains if we provide a term longer @@ -194,6 +196,9 @@ void _notmuch_database_log (notmuch_database_t *notmuch, const char *format, ...); +unsigned long +_notmuch_database_new_revision (notmuch_database_t *notmuch); + const char * _notmuch_database_relative_path (notmuch_database_t *notmuch, const char *path); @@ -274,6 +279,12 @@ _notmuch_message_remove_term (notmuch_message_t *message, const char *prefix_name, const char *value); +notmuch_private_status_t +_notmuch_message_has_term (notmuch_message_t *message, + const char *prefix_name, + const char *value, + notmuch_bool_t *result); + notmuch_private_status_t _notmuch_message_gen_terms (notmuch_message_t *message, const char *prefix_name, @@ -305,6 +316,10 @@ _notmuch_message_set_header_values (notmuch_message_t *message, const char *date, const char *from, const char *subject); + +void +_notmuch_message_upgrade_last_mod (notmuch_message_t *message); + void _notmuch_message_sync (notmuch_message_t *message); @@ -358,11 +373,12 @@ typedef struct _notmuch_message_file notmuch_message_file_t; * Returns NULL if any error occurs. */ notmuch_message_file_t * -_notmuch_message_file_open (const char *filename); +_notmuch_message_file_open (notmuch_database_t *notmuch, const char *filename); /* Like notmuch_message_file_open but with 'ctx' as the talloc owner. */ notmuch_message_file_t * -_notmuch_message_file_open_ctx (void *ctx, const char *filename); +_notmuch_message_file_open_ctx (notmuch_database_t *notmuch, + void *ctx, const char *filename); /* Close a notmuch message previously opened with notmuch_message_open. */ void @@ -467,6 +483,17 @@ void _notmuch_doc_id_set_remove (notmuch_doc_id_set_t *doc_ids, unsigned int doc_id); +/* querying xapian documents by type (e.g. "mail" or "ghost"): */ +notmuch_status_t +_notmuch_query_search_documents (notmuch_query_t *query, + const char *type, + notmuch_messages_t **out); + +notmuch_status_t +_notmuch_query_count_documents (notmuch_query_t *query, + const char *type, + unsigned *count_out); + /* message.cc */ void