Generic config parsing utilities
This commit is contained in:
@@ -40,6 +40,19 @@ public:
|
||||
parse_toml_string(const std::string &toml_content);
|
||||
|
||||
private:
|
||||
// Generic configuration parsing utilities
|
||||
template <typename T>
|
||||
static void parse_field(const auto §ion, const std::string &field_name,
|
||||
T &target);
|
||||
|
||||
template <typename Rep, typename Period>
|
||||
static void parse_duration_field(const auto §ion,
|
||||
const std::string &field_name,
|
||||
std::chrono::duration<Rep, Period> &target);
|
||||
|
||||
static void parse_section(const auto &toml_data,
|
||||
const std::string §ion_name, auto parse_func);
|
||||
|
||||
static void parse_server_config(const auto &toml_data, ServerConfig &config);
|
||||
static void parse_commit_config(const auto &toml_data, CommitConfig &config);
|
||||
static void parse_subscription_config(const auto &toml_data,
|
||||
|
||||
Reference in New Issue
Block a user