X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=bindings%2Fpython%2Fnotmuch%2Fquery.py;h=14c00cd53cd64f802f6bfe39b536649e544a99cc;hp=d4a93d5b6bf237299e906cc699d7d92a2fbe9c7f;hb=ff8f864245c3ac54cc23aa47af09c95cde484abb;hpb=4315ac015a1ba329880031805f4706731b3c1ef4 diff --git a/bindings/python/notmuch/query.py b/bindings/python/notmuch/query.py index d4a93d5b..14c00cd5 100644 --- a/bindings/python/notmuch/query.py +++ b/bindings/python/notmuch/query.py @@ -182,6 +182,25 @@ class Query(object): self._assert_query_is_initialized() return Query._count_messages(self._query) + _count_threads = nmlib.notmuch_query_count_threads + _count_threads.argtypes = [NotmuchQueryP] + _count_threads.restype = c_uint + + def count_threads(self): + ''' + This function performs a search and returns the number of + unique thread IDs in the matching messages. This is the same + as number of threads matching a search. + + Note that this is a significantly heavier operation than + meth:`Query.count_messages`. + + :returns: the number of threads returned by this query + :rtype: int + ''' + self._assert_query_is_initialized() + return Query._count_threads(self._query) + _destroy = nmlib.notmuch_query_destroy _destroy.argtypes = [NotmuchQueryP] _destroy.restype = None