1#ifndef joedb_Writable_Database_Client_declared
2#define joedb_Writable_Database_Client_declared
12 class Writable_Database_Client_Data
15 Writable_Journal data_journal;
17 Multiplexer multiplexer;
20 Writable_Database_Client_Data(Buffered_File &file):
22 multiplexer{database, data_journal}
30 protected detail::Writable_Database_Client_Data,
38 data_journal.play_until_checkpoint(database);
48 Writable_Database_Client_Data(file),
Lock object that allows writing to a database managed by a joedb::Client.
Writable specialization of Client.
auto transaction(F transaction)
Writable_Database_Client_Lock(Writable_Database_Client &client)
Writable & get_writable()
const Readable & get_readable() const
auto transaction(F transaction)
void read_journal() override
const Database & get_database() const
Writable_Database_Client(Buffered_File &file, Connection &connection, Content_Check content_check=Content_Check::quick)
#define JOEDB_DEBUG_ASSERT(x)