lrzcc_wire/error.rs
1use serde::{Deserialize, Serialize};
2use tabled::Tabled;
3
4#[derive(Clone, Debug, Serialize, Deserialize, Tabled)]
5pub struct ErrorResponse {
6 pub detail: String,
7}
8
9pub fn error_chain_fmt(
10 e: &impl std::error::Error,
11 f: &mut std::fmt::Formatter<'_>,
12) -> std::fmt::Result {
13 writeln!(f, "{}", e)?;
14 let mut current = e.source();
15 while let Some(cause) = current {
16 writeln!(f, "caused by: {}", cause)?;
17 current = cause.source();
18 }
19 Ok(())
20}