aboutsummaryrefslogtreecommitdiff
path: root/vendor/miette/src/eyreish/fmt.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/miette/src/eyreish/fmt.rs')
-rw-r--r--vendor/miette/src/eyreish/fmt.rs20
1 files changed, 20 insertions, 0 deletions
diff --git a/vendor/miette/src/eyreish/fmt.rs b/vendor/miette/src/eyreish/fmt.rs
new file mode 100644
index 0000000..9e385d1
--- /dev/null
+++ b/vendor/miette/src/eyreish/fmt.rs
@@ -0,0 +1,20 @@
+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))
+ }
+}