#[non_exhaustive]pub enum InboundDelegateMsg<'a> {
ApplicationMessage(ApplicationMessage),
UserResponse(UserInputResponse<'a>),
GetContractResponse(GetContractResponse),
PutContractResponse(PutContractResponse),
UpdateContractResponse(UpdateContractResponse),
SubscribeContractResponse(SubscribeContractResponse),
ContractNotification(ContractNotification),
DelegateMessage(DelegateMessage),
}Expand description
Messages delivered into a delegate’s process() function.
This is the inbound counterpart of OutboundDelegateMsg and sits on the
host↔delegate wire boundary. Marked #[non_exhaustive] so future variants
can be added without a source-level break; downstream match sites must
include a wildcard arm. This matches the pre-existing #[non_exhaustive]
on OutboundDelegateMsg.
Wire format: bincode with variant index 0..=N in declaration order. The
inbound_delegate_msg_wire_format_is_stable test pins the bytes for
ApplicationMessage(..) so that refactors cannot silently shift the tag.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
ApplicationMessage(ApplicationMessage)
UserResponse(UserInputResponse<'a>)
GetContractResponse(GetContractResponse)
PutContractResponse(PutContractResponse)
UpdateContractResponse(UpdateContractResponse)
SubscribeContractResponse(SubscribeContractResponse)
ContractNotification(ContractNotification)
DelegateMessage(DelegateMessage)
Implementations§
Source§impl InboundDelegateMsg<'_>
impl InboundDelegateMsg<'_>
pub fn into_owned(self) -> InboundDelegateMsg<'static>
pub fn get_context(&self) -> Option<&DelegateContext>
pub fn get_mut_context(&mut self) -> Option<&mut DelegateContext>
Trait Implementations§
Source§impl<'a> Clone for InboundDelegateMsg<'a>
impl<'a> Clone for InboundDelegateMsg<'a>
Source§fn clone(&self) -> InboundDelegateMsg<'a>
fn clone(&self) -> InboundDelegateMsg<'a>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<'a> Debug for InboundDelegateMsg<'a>
impl<'a> Debug for InboundDelegateMsg<'a>
Source§impl<'de: 'a, 'a> Deserialize<'de> for InboundDelegateMsg<'a>
impl<'de: 'a, 'a> Deserialize<'de> for InboundDelegateMsg<'a>
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<ApplicationMessage> for InboundDelegateMsg<'_>
impl From<ApplicationMessage> for InboundDelegateMsg<'_>
Source§fn from(value: ApplicationMessage) -> Self
fn from(value: ApplicationMessage) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl<'a> Freeze for InboundDelegateMsg<'a>
impl<'a> RefUnwindSafe for InboundDelegateMsg<'a>
impl<'a> Send for InboundDelegateMsg<'a>
impl<'a> Sync for InboundDelegateMsg<'a>
impl<'a> Unpin for InboundDelegateMsg<'a>
impl<'a> UnsafeUnpin for InboundDelegateMsg<'a>
impl<'a> UnwindSafe for InboundDelegateMsg<'a>
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