pub struct ChunkMessage {
pub request_id: u64,
pub body: ChunkMessageBody,
}Expand description
Wire-format wrapper that pairs a sender-assigned request_id with
a ChunkMessageBody.
The sender picks a unique request_id; the handler echoes it back
in the response so callers can correlate replies by ID rather than
by source peer.
Fields§
§request_id: u64Sender-assigned identifier, echoed back in the response.
body: ChunkMessageBodyThe protocol message body.
Implementations§
Source§impl ChunkMessage
impl ChunkMessage
Sourcepub fn decode(data: &[u8]) -> Result<Self, ProtocolError>
pub fn decode(data: &[u8]) -> Result<Self, ProtocolError>
Decode a message from bytes using postcard.
Rejects payloads larger than MAX_WIRE_MESSAGE_SIZE before
attempting deserialization.
§Errors
Returns ProtocolError::MessageTooLarge if the input exceeds the
size limit, or ProtocolError::DeserializationFailed if postcard
cannot parse the data.
Trait Implementations§
Source§impl Clone for ChunkMessage
impl Clone for ChunkMessage
Source§fn clone(&self) -> ChunkMessage
fn clone(&self) -> ChunkMessage
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 Debug for ChunkMessage
impl Debug for ChunkMessage
Source§impl<'de> Deserialize<'de> for ChunkMessage
impl<'de> Deserialize<'de> for ChunkMessage
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
Auto Trait Implementations§
impl Freeze for ChunkMessage
impl RefUnwindSafe for ChunkMessage
impl Send for ChunkMessage
impl Sync for ChunkMessage
impl Unpin for ChunkMessage
impl UnsafeUnpin for ChunkMessage
impl UnwindSafe for ChunkMessage
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more