Expand description
Alignment-tracking Buffer-Reader/-Writer fuer XCDR.
XCDR-Daten sind alignment-pflichtig: ein u32-Feld muss an einer
4-Byte-Boundary beginnen, ein u64 an 8-Byte-Boundary etc. Der
Encoder fuegt vor jedem Write die noetigen Padding-Bytes (Wert 0)
ein; der Decoder skipped sie.
Alignment wird relativ zum Stream-Anfang (Offset 0) berechnet, nicht relativ zur aktuellen Position innerhalb eines verschachtelten Members. Das entspricht OMG-XTypes §7.4.1: “All elements are aligned to a multiple of their alignment requirement, relative to the beginning of the encapsulation”.
Bewusste Architektur-Wahl: nur dynamischer Vec-basierter Writer
(alloc-Feature). Slice-basierter Writer für no_std-without-alloc
ist nicht implementiert — alloc ist via zerodds-foundation
ohnehin transitive Mandatory-Dep.
Structs§
- Buffer
Reader - Lese-Buffer mit Alignment-Tracking.
- Buffer
Writer - Schreib-Buffer mit Alignment-Tracking und konfigurierbarer Endianness.
Functions§
- padding_
for - Berechnet die Anzahl Padding-Bytes, um
posan die naechste Vielfaches-von-alignment-Boundary zu schieben.