Trait LoaderServerHandler

Source
pub trait LoaderServerHandler<___T: Transport> {
    // Required methods
    fn done(
        &mut self,
        sender: &ServerSender<Loader, ___T>,
    ) -> impl Future<Output = ()> + Send;
    fn load_object(
        &mut self,
        sender: &ServerSender<Loader, ___T>,
        request: Request<LoadObject, ___T>,
        responder: Responder<LoadObject>,
    ) -> impl Future<Output = ()> + Send;
    fn config(
        &mut self,
        sender: &ServerSender<Loader, ___T>,
        request: Request<Config, ___T>,
        responder: Responder<Config>,
    ) -> impl Future<Output = ()> + Send;
    fn clone(
        &mut self,
        sender: &ServerSender<Loader, ___T>,
        request: Request<Clone, ___T>,
        responder: Responder<Clone>,
    ) -> impl Future<Output = ()> + Send;
}
Expand description

A server handler for the Loader protocol.

See Loader for more details.

Required Methods§

Source

fn done( &mut self, sender: &ServerSender<Loader, ___T>, ) -> impl Future<Output = ()> + Send

Cleanly shutdown the connection to the Loader service.

Source

fn load_object( &mut self, sender: &ServerSender<Loader, ___T>, request: Request<LoadObject, ___T>, responder: Responder<LoadObject>, ) -> impl Future<Output = ()> + Send

The dynamic linker sends object_name and gets back a VMO handle containing the file.

Source

fn config( &mut self, sender: &ServerSender<Loader, ___T>, request: Request<Config, ___T>, responder: Responder<Config>, ) -> impl Future<Output = ()> + Send

The dynamic linker sends a config identifying its load configuration. This is intended to affect how later LoadObject requests decide what particular implementation file to supply for a given name.

Source

fn clone( &mut self, sender: &ServerSender<Loader, ___T>, request: Request<Clone, ___T>, responder: Responder<Clone>, ) -> impl Future<Output = ()> + Send

Obtain a new loader service connection.

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§