pub enum TspError {
InvalidFormat {
message: String,
hint: String,
},
ChecksumMismatch {
expected: u32,
computed: u32,
},
ParseError {
file: PathBuf,
line: Option<usize>,
cause: String,
},
InvalidInstance {
message: String,
},
SolverFailed {
algorithm: String,
reason: String,
},
BudgetExhausted {
evaluations: usize,
best_found: f64,
},
Io(Error),
}Expand description
TSP-specific errors with actionable hints
Variants§
InvalidFormat
Invalid .apr file format
ChecksumMismatch
Checksum verification failed
ParseError
Instance parsing failed
InvalidInstance
Invalid instance data
SolverFailed
Solver failed to find solution
BudgetExhausted
Budget exhausted without convergence
Io(Error)
I/O error
Trait Implementations§
Source§impl Error for TspError
impl Error for TspError
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 TspError
impl !RefUnwindSafe for TspError
impl Send for TspError
impl Sync for TspError
impl Unpin for TspError
impl !UnwindSafe for TspError
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