query: Rework querying/threading machinery

Rewrite the query machinery in c++:
- use an MSet decorator instead of the mu-msg-iter stuff
- use mu-query-decider to mark duplicates/unreadable/related messages
- use mu-query-threader to replace the older container/thread code

Algorithm did not substantially change, but the implementation details
did.
This commit is contained in:
Dirk-Jan C. Binnema
2020-11-28 10:11:07 +02:00
parent 86e1515c71
commit 95dffb98a6
18 changed files with 2008 additions and 2464 deletions

View File

@ -170,10 +170,10 @@ TEST_PROGS+=test-mu-tokenizer
test_mu_tokenizer_SOURCES=test-tokenizer.cc
test_mu_tokenizer_LDADD=libtestmucommon.la
# TEST_PROGS+=test-mu-threader
# test_mu_threader_SOURCES=mu-query-threader.cc
# test_mu_threader_LDADD=libtestmucommon.la
# test_mu_threader_CXXFLAGS=$(AM_CXXFLAGS) -DBUILD_THREADER_TEST
TEST_PROGS+=test-mu-threader
test_mu_threader_SOURCES=mu-query-threader.cc
test_mu_threader_LDADD=libtestmucommon.la
test_mu_threader_CXXFLAGS=$(AM_CXXFLAGS) -DBUILD_THREADER_TEST
TEST_PROGS+=test-mu-parser
test_mu_parser_SOURCES=test-parser.cc