Skip to main content

InstallBirth

Trait InstallBirth 

Source
pub trait InstallBirth<A: Address, C: Behavior, Output, Error>
where C::Protocol: Protocol<Addr = A>,
{ // Required method fn install_birth( &mut self, creation: Create<A, C>, ) -> impl Future<Output = Result<Output, Error>> + Send; }
Expand description

Static interpreter capability for installing one concrete child behavior.

An interpreter implements this trait separately for every concrete child behavior it can install. C::Protocol remains the canonical hosting identity at this boundary: distinct child behaviors may select the same protocol and therefore share one runtime-owned protocol space while still receiving distinct installation calls. Semantic child roles and routes are deliberately not storage identities. Heterogeneous child sums require all applicable implementations through recursive static bounds, so unsupported alternatives fail to compile instead of falling through to a registry or erased path. The returned future is sendable so an interpreter may remain inside a thread-safe recursive driver future.

Required Methods§

Source

fn install_birth( &mut self, creation: Create<A, C>, ) -> impl Future<Output = Result<Output, Error>> + Send

Install and commit exactly the supplied concrete creation.

§Errors

Returns the interpreter’s typed allocation, initialization, or commit failure without binding the requested nonce.

Dyn Compatibility§

This trait is not dyn compatible.

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

Implementors§