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

impl Display for Error[src]

impl Error for Error[src]

impl Error for Error[src]

impl Error for Error[src]

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]

Auto Trait Implementations

impl !RefUnwindSafe for Error

impl Send for Error

impl Sync for Error

impl Unpin for Error

impl !UnwindSafe for Error

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