Skip to main content

Crate zerodds_dlrl_codegen

Crate zerodds_dlrl_codegen 

Source
Expand description

DLRL Code-Generation-Helpers — DDS 1.4 §B.4.

Crate zerodds-dlrl-codegen. Safety classification: STANDARD.

Erzeugt sprachspezifische Boilerplate fuer die DLRL-Pragmas (DCPS_DATA_TYPE, DCPS_DATA_KEY, DCPS_DLRL_RELATION).

§Konsumiert

Eine Liste von zerodds_dlrl::pragma::DlrlPragma-Werten, die der Frontend-Parser bereits validiert hat. Aus diesen Pragmas wird pro DCPS_DATA_TYPE ein Home-Class + Object-Class generiert, pro DCPS_DATA_KEY ein Key-Field-Hint, pro DCPS_DLRL_RELATION eine Relationship-Accessor-Methode.

§Backends

  • cpp — C++ Headers + Inline-Implementations.
  • csharp— C# Partial-Classes mit [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 (analog 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§

DlrlTypeInfo
Aggregierte Type-Info — alle Pragmas, die einen einzelnen Type betreffen.

Functions§

collect_type_infos
Sammelt aus einer flachen Pragma-Liste eine DlrlTypeInfo-Map (key = Type-Name).