peary::config::ConfigParser
peary::config::ConfigParser
Simple parser class for TOML-like configurations consisting of sections indicated by […] and key-value pairs. More…
#include <peary/config/configuration.hpp>
Public Functions
| Name | |
|---|---|
| ConfigParser() =default | |
| ConfigParser(const std::string & path)Parse from a configuration file via its path. | |
| ConfigParser(std::istream & file)Parse configuration from a file stream. | |
| bool | HasSection(const std::string & section) constCheck if this parser has a specific configuration. |
| Configuration | GetConfig(const std::string & section) constObtain a configuration identified by the section name. |
| Configuration | GetMainConfig() constObtain the main configuration section, which is identified by an empty section name. |
| std::map< std::string, Configuration > | GetAllConfigs() constObtain all parsed configuration objects. |
| void | Save(std::ostream & file) constStore current configurations into a file. |
| std::vector< std::string > | GetSections() constGet all available section names. |
Detailed Description
class peary::config::ConfigParser;
Simple parser class for TOML-like configurations consisting of sections indicated by […] and key-value pairs.
Each section is stored in a separate Configuration object and can be obtained via its section name.
Public Functions Documentation
function ConfigParser
ConfigParser() =default
Default constructor
function ConfigParser
explicit ConfigParser(
const std::string & path
)
Parse from a configuration file via its path.
Parameters:
- path Path to the configuration file
function ConfigParser
explicit ConfigParser(
std::istream & file
)
Parse configuration from a file stream.
Parameters:
- file File stream to read configuration from
function HasSection
bool HasSection(
const std::string & section
) const
Check if this parser has a specific configuration.
Parameters:
- section Section to look for
Return: True if section exists, false otherwise
function GetConfig
Configuration GetConfig(
const std::string & section
) const
Obtain a configuration identified by the section name.
Parameters:
- section Section name to look for in the configuration file
Exceptions:
- InvalidSection if no such section was found
Return: Configuration object for this section
function GetMainConfig
Configuration GetMainConfig() const
Obtain the main configuration section, which is identified by an empty section name.
Return: Configuration object for the main configuration
If no main configuration was found, an empty Configuration object is returned
function GetAllConfigs
inline std::map< std::string, Configuration > GetAllConfigs() const
Obtain all parsed configuration objects.
Return: Map with all configurations and their section names as keys
function Save
void Save(
std::ostream & file
) const
Store current configurations into a file.
Parameters:
- file Target file stream to write to
function GetSections
std::vector< std::string > GetSections() const
Get all available section names.
Return: Vector of section names
Updated on 2025-11-14 at 11:31:23 +0100