use thiserror::Error;
pub type Result<T> = core::result::Result<T, RoutingError>;
#[derive(Debug, Error)]
pub enum RoutingError {
#[error("config error: {0}")]
Config(String),
#[error("dds runtime error: {0}")]
Dds(String),
#[error("type shape unavailable for route '{route}': {reason}")]
TypeShape {
route: String,
reason: String,
},
#[error("filter error in route '{route}': {reason}")]
Filter {
route: String,
reason: String,
},
#[error("transform error in route '{route}': {reason}")]
Transform {
route: String,
reason: String,
},
#[error("internal: {0}")]
Internal(&'static str),
}