]> git.lizzy.rs Git - mt_net.git/commitdiff
Implement Clone for MtSender
authorLizzy Fleckenstein <eliasfleckenstein@web.de>
Thu, 16 Feb 2023 16:17:45 +0000 (17:17 +0100)
committerLizzy Fleckenstein <eliasfleckenstein@web.de>
Thu, 16 Feb 2023 19:25:00 +0000 (20:25 +0100)
src/conn.rs

index 3fc0e55403371ebb8f37d3e294dc394160db8fca..b5224d1abe85ad1339ce15b977833a6436fbb13f 100644 (file)
@@ -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())
+    }
+}