aboutsummaryrefslogtreecommitdiff
path: root/include/cru/toml
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2022-01-08 19:24:44 +0800
committercrupest <crupest@outlook.com>2022-01-08 19:24:44 +0800
commit0c7153db084060034092c1dc24222cae384722ec (patch)
tree9de1bc4636732e3cc1e1fb7309fdf2ff60683f69 /include/cru/toml
parentc38f1f7c273e85c0a6d197cb27424c9ca69e234d (diff)
downloadcru-0c7153db084060034092c1dc24222cae384722ec.tar.gz
cru-0c7153db084060034092c1dc24222cae384722ec.tar.bz2
cru-0c7153db084060034092c1dc24222cae384722ec.zip
...
Diffstat (limited to 'include/cru/toml')
-rw-r--r--include/cru/toml/TomlDocument.hpp1
-rw-r--r--include/cru/toml/TomlParser.hpp7
2 files changed, 8 insertions, 0 deletions
diff --git a/include/cru/toml/TomlDocument.hpp b/include/cru/toml/TomlDocument.hpp
index 9b549daa..637690f7 100644
--- a/include/cru/toml/TomlDocument.hpp
+++ b/include/cru/toml/TomlDocument.hpp
@@ -37,6 +37,7 @@ class TomlDocument {
public:
TomlSection* GetSection(const String& name);
+ TomlSection* GetSectionOrCreate(const String& name);
const TomlSection* GetSection(const String& name) const;
void SetSection(const String& name, TomlSection section);
void DeleteSection(const String& name);
diff --git a/include/cru/toml/TomlParser.hpp b/include/cru/toml/TomlParser.hpp
index b5bcaa0b..52332506 100644
--- a/include/cru/toml/TomlParser.hpp
+++ b/include/cru/toml/TomlParser.hpp
@@ -1,10 +1,17 @@
#pragma once
+#include "cru/common/Exception.hpp"
#include "cru/toml/TomlDocument.hpp"
#include <optional>
namespace cru::toml {
+// A very simple and tolerant TOML parser.
+class TomlParsingException : public Exception {
+ public:
+ using Exception::Exception;
+};
+
class TomlParser {
public:
explicit TomlParser(String input);