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 · sourcefn as_fd(&self) -> BorrowedFd<'_>
fn as_fd(&self) -> BorrowedFd<'_>
Implementors§
impl AsFd for File
impl AsFd for Stderr
impl AsFd for Stdin
impl AsFd for Stdout
impl AsFd for TcpListener
impl AsFd for TcpStream
impl AsFd for UdpSocket
impl AsFd for ChildStderr
Available on Unix only.
impl AsFd for ChildStdin
Available on Unix only.
impl AsFd for ChildStdout
Available on Unix only.
impl AsFd for PidFd
Available on Linux only.
impl AsFd for UnixDatagram
Available on Unix only.
impl AsFd for UnixListener
Available on Unix only.
impl AsFd for UnixStream
Available on Unix only.
impl AsFd for BorrowedFd<'_>
impl AsFd for OwnedFd
impl<'a> AsFd for StderrLock<'a>
impl<'a> AsFd for StdinLock<'a>
impl<'a> AsFd for StdoutLock<'a>
impl<T: AsFd + ?Sized> AsFd for &T
impl<T: AsFd + ?Sized> AsFd for &mut T
impl<T: AsFd + ?Sized> AsFd for Box<T>
impl<T: AsFd + ?Sized> AsFd for Rc<T>
impl<T: AsFd + ?Sized> AsFd for Arc<T>
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> {}
Run