core_crypto_ffi::context

Trait CoreCryptoCommand

Source
pub trait CoreCryptoCommand: Send + Sync {
    // Required method
    fn execute<'life0, 'async_trait>(
        &'life0 self,
        context: Arc<CoreCryptoContext>,
    ) -> Pin<Box<dyn Future<Output = Result<(), CoreCryptoError>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
}

Required Methods§

Source

fn execute<'life0, 'async_trait>( &'life0 self, context: Arc<CoreCryptoContext>, ) -> Pin<Box<dyn Future<Output = Result<(), CoreCryptoError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Will be called inside a transaction in CoreCrypto

Trait Implementations§

Source§

impl<T> FfiConverterArc<T> for dyn CoreCryptoCommand

Source§

const TYPE_ID_META: MetadataBuffer

Source§

type FfiType = *const c_void

Source§

fn lower(obj: Arc<Self>) -> Self::FfiType

Source§

fn try_lift(v: Self::FfiType) -> Result<Arc<Self>>

Source§

fn write(obj: Arc<Self>, buf: &mut Vec<u8>)

Source§

fn try_read(buf: &mut &[u8]) -> Result<Arc<Self>>

Source§

impl<T> LiftRef<T> for dyn CoreCryptoCommand

Implementors§

Source§

impl<F, Fut> CoreCryptoCommand for F
where F: Fn(Arc<CoreCryptoContext>) -> Fut + Send + Sync, Fut: Future<Output = Result<(), CoreCryptoError>> + Send,

Source§

impl<T, F, Fut> CoreCryptoCommand for TransactionHelper<T, F>
where F: FnOnce(Arc<CoreCryptoContext>) -> Fut + Send + Sync, Fut: Future<Output = Result<T, CoreCryptoError>> + Send, T: Send + Sync,