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>
impl<P> ReplyRoute<P>
Sourcepub const fn logical(recipient: Recipient<P>) -> Self
pub const fn logical(recipient: Recipient<P>) -> Self
Preserve one logical customer capability.
Sourcepub const fn established(recipient: EstablishedRecipient<P>) -> Self
pub const fn established(recipient: EstablishedRecipient<P>) -> Self
Preserve one exact installed customer capability.
Trait Implementations§
Source§impl<P> Clone for ReplyRoute<P>
impl<P> Clone for ReplyRoute<P>
Source§impl<P> DeliveryRoute for ReplyRoute<P>
impl<P> DeliveryRoute for ReplyRoute<P>
Source§type Sends = ReplyDeliveries<Delivery<P>, EstablishedDelivery<P>>
type Sends = ReplyDeliveries<Delivery<P>, EstablishedDelivery<P>>
The concrete sends product produced by this route.
Source§impl<P> From<EstablishedRecipient<P>> for ReplyRoute<P>
impl<P> From<EstablishedRecipient<P>> for ReplyRoute<P>
Source§fn from(recipient: EstablishedRecipient<P>) -> Self
fn from(recipient: EstablishedRecipient<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>where
<P as Protocol>::Addr: Sized + RefUnwindSafe,
<<P as Protocol>::Addr as EndpointAddress>::Established<P>: RefUnwindSafe,
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>where
<P as Protocol>::Addr: Sized + UnsafeUnpin,
<<P as Protocol>::Addr as EndpointAddress>::Established<P>: UnsafeUnpin,
impl<P> UnwindSafe for ReplyRoute<P>where
<P as Protocol>::Addr: Sized + UnwindSafe,
<<P as Protocol>::Addr as EndpointAddress>::Established<P>: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more