Skip to main content

NativeRawComponentExec

Trait NativeRawComponentExec 

Source
pub trait NativeRawComponentExec {
    // Required method
    fn exec_native_raw<P: PortReaderT + ?Sized>(
        &self,
        component: &str,
        ports: &P,
        bound: Option<&Value>,
    ) -> Option<RawOutcome>;

    // Provided method
    fn exec_native_raw_ctx<P: PortReaderT + ?Sized>(
        &self,
        node_id: &str,
        component: &str,
        ports: &P,
        bound: Option<&Value>,
    ) -> Option<RawOutcome> { ... }
}
Expand description

The combined handler registry seam (bc#94, nativized): native ports in (a CONCRETE &P, passed by monomorphized generic instantiation — no &dyn, no as_any/downcast), RawValue out.

exec_native_raw takes &self (not &mut self): the covered runner passes &H, so a Sync handler parallelizes across the bc#87 static-parallel stage with NO forced Mutex serialization (the generic seam is &self; a handler needing interior mutation uses its own Sync interior type — e.g. an atomic/Mutex field — rather than the seam forcing &mut self on every caller).

Required Methods§

Source

fn exec_native_raw<P: PortReaderT + ?Sized>( &self, component: &str, ports: &P, bound: Option<&Value>, ) -> Option<RawOutcome>

Provided Methods§

Source

fn exec_native_raw_ctx<P: PortReaderT + ?Sized>( &self, node_id: &str, component: &str, ports: &P, bound: Option<&Value>, ) -> Option<RawOutcome>

ctx-carrying extension (mirrors ComponentExec::exec_ctx). Default forwards.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§