pub trait ModuleLifecycle: Debug + 'static {
// Provided methods
fn prepare(&self, _context: PrepareContext) -> ModuleFuture { ... }
fn activate(&self, _context: ActivateContext) -> ModuleFuture { ... }
fn deactivate(&self, _context: DeactivateContext) -> ModuleFuture { ... }
}Expand description
Adapter-facing lifecycle Interface for one Module Instance generation.
Provided Methods§
Sourcefn prepare(&self, _context: PrepareContext) -> ModuleFuture
fn prepare(&self, _context: PrepareContext) -> ModuleFuture
Reserves reversible resources without exposing external work.
Sourcefn activate(&self, _context: ActivateContext) -> ModuleFuture
fn activate(&self, _context: ActivateContext) -> ModuleFuture
Initializes the generation against already prepared dependencies.
Sourcefn deactivate(&self, _context: DeactivateContext) -> ModuleFuture
fn deactivate(&self, _context: DeactivateContext) -> ModuleFuture
Releases resources and work owned by this generation.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".