#[non_exhaustive]pub enum GcRootsError {
Show 13 variants
Refs(RefError),
Stash(StashError),
ConflictState(ConflictStateError),
Rebase(RebaseError),
Recovery(RecoveryError),
Index(IndexError),
Store(StoreError),
BadHash(FromHexError),
Io(Error),
Truncated,
RefTooDeep(String),
SymlinkedStore(String),
Worktrees(DiscoverError),
}Expand description
Errors from collecting the retention root set. Every underlying source error is wrapped so the collector can fail closed.
#[non_exhaustive]: new root sources (like the staging index, added
in 0.2.0) come with new variants; downstream matches must keep a
wildcard arm so those additions stay minor-version changes.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Refs(RefError)
Stash(StashError)
ConflictState(ConflictStateError)
Rebase(RebaseError)
Recovery(RecoveryError)
Index(IndexError)
Store(StoreError)
BadHash(FromHexError)
Io(Error)
Truncated
The reachable-object walk hit super::graph::MAX_REACHABLE
before completing. The live set is incomplete, so a caller must
abort rather than treat beyond-cap objects as prunable.
RefTooDeep(String)
A ref directory nested deeper than MAX_REF_WALK_DEPTH.
SymlinkedStore(String)
.mkit or .mkit/objects is a symlink. A deletion-capable gc
refuses, since pruning would follow the link and unlink files
outside the repo.
Worktrees(DiscoverError)
The linked-worktree registry could not be enumerated. Root collection must union EVERY tree’s per-tree state (#493 Phase 3); a partial view would let a sibling’s staged work be pruned.
Trait Implementations§
Source§impl Debug for GcRootsError
impl Debug for GcRootsError
Source§impl Display for GcRootsError
impl Display for GcRootsError
Source§impl Error for GcRootsError
impl Error for GcRootsError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl From<ConflictStateError> for GcRootsError
impl From<ConflictStateError> for GcRootsError
Source§fn from(source: ConflictStateError) -> Self
fn from(source: ConflictStateError) -> Self
Source§impl From<DiscoverError> for GcRootsError
impl From<DiscoverError> for GcRootsError
Source§fn from(source: DiscoverError) -> Self
fn from(source: DiscoverError) -> Self
Source§impl From<Error> for GcRootsError
impl From<Error> for GcRootsError
Source§impl From<FromHexError> for GcRootsError
impl From<FromHexError> for GcRootsError
Source§fn from(source: FromHexError) -> Self
fn from(source: FromHexError) -> Self
Source§impl From<IndexError> for GcRootsError
impl From<IndexError> for GcRootsError
Source§fn from(source: IndexError) -> Self
fn from(source: IndexError) -> Self
Source§impl From<RebaseError> for GcRootsError
impl From<RebaseError> for GcRootsError
Source§fn from(source: RebaseError) -> Self
fn from(source: RebaseError) -> Self
Source§impl From<RecoveryError> for GcRootsError
impl From<RecoveryError> for GcRootsError
Source§fn from(source: RecoveryError) -> Self
fn from(source: RecoveryError) -> Self
Source§impl From<RefError> for GcRootsError
impl From<RefError> for GcRootsError
Source§impl From<StashError> for GcRootsError
impl From<StashError> for GcRootsError
Source§fn from(source: StashError) -> Self
fn from(source: StashError) -> Self
Source§impl From<StoreError> for GcRootsError
impl From<StoreError> for GcRootsError
Source§fn from(source: StoreError) -> Self
fn from(source: StoreError) -> Self
Auto Trait Implementations§
impl !RefUnwindSafe for GcRootsError
impl !UnwindSafe for GcRootsError
impl Freeze for GcRootsError
impl Send for GcRootsError
impl Sync for GcRootsError
impl Unpin for GcRootsError
impl UnsafeUnpin for GcRootsError
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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>
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