use rocket::Responder; #[derive(Responder, Debug)] pub enum BlossomError { #[response(status = 500)] Reqwest(&'static str, #[response(ignore)] reqwest::Error), #[response(status = 500)] ListenBrainz(&'static str, #[response(ignore)] listenbrainz::Error), #[response(status = 500)] Skinnyverse(&'static str, #[response(ignore)] mastodon_async::Error), } impl From for BlossomError { fn from(e: reqwest::Error) -> Self { BlossomError::Reqwest("reqwest error", e) } } impl From for BlossomError { fn from(e: listenbrainz::Error) -> Self { BlossomError::ListenBrainz("listenbrainz error", e) } } impl From for BlossomError { fn from(e: mastodon_async::Error) -> Self { BlossomError::Skinnyverse("skinnyverse error", e) } }