Expand description
Crate zerodds-corba-codegen. Safety classification: STANDARD.
OMG CORBA 3.3 Annex-A.1 IDL-mapping codegen helpers — pure Rust
no_std + alloc, forbid(unsafe_code). Provides tables + helpers
that zerodds-idl-cpp, zerodds-idl-csharp and
zerodds-idl-java consume to generate CORBA stub/skeleton code.
Spec: OMG CORBA 3.3 Part 1 Annex A (IDL-Type-Mappings) +
formal/2008-01-09 IDL-to-C++ + formal/2008-01-04 IDL-to-Java.
§Layer position
Layer 8 — CORBA stack. Substrate for the three OMG-PSM codegen
crates (zerodds-idl-cpp / zerodds-idl-csharp /
zerodds-idl-java).
§Public API (Stand 1.0.0-rc.1)
SpecialType/TargetLanguage/language_mapping— 13 Annex-A.1 Special-Types (Object, ValueBase, AbstractBase, NativeRef, TypeCode, any, sequence-of-any, string, wstring, Time, fixed, ULongLong, LongDouble) with language mappings for C++ / C# / Java.StubOp/render_stub_op— client-stub template (sends a GIOP request, expects a reply with a ReplyStatus switch).SkeletonOp/render_skeleton_dispatch— server-side dispatch template (operation-name switch).build_repository_id— repository-ID builder (spec §10.7.3.1) for IDLmodule/interfacepaths.
§Example
use zerodds_corba_codegen::build_repository_id;
let id = build_repository_id(&["MyModule"], "MyInterface", 1, 0);
assert_eq!(id, "IDL:MyModule/MyInterface:1.0");Re-exports§
pub use repository_id::build_repository_id;pub use skeleton::SkeletonOp;pub use skeleton::render_skeleton_dispatch;pub use special_types::SpecialType;pub use special_types::TargetLanguage;pub use special_types::language_mapping;pub use stub::StubOp;pub use stub::render_stub_op;
Modules§
- repository_
id - Repository ID builder — Spec §10.7.3.1.
- skeleton
- Skeleton code-generation helper — server-side dispatch.
- special_
types - Annex-A.1 special types — Spec OMG CORBA 3.3.
- stub
- Stub code-generation helper — spec Annex-A.1 operation mapping.