pub enum FragmentResponse {
Found {
data: Vec<u8>,
},
FoundMany {
fragments: Vec<(String, Vec<u8>)>,
},
NotFound,
Stored,
StoreFailed {
reason: String,
},
Pong {
nonce: u64,
},
ProofOfStorageOk {
proof: [u8; 32],
},
}Expand description
Response to a fragment request.
Variants§
Found
Single fragment found (response to Fetch).
FoundMany
Multiple fragments found (response to FetchChunkFragments).
NotFound
Fragment/chunk not found on this peer.
Stored
Fragment stored successfully (response to Store).
StoreFailed
Store failed (response to Store).
Pong
Pong response to a Ping — echoes the nonce.
ProofOfStorageOk
Proof-of-Storage response: BLAKE3(fragment_data || nonce.to_le_bytes()).
Returned by a Pouch that successfully loaded the challenged fragment.
Trait Implementations§
Source§impl Clone for FragmentResponse
impl Clone for FragmentResponse
Source§fn clone(&self) -> FragmentResponse
fn clone(&self) -> FragmentResponse
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 FragmentResponse
impl Debug for FragmentResponse
Source§impl<'de> Deserialize<'de> for FragmentResponse
impl<'de> Deserialize<'de> for FragmentResponse
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 FragmentResponse
impl RefUnwindSafe for FragmentResponse
impl Send for FragmentResponse
impl Sync for FragmentResponse
impl Unpin for FragmentResponse
impl UnwindSafe for FragmentResponse
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,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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