Skip to main content

Fd

Trait Fd 

Source
pub trait Fd: Source {
    // Provided methods
    fn update<E: Flags>(file: BorrowedFd<'_>) -> Result<(), E> { ... }
    fn remove<E: Flags>(file: BorrowedFd<'_>) -> Result<(), E> { ... }
    fn try_update<E: Flags>(file: BorrowedFd<'_>) -> Result<(), E> { ... }
    fn close<E: From<Errno>>(file: OwnedFd) -> Result<(), E> { ... }
    fn duplicate<E: From<Errno>>(file: BorrowedFd<'_>) -> Result<OwnedFd, E> { ... }
    fn set<const COMMAND: c_int, E: From<Errno>>(
        file: BorrowedFd<'_>,
        flags: c_int,
    ) -> Result<(), E> { ... }
    fn set_retry<const COMMAND: c_int, E: From<Errno>>(
        file: BorrowedFd<'_>,
        flags: c_int,
    ) -> Result<(), E> { ... }
    fn read<'a, E: From<Errno>>(
        file: BorrowedFd<'_>,
        output: &'a mut [u8],
    ) -> Result<&'a mut [u8], E> { ... }
    fn write<'a, E: From<Errno>>(
        file: BorrowedFd<'_>,
        input: &'a [u8],
    ) -> Result<&'a [u8], E> { ... }
}
Expand description

Native descriptor operations using the calling thread’s exact error slot.

Provided Methods§

Source

fn update<E: Flags>(file: BorrowedFd<'_>) -> Result<(), E>

Adds a descriptor flag, retrying only each interrupted native attempt.

Source

fn remove<E: Flags>(file: BorrowedFd<'_>) -> Result<(), E>

Removes one descriptor flag, preserving all other native flags.

Source

fn try_update<E: Flags>(file: BorrowedFd<'_>) -> Result<(), E>

Adds a descriptor flag with one get attempt followed by one set attempt.

Source

fn close<E: From<Errno>>(file: OwnedFd) -> Result<(), E>

Consumes descriptor ownership through one native close attempt. The returned errno is observable; ownership is never issued for a retry.

Source

fn duplicate<E: From<Errno>>(file: BorrowedFd<'_>) -> Result<OwnedFd, E>

Source

fn set<const COMMAND: c_int, E: From<Errno>>( file: BorrowedFd<'_>, flags: c_int, ) -> Result<(), E>

Source

fn set_retry<const COMMAND: c_int, E: From<Errno>>( file: BorrowedFd<'_>, flags: c_int, ) -> Result<(), E>

Applies scalar descriptor flags, retrying only interrupted attempts.

Source

fn read<'a, E: From<Errno>>( file: BorrowedFd<'_>, output: &'a mut [u8], ) -> Result<&'a mut [u8], E>

Source

fn write<'a, E: From<Errno>>( file: BorrowedFd<'_>, input: &'a [u8], ) -> Result<&'a [u8], E>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<T: Source> Fd for T