Struct serde_partiql::Error[][src]

pub struct Error { /* fields omitted */ }
Expand description

This type represents all possible errors that can occur when serializing or deserializing JSON data.

Implementations

impl Error[src]

pub fn line(&self) -> usize[src]

One-based line number at which the error was detected.

Characters in the first line of the input (before the first newline character) are in line 1.

pub fn column(&self) -> usize[src]

One-based column number at which the error was detected.

The first character in the input and any characters immediately following a newline character are in column 1.

Note that errors may occur in column 0, for example if a read from an IO stream fails immediately following a previously read newline character.

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 syntactically valid JSON
  • Category::Data - input data that is semantically incorrect
  • Category::Eof - unexpected end of the input data

pub fn is_io(&self) -> bool[src]

Returns true if this error was caused by a failure to read or write bytes on an IO stream.

pub fn is_syntax(&self) -> bool[src]

Returns true if this error was caused by input that was not syntactically valid JSON.

pub fn is_data(&self) -> bool[src]

Returns true if this error was caused by input data that was semantically incorrect.

For example, JSON containing a number is semantically incorrect when the type being deserialized into holds a String.

pub fn is_eof(&self) -> bool[src]

Returns true if this error was caused by prematurely reaching the end of the input data.

Callers that process streaming input may be interested in retrying the deserialization once more data is available.

Trait Implementations

impl Debug for Error[src]

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

Formats the value using the given formatter. Read more

impl Display for Error[src]

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

Formats the value using the given formatter. Read more

impl Error for Error[src]

fn source(&self) -> Option<&(dyn Error + 'static)>[src]

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

fn backtrace(&self) -> Option<&Backtrace>[src]

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

Returns a stack backtrace, if available, of where this error occurred. Read more

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

👎 Deprecated since 1.42.0:

use the Display impl or to_string()

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

👎 Deprecated since 1.33.0:

replaced by Error::source, which can support downcasting

impl Error for Error[src]

fn custom<T: Display>(msg: T) -> Error[src]

Used when a Serialize implementation encounters any error while serializing a type. Read more

impl Error for Error[src]

fn custom<T: Display>(msg: T) -> Error[src]

Raised when there is general error when deserializing a type. Read more

fn invalid_type(unexp: Unexpected<'_>, exp: &dyn Expected) -> Self[src]

Raised when a Deserialize receives a type different from what it was expecting. Read more

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

impl From<Error> for Error[src]

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

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

JSON syntax and data errors are turned into InvalidData IO errors. EOF errors are turned into UnexpectedEof IO errors.

use std::io;

enum MyError {
    Io(io::Error),
    Json(serde_partiql::Error),
}

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

impl<'de> IntoDeserializer<'de, Error> for Value[src]

type Deserializer = Self

The type of the deserializer being converted into.

fn into_deserializer(self) -> Self::Deserializer[src]

Convert this value into a deserializer.

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]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

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

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

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

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

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

pub fn from(t: T) -> T[src]

Performs the conversion.

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

pub fn into(self) -> U[src]

Performs the conversion.

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

pub default fn to_string(&self) -> String[src]

Converts the given value to a String. Read more

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.

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

Performs the conversion.

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.

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

Performs the conversion.