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§
fn exec_native_raw<P: PortReaderT + ?Sized>( &self, component: &str, ports: &P, bound: Option<&Value>, ) -> Option<RawOutcome>
Provided Methods§
Sourcefn exec_native_raw_ctx<P: PortReaderT + ?Sized>(
&self,
node_id: &str,
component: &str,
ports: &P,
bound: Option<&Value>,
) -> Option<RawOutcome>
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".