X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=lib%2Fnotmuch.h;h=e4f399291689d3d533a2aab90fe79d97159e41b8;hp=c232c5805dd3e4f3a370b49a79d2452532754b4e;hb=7a215c2de81e95798ecadd982eecf05e647c3988;hpb=7e02b448e7684a0b5619ccc1d9144441b909b618 diff --git a/lib/notmuch.h b/lib/notmuch.h index c232c580..e4f39929 100644 --- a/lib/notmuch.h +++ b/lib/notmuch.h @@ -280,6 +280,16 @@ notmuch_message_t * notmuch_database_find_message (notmuch_database_t *database, const char *message_id); +/* Return a list of all tags found in the database. + * + * This function creates a list of all tags found in the database. The + * resulting list contains all tags from all messages found in the database. + * + * On error this function returns NULL. + */ +notmuch_tags_t * +notmuch_database_get_all_tags (notmuch_database_t *db); + /* Create a new query for 'database'. * * Here, 'database' should be an open database, (see @@ -625,6 +635,21 @@ notmuch_messages_advance (notmuch_messages_t *messages); void notmuch_messages_destroy (notmuch_messages_t *messages); +/* Return a list of tags from all messages. + * + * The resulting list is guaranteed not to contain duplicated tags. + * + * WARNING: You can no longer iterate over messages after calling this + * function, because the iterator will point at the end of the list. + * We do not have a function to reset the iterator yet and the only + * way how you can iterate over the list again is to recreate the + * message list. + * + * The function returns NULL on error. + */ +notmuch_tags_t * +notmuch_messages_collect_tags (notmuch_messages_t *messages); + /* Get the message ID of 'message'. * * The returned string belongs to 'message' and as such, should not be @@ -686,6 +711,7 @@ notmuch_message_get_filename (notmuch_message_t *message); /* Message flags */ typedef enum _notmuch_message_flag { + NOTMUCH_MSG_FLAG_MATCHING_SEARCH, } notmuch_message_flag_t; /* Get a value of a flag for the email corresponding to 'message'. */