Skip to main content

Module interface_emit

Module interface_emit 

Source
Expand description

IDL interface → Rust trait + Stub + Skeleton.

Mapping:

  • interface I { ... };pub trait I { fn op(...) -> Result<...>; } plus pub struct IStub { ... } (Client) und pub fn dispatch_<i>(...) (Server-Skeleton).
  • attribute T x → trait-method fn x(&self) -> ... und (wenn nicht readonly) fn set_x(&mut self, value: T) -> ....
  • op(in T x, out T y, inout T z) → trait-method mit &self/&mut self-Receiver, in-Params als value, out/inout als &mut.
  • oneway op(...) → trait-method ohne Reply-Body.
  • raises (E1, E2) → method-Return-Type ist Result<T, CorbaException>.

Functions§

emit_attr_trait_method_pub
Public-Wrapper fuer valuetype-Re-Use.
emit_interface
Emittiert ein vollstaendiges Rust-Trait + Stub + Skeleton-Dispatch fuer eine IDL-Interface-Definition.
emit_op_trait_method_pub
Public-Wrapper fuer valuetype-Re-Use.