pub enum IndexError {
BadMagic,
UnsupportedVersion(u8),
BadStatus(u8),
Corrupt,
TooLarge,
InvalidPath(String),
DuplicatePath(String),
InvalidPathEncoding,
Io(Error),
Store(StoreError),
NotTree,
TreeTooDeep,
}Expand description
Errors returned by the index subsystem.
Variants§
BadMagic
Magic bytes were not "MKIX".
UnsupportedVersion(u8)
version byte was not 0x01.
BadStatus(u8)
Status byte was outside the documented {0x00..=0x04} range.
Corrupt
Truncated or otherwise malformed entry.
TooLarge
File exceeded MAX_INDEX_BYTES.
InvalidPath(String)
Path failed validate_index_path.
DuplicatePath(String)
Path appeared more than once in the same index.
InvalidPathEncoding
Path UTF-8 decoding failed.
Io(Error)
Underlying I/O failure.
Store(StoreError)
Object store lookup/decoding failed while deriving an index from a tree.
NotTree
A tree walk found a non-tree object where a tree hash was expected.
TreeTooDeep
A tree walk exceeded MAX_TREE_DEPTH nesting levels — likely a
crafted untrusted repo trying to overflow the native stack.
Trait Implementations§
Source§impl Debug for IndexError
impl Debug for IndexError
Source§impl Display for IndexError
impl Display for IndexError
Source§impl Error for IndexError
impl Error for IndexError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Source§impl From<Error> for IndexError
impl From<Error> for IndexError
Source§impl From<IndexError> for DiffError
impl From<IndexError> for DiffError
Source§fn from(source: IndexError) -> Self
fn from(source: IndexError) -> Self
Converts to this type from the input type.
Source§impl From<IndexError> for GcRootsError
impl From<IndexError> for GcRootsError
Source§fn from(source: IndexError) -> Self
fn from(source: IndexError) -> Self
Converts to this type from the input type.
Source§impl From<IndexError> for StashError
impl From<IndexError> for StashError
Source§fn from(source: IndexError) -> Self
fn from(source: IndexError) -> Self
Converts to this type from the input type.
Source§impl From<StoreError> for IndexError
impl From<StoreError> for IndexError
Source§fn from(source: StoreError) -> Self
fn from(source: StoreError) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl !RefUnwindSafe for IndexError
impl !UnwindSafe for IndexError
impl Freeze for IndexError
impl Send for IndexError
impl Sync for IndexError
impl Unpin for IndexError
impl UnsafeUnpin for IndexError
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> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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