use SocketAddr;
use crateError;
/// A trait for sending and receiving data.
///
/// Both the server and client use a statically dispatched generic type `T: Transceiver` to send and receive data,
/// which allows you to use any type that implements this trait as your network socket for a `netcode` server or client.
///
/// See [`NetcodeSocket`](https://github.com/benny-n/netcode/blob/0147a2d11cb48dea59a637ca2f017912f3f6d9aa/src/socket.rs#L37) for an example implementation.
/// This is also the default implementation used by the server and client.