pub trait IntoRawFd {
// Required method
fn into_raw_fd(self) -> i32;
}Expand description
A trait to express the ability to consume an object and acquire ownership of its raw file descriptor.
Required Methods§
1.4.0 · Sourcefn into_raw_fd(self) -> i32
fn into_raw_fd(self) -> i32
Consumes this object, returning the raw underlying file descriptor.
This function is typically used to transfer ownership of the underlying file descriptor to the caller. When used in this way, callers are then the unique owners of the file descriptor and must close it once it’s no longer needed.
However, transferring ownership is not strictly required. Use a
Into<OwnedFd>::into implementation for an API which strictly
transfers ownership.
§Example
use std::fs::File;
#[cfg(any(unix, target_os = "wasi"))]
use std::os::fd::{IntoRawFd, RawFd};
let f = File::open("foo.txt")?;
#[cfg(any(unix, target_os = "wasi"))]
let raw_fd: RawFd = f.into_raw_fd();Implementors§
impl IntoRawFd for i32
impl IntoRawFd for Dir
impl IntoRawFd for File
Available on non-Trusty only.
impl IntoRawFd for PipeReader
Available on non-Trusty only.
impl IntoRawFd for PipeWriter
Available on non-Trusty only.
impl IntoRawFd for std::net::tcp::TcpListener
impl IntoRawFd for std::net::tcp::TcpStream
impl IntoRawFd for std::net::udp::UdpSocket
impl IntoRawFd for PidFd
impl IntoRawFd for std::os::unix::net::datagram::UnixDatagram
impl IntoRawFd for std::os::unix::net::listener::UnixListener
impl IntoRawFd for std::os::unix::net::stream::UnixStream
impl IntoRawFd for ChildStderr
impl IntoRawFd for ChildStdin
impl IntoRawFd for ChildStdout
impl IntoRawFd for OwnedFd
impl IntoRawFd for Handle
impl IntoRawFd for Receiver
Available on crate feature
os-ext only.impl IntoRawFd for Sender
Available on crate feature
os-ext only.impl IntoRawFd for Socket
impl IntoRawFd for TcpListener
Available on Unix or Hermit or WASI only.
impl IntoRawFd for TcpSocket
Available on
docsrs, or Unix, or WASI only.impl IntoRawFd for TcpStream
Available on Unix or Hermit or WASI only.
impl IntoRawFd for UdpSocket
Available on Unix or Hermit or WASI only.