Skip to content

Commit dca7a85

Browse files
committed
Simplify Session::request_port_forward impl
Remove `inner` for dedup monomorphization. Signed-off-by: Jiahao XU <[email protected]>
1 parent 2de9ca9 commit dca7a85

File tree

3 files changed

+18
-33
lines changed

3 files changed

+18
-33
lines changed

src/native_mux_impl/session.rs

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -51,17 +51,13 @@ impl Session {
5151

5252
pub(crate) async fn request_port_forward(
5353
&self,
54-
forward_type: impl Into<ForwardType>,
55-
listen_socket: impl Into<Socket<'_>>,
56-
connect_socket: impl Into<Socket<'_>>,
54+
forward_type: ForwardType,
55+
listen_socket: Socket<'_>,
56+
connect_socket: Socket<'_>,
5757
) -> Result<(), Error> {
5858
Connection::connect(&self.ctl)
5959
.await?
60-
.request_port_forward(
61-
forward_type.into(),
62-
&listen_socket.into(),
63-
&connect_socket.into(),
64-
)
60+
.request_port_forward(forward_type, &listen_socket, &connect_socket)
6561
.await?;
6662

6763
Ok(())

src/process_impl/session.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -104,18 +104,18 @@ impl Session {
104104

105105
pub(crate) async fn request_port_forward(
106106
&self,
107-
forward_type: impl Into<ForwardType>,
108-
listen_socket: impl Into<Socket<'_>>,
109-
connect_socket: impl Into<Socket<'_>>,
107+
forward_type: ForwardType,
108+
listen_socket: Socket<'_>,
109+
connect_socket: Socket<'_>,
110110
) -> Result<(), Error> {
111-
let flag = match forward_type.into() {
111+
let flag = match forward_type {
112112
ForwardType::Local => OsStr::new("-L"),
113113
ForwardType::Remote => OsStr::new("-R"),
114114
};
115115

116-
let mut forwarding = listen_socket.into().as_os_str().into_owned();
116+
let mut forwarding = listen_socket.as_os_str().into_owned();
117117
forwarding.push(":");
118-
forwarding.push(connect_socket.into().as_os_str());
118+
forwarding.push(connect_socket.as_os_str());
119119

120120
let port_forwarding = self
121121
.new_cmd(&[OsStr::new("-fNT"), flag, &*forwarding])

src/session.rs

Lines changed: 8 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -320,25 +320,14 @@ impl Session {
320320
listen_socket: impl Into<Socket<'_>>,
321321
connect_socket: impl Into<Socket<'_>>,
322322
) -> Result<(), Error> {
323-
async fn inner(
324-
this: &Session,
325-
forward_type: ForwardType,
326-
listen_socket: Socket<'_>,
327-
connect_socket: Socket<'_>,
328-
) -> Result<(), Error> {
329-
delegate!(&this.0, imp, {
330-
imp.request_port_forward(forward_type, listen_socket, connect_socket)
331-
.await
332-
})
333-
}
334-
335-
inner(
336-
self,
337-
forward_type.into(),
338-
listen_socket.into(),
339-
connect_socket.into(),
340-
)
341-
.await
323+
delegate!(&self.0, imp, {
324+
imp.request_port_forward(
325+
forward_type.into().into(),
326+
listen_socket.into().into(),
327+
connect_socket.into().into(),
328+
)
329+
.await
330+
})
342331
}
343332

344333
/// Terminate the remote connection.

0 commit comments

Comments
 (0)