8#ifndef INCLUDED_ORCUS_XML_STRUCTURE_TREE_HPP
9#define INCLUDED_ORCUS_XML_STRUCTURE_TREE_HPP
25 std::vector<std::string> paths;
26 std::vector<std::string> row_groups;
47 std::unique_ptr<impl> mp_impl;
82 std::string_view name;
85 entity_name(xmlns_id_t _ns, std::string_view _name);
90 struct ORCUS_DLLPUBLIC
hash
96 typedef std::vector<entity_name> entity_names_type;
117 std::unique_ptr<walker_impl> mp_impl;
119 walker(
const xml_structure_tree::impl& parent_impl);
189 std::string get_xmlns_short_name(xmlns_id_t ns)
const;
221 void parse(std::string_view s);
223 void dump_compact(std::ostream& os)
const;
225 walker get_walker()
const;
227 void process_ranges(range_handler_type rh)
const;
Definition xml_structure_tree.hpp:114
entity_names_type get_attributes()
element move_to(const std::string &path)
element descend(const entity_name &name)
entity_names_type get_children()
std::string get_path() const
size_t get_xmlns_index(xmlns_id_t ns) const
std::string to_string(const entity_name &name) const
Definition xml_structure_tree.hpp:45
std::function< void(std::any)> callback_handler_type
Definition xml_structure_tree.hpp:75
void set_callback(callback_type type, callback_handler_type callback)
callback_type
Definition xml_structure_tree.hpp:58
Definition xml_namespace.hpp:100
Definition xml_structure_tree.hpp:99
Definition xml_structure_tree.hpp:91
Definition xml_structure_tree.hpp:80
Definition xml_structure_tree.hpp:24