Expand description
DLRL code-generation helpers — DDS 1.4 §B.4.
Crate zerodds-dlrl-codegen. Safety classification: STANDARD.
Generates language-specific boilerplate for the DLRL pragmas
(DCPS_DATA_TYPE, DCPS_DATA_KEY, DCPS_DLRL_RELATION).
§Consumes
A list of zerodds_dlrl::pragma::DlrlPragma values that the
frontend parser has already validated. From these pragmas, a home
class plus object class is generated per DCPS_DATA_TYPE, a key
field hint per DCPS_DATA_KEY, and a relationship accessor method
per DCPS_DLRL_RELATION.
§Backends
cpp— C++ headers + inline implementations.csharp— C# partial classes with[DlrlObject]attributes.java— Java interfaces + skeleton implementations.ts— TypeScript interfaces + class skeletons.
Re-exports§
pub use cpp::generate_cpp_home;pub use cpp::generate_cpp_object;pub use csharp::generate_csharp_object;pub use csharp::generate_csharp_partial;pub use java::generate_java_object;pub use java::generate_java_object_listener;pub use ts::generate_ts_class;pub use ts::generate_ts_interface;
Modules§
- cpp
- C++ codegen — DDS 1.4 §B.4 Annex C++ PSM.
- csharp
- C# codegen — DDS 1.4 §B.4 (analogous to the C++ PSM, dotnet form).
- java
- Java codegen — DDS 1.4 §B.4 Annex Java PSM.
- ts
- TypeScript-Codegen — DDS-XRCE 1.0 + DDS-TS 1.0 (Annex Web-PSM).
Structs§
- Dlrl
Type Info - Aggregated type info — all pragmas that pertain to a single type.
Functions§
- collect_
type_ infos - Collects a
DlrlTypeInfomap from a flat pragma list (key = type name).