--- a/src/lib/INIContentHandler.h Sat Nov 21 20:09:18 2020 +0100
+++ b/src/lib/INIContentHandler.h Sun Nov 22 00:44:00 2020 +0100
@@ -20,10 +20,31 @@
class INIContentHandler {
public:
+
+ class Event {
+ public:
+ int64_t eventNumber = -1;
+ int64_t lineNumber = -1;
+ std::string comment;
+ };
+
+ class SectionStartEvent : public Event {
+ public:
+ std::string name;
+ };
+
+ class EntryEvent : public Event {
+ public:
+ std::string key;
+ std::string subKey;
+ std::string fullKey;
+ std::string value;
+ };
+
virtual ~INIContentHandler() = default;
virtual void startDocument() = 0;
virtual void endDocument() = 0;
- virtual void startSection(const std::string& name) = 0;
+ virtual void startSection(const SectionStartEvent& event) = 0;
virtual void endSection() = 0;
- virtual void entry(const std::string& key, const std::string& subkey, const std::string& value) = 0;
+ virtual void entry(const EntryEvent& event) = 0;
};
\ No newline at end of file