[][src]Enum file_descriptors::SpecialFileOpenError

pub enum SpecialFileOpenError {
    Common(CreationError),
    WouldBlock,
    Interrupted,
    InvalidPath(InvalidPathReason),
    Terminal(TerminalSettingsError),
}

An error that can occur when opening one end of a FIFO (a named pipe) or a character device.

Variants

Errors common to opening or creation of most file descriptors.

WouldBlock

A (possibly mandatory) file lock is held on the special file path.

Rationally, this would not seem to make sense but the Linux documentation doesn't make it clear if it is possible or not.

If this is encountered then an orderly shutdown is probably the only course of action as it is not possible to epoll for lock status changes on files that haven't even be opened.

Interrupted

EINTR occurred; this can be handled by either re-trying the open of a FIFO or might actual be fatal depending on the signal handling strategy in use.

InvalidPath(InvalidPathReason)

Invalid path.

Not a terminal.

Trait Implementations

impl Clone for SpecialFileOpenError[src]

impl Copy for SpecialFileOpenError[src]

impl Debug for SpecialFileOpenError[src]

impl Display for SpecialFileOpenError[src]

impl Eq for SpecialFileOpenError[src]

impl Error for SpecialFileOpenError[src]

impl Hash for SpecialFileOpenError[src]

impl Ord for SpecialFileOpenError[src]

impl PartialEq<SpecialFileOpenError> for SpecialFileOpenError[src]

impl PartialOrd<SpecialFileOpenError> for SpecialFileOpenError[src]

impl StructuralEq for SpecialFileOpenError[src]

impl StructuralPartialEq for SpecialFileOpenError[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.