Enum csv_async::ErrorKind

source ·
#[non_exhaustive]
pub enum ErrorKind { Io(Error), Utf8 { pos: Option<Position>, err: Utf8Error, }, UnequalLengths { pos: Option<Position>, expected_len: u64, len: u64, }, Seek, Serialize(String), Deserialize { pos: Option<Position>, err: DeserializeError, }, }
Expand description

The specific type of an error.

Variants (Non-exhaustive)§

This enum is marked as 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.
§

Io(Error)

An I/O error that occurred while reading CSV data.

§

Utf8

Fields

§pos: Option<Position>

The position of the record in which this error occurred, if available.

§err: Utf8Error

The corresponding UTF-8 error.

A UTF-8 decoding error that occured while reading CSV data into Rust Strings.

§

UnequalLengths

Fields

§pos: Option<Position>

The position of the first record with an unequal number of fields to the previous record, if available.

§expected_len: u64

The expected number of fields in a record. This is the number of fields in the record read prior to the record indicated by pos.

§len: u64

The number of fields in the bad record.

This error occurs when two records with an unequal number of fields are found. This error only occurs when the flexible option in a CSV reader/writer is disabled.

§

Seek

This error occurs when either the byte_headers or headers methods are called on a CSV reader that was asked to seek before it parsed the first record.

§

Serialize(String)

An error of this kind occurs only when using the Serde serializer.

§

Deserialize

Fields

§pos: Option<Position>

The position of this error, if available.

§err: DeserializeError

The deserialization error.

An error of this kind occurs only when performing automatic deserialization with serde.

Implementations§

source§

impl ErrorKind

source

pub fn position(&self) -> Option<&Position>

Return the position for this error, if one exists.

This is a convenience function that permits callers to easily access the position on an error without doing case analysis on ErrorKind.

Trait Implementations§

source§

impl Debug for ErrorKind

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.