1.0.0[][src]Enum futures::io::ErrorKind

[]
#[non_exhaustive]pub enum ErrorKind {
    NotFound,
    PermissionDenied,
    ConnectionRefused,
    ConnectionReset,
    ConnectionAborted,
    NotConnected,
    AddrInUse,
    AddrNotAvailable,
    BrokenPipe,
    AlreadyExists,
    WouldBlock,
    InvalidInput,
    InvalidData,
    TimedOut,
    WriteZero,
    Interrupted,
    Other,
    UnexpectedEof,
}
[]

A list specifying general categories of I/O error.

This list is intended to grow over time and it is not recommended to exhaustively match against it.

It is used with the io::Error type.

Variants (Non-exhaustive)

Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
NotFound
[]

An entity was not found, often a file.

PermissionDenied
[]

The operation lacked the necessary privileges to complete.

ConnectionRefused
[]

The connection was refused by the remote server.

ConnectionReset
[]

The connection was reset by the remote server.

ConnectionAborted
[]

The connection was aborted (terminated) by the remote server.

NotConnected
[]

The network operation failed because it was not connected yet.

AddrInUse
[]

A socket address could not be bound because the address is already in use elsewhere.

AddrNotAvailable
[]

A nonexistent interface was requested or the requested address was not local.

BrokenPipe
[]

The operation failed because a pipe was closed.

AlreadyExists
[]

An entity already exists, often a file.

WouldBlock
[]

The operation needs to block to complete, but the blocking operation was requested to not occur.

InvalidInput
[]

A parameter was incorrect.

InvalidData
[]

Data not valid for the operation were encountered.

Unlike InvalidInput, this typically means that the operation parameters were valid, however the error was caused by malformed input data.

For example, a function that reads a file into a string will error with InvalidData if the file's contents are not valid UTF-8.

1.2.0
TimedOut
[]

The I/O operation's timeout expired, causing it to be canceled.

WriteZero
[]

An error returned when an operation could not be completed because a call to write returned Ok(0).

This typically means that an operation could only succeed if it wrote a particular number of bytes but only a smaller number of bytes could be written.

Interrupted
[]

This operation was interrupted.

Interrupted operations can typically be retried.

Other
[]

Any I/O error not part of this list.

Errors that are Other now may move to a different or a new ErrorKind variant in the future. It is not recommended to match an error against Other and to expect any additional characteristics, e.g., a specific Error::raw_os_error return value.

UnexpectedEof
[]

An error returned when an operation could not be completed because an "end of file" was reached prematurely.

This typically means that an operation could only succeed if it read a particular number of bytes but only a smaller number of bytes could be read.

1.6.0

Trait Implementations

impl Clone for ErrorKind[src][+]

impl Copy for ErrorKind[src]

impl Debug for ErrorKind[src][+]

impl Eq for ErrorKind[src]

impl From<ErrorKind> for Error1.14.0[src][+]

Intended for use for errors not exposed to the user, where allocating onto the heap (for normal construction via Error::new) is too costly.

fn from(kind: ErrorKind) -> Error[src][]

Converts an ErrorKind into an Error.

This conversion allocates a new error with a simple representation of error kind.

Examples

use std::io::{Error, ErrorKind};

let not_found = ErrorKind::NotFound;
let error = Error::from(not_found);
assert_eq!("entity not found", format!("{}", error));

impl Hash for ErrorKind[src][+]

impl Ord for ErrorKind[src][+]

impl PartialEq<ErrorKind> for ErrorKind[src][+]

impl PartialOrd<ErrorKind> for ErrorKind[src][+]

Auto Trait Implementations

impl RefUnwindSafe for ErrorKind

impl Send for ErrorKind

impl Sync for ErrorKind

impl Unpin for ErrorKind

impl UnwindSafe for ErrorKind

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, 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.