summaryrefslogtreecommitdiff
path: root/src/core/parser/stack/DocumentHandler.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/parser/stack/DocumentHandler.hpp')
-rw-r--r--src/core/parser/stack/DocumentHandler.hpp15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/core/parser/stack/DocumentHandler.hpp b/src/core/parser/stack/DocumentHandler.hpp
index 697f9e7..475fe69 100644
--- a/src/core/parser/stack/DocumentHandler.hpp
+++ b/src/core/parser/stack/DocumentHandler.hpp
@@ -26,7 +26,8 @@
#define _OUSIA_DOCUMENT_HANDLER_HPP_
#include <core/common/Variant.hpp>
-#include <core/parser/ParserStack.hpp>
+
+#include "Handler.hpp"
namespace ousia {
@@ -35,11 +36,11 @@ class Rtti;
class DocumentEntity;
class FieldDescriptor;
-class DocumentHandler : public Handler {
+class DocumentHandler : public StaticHandler {
public:
- using Handler::Handler;
+ using StaticHandler::StaticHandler;
- void start(Variant::mapType &args) override;
+ bool start(Variant::mapType &args) override;
void end() override;
@@ -54,7 +55,7 @@ public:
using Node::Node;
};
-class DocumentChildHandler : public Handler {
+class DocumentChildHandler : public StaticHandler {
private:
void preamble(Handle<Node> parentNode, std::string &fieldName,
DocumentEntity *&parent, bool &inField);
@@ -68,11 +69,11 @@ private:
public:
using Handler::Handler;
- void start(Variant::mapType &args) override;
+ bool start(Variant::mapType &args) override;
void end() override;
- void data(const std::string &data, int fieldIdx) override;
+ bool data(const Variant &data) override;
static Handler *create(const HandlerData &handlerData)
{