pub trait InjectableFactory<T: Send + Sync + 'static> {
// Required methods
fn create_instance<R: DependencyResolver>(
resolver: &R,
) -> Result<T, CoreError>;
fn dependencies() -> Vec<ServiceId>;
}
Expand description
Factory trait for creating services with dependency injection
Required Methods§
Sourcefn create_instance<R: DependencyResolver>(resolver: &R) -> Result<T, CoreError>
fn create_instance<R: DependencyResolver>(resolver: &R) -> Result<T, CoreError>
Create an instance with the given parameters
Sourcefn dependencies() -> Vec<ServiceId>
fn dependencies() -> Vec<ServiceId>
Get the dependencies this factory requires
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.