Expand description
Parser fuer DDS-XML 1.0 §7.3.2 QoS-Profile-Library.
Konsumiert Roh-XML, baut den Foundation-Tree (siehe
crate::parser::parse_xml_tree) auf und mappt ihn auf das typed
Datenmodell aus crate::qos.
§Spec-konforme Boolean-Semantik
Der Foundation-parse_bool aus crate::types akzeptiert bewusst
TRUE/FALSE-Schreibweisen aus Cyclone/FastDDS-Kompatibilitaet.
DDS-XML 1.0 §7.1.4 verlangt dagegen strict true/false. Wir
verwenden hier den lokalen parse_bool_strict Helper, der nur die
Spec-Werte zulaesst.
§Single-QoS-Shortcut (§7.3.2.4.1)
Ein <qos_profile> mit nur einem <datawriter_qos> (oder einem
anderen 6 Entity-Containern) wird wie eine voll-spezifizierte Profile
behandelt — der direkte Container-Tag ersetzt den Container-fuer-
mehrere-Policies-Stil. Andere Entity-Container in derselben Profile
werden zusaetzlich akzeptiert; das ist ein Superset des Spec-
Examples in §7.3.2.4.1.
Functions§
- parse_
bool_ strict - DDS-XML 1.0 §7.1.4 verlangt strict
true/false(case-sensitive). - parse_
entity_ qos_ public - Crate-internal
pub-Wrapper fuer [parse_entity_qos], damit andere Building-Block-Module (Domain, Participant) inline-QoS-Container dekodieren koennen ohne den Parser zu duplizieren. - parse_
qos_ libraries - Parsed das oberste
<dds>-Dokument und gibt alle enthaltenen QoS-Libraries zurueck (Spec §7.3.2.3 erlaubt mehrere Libraries pro Dokument). - parse_
qos_ library - Convenience: parsed das Dokument und gibt die erste QoS-Library
zurueck. Liefert
MissingRequiredElement("qos_library")wenn keine vorhanden. - parse_
qos_ library_ element_ public - Crate-internal
pub-Wrapper fuer [parse_qos_library_element], damit der Top-Level-Loader (crate::zerodds_xml::parse_dds_xml) eine<qos_library>-Element-Sub-Tree direkt dekodieren kann ohne den Parser zu duplizieren.