[][src]Struct serde_lexpr::error::Error

pub struct Error(_);

This type represents all possible errors that can occur when serializing or deserializing S-expression data.

Methods

impl Error[src]

pub fn location(&self) -> Option<Location>[src]

Location of the error in the input stream.

pub fn classify(&self) -> Category[src]

Categorizes the cause of this error.

  • Category::Io - failure to read or write bytes on an IO stream
  • Category::Syntax - input that is not a syntactically valid S-expression
  • Category::Data - input data that is semantically incorrect
  • Category::Eof - unexpected end of the input data

Trait Implementations

impl From<Error> for Error[src]

fn from(l: Error) -> Self[src]

Convert a serde_lexpr::Error into an io::Error.

S-expression syntax errors are turned into InvalidData IO errors. EOF errors are turned into UnexpectedEof IO errors.

use std::io;

enum MyError {
    Io(io::Error),
    Lexpr(serde_lexpr::Error),
}

impl From<serde_lexpr::Error> for MyError {
    fn from(err: serde_lexpr::Error) -> MyError {
        use serde_lexpr::error::Category;
        match err.classify() {
            Category::Io => {
                MyError::Io(err.into())
            }
            Category::Syntax | Category::Eof | Category::Data => {
                MyError::Lexpr(err)
            }
        }
    }
}

impl From<Error> for Error[src]

impl From<Error> for Error[src]

impl Debug for Error[src]

impl Display for Error[src]

impl Error for Error[src]

fn description(&self) -> &str1.0.0[src]

This method is soft-deprecated. Read more

fn cause(&self) -> Option<&dyn Error>1.0.0[src]

Deprecated since 1.33.0:

replaced by Error::source, which can support downcasting

The lower-level cause of this error, if any. Read more

impl Error for Error[src]

impl Error for Error[src]

fn invalid_value(unexp: Unexpected, exp: &dyn Expected) -> Self[src]

Raised when a Deserialize receives a value of the right type but that is wrong for some other reason. Read more

fn invalid_length(len: usize, exp: &dyn Expected) -> Self[src]

Raised when deserializing a sequence or map and the input data contains too many or too few elements. Read more

fn unknown_variant(variant: &str, expected: &'static [&'static str]) -> Self[src]

Raised when a Deserialize enum type received a variant with an unrecognized name. Read more

fn unknown_field(field: &str, expected: &'static [&'static str]) -> Self[src]

Raised when a Deserialize struct type received a field with an unrecognized name. Read more

fn missing_field(field: &'static str) -> Self[src]

Raised when a Deserialize struct type expected to receive a required field with a particular name but that field was not present in the input. Read more

fn duplicate_field(field: &'static str) -> Self[src]

Raised when a Deserialize struct type received more than one of the same field. Read more

Auto Trait Implementations

impl Send for Error

impl Unpin for Error

impl Sync for Error

impl !UnwindSafe for Error

impl !RefUnwindSafe for Error

Blanket Implementations

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

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

impl<T, U> Into<U> for T where
    U: From<T>, 
[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.

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

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

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