Lines Matching defs:JsonNode
35 class JsonNode;
39 using NodeMap = std::unordered_map<std::string, std::unique_ptr<JsonNode>>;
40 using NodeVec = std::vector<std::unique_ptr<JsonNode>>;
46 class JsonNode {
47 DISALLOW_COPY_MOVE(JsonNode);
49 JsonNode();
50 explicit JsonNode(const Fs::path &path);
51 explicit JsonNode(const std::string &str, bool needDelete = true);
52 explicit JsonNode(const cJSON *root, bool needDelete = true);
53 ~JsonNode();
55 const JsonNode &operator[](int idx) const;
56 const JsonNode &operator[](const std::string &key) const;
57 JsonNode &operator[](int idx);
58 JsonNode &operator[](const std::string &key);
90 std::list<std::reference_wrapper<JsonNode>>::const_iterator begin() const;
91 std::list<std::reference_wrapper<JsonNode>>::const_iterator end() const;
113 std::list<std::reference_wrapper<JsonNode>> innerNodesList_ {};
116 inline JsonNode &GetInvalidNode()
118 static JsonNode emptyNode; // used for invalid json node
123 inline JsonNode &GetNodeByIdx(T &innerObj, int size, int idx)
137 inline JsonNode &GetNodeByKey(T &innerObj, const std::string &key)