1 #pragma once 2 3 #include "config_node_complex_value.hpp" 4 #include <hocon/config_syntax.hpp> 5 6 namespace hocon { 7 8 class config_node_root : public config_node_complex_value { 9 public: 10 config_node_root(shared_node_list children, shared_origin origin); 11 12 std::shared_ptr<const config_node_complex_value> new_node(shared_node_list nodes) const override; 13 14 std::shared_ptr<const config_node_complex_value> value() const; 15 std::shared_ptr<const config_node_root> set_value(std::string desired_path, 16 shared_node_value, 17 config_syntax flavor) const; 18 bool has_value(std::string desired_path) const; 19 20 private: 21 shared_origin _origin; 22 }; 23 24 } // namespace hocon 25