use http::StatusCode;
use topcoat_core::{context::Cx, error::Result};
use crate::{IntoResponse, Response};
#[must_use]
pub fn forbidden() -> ForbiddenError {
ForbiddenError::new()
}
#[derive(Debug)]
pub struct ForbiddenError {
_priv: (),
}
impl ForbiddenError {
fn new() -> Self {
Self { _priv: () }
}
}
impl std::fmt::Display for ForbiddenError {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
f.write_str("forbidden")
}
}
impl std::error::Error for ForbiddenError {}
impl IntoResponse for ForbiddenError {
fn into_response(self, cx: &Cx) -> Result<Response> {
(StatusCode::FORBIDDEN, "forbidden").into_response(cx)
}
}