1#ifndef joedb_File_Connection_Builder_declared
2#define joedb_File_Connection_Builder_declared
17 std::optional<Readonly_Journal> readonly_journal;
18 std::optional<Writable_Journal> writable_journal;
19 std::unique_ptr<Connection> connection;
22 const char *
get_name() const final {
return "file";}
34 const char *
const *
const argv,
39 std::ostream null_stream(
nullptr);
40 file_parser.
parse(null_stream, argc, argv, arg_index);
44 readonly_journal.emplace(*file_parser.
get_file());
49 writable_journal.emplace(*file_parser.
get_file());
bool is_readonly() const noexcept
const char * get_name() const final
int get_min_parameters() const final
const char * get_parameters_description() const final
int get_max_parameters() const final
Connection & build(const int argc, const char *const *const argv, Buffered_File *file) final
Create an instance of a Buffered_File by parsing command-line arguments.
Buffered_File * get_file() const
Buffered_File * parse(std::ostream &out, int argc, const char *const *argv, int &arg_index)