13 #include <rapidjson/document.h> 26 rapidjson::Value *
findNode(rapidjson::Value& root);
30 virtual rapidjson::Value *match(rapidjson::Value *node) = 0;
32 class LiteralPathComponent :
public PathComponent {
34 LiteralPathComponent(std::string& name);
35 rapidjson::Value *match(rapidjson::Value *node);
39 class IndexPathComponent :
public PathComponent {
41 IndexPathComponent(std::string& name,
int index);
42 rapidjson::Value *match(rapidjson::Value *node);
47 class MatchPathComponent :
public PathComponent {
49 MatchPathComponent(std::string& name, std::string& property, std::string& value);
50 rapidjson::Value *match(rapidjson::Value *node);
53 std::string m_property;
58 std::vector<PathComponent *>
Fledge Logger class used to log to syslog.
Definition: logger.h:26
A simple implementation of a JSON Path search mechanism to use alongside RapidJSON.
Definition: JSONPath.h:22
rapidjson::Value * findNode(rapidjson::Value &root)
Find the matching node in the JSON document.
Definition: JSONPath.cpp:39
~JSONPath()
Destructor for the JSONPath.
Definition: JSONPath.cpp:28