Skip to main content

Module sample

Module sample 

Source
Expand description

DDS-XML 1.0 §7.3.7 building block “Data Samples” — XML codec.

Represents concrete sample values of individual registered types as XML. A sample is a member-value map: element names correspond to member names, children are recursively encoded values. Sequences/arrays use <item> as the element name (Spec §7.3.7.4.4).

§XML → Rust type mapping

<sample type_ref="Mod::Type"> … </sample>  | SampleValue::Struct
<member-name>123</member-name>             | SampleValue::Primitive
<seq-name><item>…</item>…</seq-name>       | SampleValue::Sequence
<arr-name><item>…</item>…</arr-name>       | SampleValue::Array
<union-name><discriminator>…</discriminator>
            <case-name>…</case-name></union-name>
                                           | SampleValue::Union

Enums§

PrimitiveValue
Concrete primitive value (typed, with a range check on parse).
SampleValue
Value of a concrete sample member (recursive).

Functions§

parse_sample
Parses a concrete <sample> element against a type definition.
parse_sample_element
Variant of parse_sample that takes an already-parsed XmlElement.
serialize_sample
Serializes a sample value as XML.