use core::fmt;
use super::PermitDisposition;
pub struct PermitExecutionError<E> {
pub(crate) execution: super::super::PreparedExecutionError<E>,
pub(crate) disposition: PermitDisposition,
}
impl<E> PermitExecutionError<E> {
#[must_use]
pub const fn execution(&self) -> &super::super::PreparedExecutionError<E> {
&self.execution
}
#[must_use]
pub const fn disposition(&self) -> PermitDisposition {
self.disposition
}
}
impl<E> fmt::Debug for PermitExecutionError<E> {
fn fmt(&self, formatter: &mut fmt::Formatter<'_>) -> fmt::Result {
formatter
.debug_struct("PermitExecutionError")
.field("execution", &"[redacted]")
.field("disposition", &self.disposition)
.finish()
}
}
impl<E> fmt::Display for PermitExecutionError<E> {
fn fmt(&self, formatter: &mut fmt::Formatter<'_>) -> fmt::Result {
formatter.write_str("permit-authorized request execution failed")
}
}
impl<E> core::error::Error for PermitExecutionError<E> {}