X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;f=lib%2Fnotmuch-private.h;h=3721431e02e005e697d7e3e15f11a48a6a2edc44;hb=9b60dc3cd9224eddfe9bc5cf74eeaa5f0d599d04;hp=f52b4e4776f956d1854c594574657d84a1d0094a;hpb=7f57b747b95eece465d10fd0acba20cc3dd868f1;p=notmuch diff --git a/lib/notmuch-private.h b/lib/notmuch-private.h index f52b4e47..3721431e 100644 --- a/lib/notmuch-private.h +++ b/lib/notmuch-private.h @@ -13,7 +13,7 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program. If not, see http://www.gnu.org/licenses/ . + * along with this program. If not, see https://www.gnu.org/licenses/ . * * Author: Carl Worth */ @@ -50,6 +50,7 @@ NOTMUCH_BEGIN_DECLS #include "xutil.h" #include "error_util.h" +#include "string-util.h" #pragma GCC visibility push(hidden) @@ -157,8 +158,8 @@ typedef enum _notmuch_private_status { ((private_status >= (notmuch_private_status_t) NOTMUCH_STATUS_LAST_STATUS)\ ? \ _internal_error (format " (%s).\n", \ - ##__VA_ARGS__, \ - __location__), \ + ##__VA_ARGS__, \ + __location__), \ (notmuch_status_t) NOTMUCH_PRIVATE_STATUS_SUCCESS \ : \ (notmuch_status_t) private_status) @@ -278,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, @@ -470,11 +477,22 @@ _notmuch_mset_messages_move_to_next (notmuch_messages_t *messages); notmuch_bool_t _notmuch_doc_id_set_contains (notmuch_doc_id_set_t *doc_ids, - unsigned int doc_id); + unsigned int doc_id); void _notmuch_doc_id_set_remove (notmuch_doc_id_set_t *doc_ids, - unsigned int doc_id); + 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 */