Skip to content

Commit 698ee8c

Browse files
committed
Document various I/O handle conversions
1 parent 6351247 commit 698ee8c

File tree

8 files changed

+22
-0
lines changed

8 files changed

+22
-0
lines changed

library/std/src/os/fd/owned.rs

+5
Original file line numberDiff line numberDiff line change
@@ -288,6 +288,7 @@ impl AsFd for fs::File {
288288

289289
#[stable(feature = "io_safety", since = "1.63.0")]
290290
impl From<fs::File> for OwnedFd {
291+
/// Takes ownership of a [`File`](fs::File)'s underlying file descriptor.
291292
#[inline]
292293
fn from(file: fs::File) -> OwnedFd {
293294
file.into_inner().into_inner().into_inner()
@@ -296,6 +297,7 @@ impl From<fs::File> for OwnedFd {
296297

297298
#[stable(feature = "io_safety", since = "1.63.0")]
298299
impl From<OwnedFd> for fs::File {
300+
/// Creates a [`File`](fs::File) instance from an existing file descriptor.
299301
#[inline]
300302
fn from(owned_fd: OwnedFd) -> Self {
301303
Self::from_inner(FromInner::from_inner(FromInner::from_inner(owned_fd)))
@@ -312,6 +314,7 @@ impl AsFd for crate::net::TcpStream {
312314

313315
#[stable(feature = "io_safety", since = "1.63.0")]
314316
impl From<crate::net::TcpStream> for OwnedFd {
317+
/// Takes ownership of a [`TcpStream`](crate::net::TcpStream)'s socket file descriptor.
315318
#[inline]
316319
fn from(tcp_stream: crate::net::TcpStream) -> OwnedFd {
317320
tcp_stream.into_inner().into_socket().into_inner().into_inner().into()
@@ -338,6 +341,7 @@ impl AsFd for crate::net::TcpListener {
338341

339342
#[stable(feature = "io_safety", since = "1.63.0")]
340343
impl From<crate::net::TcpListener> for OwnedFd {
344+
/// Takes ownership of a [`TcpListener`](crate::net::TcpListener)'s socket file descriptor.
341345
#[inline]
342346
fn from(tcp_listener: crate::net::TcpListener) -> OwnedFd {
343347
tcp_listener.into_inner().into_socket().into_inner().into_inner().into()
@@ -364,6 +368,7 @@ impl AsFd for crate::net::UdpSocket {
364368

365369
#[stable(feature = "io_safety", since = "1.63.0")]
366370
impl From<crate::net::UdpSocket> for OwnedFd {
371+
/// Takes ownership of a [`UdpSocket`](crate::net::UdpSocket)'s file descriptor.
367372
#[inline]
368373
fn from(udp_socket: crate::net::UdpSocket) -> OwnedFd {
369374
udp_socket.into_inner().into_socket().into_inner().into_inner().into()

library/std/src/os/unix/net/datagram.rs

+1
Original file line numberDiff line numberDiff line change
@@ -1024,6 +1024,7 @@ impl AsFd for UnixDatagram {
10241024

10251025
#[stable(feature = "io_safety", since = "1.63.0")]
10261026
impl From<UnixDatagram> for OwnedFd {
1027+
/// Takes ownership of a [`UnixDatagram`]'s socket file descriptor.
10271028
#[inline]
10281029
fn from(unix_datagram: UnixDatagram) -> OwnedFd {
10291030
unsafe { OwnedFd::from_raw_fd(unix_datagram.into_raw_fd()) }

library/std/src/os/unix/net/listener.rs

+1
Original file line numberDiff line numberDiff line change
@@ -346,6 +346,7 @@ impl From<OwnedFd> for UnixListener {
346346

347347
#[stable(feature = "io_safety", since = "1.63.0")]
348348
impl From<UnixListener> for OwnedFd {
349+
/// Takes ownership of a [`UnixListener`]'s socket file descriptor.
349350
#[inline]
350351
fn from(listener: UnixListener) -> OwnedFd {
351352
listener.0.into_inner().into_inner()

library/std/src/os/unix/net/stream.rs

+1
Original file line numberDiff line numberDiff line change
@@ -752,6 +752,7 @@ impl AsFd for UnixStream {
752752

753753
#[stable(feature = "io_safety", since = "1.63.0")]
754754
impl From<UnixStream> for OwnedFd {
755+
/// Takes ownership of a [`UnixStream`]'s socket file descriptor.
755756
#[inline]
756757
fn from(unix_stream: UnixStream) -> OwnedFd {
757758
unsafe { OwnedFd::from_raw_fd(unix_stream.into_raw_fd()) }

library/std/src/os/unix/process.rs

+4
Original file line numberDiff line numberDiff line change
@@ -362,6 +362,7 @@ impl FromRawFd for process::Stdio {
362362

363363
#[stable(feature = "io_safety", since = "1.63.0")]
364364
impl From<OwnedFd> for process::Stdio {
365+
/// Creates a [`Stdio`](process::Stdio) for attaching a stream to the given file descriptor.
365366
#[inline]
366367
fn from(fd: OwnedFd) -> process::Stdio {
367368
let fd = sys::fd::FileDesc::from_inner(fd);
@@ -428,6 +429,7 @@ impl AsFd for crate::process::ChildStdin {
428429

429430
#[stable(feature = "io_safety", since = "1.63.0")]
430431
impl From<crate::process::ChildStdin> for OwnedFd {
432+
/// Takes ownership of a [`ChildStdin`](crate::process::ChildStdin)'s file descriptor.
431433
#[inline]
432434
fn from(child_stdin: crate::process::ChildStdin) -> OwnedFd {
433435
child_stdin.into_inner().into_inner().into_inner()
@@ -458,6 +460,7 @@ impl AsFd for crate::process::ChildStdout {
458460

459461
#[stable(feature = "io_safety", since = "1.63.0")]
460462
impl From<crate::process::ChildStdout> for OwnedFd {
463+
/// Takes ownership of a [`ChildStdout`](crate::process::ChildStdout)'s file descriptor.
461464
#[inline]
462465
fn from(child_stdout: crate::process::ChildStdout) -> OwnedFd {
463466
child_stdout.into_inner().into_inner().into_inner()
@@ -488,6 +491,7 @@ impl AsFd for crate::process::ChildStderr {
488491

489492
#[stable(feature = "io_safety", since = "1.63.0")]
490493
impl From<crate::process::ChildStderr> for OwnedFd {
494+
/// Takes ownership of a [`ChildStderr`](crate::process::ChildStderr)'s file descriptor.
491495
#[inline]
492496
fn from(child_stderr: crate::process::ChildStderr) -> OwnedFd {
493497
child_stderr.into_inner().into_inner().into_inner()

library/std/src/os/windows/io/handle.rs

+5
Original file line numberDiff line numberDiff line change
@@ -502,6 +502,7 @@ impl AsHandle for fs::File {
502502

503503
#[stable(feature = "io_safety", since = "1.63.0")]
504504
impl From<fs::File> for OwnedHandle {
505+
/// Takes ownership of a [`File`](fs::File)'s underlying file handle.
505506
#[inline]
506507
fn from(file: fs::File) -> OwnedHandle {
507508
file.into_inner().into_inner().into_inner()
@@ -510,6 +511,7 @@ impl From<fs::File> for OwnedHandle {
510511

511512
#[stable(feature = "io_safety", since = "1.63.0")]
512513
impl From<OwnedHandle> for fs::File {
514+
/// Creates a [`File`](fs::File) instance from an existing handle.
513515
#[inline]
514516
fn from(owned: OwnedHandle) -> Self {
515517
Self::from_inner(FromInner::from_inner(FromInner::from_inner(owned)))
@@ -574,6 +576,7 @@ impl AsHandle for crate::process::ChildStdin {
574576

575577
#[stable(feature = "io_safety", since = "1.63.0")]
576578
impl From<crate::process::ChildStdin> for OwnedHandle {
579+
/// Takes ownership of a [`ChildStdin`](crate::process:ChildStdin)'s file handle.
577580
#[inline]
578581
fn from(child_stdin: crate::process::ChildStdin) -> OwnedHandle {
579582
unsafe { OwnedHandle::from_raw_handle(child_stdin.into_raw_handle()) }
@@ -590,6 +593,7 @@ impl AsHandle for crate::process::ChildStdout {
590593

591594
#[stable(feature = "io_safety", since = "1.63.0")]
592595
impl From<crate::process::ChildStdout> for OwnedHandle {
596+
/// Takes ownership of a [`ChildStdout`](crate::process:ChildStdout)'s file handle.
593597
#[inline]
594598
fn from(child_stdout: crate::process::ChildStdout) -> OwnedHandle {
595599
unsafe { OwnedHandle::from_raw_handle(child_stdout.into_raw_handle()) }
@@ -606,6 +610,7 @@ impl AsHandle for crate::process::ChildStderr {
606610

607611
#[stable(feature = "io_safety", since = "1.63.0")]
608612
impl From<crate::process::ChildStderr> for OwnedHandle {
613+
/// Takes ownership of a [`ChildStderr`](crate::process:ChildStderr)'s file handle.
609614
#[inline]
610615
fn from(child_stderr: crate::process::ChildStderr) -> OwnedHandle {
611616
unsafe { OwnedHandle::from_raw_handle(child_stderr.into_raw_handle()) }

library/std/src/os/windows/io/socket.rs

+3
Original file line numberDiff line numberDiff line change
@@ -319,6 +319,7 @@ impl AsSocket for crate::net::TcpStream {
319319

320320
#[stable(feature = "io_safety", since = "1.63.0")]
321321
impl From<crate::net::TcpStream> for OwnedSocket {
322+
/// Takes ownership of a [`TcpStream`](crate::net::TcpStream)'s socket.
322323
#[inline]
323324
fn from(tcp_stream: crate::net::TcpStream) -> OwnedSocket {
324325
unsafe { OwnedSocket::from_raw_socket(tcp_stream.into_raw_socket()) }
@@ -343,6 +344,7 @@ impl AsSocket for crate::net::TcpListener {
343344

344345
#[stable(feature = "io_safety", since = "1.63.0")]
345346
impl From<crate::net::TcpListener> for OwnedSocket {
347+
/// Takes ownership of a [`TcpListener`](crate::net::TcpListener)'s socket.
346348
#[inline]
347349
fn from(tcp_listener: crate::net::TcpListener) -> OwnedSocket {
348350
unsafe { OwnedSocket::from_raw_socket(tcp_listener.into_raw_socket()) }
@@ -367,6 +369,7 @@ impl AsSocket for crate::net::UdpSocket {
367369

368370
#[stable(feature = "io_safety", since = "1.63.0")]
369371
impl From<crate::net::UdpSocket> for OwnedSocket {
372+
/// Takes ownership of a [`UdpSocket`](crate::net::UdpSocket)'s underlying socket.
370373
#[inline]
371374
fn from(udp_socket: crate::net::UdpSocket) -> OwnedSocket {
372375
unsafe { OwnedSocket::from_raw_socket(udp_socket.into_raw_socket()) }

library/std/src/os/windows/process.rs

+2
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ impl FromRawHandle for process::Stdio {
2424

2525
#[stable(feature = "io_safety", since = "1.63.0")]
2626
impl From<OwnedHandle> for process::Stdio {
27+
/// Creates a [`Stdio`](process::Stdio) for attaching a stream to the given handle.
2728
fn from(handle: OwnedHandle) -> process::Stdio {
2829
let handle = sys::handle::Handle::from_inner(handle);
2930
let io = sys::process::Stdio::Handle(handle);
@@ -56,6 +57,7 @@ impl IntoRawHandle for process::Child {
5657

5758
#[stable(feature = "io_safety", since = "1.63.0")]
5859
impl From<process::Child> for OwnedHandle {
60+
/// Takes ownership of a [`Child`](process::Child)'s process handle.
5961
fn from(child: process::Child) -> OwnedHandle {
6062
child.into_inner().into_handle().into_inner()
6163
}

0 commit comments

Comments
 (0)