kDB: Knowledge DataBase
Loading...
Searching...
No Matches
Serialiser.h
1#include <kDB/SPARQL/Algebra/NodeVisitorImplementation.h>
2#include <knowCore/ValueHash.h>
3
4namespace kDB::SPARQL::Algebra::Visitors
5{
6// TODO remove and reuse the one from NodeVisitorImplementation
7#undef __KDB_SPARQL_ALGEBRA_NODE_VISITOR_OVERLOAD
8#define __KDB_SPARQL_ALGEBRA_NODE_VISITOR_OVERLOAD(_NAME_, _I_) \
9 QString visit(_NAME_##CSP _node, QHash<QString, knowCore::Value>* const&) override;
10
16 QHash<QString, knowCore::Value>*>
17 {
18 public:
19 struct Result
20 {
21 QString queryText;
23 };
27 Serialiser(const knowCore::ValueHash& _variables_to_value);
32 static Result serialise(NodeCSP _node, const knowCore::ValueHash& _variables);
33 private:
34 protected:
35 QString visitDefault(NodeCSP _node,
36 QHash<QString, knowCore::Value>* const& _parameter) override;
37 KDB_SPARQL_ALGEBRA_NODE_VISITOR_OVERLOAD(BlankNode, GroupGraphPattern, LimitOffsetClause,
38 FunctionCall, RelationalEqual, RelationalDifferent,
39 RelationalInferior, RelationalInferiorEqual,
40 RelationalSuperior, RelationalSuperiorEqual,
41 SelectQuery, Term, Triple, Value, Variable,
42 VariableReference, InsertData, DeleteData, QuadsData,
43 Quads);
44 QString visitUri(const knowCore::Uri& _uri, QHash<QString, knowCore::Value>* _parameter);
45 private:
46 struct Private;
47 Private* const d;
48 };
49} // namespace kDB::SPARQL::Algebra::Visitors
50
51#undef __KDB_SPARQL_ALGEBRA_NODE_VISITOR_OVERLOAD
Definition Forward.h:10
Definition NodeVisitorImplementation.h:22
static Result serialise(NodeCSP _node, const knowCore::ValueHash &_variables)
Definition Serialiser.cpp:21
Serialiser(const knowCore::ValueHash &_variables_to_value)
Definition Serialiser.cpp:14
Definition Uri.h:15
Definition ValueHash.h:13