rustix::fd

Trait IntoRawFd

1.4.0Source
pub trait IntoRawFd {
    // Required method
    fn into_raw_fd(self) -> i32;
}
馃憥Deprecated
Expand description

A trait to express the ability to consume an object and acquire ownership of its raw file descriptor.

Required Methods

1.4.0Source

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鈥檚 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

1.48.0Source

impl IntoRawFd for i32

1.4.0Source

impl IntoRawFd for File

1.4.0Source

impl IntoRawFd for TcpListener

1.4.0Source

impl IntoRawFd for TcpStream

1.4.0Source

impl IntoRawFd for UdpSocket

Source

impl IntoRawFd for PidFd

1.10.0Source

impl IntoRawFd for UnixDatagram

1.10.0Source

impl IntoRawFd for UnixListener

1.10.0Source

impl IntoRawFd for UnixStream

Source

impl IntoRawFd for PipeReader

Source

impl IntoRawFd for PipeWriter

1.4.0Source

impl IntoRawFd for ChildStderr

1.4.0Source

impl IntoRawFd for ChildStdin

1.4.0Source

impl IntoRawFd for ChildStdout

1.63.0Source

impl IntoRawFd for OwnedFd