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.

An entity was not found, often a file.

The operation lacked the necessary privileges to complete.

The connection was refused by the remote server.

The connection was reset by the remote server.

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

The network operation failed because it was not connected yet.

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

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

The operation failed because a pipe was closed.

An entity already exists, often a file.

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

A parameter was incorrect.

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

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

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.

This operation was interrupted.

Interrupted operations can typically be retried.

Any I/O error not part of this list.

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 Copy for ErrorKind
[src]

impl From<ErrorKind> for Error
1.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.

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 Debug for ErrorKind
[src]

impl PartialOrd<ErrorKind> for ErrorKind
[src]

This method tests less than (for self and other) and is used by the < operator. Read more

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

This method tests greater than (for self and other) and is used by the > operator. Read more

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl Eq for ErrorKind
[src]

impl Ord for ErrorKind
[src]

Compares and returns the maximum of two values. Read more

Compares and returns the minimum of two values. Read more

impl Clone for ErrorKind
[src]

Performs copy-assignment from source. Read more

impl PartialEq<ErrorKind> for ErrorKind
[src]

This method tests for !=.

impl Hash for ErrorKind
[src]

Feeds a slice of this type into the given [Hasher]. Read more

Auto Trait Implementations

impl Send for ErrorKind

impl Sync for ErrorKind

Blanket Implementations

impl<T> From for T
[src]

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

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

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

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

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

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

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

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

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