RpcProtocol

Trait RpcProtocol 

Source
pub trait RpcProtocol: Send + Sync {
    type Invoker: Invoker;

    // Required methods
    fn export<'life0, 'async_trait>(
        &'life0 self,
        invoker: Arc<Box<dyn Invoker>>,
    ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    fn refer<'life0, 'async_trait>(
        &'life0 self,
        url: Url,
    ) -> Pin<Box<dyn Future<Output = Result<Arc<Self::Invoker>>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
}
Expand description

Protocol trait - Entry point for remote communication

Required Associated Types§

Required Methods§

Source

fn export<'life0, 'async_trait>( &'life0 self, invoker: Arc<Box<dyn Invoker>>, ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Source

fn refer<'life0, 'async_trait>( &'life0 self, url: Url, ) -> Pin<Box<dyn Future<Output = Result<Arc<Self::Invoker>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Implementors§