Geary.ImapDb.SearchQuery: Use expression to generate FTS5 queries

Move SQL generation for FTS search from ImapDb.Account to SearchQuery.
Convert to use Geary.SearchQuery.Term instances to generate SQL, rather
than parsing the expression. Simplify the generated SQL substantially
and generate MATCH values that work with SQLite FTS5.
This commit is contained in:
Michael Gratton 2020-11-04 19:36:39 +11:00 committed by Michael James Gratton
parent e0396c322e
commit 6a614adf73
6 changed files with 482 additions and 909 deletions

View file

@ -53,6 +53,7 @@ test_engine_sources = [
'engine/imap-db/imap-db-database-test.vala',
'engine/imap-db/imap-db-email-identifier-test.vala',
'engine/imap-db/imap-db-folder-test.vala',
'engine/imap-db/imap-db-search-query-test.vala',
'engine/imap-engine/account-processor-test.vala',
'engine/imap-engine/imap-engine-generic-account-test.vala',
'engine/mime/mime-content-type-test.vala',