Skip to content

Commit a04aae2

Browse files
author
KaiJewson
committed
Inline most raw socket, fd and handle conversions
1 parent 25376f5 commit a04aae2

File tree

11 files changed

+76
-0
lines changed

11 files changed

+76
-0
lines changed

Diff for: std/src/sys/sgx/ext/io.rs

+6
Original file line numberDiff line numberDiff line change
@@ -63,12 +63,14 @@ pub trait TryIntoRawFd: Sized {
6363
}
6464

6565
impl AsRawFd for net::TcpStream {
66+
#[inline]
6667
fn as_raw_fd(&self) -> RawFd {
6768
*self.as_inner().as_inner().as_inner().as_inner()
6869
}
6970
}
7071

7172
impl AsRawFd for net::TcpListener {
73+
#[inline]
7274
fn as_raw_fd(&self) -> RawFd {
7375
*self.as_inner().as_inner().as_inner().as_inner()
7476
}
@@ -87,6 +89,7 @@ pub struct TcpStreamMetadata {
8789
impl FromRawFd for net::TcpStream {
8890
type Metadata = TcpStreamMetadata;
8991

92+
#[inline]
9093
unsafe fn from_raw_fd(fd: RawFd, metadata: Self::Metadata) -> net::TcpStream {
9194
let fd = sys::fd::FileDesc::from_inner(fd);
9295
let socket = sys::net::Socket::from_inner((fd, metadata.local_addr));
@@ -105,6 +108,7 @@ pub struct TcpListenerMetadata {
105108
impl FromRawFd for net::TcpListener {
106109
type Metadata = TcpListenerMetadata;
107110

111+
#[inline]
108112
unsafe fn from_raw_fd(fd: RawFd, metadata: Self::Metadata) -> net::TcpListener {
109113
let fd = sys::fd::FileDesc::from_inner(fd);
110114
let socket = sys::net::Socket::from_inner((fd, metadata.local_addr));
@@ -113,6 +117,7 @@ impl FromRawFd for net::TcpListener {
113117
}
114118

115119
impl TryIntoRawFd for net::TcpStream {
120+
#[inline]
116121
fn try_into_raw_fd(self) -> Result<RawFd, Self> {
117122
let (socket, peer_addr) = self.into_inner().into_inner();
118123
match socket.try_into_inner() {
@@ -126,6 +131,7 @@ impl TryIntoRawFd for net::TcpStream {
126131
}
127132

128133
impl TryIntoRawFd for net::TcpListener {
134+
#[inline]
129135
fn try_into_raw_fd(self) -> Result<RawFd, Self> {
130136
match self.into_inner().into_inner().try_into_inner() {
131137
Ok(fd) => Ok(fd.into_inner()),

Diff for: std/src/sys/unix/ext/io.rs

+12
Original file line numberDiff line numberDiff line change
@@ -104,79 +104,91 @@ pub trait IntoRawFd {
104104

105105
#[stable(feature = "raw_fd_reflexive_traits", since = "1.48.0")]
106106
impl AsRawFd for RawFd {
107+
#[inline]
107108
fn as_raw_fd(&self) -> RawFd {
108109
*self
109110
}
110111
}
111112
#[stable(feature = "raw_fd_reflexive_traits", since = "1.48.0")]
112113
impl IntoRawFd for RawFd {
114+
#[inline]
113115
fn into_raw_fd(self) -> RawFd {
114116
self
115117
}
116118
}
117119
#[stable(feature = "raw_fd_reflexive_traits", since = "1.48.0")]
118120
impl FromRawFd for RawFd {
121+
#[inline]
119122
unsafe fn from_raw_fd(fd: RawFd) -> RawFd {
120123
fd
121124
}
122125
}
123126

124127
#[stable(feature = "rust1", since = "1.0.0")]
125128
impl AsRawFd for fs::File {
129+
#[inline]
126130
fn as_raw_fd(&self) -> RawFd {
127131
self.as_inner().fd().raw()
128132
}
129133
}
130134
#[stable(feature = "from_raw_os", since = "1.1.0")]
131135
impl FromRawFd for fs::File {
136+
#[inline]
132137
unsafe fn from_raw_fd(fd: RawFd) -> fs::File {
133138
fs::File::from_inner(sys::fs::File::from_inner(fd))
134139
}
135140
}
136141
#[stable(feature = "into_raw_os", since = "1.4.0")]
137142
impl IntoRawFd for fs::File {
143+
#[inline]
138144
fn into_raw_fd(self) -> RawFd {
139145
self.into_inner().into_fd().into_raw()
140146
}
141147
}
142148

143149
#[stable(feature = "asraw_stdio", since = "1.21.0")]
144150
impl AsRawFd for io::Stdin {
151+
#[inline]
145152
fn as_raw_fd(&self) -> RawFd {
146153
libc::STDIN_FILENO
147154
}
148155
}
149156

150157
#[stable(feature = "asraw_stdio", since = "1.21.0")]
151158
impl AsRawFd for io::Stdout {
159+
#[inline]
152160
fn as_raw_fd(&self) -> RawFd {
153161
libc::STDOUT_FILENO
154162
}
155163
}
156164

157165
#[stable(feature = "asraw_stdio", since = "1.21.0")]
158166
impl AsRawFd for io::Stderr {
167+
#[inline]
159168
fn as_raw_fd(&self) -> RawFd {
160169
libc::STDERR_FILENO
161170
}
162171
}
163172

164173
#[stable(feature = "asraw_stdio_locks", since = "1.35.0")]
165174
impl<'a> AsRawFd for io::StdinLock<'a> {
175+
#[inline]
166176
fn as_raw_fd(&self) -> RawFd {
167177
libc::STDIN_FILENO
168178
}
169179
}
170180

171181
#[stable(feature = "asraw_stdio_locks", since = "1.35.0")]
172182
impl<'a> AsRawFd for io::StdoutLock<'a> {
183+
#[inline]
173184
fn as_raw_fd(&self) -> RawFd {
174185
libc::STDOUT_FILENO
175186
}
176187
}
177188

178189
#[stable(feature = "asraw_stdio_locks", since = "1.35.0")]
179190
impl<'a> AsRawFd for io::StderrLock<'a> {
191+
#[inline]
180192
fn as_raw_fd(&self) -> RawFd {
181193
libc::STDERR_FILENO
182194
}

Diff for: std/src/sys/unix/ext/net/datagram.rs

+3
Original file line numberDiff line numberDiff line change
@@ -879,20 +879,23 @@ impl UnixDatagram {
879879

880880
#[stable(feature = "unix_socket", since = "1.10.0")]
881881
impl AsRawFd for UnixDatagram {
882+
#[inline]
882883
fn as_raw_fd(&self) -> RawFd {
883884
*self.0.as_inner()
884885
}
885886
}
886887

887888
#[stable(feature = "unix_socket", since = "1.10.0")]
888889
impl FromRawFd for UnixDatagram {
890+
#[inline]
889891
unsafe fn from_raw_fd(fd: RawFd) -> UnixDatagram {
890892
UnixDatagram(Socket::from_inner(fd))
891893
}
892894
}
893895

894896
#[stable(feature = "unix_socket", since = "1.10.0")]
895897
impl IntoRawFd for UnixDatagram {
898+
#[inline]
896899
fn into_raw_fd(self) -> RawFd {
897900
self.0.into_inner()
898901
}

Diff for: std/src/sys/unix/ext/net/listener.rs

+3
Original file line numberDiff line numberDiff line change
@@ -240,20 +240,23 @@ impl UnixListener {
240240

241241
#[stable(feature = "unix_socket", since = "1.10.0")]
242242
impl AsRawFd for UnixListener {
243+
#[inline]
243244
fn as_raw_fd(&self) -> RawFd {
244245
*self.0.as_inner()
245246
}
246247
}
247248

248249
#[stable(feature = "unix_socket", since = "1.10.0")]
249250
impl FromRawFd for UnixListener {
251+
#[inline]
250252
unsafe fn from_raw_fd(fd: RawFd) -> UnixListener {
251253
UnixListener(Socket::from_inner(fd))
252254
}
253255
}
254256

255257
#[stable(feature = "unix_socket", since = "1.10.0")]
256258
impl IntoRawFd for UnixListener {
259+
#[inline]
257260
fn into_raw_fd(self) -> RawFd {
258261
self.0.into_inner()
259262
}

Diff for: std/src/sys/unix/ext/net/raw_fd.rs

+3
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ macro_rules! impl_as_raw_fd {
66
($($t:ident)*) => {$(
77
#[stable(feature = "rust1", since = "1.0.0")]
88
impl AsRawFd for net::$t {
9+
#[inline]
910
fn as_raw_fd(&self) -> RawFd {
1011
*self.as_inner().socket().as_inner()
1112
}
@@ -18,6 +19,7 @@ macro_rules! impl_from_raw_fd {
1819
($($t:ident)*) => {$(
1920
#[stable(feature = "from_raw_os", since = "1.1.0")]
2021
impl FromRawFd for net::$t {
22+
#[inline]
2123
unsafe fn from_raw_fd(fd: RawFd) -> net::$t {
2224
let socket = sys::net::Socket::from_inner(fd);
2325
net::$t::from_inner(sys_common::net::$t::from_inner(socket))
@@ -31,6 +33,7 @@ macro_rules! impl_into_raw_fd {
3133
($($t:ident)*) => {$(
3234
#[stable(feature = "into_raw_os", since = "1.4.0")]
3335
impl IntoRawFd for net::$t {
36+
#[inline]
3437
fn into_raw_fd(self) -> RawFd {
3538
self.into_inner().into_socket().into_inner()
3639
}

Diff for: std/src/sys/unix/ext/net/stream.rs

+3
Original file line numberDiff line numberDiff line change
@@ -654,20 +654,23 @@ impl<'a> io::Write for &'a UnixStream {
654654

655655
#[stable(feature = "unix_socket", since = "1.10.0")]
656656
impl AsRawFd for UnixStream {
657+
#[inline]
657658
fn as_raw_fd(&self) -> RawFd {
658659
*self.0.as_inner()
659660
}
660661
}
661662

662663
#[stable(feature = "unix_socket", since = "1.10.0")]
663664
impl FromRawFd for UnixStream {
665+
#[inline]
664666
unsafe fn from_raw_fd(fd: RawFd) -> UnixStream {
665667
UnixStream(Socket::from_inner(fd))
666668
}
667669
}
668670

669671
#[stable(feature = "unix_socket", since = "1.10.0")]
670672
impl IntoRawFd for UnixStream {
673+
#[inline]
671674
fn into_raw_fd(self) -> RawFd {
672675
self.0.into_inner()
673676
}

Diff for: std/src/sys/unix/ext/process.rs

+7
Original file line numberDiff line numberDiff line change
@@ -274,6 +274,7 @@ impl ExitStatusExt for process::ExitStatus {
274274

275275
#[stable(feature = "process_extensions", since = "1.2.0")]
276276
impl FromRawFd for process::Stdio {
277+
#[inline]
277278
unsafe fn from_raw_fd(fd: RawFd) -> process::Stdio {
278279
let fd = sys::fd::FileDesc::new(fd);
279280
let io = sys::process::Stdio::Fd(fd);
@@ -283,41 +284,47 @@ impl FromRawFd for process::Stdio {
283284

284285
#[stable(feature = "process_extensions", since = "1.2.0")]
285286
impl AsRawFd for process::ChildStdin {
287+
#[inline]
286288
fn as_raw_fd(&self) -> RawFd {
287289
self.as_inner().fd().raw()
288290
}
289291
}
290292

291293
#[stable(feature = "process_extensions", since = "1.2.0")]
292294
impl AsRawFd for process::ChildStdout {
295+
#[inline]
293296
fn as_raw_fd(&self) -> RawFd {
294297
self.as_inner().fd().raw()
295298
}
296299
}
297300

298301
#[stable(feature = "process_extensions", since = "1.2.0")]
299302
impl AsRawFd for process::ChildStderr {
303+
#[inline]
300304
fn as_raw_fd(&self) -> RawFd {
301305
self.as_inner().fd().raw()
302306
}
303307
}
304308

305309
#[stable(feature = "into_raw_os", since = "1.4.0")]
306310
impl IntoRawFd for process::ChildStdin {
311+
#[inline]
307312
fn into_raw_fd(self) -> RawFd {
308313
self.into_inner().into_fd().into_raw()
309314
}
310315
}
311316

312317
#[stable(feature = "into_raw_os", since = "1.4.0")]
313318
impl IntoRawFd for process::ChildStdout {
319+
#[inline]
314320
fn into_raw_fd(self) -> RawFd {
315321
self.into_inner().into_fd().into_raw()
316322
}
317323
}
318324

319325
#[stable(feature = "into_raw_os", since = "1.4.0")]
320326
impl IntoRawFd for process::ChildStderr {
327+
#[inline]
321328
fn into_raw_fd(self) -> RawFd {
322329
self.into_inner().into_fd().into_raw()
323330
}

0 commit comments

Comments
 (0)