DeserializationError

Enum DeserializationError 

Source
pub enum DeserializationError {
Show 14 variants Custom { message: String, }, Failure { type_name: String, cause: Box<CompatDeserializationError>, }, IdentifierNotSupported, InvalidBool { raw_value: u32, }, InvalidChar { raw_value: u32, }, InvalidEnumVariant { variant: u32, variants: &'static [&'static str], }, InvalidInteger { bits: u8, value: i32, }, InvalidOption, InvalidString { cause: FromUtf8Error, }, InvalidUnsignedInteger { bits: u8, value: u32, }, IoError { type_name: String, cause: Error, }, MapIsNotSupported, TupleHasTooManyElements { length: usize, }, UnknownType,
}
Expand description

Error during deserialization.

Variants§

§

Custom

Custom error message.

Fields

§message: String

The message of the custom error.

§

Failure

Failure while deserializing a value.

Fields

§type_name: String

The name of the type that was being deserialized.

§cause: Box<CompatDeserializationError>

The error that ocurred during deserialization.

§

IdentifierNotSupported

Deserialization of an identifier (for meta-data) is not supported.

§

InvalidBool

Deserialized boolean value is invalid.

Fields

§raw_value: u32

The deserialized value that’s not a zero or a one.

§

InvalidChar

Deserialized character value is invalid.

Fields

§raw_value: u32

The deserialized value that’s larger than a byte.

§

InvalidEnumVariant

Deserialized enum variant is invalid.

Fields

§variant: u32

The invalid variant index.

§variants: &'static [&'static str]

The valid variants.

§

InvalidInteger

Deserialized signed integer is invalid.

Fields

§bits: u8

The maximum number of bits expected.

§value: i32

The deserialized value that has more bits than expected.

§

InvalidOption

Deserialized optional value is invalid.

§

InvalidString

Deserialized an invalid UTF-8 string.

Fields

§cause: FromUtf8Error

The error that ocurred while converting the deserialized bytes into a string.

§

InvalidUnsignedInteger

Deserialized unsigned integer is invalid.

Fields

§bits: u8

The maximum number of bits expected.

§value: u32

The deserialized value that has more bits than expected.

§

IoError

IO error while deserializing a value.

Fields

§type_name: String

The name of the type that was being deserialized.

§cause: Error

The error that ocurred during deserialization.

§

MapIsNotSupported

Map types are not supported by XDR.

§

TupleHasTooManyElements

Attempt to deserialize a tuple that has too many elements.

Fields

§length: usize

Number of elements that were expected, but can’t be represented.

§

UnknownType

Attempt to deserialize an unknown type.

Implementations§

Source§

impl DeserializationError

Source

pub fn failure<S, E>(type_name: S, cause: E) -> Self

Create a deserialization failure error.

Source

pub fn io_error<S>(type_name: S, cause: Error) -> Self
where S: ToString,

Create a deserialization IO error.

Trait Implementations§

Source§

impl Debug for DeserializationError

Source§

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

Formats the value using the given formatter. Read more
Source§

impl Display for DeserializationError

Source§

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

Formats the value using the given formatter. Read more
Source§

impl Fail for DeserializationError

Source§

fn name(&self) -> Option<&str>

Returns the “name” of the error. Read more
Source§

fn cause(&self) -> Option<&dyn Fail>

Returns a reference to the underlying cause of this failure, if it is an error that wraps other errors. Read more
Source§

fn backtrace(&self) -> Option<&Backtrace>

Returns a reference to the Backtrace carried by this failure, if it carries one. Read more
Source§

fn context<D>(self, context: D) -> Context<D>
where D: Display + Send + Sync + 'static, Self: Sized,

Provides context for this failure. Read more
Source§

fn compat(self) -> Compat<Self>
where Self: Sized,

Wraps this failure in a compatibility wrapper that implements std::error::Error. Read more
Source§

impl From<CompatDeserializationError> for DeserializationError

Source§

fn from(wrapped_error: CompatDeserializationError) -> Self

Converts to this type from the input type.
Source§

impl From<DeserializationError> for CompatDeserializationError

Source§

fn from(error: DeserializationError) -> Self

Converts to this type from the input type.

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> AsFail for T
where T: Fail,

Source§

fn as_fail(&self) -> &(dyn Fail + 'static)

Converts a reference to Self into a dynamic trait object of Fail.
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> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

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

Source§

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

Source§

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.