mirror of
https://github.com/robertwayne/axum-htmx
synced 2024-11-27 13:44:55 +01:00
Impl StdError::source for HxError, closes #16
This commit is contained in:
parent
e8a0b94d03
commit
7a7c7e5ae9
1 changed files with 11 additions and 3 deletions
14
src/error.rs
14
src/error.rs
|
@ -29,14 +29,22 @@ impl From<serde_json::Error> for HxError {
|
||||||
impl fmt::Display for HxError {
|
impl fmt::Display for HxError {
|
||||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||||
match self {
|
match self {
|
||||||
HxError::InvalidHeaderValue(err) => write!(f, "Invalid header value: {err}"),
|
HxError::InvalidHeaderValue(_) => write!(f, "Invalid header value"),
|
||||||
#[cfg(feature = "serde")]
|
#[cfg(feature = "serde")]
|
||||||
HxError::Json(err) => write!(f, "Json: {err}"),
|
HxError::Json(_) => write!(f, "Json"),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl error::Error for HxError {}
|
impl error::Error for HxError {
|
||||||
|
fn source(&self) -> Option<&(dyn error::Error + 'static)> {
|
||||||
|
match self {
|
||||||
|
HxError::InvalidHeaderValue(ref e) => Some(e),
|
||||||
|
#[cfg(feature = "serde")]
|
||||||
|
HxError::Json(ref e) => Some(e),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl IntoResponse for HxError {
|
impl IntoResponse for HxError {
|
||||||
fn into_response(self) -> axum_core::response::Response {
|
fn into_response(self) -> axum_core::response::Response {
|
||||||
|
|
Loading…
Reference in a new issue