Skip to main content

Crate zerodds_proto

Crate zerodds_proto 

Source
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 FileDescriptorSet AST and its decoder — the subset of descriptor.proto needed to build XTypes types: files, messages (incl. nested), fields (name / number / label / type / type_name) and enums.
mapper
Map a parsed protobuf Message to an XTypes DynamicType.
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 via add_member_resolved, the same mechanism the TypeObject bridge uses).

Enums§

ProtoFieldType
A Protocol Buffers field type, i.e. FieldDescriptorProto.Type in descriptor.proto. The discriminants are the on-the-wire enum values.