use std::fmt::{Display, Formatter};
pub type Result<T> = std::result::Result<T, TopologyError>;
#[derive(Debug, Clone, PartialEq, Eq)]
pub enum TopologyError {
InvalidGeometry(String),
Conversion(String),
Io(String),
}
impl Display for TopologyError {
fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result {
match self {
Self::InvalidGeometry(msg) => write!(f, "invalid geometry: {msg}"),
Self::Conversion(msg) => write!(f, "conversion error: {msg}"),
Self::Io(msg) => write!(f, "io error: {msg}"),
}
}
}
impl std::error::Error for TopologyError {}