|
MUSX Document Model
|
Provides interfaces and optional implementations for traversing XML. More...
Namespaces | |
| namespace | pugi |
| Provides an implementation of musx::xml::IXmlAttribute, musx::xml::IXmlElement, and musx::xml::IXmlDocument using the PugiXML library. | |
| namespace | rapidxml |
| Provides an implementation of musx::xml::IXmlAttribute, musx::xml::IXmlElement, and musx::xml::IXmlDocument using the rapidxml library. | |
| namespace | tinyxml2 |
| Provides an implementation of musx::xml::IXmlAttribute, musx::xml::IXmlElement, and musx::xml::IXmlDocument using the tinyxml2 library. | |
Classes | |
| class | IXmlAttribute |
| Interface for an XML attribute. More... | |
| class | IXmlDocument |
| Interface for an XML document. More... | |
| class | IXmlElement |
| Interface for an XML element. More... | |
| class | load_error |
| Exception for load xml error. More... | |
Typedefs | |
| using | XmlElementPtr = std::shared_ptr< IXmlElement > |
| shared pointer to IXmlElement | |
| template<typename T > | |
| using | XmlElementPopulator = std::function< void(const XmlElementPtr &, const std::shared_ptr< T > &)> |
| function type for populating a field from an IXmlElement | |
| template<typename T > | |
| using | XmlElementDescriptor = std::tuple< const std::string_view, XmlElementPopulator< T > > |
| associates an xml node name with and XmlElementPopulator | |
| template<typename T > | |
| using | XmlElementArray = std::vector< XmlElementDescriptor< T > > |
| an array type for XmlElementDescriptor instances. | |
Provides interfaces and optional implementations for traversing XML.