Skip to main content

Lifecycle

Trait Lifecycle 

Source
pub trait Lifecycle: Clone + 'static {
    // Provided methods
    async fn prepare(
        &self,
        _context: PrepareContext,
    ) -> Result<(), RuntimeFailure> { ... }
    async fn activate(
        &self,
        _context: ActivateContext,
    ) -> Result<(), RuntimeFailure> { ... }
    async fn deactivate(
        &self,
        _context: DeactivateContext,
    ) -> Result<(), RuntimeFailure> { ... }
}
Expand description

Optional convention-based lifecycle hooks for a struct-level Module.

Add #[module(lifecycle)], implement this trait, and override only the phases that own real work. The generated Adapter lifecycle still connects declared Capability ports before activate.

Provided Methods§

Source

async fn prepare(&self, _context: PrepareContext) -> Result<(), RuntimeFailure>

Source

async fn activate( &self, _context: ActivateContext, ) -> Result<(), RuntimeFailure>

Source

async fn deactivate( &self, _context: DeactivateContext, ) -> Result<(), RuntimeFailure>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§