pub enum ShellError {
ModelNotFound {
path: PathBuf,
hint: String,
},
ModelCorrupted {
path: PathBuf,
hint: String,
},
ModelLoadFailed {
path: PathBuf,
cause: String,
},
InvalidInput {
message: String,
},
HistoryParseError {
path: PathBuf,
line: usize,
cause: String,
},
SecurityViolation {
command: String,
reason: String,
},
}Expand description
Errors that can occur in aprender-shell operations.
Each variant provides specific context and actionable hints for resolution. This eliminates the Cloudflare-class defects caused by unwrap()/expect().
Variants§
ModelNotFound
Model file was not found at the expected path
ModelCorrupted
Model file exists but is corrupted (checksum mismatch, invalid format)
ModelLoadFailed
Generic model loading failure
InvalidInput
Invalid input provided to a command
HistoryParseError
Error parsing history file
SecurityViolation
Security violation detected (sensitive command blocked)
Trait Implementations§
Source§impl Debug for ShellError
impl Debug for ShellError
Source§impl Display for ShellError
impl Display for ShellError
Source§impl Error for ShellError
impl Error for ShellError
1.30.0 · 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()
Auto Trait Implementations§
impl Freeze for ShellError
impl RefUnwindSafe for ShellError
impl Send for ShellError
impl Sync for ShellError
impl Unpin for ShellError
impl UnwindSafe for ShellError
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> 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