Expand description
Crate zerodds-proto. Safety classification: STANDARD.
Protocol Buffers type reuse for DDS (rc.7). A FileDescriptorSet
(produced by protoc -o out.pb --include_imports x.proto) is mapped to an
XTypes DynamicType, so a .proto data model becomes a DDS topic type
and rides the DDS-native XCDR wire through the reflective DynamicData
codec — not a protobuf payload. proto field numbers map directly to
XTypes member IDs, so the type is stable across additions.
This is the scalar type mapping (plan checkpoint CP-A1). The
FileDescriptorSet reader and the message / enum / repeated / map / oneof
mapping (CP-A2..A5) build on it.
Modules§
- descriptor
- A lightweight
FileDescriptorSetAST and its decoder — the subset ofdescriptor.protoneeded to build XTypes types: files, messages (incl. nested), fields (name / number / label / type / type_name) and enums. - mapper
- Map a parsed protobuf
Messageto an XTypesDynamicType. - reader
- Minimal Protocol Buffers wire-format reader — the subset needed to walk a
FileDescriptorSet(descriptor.proto). Pure-core, no dependencies. - registry
- A type registry that resolves nested-message references across a whole
FileDescriptorSet, so a message field of another message type maps to a fully-populated nested XTypes struct (attached viaadd_member_resolved, the same mechanism the TypeObject bridge uses).
Enums§
- Proto
Field Type - A Protocol Buffers field type, i.e.
FieldDescriptorProto.Typeindescriptor.proto. The discriminants are the on-the-wire enum values.