summaryrefslogtreecommitdiff
path: root/sax/inc/sax_delegate.hh
diff options
context:
space:
mode:
Diffstat (limited to 'sax/inc/sax_delegate.hh')
-rw-r--r--sax/inc/sax_delegate.hh22
1 files changed, 22 insertions, 0 deletions
diff --git a/sax/inc/sax_delegate.hh b/sax/inc/sax_delegate.hh
index ba63e72..59af2b7 100644
--- a/sax/inc/sax_delegate.hh
+++ b/sax/inc/sax_delegate.hh
@@ -1,9 +1,14 @@
#ifndef MODXML_SAX_DELEGATE_HH
#define MODXML_SAX_DELEGATE_HH
+#include <cstdint>
+#include <string_view>
+
namespace modxml {
namespace sax {
+class Attributes;
+
/**
* Delegate for processor.
* Implement to handle events.
@@ -12,6 +17,23 @@ class Delegate {
public:
virtual ~Delegate() = default;
+ virtual void start_element(std::string_view name,
+ Attributes const& attributes);
+
+ virtual void end_element(std::string_view name);
+
+ virtual void empty_element(std::string_view name,
+ Attributes const& attributes);
+
+ virtual void character_data(std::string_view data);
+
+ virtual void processing_instruction(std::string_view target,
+ std::string_view data);
+
+ virtual void comment(std::string_view data);
+
+ virtual void error(std::string_view message);
+
protected:
Delegate() = default;
};