Available on WASI only.
Expand description
A trait to extract the raw file descriptor from an underlying object.
This is only available on unix and WASI platforms and must be imported in
order to call the method. Windows platforms have a corresponding
AsRawHandle and AsRawSocket set of traits.
Required Methods
Extracts the raw file descriptor.
This function is typically used to borrow an owned file descriptor. When used in this way, this method does not pass ownership of the raw file descriptor to the caller, and the file descriptor is only guaranteed to be valid while the original object has not yet been destroyed.
However, borrowing is not strictly required. See AsFd::as_fd
for an API which strictly borrows a file descriptor.
Example
use std::fs::File;
#[cfg(unix)]
use std::os::unix::io::{AsRawFd, RawFd};
#[cfg(target_os = "wasi")]
use std::os::wasi::io::{AsRawFd, RawFd};
let mut f = File::open("foo.txt")?;
// Note that `raw_fd` is only valid as long as `f` exists.
#[cfg(any(unix, target_os = "wasi"))]
let raw_fd: RawFd = f.as_raw_fd();RunImplementors
impl AsRawFd for File
sourceimpl AsRawFd for Stderr
1.21.0 · sourceimpl AsRawFd for Stdin
1.21.0 · sourceimpl AsRawFd for Stdout
1.21.0 · sourceimpl AsRawFd for TcpListener
sourceimpl AsRawFd for TcpStream
sourceimpl AsRawFd for UdpSocket
sourceimpl AsRawFd for ChildStderr
1.2.0 · sourceAvailable on Unix only.
impl AsRawFd for ChildStdin
1.2.0 · sourceAvailable on Unix only.
impl AsRawFd for ChildStdout
1.2.0 · sourceAvailable on Unix only.
impl AsRawFd for PidFd
sourceAvailable on Linux only.
impl AsRawFd for BorrowedFd<'_>
sourceimpl AsRawFd for OwnedFd
sourceimpl AsRawFd for UnixDatagram
1.10.0 · sourceAvailable on Unix only.
impl AsRawFd for UnixListener
1.10.0 · sourceAvailable on Unix only.
impl AsRawFd for UnixStream
1.10.0 · sourceAvailable on Unix only.