use super::{error::ErrorImpl, ptr::Ref}; use core::fmt; impl ErrorImpl<()> { pub(crate) unsafe fn display(this: Ref<'_, Self>, f: &mut fmt::Formatter<'_>) -> fmt::Result { this.deref() .handler .as_ref() .map(|handler| handler.display(Self::error(this), f)) .unwrap_or_else(|| core::fmt::Display::fmt(Self::diagnostic(this), f)) } pub(crate) unsafe fn debug(this: Ref<'_, Self>, f: &mut fmt::Formatter<'_>) -> fmt::Result { this.deref() .handler .as_ref() .map(|handler| handler.debug(Self::diagnostic(this), f)) .unwrap_or_else(|| core::fmt::Debug::fmt(Self::diagnostic(this), f)) } }