From 5111a3d5749625c3d8e26a24a5a32c4da58f18d3 Mon Sep 17 00:00:00 2001 From: hozan23 Date: Thu, 30 Nov 2023 23:51:18 +0300 Subject: net: Use ToConn and ToListener traits for objects that can be converted to Conn and Listener. --- net/src/transports/unix.rs | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) (limited to 'net/src/transports/unix.rs') diff --git a/net/src/transports/unix.rs b/net/src/transports/unix.rs index c546333..3867040 100644 --- a/net/src/transports/unix.rs +++ b/net/src/transports/unix.rs @@ -6,7 +6,12 @@ use smol::{ net::unix::{UnixListener, UnixStream}, }; -use crate::{connection::Connection, endpoint::Endpoint, listener::ConnListener, Error, Result}; +use crate::{ + connection::{Connection, ToConn}, + endpoint::Endpoint, + listener::{ConnListener, ToListener}, + Error, Result, +}; /// Unix domain socket implementation of the [`Connection`] trait. pub struct UnixConn { @@ -86,3 +91,21 @@ impl From for Box { Box::new(listener) } } + +impl ToConn for UnixStream { + fn to_conn(self) -> Box { + self.into() + } +} + +impl ToConn for UnixConn { + fn to_conn(self) -> Box { + Box::new(self) + } +} + +impl ToListener for UnixListener { + fn to_listener(self) -> Box { + self.into() + } +} -- cgit v1.2.3