From 8c66b98bca6ed0a2990903fe8e0ea72def5c7be8 Mon Sep 17 00:00:00 2001
From: HampusM <hampus@hampusmat.com>
Date: Sun, 21 Aug 2022 14:19:07 +0200
Subject: refactor!: change errors to be more sane

BREAKING CHANGE: Major improvements have been made to error types and the error_stack crate is no longer used
---
 src/interfaces/any_factory.rs | 10 ++++++++++
 src/interfaces/injectable.rs  | 14 ++++++++++++--
 2 files changed, 22 insertions(+), 2 deletions(-)

(limited to 'src/interfaces')

diff --git a/src/interfaces/any_factory.rs b/src/interfaces/any_factory.rs
index 98ec144..887bb61 100644
--- a/src/interfaces/any_factory.rs
+++ b/src/interfaces/any_factory.rs
@@ -1,6 +1,16 @@
 //! Interface for any factory to ever exist.
 
+use std::fmt::Debug;
+
 use crate::libs::intertrait::CastFrom;
 
 /// Interface for any factory to ever exist.
 pub trait AnyFactory: CastFrom {}
+
+impl Debug for dyn AnyFactory
+{
+    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result
+    {
+        f.write_str("{}")
+    }
+}
diff --git a/src/interfaces/injectable.rs b/src/interfaces/injectable.rs
index e6e4ced..f90b79d 100644
--- a/src/interfaces/injectable.rs
+++ b/src/interfaces/injectable.rs
@@ -1,5 +1,7 @@
 //! Interface for structs that can be injected into or be injected to.
-use crate::errors::injectable::ResolveError;
+use std::fmt::Debug;
+
+use crate::errors::injectable::InjectableError;
 use crate::libs::intertrait::CastFrom;
 use crate::ptr::TransientPtr;
 use crate::DIContainer;
@@ -14,7 +16,15 @@ pub trait Injectable: CastFrom
     fn resolve(
         di_container: &DIContainer,
         dependency_history: Vec<&'static str>,
-    ) -> error_stack::Result<TransientPtr<Self>, ResolveError>
+    ) -> Result<TransientPtr<Self>, InjectableError>
     where
         Self: Sized;
 }
+
+impl Debug for dyn Injectable
+{
+    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result
+    {
+        f.write_str("{}")
+    }
+}
-- 
cgit v1.2.3-18-g5258