Skip to main content

BlobError

Enum BlobError 

Source
pub enum BlobError {
    InvalidHeader,
    UnallocatedId,
    UncommittedIndex,
    InvalidIndex,
}
Expand description

Possible error conditions when retrieving a blob by ID, either via iteration or get_blob().

Variants§

§

InvalidHeader

The header was invalid (purportedly either with indices extending past the blob head offset or the blob head offset extending past the length of the buffer). Suggests invalid initialization or corruption.

§

UnallocatedId

The requested ID has not yet been allocated.

§

UncommittedIndex

Suggests a lost race in which the requested ID is valid and the header has been updated to reflect that, but the bookkeeping index has not yet been committed. Such a case unfortunately is indistinguishable from the other possibility that the index was already committed but then subsequently corrupted with zeroes. Where there is confidence in the first case, this call should be retried.

§

InvalidIndex

The corresponding bookkeeping index is invalid, with the blob purportedly not being contained within [blob head, end of region). Suggests corruption.

Trait Implementations§

Source§

impl Clone for BlobError

Source§

fn clone(&self) -> BlobError

Returns a duplicate of the value. Read more
1.0.0 (const: unstable)§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for BlobError

Source§

impl Debug for BlobError

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for BlobError

Source§

impl From<BlobError> for Status

Source§

fn from(err: BlobError) -> Self

Converts to this type from the input type.
Source§

impl PartialEq for BlobError

Source§

fn eq(&self, other: &BlobError) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable)§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for BlobError

Auto Trait Implementations§

§

impl Freeze for BlobError

§

impl RefUnwindSafe for BlobError

§

impl Send for BlobError

§

impl Sync for BlobError

§

impl Unpin for BlobError

§

impl UnsafeUnpin for BlobError

§

impl UnwindSafe for BlobError

Blanket Implementations§

§

impl<T> Any for T
where T: 'static + ?Sized,

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> Borrow<T> for T
where T: ?Sized,

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

impl<T> BorrowMut<T> for T
where T: ?Sized,

§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> CloneToUninit for T
where T: Clone,

§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T, U> Into<U> for T
where U: From<T>,

§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = !

The type returned in the event of a conversion error.
§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.