diff options
-rw-r--r-- | src/conn.rs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/conn.rs b/src/conn.rs index 3fc0e55..b5224d1 100644 --- a/src/conn.rs +++ b/src/conn.rs @@ -28,7 +28,10 @@ pub async fn connect(addr: &str) -> io::Result<(MtSender<RemoteSrv>, MtReceiver< /* +#[cfg(feature = "server")] pub struct RemoteClt; + +#[cfg(feature = "server")] impl Remote for RemoteClt { type Sender = mt_rudp::ToClt; type To = crate::ToCltPkt; @@ -37,7 +40,10 @@ impl Remote for RemoteClt { */ +#[derive(Debug)] pub struct MtSender<R: Remote>(pub mt_rudp::RudpSender<R::UdpSender>); + +#[derive(Debug)] pub struct MtReceiver<R: Remote>(pub mt_rudp::RudpReceiver<R::UdpSender>); #[derive(Error, Debug)] @@ -102,3 +108,10 @@ impl<R: Remote> MtSender<R> { Ok(()) } } + +// derive(Clone) adds unwanted trait bound to R +impl<R: Remote> Clone for MtSender<R> { + fn clone(&self) -> Self { + Self(self.0.clone()) + } +} |