Skip to main content

BimodalArrayError

Enum BimodalArrayError 

Source
pub enum BimodalArrayError {
    UnsupportedLength,
    AllocationFailed(TryReserveError),
    CouldNotAcquireArrayLock,
    CouldNotAcquireElementLock,
}
Expand description

Errors that can occur when constructing or using a bimodal_array.

Variants§

§

UnsupportedLength

The provided collection length is not supported.

Internally, bimodal_array reserves certain length values for state encoding. Currently, a length of usize::MAX is rejected.

§

AllocationFailed(TryReserveError)

Allocation failed.

This typically occurs when reserving memory for the element handle storage. The contained TryReserveError provides additional details about whether the failure was due to capacity overflow or allocator refusal.

§

CouldNotAcquireArrayLock

The array-wide lock could not be acquired.

This happens when one or more ElementGuard<T> values are currently active.

§

CouldNotAcquireElementLock

The element-level lock could not be acquired.

This happens when an ArrayGuard<T> is currently active.

Trait Implementations§

Source§

impl Debug for BimodalArrayError

Source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

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

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

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

Source§

type Error = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

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

Source§

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

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

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

Performs the conversion.