78template<
typename Value_set>
171 bool apply(
const fs::path& cfg_path,
188 const fs::path& cfg_path,
200 bool apply(
const fs::path& cfg_path);
214 const fs::path& cfg_path);
223 const Value_set&
values()
const;
264 template<
typename Value_set2>
286template<
typename Value_set>
291template<
typename Value_set>
300template<
typename Value_set>
304 return this->
template apply_static<Value_set>(cfg_path, final_validator_func);
313template<
typename Value_set>
315 const fs::path& cfg_path,
318 return this->
template apply_static<Value_set>(Impl::S_ALLOW_INVALID_DEFAULTS, cfg_path, final_validator_func);
321template<
typename Value_set>
327template<
typename Value_set>
333template<
typename Value_set>
336 return this->
template static_values<Value_set>(0);
339template<
typename Value_set>
342 return os << static_cast<const typename Static_config_manager<Value_set>::Impl&>(val);
Manages a config setup, intended for a single daemon process, by maintaining 1 or more set(s) of stat...
void log_help(log::Sev sev=log::Sev::S_INFO) const
Logs what help_to_ostream() would print.
void state_to_ostream(std::ostream &os) const
Prints a human-targeted long-form summary of our contents, doubling as a usage message and a dump of ...
void log_state(log::Sev sev=log::Sev::S_INFO) const
Logs what state_to_ostream() would print.
void help_to_ostream(std::ostream &os) const
Prints a human-targeted long-form usage message that includes all options with their descriptions and...
A Config_manager-related adapter-style class that manages a simple config setup involving a single (t...
allow_invalid_defaults_tag_t
Tag type: indicates an apply() method must allow invalid defaults and only complain if the config sou...
@ S_ALLOW_INVALID_DEFAULTS
Sole value for tag type allow_invalid_defaults_tag_t.
Static_config_manager(log::Logger *logger_ptr, util::String_view nickname, typename Option_set< Value_set >::Declare_options_func &&declare_opts_func_moved)
Constructs a Static_config_manager ready to read static config via apply() and access it via values()...
std::ostream & operator<<(std::ostream &os, const Static_config_manager< Value_set > &val)
Serializes (briefly) a Static_config_manager to a standard output stream.
bool apply(const fs::path &cfg_path, const typename Final_validator_func< Value_set >::Type &final_validator_func)
Invoke this after construction to load the permanent set of static config from config sources includi...
const Value_set & values() const
Returns (always the same) reference to the managed Value_set structure.
Interface that the user should implement, passing the implementing Logger into logging classes (Flow'...
Flow module that facilitates configuring modules, such as applications and APIs, via statically and/o...
Option_set< Null_value_set >::Declare_options_func null_declare_opts_func()
Returns a value usable as declare_opts_func_moved Config_manager ctor arg for a Null_value_set value ...
std::ostream & operator<<(std::ostream &os, const Option_set< Value_set > &val)
Serializes (briefly) an Option_set to a standard output stream.
Basic_string_view< char > String_view
Commonly used char-based Basic_string_view. See its doc header.
Utility/traits type to concisely work with final-validation functions when calling methods like Confi...