Skip to main content

AbstractSocketBackend

Trait AbstractSocketBackend 

Source
pub trait AbstractSocketBackend {
    type Socket;
    type Message;
    type Param;

    // Required methods
    fn client() -> Self::Param;
    fn server() -> Self::Param;
    fn create_client_socket(
        &mut self,
        param: &PSocketParam,
        extra_param: &Self::Param,
    ) -> Self::Socket;
    fn create_server_socket(
        &mut self,
        param: &PSocketParam,
        extra_param: &Self::Param,
    ) -> Self::Socket;
}
Expand description

Abtract implementation of a socket backend. It defines what is a socket type, the type of the extra parameters to be used to initialise its sockets and also what is the type of message to be used with this particular bakend.

Required Associated Types§

Source

type Socket

Socket to be used with the backend

Source

type Message

Message to be used with the backend

Source

type Param

Extra parameters to be used with the backend

Required Methods§

Source

fn client() -> Self::Param

Default parameters for a client socket

§Returns

Default parameters for a client socket

Source

fn server() -> Self::Param

Default parameters for a server socket

§Returns

Default parameters for a server socket

Source

fn create_client_socket( &mut self, param: &PSocketParam, extra_param: &Self::Param, ) -> Self::Socket

Create a client Socket

§Parameters
  • param : parameters to be used to create the basic socket (hostname, port)
  • extra_param : extra parameters to be used to create the socket
§Returns

client socket

Source

fn create_server_socket( &mut self, param: &PSocketParam, extra_param: &Self::Param, ) -> Self::Socket

Create a server Socket

§Parameters
  • param : parameters to be used to create the basic socket (hostname, port)
  • extra_param : extra parameters to be used to create the socket
§Returns

server socket

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§