diff options
author | HampusM <hampus@hampusmat.com> | 2023-10-01 22:15:28 +0200 |
---|---|---|
committer | HampusM <hampus@hampusmat.com> | 2023-10-01 22:16:10 +0200 |
commit | e0d399133b0c06011c9b775fd545ce649be37ff4 (patch) | |
tree | 5da31283d1cd182708f02c003ec5a741b8436153 /src/interfaces/injectable.rs | |
parent | 1fd1b6607f53eba5f753943fe854fa9acc0d9a68 (diff) |
feat: implement Injectable & AsyncInjectable for Default types
Diffstat (limited to 'src/interfaces/injectable.rs')
-rw-r--r-- | src/interfaces/injectable.rs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/interfaces/injectable.rs b/src/interfaces/injectable.rs index d82f042..1d3a1a7 100644 --- a/src/interfaces/injectable.rs +++ b/src/interfaces/injectable.rs @@ -30,3 +30,16 @@ impl<DIContainerT> Debug for dyn Injectable<DIContainerT> f.write_str("{}") } } + +impl<T, DIContainerT> Injectable<DIContainerT> for T +where + T: Default + 'static, +{ + fn resolve( + _: &DIContainerT, + _: DependencyHistory, + ) -> Result<TransientPtr<Self>, InjectableError> + { + Ok(TransientPtr::new(Self::default())) + } +} |