Skip to main content

Crate zerodds_corba_ir

Crate zerodds_corba_ir 

Source
Expand description

OMG CORBA 3.3 Part 1 §14 — Interface Repository (IR).

Crate zerodds-corba-ir. Safety classification: STANDARD. no_std + alloc, forbid(unsafe_code).

Voller IR-Stack: TypeCode (alle 32 TCKinds — tk_nulltk_local_interface), Repository mit Containment-Hierarchie (Container/Definition/Module), DefinitionKind (dk_*-Konstanten), strukturierte RepositoryId mit Spec-§10.7.3.1-Format-Parser/Builder.

§Public API (Stand 1.0.0-rc.1)

§Konsumenten

  • [zerodds_corba_poa] verwendet RepositoryId::parse zur typisierten Validierung von Servant-Interfaces (Spec §11.3.5.20.4 _is_a).
  • Externe CORBA-Anwendungen konsumieren den IR via IIOP/IOR.

§Beispiel

use zerodds_corba_ir::RepositoryId;
let r = RepositoryId::parse("IDL:omg.org/CosNaming/NamingContext:1.0").unwrap();
assert_eq!(r.scoped_name, "omg.org/CosNaming/NamingContext");
assert_eq!(r.major, 1);
assert_eq!(r.minor, 0);

Re-exports§

pub use definition_kind::DefinitionKind;
pub use error::IrError;
pub use error::IrResult;
pub use repository::Container;
pub use repository::Definition;
pub use repository::Module;
pub use repository::Repository;
pub use repository_id::RepositoryId;
pub use type_code::TcKind;
pub use type_code::TypeCode;
pub use type_code::UnionMember;

Modules§

definition_kind
DefinitionKind — Spec §10.5.2.
error
IR-Fehler.
repository
Repository + Container-Hierarchie — Spec §10.5.4-§10.5.6.
repository_id
RepositoryId — Spec §10.7.3.
type_code
TypeCode — Spec §10.7.