From ea0309436b55d72f57478ed6f74bf31d000f5366 Mon Sep 17 00:00:00 2001 From: HampusM Date: Sat, 3 Sep 2022 11:49:49 +0200 Subject: refactor: improve DI container cast errors --- src/errors/di_container.rs | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'src/errors/di_container.rs') diff --git a/src/errors/di_container.rs b/src/errors/di_container.rs index 82a3d55..5e53f43 100644 --- a/src/errors/di_container.rs +++ b/src/errors/di_container.rs @@ -11,8 +11,17 @@ use crate::errors::injectable::InjectableError; pub enum DIContainerError { /// Unable to cast a binding for a interface. - #[error("Unable to cast binding for interface '{0}'")] - CastFailed(&'static str), + #[error( + "Unable to cast binding for interface '{interface} with kind '{binding_kind}'" + )] + CastFailed + { + /// The interface. + interface: &'static str, + + /// The kind of the found binding. + binding_kind: &'static str, + }, /// Failed to resolve a binding for a interface. #[error("Failed to resolve binding for interface '{interface}'")] -- cgit v1.2.3-18-g5258