Skip to main content

EndpointAddress

Trait EndpointAddress 

Source
pub trait EndpointAddress: Address + Sized {
    type Established<P>: Clone
       where P: Protocol<Addr = Self>;
    type Installed<B>: Clone
       where B: Behavior<Protocol: Protocol<Addr = Self>>;

    // Required method
    fn recipient<B>(
        installed: &Self::Installed<B>,
    ) -> <Self as EndpointAddress>::Established<B::Protocol>
       where B: Behavior<Protocol: Protocol<Addr = Self>>;
}
Expand description

Runtime-owned installed actor family for an address namespace.

The runtime must bind one protocol endpoint and its matching concrete lifecycle authority to the same incarnation before issuing this value. A namespace used only for protocol messaging implements RecipientAddress without this stronger port.

Required Associated Types§

Source

type Established<P>: Clone where P: Protocol<Addr = Self>

Source

type Installed<B>: Clone where B: Behavior<Protocol: Protocol<Addr = Self>>

Required Methods§

Source

fn recipient<B>( installed: &Self::Installed<B>, ) -> <Self as EndpointAddress>::Established<B::Protocol>
where B: Behavior<Protocol: Protocol<Addr = Self>>,

Project the message-only endpoint from one installed actor.

Dyn Compatibility§

This trait is not dyn compatible.

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

Implementors§