pub enum Message<'a> {
Show 33 variants
OfferChannel(OfferChannel, &'a [u8]),
RescindChannelOffer(RescindChannelOffer, &'a [u8]),
RequestOffers(RequestOffers, &'a [u8]),
AllOffersDelivered(AllOffersDelivered, &'a [u8]),
OpenChannel2(OpenChannel2, &'a [u8]),
OpenChannel(OpenChannel, &'a [u8]),
OpenResult(OpenResult, &'a [u8]),
CloseChannel(CloseChannel, &'a [u8]),
GpadlHeader(GpadlHeader, &'a [u8]),
GpadlBody(GpadlBody, &'a [u8]),
GpadlCreated(GpadlCreated, &'a [u8]),
GpadlTeardown(GpadlTeardown, &'a [u8]),
GpadlTorndown(GpadlTorndown, &'a [u8]),
RelIdReleased(RelIdReleased, &'a [u8]),
InitiateContact2(InitiateContact2, &'a [u8]),
InitiateContact(InitiateContact, &'a [u8]),
VersionResponse2(VersionResponse2, &'a [u8]),
VersionResponse(VersionResponse, &'a [u8]),
Unload(Unload, &'a [u8]),
UnloadComplete(UnloadComplete, &'a [u8]),
OpenReservedChannel(OpenReservedChannel, &'a [u8]),
CloseReservedChannel(CloseReservedChannel, &'a [u8]),
CloseReservedChannelResponse(CloseReservedChannelResponse, &'a [u8]),
TlConnectRequest2(TlConnectRequest2, &'a [u8]),
TlConnectRequest(TlConnectRequest, &'a [u8]),
ModifyChannel(ModifyChannel, &'a [u8]),
TlConnectResult(TlConnectResult, &'a [u8]),
ModifyChannelResponse(ModifyChannelResponse, &'a [u8]),
ModifyConnection(ModifyConnection, &'a [u8]),
ModifyConnectionResponse(ModifyConnectionResponse, &'a [u8]),
Pause(Pause, &'a [u8]),
PauseResponse(PauseResponse, &'a [u8]),
Resume(Resume, &'a [u8]),
}
Expand description
Represents a parsed vmbus protocol message.
Variants§
OfferChannel(OfferChannel, &'a [u8])
RescindChannelOffer(RescindChannelOffer, &'a [u8])
RequestOffers(RequestOffers, &'a [u8])
AllOffersDelivered(AllOffersDelivered, &'a [u8])
OpenChannel2(OpenChannel2, &'a [u8])
OpenChannel(OpenChannel, &'a [u8])
OpenResult(OpenResult, &'a [u8])
CloseChannel(CloseChannel, &'a [u8])
GpadlHeader(GpadlHeader, &'a [u8])
GpadlBody(GpadlBody, &'a [u8])
GpadlCreated(GpadlCreated, &'a [u8])
GpadlTeardown(GpadlTeardown, &'a [u8])
GpadlTorndown(GpadlTorndown, &'a [u8])
RelIdReleased(RelIdReleased, &'a [u8])
InitiateContact2(InitiateContact2, &'a [u8])
InitiateContact(InitiateContact, &'a [u8])
VersionResponse2(VersionResponse2, &'a [u8])
VersionResponse(VersionResponse, &'a [u8])
Unload(Unload, &'a [u8])
UnloadComplete(UnloadComplete, &'a [u8])
OpenReservedChannel(OpenReservedChannel, &'a [u8])
CloseReservedChannel(CloseReservedChannel, &'a [u8])
CloseReservedChannelResponse(CloseReservedChannelResponse, &'a [u8])
TlConnectRequest2(TlConnectRequest2, &'a [u8])
TlConnectRequest(TlConnectRequest, &'a [u8])
ModifyChannel(ModifyChannel, &'a [u8])
TlConnectResult(TlConnectResult, &'a [u8])
ModifyChannelResponse(ModifyChannelResponse, &'a [u8])
ModifyConnection(ModifyConnection, &'a [u8])
ModifyConnectionResponse(ModifyConnectionResponse, &'a [u8])
Pause(Pause, &'a [u8])
PauseResponse(PauseResponse, &'a [u8])
Resume(Resume, &'a [u8])
Implementations§
Source§impl<'a> Message<'a>
impl<'a> Message<'a>
Sourcepub fn parse(
data: &'a [u8],
version: Option<VersionInfo>,
) -> Result<Self, ParseError>
pub fn parse( data: &'a [u8], version: Option<VersionInfo>, ) -> Result<Self, ParseError>
Parses a vmbus message received from the synic into an enum variant, only parsing messages that are supported by the specified protocol version.
Use None
for the version to only parse messages that are accepted in a
disconnected state.
Trait Implementations§
Auto Trait Implementations§
impl<'a> Freeze for Message<'a>
impl<'a> RefUnwindSafe for Message<'a>
impl<'a> Send for Message<'a>
impl<'a> Sync for Message<'a>
impl<'a> Unpin for Message<'a>
impl<'a> UnwindSafe for Message<'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