#[derive(thiserror::Error, Debug)]
pub enum LibError {
#[error("InfallibleError: {0}")]
InfallibleError(#[from] std::convert::Infallible),
#[error("StdIoError: {0}")]
StdIoError(#[from] std::io::Error),
#[error("ParseIntError: {0}")]
ParseIntError(#[from] std::num::ParseIntError),
#[allow(dead_code)]
#[error("{0}")]
ErrorFromString(String),
#[allow(dead_code)]
#[error("{0}")]
ErrorFromStr(&'static str),
}
#[allow(dead_code)]
pub type ResultWithLibError<T, E = LibError> = core::result::Result<T, E>;