#[non_exhaustive]pub enum ChunkMessageBody {
PutRequest(ChunkPutRequest),
PutResponse(ChunkPutResponse),
GetRequest(ChunkGetRequest),
GetResponse(ChunkGetResponse),
QuoteRequest(ChunkQuoteRequest),
QuoteResponse(ChunkQuoteResponse),
MerkleCandidateQuoteRequest(MerkleCandidateQuoteRequest),
MerkleCandidateQuoteResponse(MerkleCandidateQuoteResponse),
QuoteRequestV2(ChunkQuoteRequestV2),
MerkleCandidateQuoteRequestV2(MerkleCandidateQuoteRequestV2),
}Expand description
Enum of all chunk protocol message types.
Uses a single-byte discriminant for efficient wire encoding.
Marked #[non_exhaustive] so new message variants can be added
in a minor release without breaking downstream match expressions.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
PutRequest(ChunkPutRequest)
Request to store a chunk.
PutResponse(ChunkPutResponse)
Response to a PUT request.
GetRequest(ChunkGetRequest)
Request to retrieve a chunk.
GetResponse(ChunkGetResponse)
Response to a GET request.
QuoteRequest(ChunkQuoteRequest)
Request a storage quote.
QuoteResponse(ChunkQuoteResponse)
Response with a storage quote.
MerkleCandidateQuoteRequest(MerkleCandidateQuoteRequest)
Request a merkle candidate quote for batch payments.
MerkleCandidateQuoteResponse(MerkleCandidateQuoteResponse)
Response with a merkle candidate quote.
QuoteRequestV2(ChunkQuoteRequestV2)
Request a storage quote, declaring the client’s settlement version.
Appended after Self::MerkleCandidateQuoteResponse so every
discriminant above keeps its wire value and existing peers decode
unchanged. A peer built before this variant existed rejects it cleanly
as an unknown discriminant rather than misreading it.
MerkleCandidateQuoteRequestV2(MerkleCandidateQuoteRequestV2)
Request a merkle candidate quote, declaring the client’s settlement
version. Appended for the same reason as Self::QuoteRequestV2.
Trait Implementations§
Source§impl Clone for ChunkMessageBody
impl Clone for ChunkMessageBody
Source§fn clone(&self) -> ChunkMessageBody
fn clone(&self) -> ChunkMessageBody
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ChunkMessageBody
impl Debug for ChunkMessageBody
Source§impl<'de> Deserialize<'de> for ChunkMessageBody
impl<'de> Deserialize<'de> for ChunkMessageBody
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>,
Auto Trait Implementations§
impl !Freeze for ChunkMessageBody
impl RefUnwindSafe for ChunkMessageBody
impl Send for ChunkMessageBody
impl Sync for ChunkMessageBody
impl Unpin for ChunkMessageBody
impl UnsafeUnpin for ChunkMessageBody
impl UnwindSafe for ChunkMessageBody
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
impl<'de, T> BorrowedRpcObject<'de> for T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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> ⓘ
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> ⓘ
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