Trait otter_api_tests::unix::io::FromRawFd 1.1.0[−][src]
pub trait FromRawFd {
unsafe fn from_raw_fd(fd: i32) -> Self;
}Expand description
A trait to express the ability to construct an object from a raw file descriptor.
Required methods
unsafe fn from_raw_fd(fd: i32) -> Self
unsafe fn from_raw_fd(fd: i32) -> SelfConstructs a new instance of Self from the given raw file
descriptor.
This function consumes ownership of the specified file descriptor. The returned object will take responsibility for closing it when the object goes out of scope.
This function is also unsafe as the primitives currently returned have the contract that they are the sole owner of the file descriptor they are wrapping. Usage of this function could accidentally allow violating this contract which can cause memory unsafety in code that relies on it being true.
Example
use std::fs::File; use std::os::unix::io::{FromRawFd, IntoRawFd, RawFd}; let f = File::open("foo.txt")?; let raw_fd: RawFd = f.into_raw_fd(); // SAFETY: no other functions should call `from_raw_fd`, so there // is only one owner for the file descriptor. let f = unsafe { File::from_raw_fd(raw_fd) };
Implementations on Foreign Types
impl FromRawFd for Inotify
impl FromRawFd for Inotifypub unsafe fn from_raw_fd(fd: i32) -> InotifyConverts a RawFd to a UdpSocket.
Notes
The caller is responsible for ensuring that the socket is in non-blocking mode.
Converts a RawFd to a TcpStream.
Notes
The caller is responsible for ensuring that the socket is in non-blocking mode.
Converts a RawFd to a TcpListener.
Notes
The caller is responsible for ensuring that the socket is in non-blocking mode.
Converts a RawFd to a TcpSocket.
Notes
The caller is responsible for ensuring that the socket is in non-blocking mode.
Converts a RawFd to a UnixListener.
Notes
The caller is responsible for ensuring that the socket is in non-blocking mode.
Converts a RawFd to a UnixDatagram.
Notes
The caller is responsible for ensuring that the socket is in non-blocking mode.
pub unsafe fn from_raw_fd(fd: i32) -> UnixStreamⓘNotable traits for UnixStream
impl Write for UnixStreamimpl<'a> Write for &'a UnixStreamimpl<'a> Read for &'a UnixStreamimpl Read for UnixStream
pub unsafe fn from_raw_fd(fd: i32) -> UnixStreamⓘNotable traits for UnixStream
impl Write for UnixStreamimpl<'a> Write for &'a UnixStreamimpl<'a> Read for &'a UnixStreamimpl Read for UnixStreamConverts a RawFd to a UnixStream.
Notes
The caller is responsible for ensuring that the socket is in non-blocking mode.
impl FromRawFd for TcpSocket
impl FromRawFd for TcpSocketpub unsafe fn from_raw_fd(fd: i32) -> TcpSocket
pub unsafe fn from_raw_fd(fd: i32) -> TcpSocketConverts a RawFd to a TcpSocket.
Notes
The caller is responsible for ensuring that the socket is in non-blocking mode.
Implementors
impl FromRawFd for NonblockingUnixSeqpacketConnimpl FromRawFd for UnixSeqpacketConnimpl FromRawFd for UnixSeqpacketListener