[][src]Trait tari_comms::protocol::ProtocolExtension

pub trait ProtocolExtension: Send + Sync {
    fn install(
        self: Box<Self>,
        context: &mut ProtocolExtensionContext
    ) -> Result<(), ProtocolExtensionError>; }

Required methods

fn install(
    self: Box<Self>,
    context: &mut ProtocolExtensionContext
) -> Result<(), ProtocolExtensionError>
[src]

Loading content...

Implementors

impl ProtocolExtension for Protocols<Substream>[src]

Protocols itself is a ProtocolExtension. When installed the protocol names and notifiers are simply moved (drained) over to the ExtensionContext.

impl<F> ProtocolExtension for F where
    F: FnOnce(&mut ProtocolExtensionContext) -> Result<(), ProtocolExtensionError> + Send + Sync
[src]

impl<TInPipe, TOutPipe, TOutReq> ProtocolExtension for MessagingProtocolExtension<TInPipe, TOutPipe, TOutReq> where
    TOutPipe: Service<TOutReq, Response = ()> + Clone + Send + Sync + 'static,
    TOutPipe::Error: Display + Send + Sync,
    TOutPipe::Future: Send + Sync + 'static,
    TInPipe: Service<InboundMessage> + Clone + Send + Sync + 'static,
    TInPipe::Error: Display + Send + Sync,
    TInPipe::Future: Send + Sync + 'static,
    TOutReq: Send + Sync + 'static, 
[src]

Loading content...