zerodds-corba-codegen
Layer 8 — CORBA stack (Tier A). OMG CORBA 3.3 Annex A.1 IDL-mapping codegen helpers.
- Source: crates/corba-codegen
- API docs: docs.rs/zerodds-corba-codegen
zerodds-corba-codegen holds the CORBA 3.3 Annex A.1
special types and the stub and skeleton mappings, over the common model
(zerodds-ast): which of the thirteen special types a model
type is, what the C++, C#, Java and Rust mappings call it, and the stub
signatures and skeleton dispatch of an interface as syntax-tree nodes of
zerodds-lang-cst, written out by
zerodds-lang-render. no_std + alloc.
The Rust interface traits, client stubs and server skeletons are
written by zerodds-corba-rust
(generate_corba_rust_module), which builds on this crate;
the data types come from zerodds-lang-rules.
crates/corba-interop/build.rs does both in one build
script. zerodds-idlc has no CORBA option.
Spec anchors
- OMG CORBA 3.3 Part 1 Annex A + §10.7.3.1.
- OMG IDL-to-C++
formal/2008-01-09. - OMG IDL-to-Java
formal/2008-01-04. - OMG IDL-to-C#
formal/2003-09-04.
Quickstart
use zerodds_corba_codegen::build_repository_id;
let id = build_repository_id(&["MyModule"], "MyInterface", 1, 0);
assert_eq!(id, "IDL:MyModule/MyInterface:1.0");
Stability
1.0.0-rc.7.
Runnable example
zerodds-corba-codegen
Layer 8 — CORBA-Stack (Tier-A). OMG CORBA 3.3 Annex-A.1 IDL-Mapping-Codegen-Helpers.
- Quelle: crates/corba-codegen
- API-Docs: docs.rs/zerodds-corba-codegen
zerodds-corba-codegen enthält die Sondertypen aus
Annex A.1 von CORBA 3.3 und die Abbildungen für Stubs und Skeletons,
über dem gemeinsamen Modell (zerodds-ast): welcher der
dreizehn Sondertypen ein Typ des Modells ist, wie ihn die Abbildungen
für C++, C#, Java und Rust nennen, und die Stub-Signaturen und der
Skeleton-Dispatch eines Interfaces als Knoten des Syntaxbaums von
zerodds-lang-cst, ausgegeben von
zerodds-lang-render. no_std + alloc.
Die Rust-Interface-Traits, Client-Stubs und Server-Skeletons schreibt
zerodds-corba-rust (generate_corba_rust_module),
das auf diesem Crate aufsetzt; die Datentypen kommen aus
zerodds-lang-rules. crates/corba-interop/build.rs
macht beides in einem Build-Skript. zerodds-idlc hat keine
CORBA-Option.
Spec-Anker
- OMG CORBA 3.3 Part 1 Annex A + §10.7.3.1.
- OMG IDL-to-C++
formal/2008-01-09. - OMG IDL-to-Java
formal/2008-01-04. - OMG IDL-to-C#
formal/2003-09-04.
Quickstart
use zerodds_corba_codegen::build_repository_id;
let id = build_repository_id(&["MyModule"], "MyInterface", 1, 0);
assert_eq!(id, "IDL:MyModule/MyInterface:1.0");
Stabilität
1.0.0-rc.7.