zerodds-ccm 1.0.0-rc.1

OMG CCM 4.0 (formal/06-04-01) §6 Component Model — Equivalent-IDL-Transformation (Component/Home/EventType), Components::* Core-Types, Lightweight-CCM-Profile (§13). no_std + alloc.
Documentation
  • Coverage
  • 100%
    128 out of 128 items documented1 out of 42 items with examples
  • Size
  • Source code size: 108.64 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 2.48 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 11s Average build duration of successful builds.
  • all releases: 11s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Homepage
  • zero-objects/zero-dds
    2 1 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • SandraK82

zerodds-ccm

License: Apache-2.0 docs.rs

OMG CCM 4.0 (formal/06-04-01) — CORBA Component Model. Equivalent-IDL-Transformation fuer Component / Home / EventType, Components::* Core-Types, Lightweight-CCM-Profile (§13). no_std + alloc, forbid(unsafe_code). Safety classification: STANDARD.

Spec-Mapping

Spec Abschnitt
OMG CCM 4.0 §6.3.2 (Component Implied-IDL)
OMG CCM 4.0 §6.4.1 (Home Implied-IDL + PrimaryKey)
OMG CCM 4.0 §6.5.1 (Receptacles + Cookie)
OMG CCM 4.0 §6.6.x (Events / Emitters / Publishers / Subscribers)
OMG CCM 4.0 §6.7.1 (EventType Equivalent-IDL)
OMG CCM 4.0 §13 (Lightweight CCM Profile)
OMG DDS4CCM 1.1 §6 (DDS4CCM-Connector-Patterns)

Was ist drin

  • modelCookie, PortDescription, FacetDescription, ReceptacleDescription, ConsumerDescription, EmitterDescription, SubscriberDescription, PublisherDescription, ConnectionDescription, ConfigValue als Components::*-Valuetypes.
  • transformtransform_component / transform_home / transform_event_type erzeugen die Spec-konformen Implied-IDL- Definitionen aus zerodds_idl::ast-Inputs.
  • lightweightfilter_to_lightweight(spec) reduziert ein voll-CCM-AST auf das LwCCM-Subset (Spec §13).
  • validatevalidate_primary_key, apply_factory_finder_body, InitOp fuer die Spec §6.4.1-Constraints.
  • dds4ccm — DDS4CCM-spezifische Equivalent-IDL-Erweiterungen.

Was nicht abgedeckt ist

CCM 4.0 §7 (CIDL), §8 (Implementation-Framework), §9 (Container), §10 (EJB-Integration), §11 (IFR-Metamodel), §12 (CIF-Metamodel), §14 (Deployment-PSM), §15 (Deployment-IDL), §16 (XSD) sind explizit n/a in dieser Crate, weil sie eine CORBA-ORB- + CCM-Container-Runtime verlangen, die ZeroDDS bewusst nicht selbst hostet (siehe crates/corba-ccm-ejb/ fuer EJB-Bridge auf Modell-Ebene).

Beispiel

use zerodds_ccm::Cookie;

let c = Cookie::new(vec![0x01, 0x02, 0x03]);
assert_eq!(c.cookie_value, vec![0x01, 0x02, 0x03]);
// Spec §6.5.2.4: Truncation auf Base behaelt cookieValue.
assert_eq!(c.truncate_to_base().cookie_value, c.cookie_value);

Tests

cargo test -p zerodds-ccm

See also