Handle

Trait Handle 

Source
pub trait Handle:
    Typename
    + Debug
    + Send
    + Sync
    + Serialize {
    // Required method
    fn handle<'life0, 'life1, 'async_trait>(
        &'life0 self,
        ctx: &'life1 Context,
        src: Ipv4Addr,
    ) -> Pin<Box<dyn Future<Output = Result<Vec<Instruction>, Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
}
Expand description

Every object that has this trait must be convertible from a Vecpak Binary representation and must be able to handle itself as a message

Required Methods§

Source

fn handle<'life0, 'life1, 'async_trait>( &'life0 self, ctx: &'life1 Context, src: Ipv4Addr, ) -> Pin<Box<dyn Future<Output = Result<Vec<Instruction>, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Handle a message returning instructions for upper layers

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§