Enum strict_encoding::Error[][src]

pub enum Error {
    Io(IoError),
    Utf8Conversion(Utf8Error),
    ExceedMaxItems(usize),
    WrongOptionalEncoding(u8),
    EnumValueOverflow(&'static str),
    EnumValueNotKnown(&'static strusize),
    UnsupportedDataStructure(&'static str),
    ValueOutOfRange(&'static strRange<u128>, u128),
    RepeatedValue(String),
    DataNotEntirelyConsumed,
    DataIntegrityError(String),
}
Expand description

Possible errors during strict encoding and decoding process

Variants

Expand description

I/O error during data strict encoding

Utf8Conversion(Utf8Error)
Expand description

String data are not in valid UTF-8 encoding

ExceedMaxItems(usize)
Expand description

A collection (slice, vector or other type) has more items ({0}) than 2^16 (i.e. maximum value which may be held by u16 size representation according to the LNPBP-6 spec)

WrongOptionalEncoding(u8)
Expand description

In terms of strict encoding, we interpret Option as a zero-length Vec (for Optional::None) or single-item Vec (for Optional::Some). For decoding an attempt to read Option from a encoded non-0 or non-1 length Vec will result in Error::WrongOptionalEncoding.

EnumValueOverflow(&'static str)
Expand description

Enum {0} value does not fit into representation bit dimensions

EnumValueNotKnown(&'static strusize)
Expand description

An unsupported value {0} for enum {0} encountered during decode operation

UnsupportedDataStructure(&'static str)
Expand description

The data are correct, however their structure indicate that they were created with the future software version which has a functional absent in the current implementation. {0}

ValueOutOfRange(&'static strRange<u128>, u128)
Expand description

Decoding resulted in value {2} for type {0} that exceeds the supported range {1:#?}

RepeatedValue(String)
Expand description

A repeated value for {0} found during set collection deserialization

DataNotEntirelyConsumed
Expand description

Returned by the convenience method [strict_decode()] if not all provided data were consumed during decoding process

DataIntegrityError(String)
Expand description

Data integrity problem during strict decoding operation: {0}

Trait Implementations

impl Clone for Error[src]

fn clone(&self) -> Error[src]

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

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)>1.30.0[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 From<Error> for Error[src]

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

Performs the conversion.

impl From<ErrorKind> for Error[src]

fn from(v: ErrorKind) -> Self[src]

Performs the conversion.

impl From<FromUtf8Error> for Error[src]

fn from(err: FromUtf8Error) -> Self[src]

Performs the conversion.

impl From<Utf8Error> for Error[src]

fn from(v: Utf8Error) -> Self[src]

Performs the conversion.

impl PartialEq<Error> for Error[src]

fn eq(&self, other: &Error) -> bool[src]

This method tests for self and other values to be equal, and is used by ==. Read more

fn ne(&self, other: &Error) -> bool[src]

This method tests for !=.

impl Eq for Error[src]

impl StructuralEq for Error[src]

impl StructuralPartialEq 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]

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> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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

Creates owned data from borrowed data, usually by cloning. Read more

pub fn clone_into(&self, target: &mut T)[src]

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

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

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.