pub trait StorageAction<Client, Input>where
    Client: StorageClient + Send + ?Sized,{
    type Ok: Send + Sync;
    type Error: Debug + Send + StorageError;

    // Required method
    fn act<'life0, 'async_trait>(
        client: &'life0 Client,
        input: Input
    ) -> Pin<Box<dyn Future<Output = Result<Self::Ok, Self::Error>> + Send + 'async_trait>>
       where Client: 'async_trait,
             Input: 'async_trait,
             Self: 'async_trait,
             'life0: 'async_trait;
}
Expand description

Encapsulates the actual performance of a specific action given a suitable client and input.

Required Associated Types§

Required Methods§

source

fn act<'life0, 'async_trait>( client: &'life0 Client, input: Input ) -> Pin<Box<dyn Future<Output = Result<Self::Ok, Self::Error>> + Send + 'async_trait>>where Client: 'async_trait, Input: 'async_trait, Self: 'async_trait, 'life0: 'async_trait,

Carries out the intended action in the storage backend of Client.

Implementors§