aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf/QPDF_json.cc
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2022-05-14 14:49:42 +0200
committerJay Berkenbilt <ejb@ql.org>2022-05-16 19:41:40 +0200
commit8d42eb2632ca5c2ae1200160e78116505b57f6b0 (patch)
tree7187465b7f1c6bea6e03d048baec18b805792ff6 /libqpdf/QPDF_json.cc
parent4fe2e06b4787ffb639f965ac840b51018308ec07 (diff)
downloadqpdf-8d42eb2632ca5c2ae1200160e78116505b57f6b0.tar.zst
Add scaffolding for QPDF JSON reactor
Diffstat (limited to 'libqpdf/QPDF_json.cc')
-rw-r--r--libqpdf/QPDF_json.cc50
1 files changed, 47 insertions, 3 deletions
diff --git a/libqpdf/QPDF_json.cc b/libqpdf/QPDF_json.cc
index 908615b6..316c9935 100644
--- a/libqpdf/QPDF_json.cc
+++ b/libqpdf/QPDF_json.cc
@@ -3,15 +3,53 @@
#include <qpdf/FileInputSource.hh>
void
+QPDF::JSONReactor::dictionaryStart()
+{
+ // QXXXXQ
+}
+
+void
+QPDF::JSONReactor::arrayStart()
+{
+ // QXXXXQ
+}
+
+void
+QPDF::JSONReactor::containerEnd(JSON const& value)
+{
+ // QXXXXQ
+}
+
+void
+QPDF::JSONReactor::topLevelScalar()
+{
+ // QXXXXQ
+}
+
+bool
+QPDF::JSONReactor::dictionaryItem(std::string const& key, JSON const& value)
+{
+ // QXXXXQ
+ return true;
+}
+
+bool
+QPDF::JSONReactor::arrayItem(JSON const& value)
+{
+ // QXXXXQ
+ return true;
+}
+
+void
QPDF::createFromJSON(std::string const& json_file)
{
createFromJSON(std::make_shared<FileInputSource>(json_file.c_str()));
}
void
-QPDF::createFromJSON(std::shared_ptr<InputSource>)
+QPDF::createFromJSON(std::shared_ptr<InputSource> is)
{
- // QXXXQ
+ importJSON(is, true);
}
void
@@ -21,7 +59,13 @@ QPDF::updateFromJSON(std::string const& json_file)
}
void
-QPDF::updateFromJSON(std::shared_ptr<InputSource>)
+QPDF::updateFromJSON(std::shared_ptr<InputSource> is)
+{
+ importJSON(is, false);
+}
+
+void
+QPDF::importJSON(std::shared_ptr<InputSource>, bool must_be_complete)
{
// QXXXQ
}