Function notmuch_sys::notmuch_query_set_omit_excluded [] [src]

pub unsafe extern "C" fn notmuch_query_set_omit_excluded(
    query: *mut notmuch_query_t,
    omit_excluded: notmuch_exclude_t
)

Specify whether to omit excluded results or simply flag them. By default, this is set to TRUE.

If set to TRUE or ALL, notmuch_query_search_messages will omit excluded messages from the results, and notmuch_query_search_threads will omit threads that match only in excluded messages. If set to TRUE, notmuch_query_search_threads will include all messages in threads that match in at least one non-excluded message. Otherwise, if set to ALL, notmuch_query_search_threads will omit excluded messages from all threads.

If set to FALSE or FLAG then both notmuch_query_search_messages and notmuch_query_search_threads will return all matching messages/threads regardless of exclude status. If set to FLAG then the exclude flag will be set for any excluded message that is returned by notmuch_query_search_messages, and the thread counts for threads returned by notmuch_query_search_threads will be the number of non-excluded messages/matches. Otherwise, if set to FALSE, then the exclude status is completely ignored.

The performance difference when calling notmuch_query_search_messages should be relatively small (and both should be very fast). However, in some cases, notmuch_query_search_threads is very much faster when omitting excluded messages as it does not need to construct the threads that only match in excluded messages.