pub enum SmudgeError {
Io(Error),
ObjectMissing(Pointer),
FetchFailed(FetchError),
ExtensionNotConfigured {
name: String,
},
ExtensionMissingCommand {
name: String,
},
ExtensionSpawnFailed {
name: String,
source: Error,
},
ExtensionFailed {
name: String,
status: Option<i32>,
},
OidMismatch {
stage: String,
expected: Oid,
actual: Oid,
},
}Variants§
Io(Error)
ObjectMissing(Pointer)
The pointer references an object that isn’t in the local store.
smudge_with_fetch handles this by invoking the caller’s fetch
closure; bare smudge surfaces it for the caller to react to.
FetchFailed(FetchError)
The fetch closure passed to smudge_with_fetch failed to produce
the missing object.
ExtensionNotConfigured
Pointer references an extension by name that isn’t configured in
lfs.extension.<name>.smudge. Mirrors upstream’s
extension '%s' is not configured.
ExtensionMissingCommand
Configured extension has an empty smudge command.
ExtensionSpawnFailed
Failed to spawn the extension subprocess.
ExtensionFailed
Extension subprocess exited non-zero.
OidMismatch
An extension’s output (or the stored object’s content) didn’t hash to the OID recorded in the pointer. Either the extension is non-deterministic, the on-disk object is corrupt, or the extension is the wrong implementation for what cleaned the file.
Trait Implementations§
Source§impl Debug for SmudgeError
impl Debug for SmudgeError
Source§impl Display for SmudgeError
impl Display for SmudgeError
Source§impl Error for SmudgeError
impl Error for SmudgeError
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()
Auto Trait Implementations§
impl Freeze for SmudgeError
impl !RefUnwindSafe for SmudgeError
impl Send for SmudgeError
impl Sync for SmudgeError
impl Unpin for SmudgeError
impl UnsafeUnpin for SmudgeError
impl !UnwindSafe for SmudgeError
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
Source§impl<T> ErrorExt for T
impl<T> ErrorExt for T
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> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.