Skip to main content

ReplyRoute

Enum ReplyRoute 

Source
pub enum ReplyRoute<P>{
    Logical(Recipient<P>),
    Established(EstablishedRecipient<P>),
}
Expand description

One customer capability that truthfully retains logical or exact routing.

This closed sum is useful when one running actor must serve both stable logical customers and exact external customers through the same protocol. Selecting a variant does not resolve, weaken, or otherwise convert the enclosed capability. Address types without an established endpoint family continue to use Recipient<P> directly as their route parameter.

Variants§

§

Logical(Recipient<P>)

Resolve the logical name when the delivery is interpreted.

§

Established(EstablishedRecipient<P>)

Deliver to this one installed incarnation without name resolution.

Implementations§

Source§

impl<P> ReplyRoute<P>

Source

pub const fn logical(recipient: Recipient<P>) -> Self

Preserve one logical customer capability.

Source

pub const fn established(recipient: EstablishedRecipient<P>) -> Self

Preserve one exact installed customer capability.

Trait Implementations§

Source§

impl<P> Clone for ReplyRoute<P>

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<P> DeliveryRoute for ReplyRoute<P>

Source§

type Protocol = P

Protocol selected by this capability.
Source§

type Sends = ReplyDeliveries<Delivery<P>, EstablishedDelivery<P>>

The concrete sends product produced by this route.
Source§

fn deliver(self, message: P::Msg) -> Self::Sends

Consume the capability into one explicit ordered delivery product.
Source§

impl<P> From<EstablishedRecipient<P>> for ReplyRoute<P>

Source§

fn from(recipient: EstablishedRecipient<P>) -> Self

Converts to this type from the input type.
Source§

impl<P> From<Recipient<P>> for ReplyRoute<P>

Source§

fn from(recipient: Recipient<P>) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl<P> Freeze for ReplyRoute<P>
where <P as Protocol>::Addr: Sized + Freeze, <<P as Protocol>::Addr as EndpointAddress>::Established<P>: Freeze,

§

impl<P> RefUnwindSafe for ReplyRoute<P>

§

impl<P> Send for ReplyRoute<P>
where <P as Protocol>::Addr: Sized + Send, <<P as Protocol>::Addr as EndpointAddress>::Established<P>: Send,

§

impl<P> Sync for ReplyRoute<P>
where <P as Protocol>::Addr: Sized + Sync, <<P as Protocol>::Addr as EndpointAddress>::Established<P>: Sync,

§

impl<P> Unpin for ReplyRoute<P>
where <P as Protocol>::Addr: Sized + Unpin, <<P as Protocol>::Addr as EndpointAddress>::Established<P>: Unpin,

§

impl<P> UnsafeUnpin for ReplyRoute<P>

§

impl<P> UnwindSafe for ReplyRoute<P>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.