Trait krator::ObjectState[][src]

pub trait ObjectState: 'static + Sync + Send {
    type Manifest: Clone;
    type Status;
    type SharedState: 'static + Sync + Send;
#[must_use]    fn async_drop<'life0, 'async_trait>(
        self,
        shared: &'life0 mut Self::SharedState
    ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
; }

Interface for types which capture data related to a specific object that is passed between the object's state handlers.

Associated Types

type Manifest: Clone[src]

The manifest / definition of the resource. Pod, Custom Resource, etc. This does not need to implement Resource or Meta, but if it does not then you will not be able to use it with Operator and will have to write your own state::run_to_completion method.

type Status[src]

The status type of the state machine.

type SharedState: 'static + Sync + Send[src]

A type representing data shared between all state machines.

Loading content...

Required methods

#[must_use]fn async_drop<'life0, 'async_trait>(
    self,
    shared: &'life0 mut Self::SharedState
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
[src]

Clean up any resources when this object is deleted.

Loading content...

Implementors

Loading content...