Trait Starter

Source
pub trait Starter {
    // Required methods
    async fn start(self, port: u16, header: &str) -> Result<()>;
    async fn start_from_listener(
        self,
        listener: TcpListener,
        header: &str,
    ) -> Result<()>;

    // Provided method
    async fn start_gen<T: Starter>(
        port: u16,
        magic_header: &str,
        gen: impl FnOnce() -> T,
    ) -> Result<()> { ... }
}

Required Methods§

Source

async fn start(self, port: u16, header: &str) -> Result<()>

Source

async fn start_from_listener( self, listener: TcpListener, header: &str, ) -> Result<()>

Provided Methods§

Source

async fn start_gen<T: Starter>( port: u16, magic_header: &str, gen: impl FnOnce() -> T, ) -> Result<()>

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§