mu-server: implement temp-file optimization

It can be faster to feed big mu -> mu4e data, such as contacts are
message headers through a temp-file instead directly though stdout;
implement this, and add the server parameter --allow-temp-file.

Implement this the "contacts" and "find" commands.
This commit is contained in:
Dirk-Jan C. Binnema
2023-07-31 18:58:14 +03:00
parent 0ace413f80
commit 924bb2145e
6 changed files with 102 additions and 24 deletions

View File

@ -50,13 +50,17 @@ public:
*/
using Output = std::function<void(const Sexp& sexp, OutputFlags flags)>;
struct Options {
bool allow_temp_file; /**< temp file optimization allowed? */
};
/**
* Construct a new server
*
* @param store a message store object
* @param output callable for the server responses.
*/
Server(Store& store, Output output);
Server(Store& store, const Options& opts, Output output);
/**
* DTOR