rustmax::cxx_build::std::os::fd

Trait AsFd

1.66.0 · Source
pub trait AsFd {
    // Required method
    fn as_fd(&self) -> BorrowedFd<'_>;
}
Expand description

A trait to borrow the file descriptor from an underlying object.

This is only available on unix platforms and must be imported in order to call the method. Windows platforms have a corresponding AsHandle and AsSocket set of traits.

Required Methods§

1.63.0 · Source

fn as_fd(&self) -> BorrowedFd<'_>

Borrows the file descriptor.

§Example
use std::fs::File;

let mut f = File::open("foo.txt")?;
let borrowed_fd: BorrowedFd<'_> = f.as_fd();

Implementors§

Source§

impl AsFd for mio::net::tcp::listener::TcpListener

Source§

impl AsFd for mio::net::tcp::stream::TcpStream

Source§

impl AsFd for mio::net::udp::UdpSocket

Source§

impl AsFd for mio::net::uds::datagram::UnixDatagram

Source§

impl AsFd for mio::net::uds::listener::UnixListener

Source§

impl AsFd for mio::net::uds::stream::UnixStream

Source§

impl AsFd for mio::sys::unix::pipe::Receiver

Source§

impl AsFd for mio::sys::unix::pipe::Sender

Source§

impl AsFd for PtyMaster

Source§

impl AsFd for SignalFd

Source§

impl AsFd for Socket

1.63.0 · Source§

impl AsFd for rustmax::std::fs::File

1.63.0 · Source§

impl AsFd for rustmax::std::io::Stderr

1.63.0 · Source§

impl AsFd for rustmax::std::io::Stdin

1.63.0 · Source§

impl AsFd for rustmax::std::io::Stdout

1.63.0 · Source§

impl AsFd for rustmax::std::net::TcpListener

1.63.0 · Source§

impl AsFd for rustmax::std::net::TcpStream

1.63.0 · Source§

impl AsFd for rustmax::std::net::UdpSocket

1.63.0 · Source§

impl AsFd for BorrowedFd<'_>

1.63.0 · Source§

impl AsFd for OwnedFd

Source§

impl AsFd for PidFd

1.63.0 · Source§

impl AsFd for rustmax::std::os::unix::net::UnixDatagram

1.63.0 · Source§

impl AsFd for rustmax::std::os::unix::net::UnixListener

1.63.0 · Source§

impl AsFd for rustmax::std::os::unix::net::UnixStream

Source§

impl AsFd for PipeReader

Source§

impl AsFd for PipeWriter

1.63.0 · Source§

impl AsFd for rustmax::std::process::ChildStderr

1.63.0 · Source§

impl AsFd for rustmax::std::process::ChildStdin

1.63.0 · Source§

impl AsFd for rustmax::std::process::ChildStdout

Source§

impl AsFd for rustmax::tokio::fs::File

Source§

impl AsFd for rustmax::tokio::io::Stderr

Source§

impl AsFd for rustmax::tokio::io::Stdin

Source§

impl AsFd for rustmax::tokio::io::Stdout

Source§

impl AsFd for rustmax::tokio::net::TcpListener

Source§

impl AsFd for TcpSocket

Source§

impl AsFd for rustmax::tokio::net::TcpStream

Source§

impl AsFd for rustmax::tokio::net::UdpSocket

Source§

impl AsFd for rustmax::tokio::net::UnixDatagram

Source§

impl AsFd for rustmax::tokio::net::UnixListener

Source§

impl AsFd for UnixSocket

Source§

impl AsFd for rustmax::tokio::net::UnixStream

Source§

impl AsFd for rustmax::tokio::net::unix::pipe::Receiver

Source§

impl AsFd for rustmax::tokio::net::unix::pipe::Sender

Source§

impl AsFd for rustmax::tokio::process::ChildStderr

Source§

impl AsFd for rustmax::tokio::process::ChildStdin

Source§

impl AsFd for rustmax::tokio::process::ChildStdout

1.63.0 · Source§

impl<'a> AsFd for StderrLock<'a>

1.63.0 · Source§

impl<'a> AsFd for StdinLock<'a>

1.63.0 · Source§

impl<'a> AsFd for StdoutLock<'a>

Source§

impl<'fd> AsFd for PollFd<'fd>

Source§

impl<F> AsFd for NamedTempFile<F>
where F: AsFd,

1.63.0 · Source§

impl<T> AsFd for &T
where T: AsFd + ?Sized,

1.63.0 · Source§

impl<T> AsFd for &mut T
where T: AsFd + ?Sized,

1.64.0 · Source§

impl<T> AsFd for Box<T>
where T: AsFd + ?Sized,

1.69.0 · Source§

impl<T> AsFd for Rc<T>
where T: AsFd + ?Sized,

1.64.0 · Source§

impl<T> AsFd for Arc<T>
where T: AsFd + ?Sized,

This impl allows implementing traits that require AsFd on Arc.

use std::net::UdpSocket;
use std::sync::Arc;

trait MyTrait: AsFd {}
impl MyTrait for Arc<UdpSocket> {}
impl MyTrait for Box<UdpSocket> {}
Source§

impl<T> AsFd for AsyncFd<T>
where T: AsRawFd,