Enum DecodeError
pub enum DecodeError {
UnknownVersion,
UnknownRequiredFeature,
InvalidValue,
ShortRead,
BadLengthDescriptor,
Io(ErrorKind),
UnsupportedCompression,
DangerousValue,
}
Expand description
An error in decoding a message or struct.
Variants§
UnknownVersion
A version byte specified something we don’t know how to handle.
Includes unknown realm byte in an onion hop data packet.
UnknownRequiredFeature
Unknown feature mandating we fail to parse message (e.g., TLV with an even, unknown type)
InvalidValue
Value was invalid.
For example, a byte which was supposed to be a bool was something other than a 0 or 1, a public key/private key/signature was invalid, text wasn’t UTF-8, TLV was syntactically incorrect, etc.
ShortRead
The buffer to be read was too short.
BadLengthDescriptor
A length descriptor in the packet didn’t describe the later data correctly.
Io(ErrorKind)
Error from std::io
.
UnsupportedCompression
The message included zlib-compressed values, which we don’t support.
DangerousValue
Value is validly encoded but is dangerous to use.
This is used for things like ChannelManager
deserialization where we want to ensure
that we don’t use a ChannelManager
which is in out of sync with the ChannelMonitor
.
This indicates that there is a critical implementation flaw in the storage implementation
and it’s unsafe to continue.
Trait Implementations§
§impl Clone for DecodeError
impl Clone for DecodeError
§fn clone(&self) -> DecodeError
fn clone(&self) -> DecodeError
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more§impl Debug for DecodeError
impl Debug for DecodeError
§impl Display for DecodeError
impl Display for DecodeError
§impl From<DecodeError> for Bolt12ParseError
impl From<DecodeError> for Bolt12ParseError
§fn from(error: DecodeError) -> Bolt12ParseError
fn from(error: DecodeError) -> Bolt12ParseError
§impl From<Error> for DecodeError
impl From<Error> for DecodeError
§fn from(e: Error) -> DecodeError
fn from(e: Error) -> DecodeError
§impl Hash for DecodeError
impl Hash for DecodeError
§impl PartialEq for DecodeError
impl PartialEq for DecodeError
impl Eq for DecodeError
impl StructuralPartialEq for DecodeError
Auto Trait Implementations§
impl Freeze for DecodeError
impl RefUnwindSafe for DecodeError
impl Send for DecodeError
impl Sync for DecodeError
impl Unpin for DecodeError
impl UnwindSafe for DecodeError
Blanket Implementations§
§impl<T> AnyEq for T
impl<T> AnyEq for T
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request