pub enum DecodeError {
MessageTooShort {
expected: usize,
actual: usize,
},
U8BufferEmpty,
U16BufferEmpty,
U32BufferEmpty,
StringBufferTooShort {
expected: usize,
actual: usize,
},
InvalidUtf8 {
position: usize,
},
InvalidMessageType {
value: u8,
},
InvalidHeaderOffsets {
u16_offset: u32,
u8_offset: u32,
str_offset: u32,
total_len: usize,
},
Custom(String),
}Expand description
Error type for decoding binary IPC messages.
Variants§
MessageTooShort
The message is too short (less than 12 bytes for header)
U8BufferEmpty
The u8 buffer is empty when trying to read
U16BufferEmpty
The u16 buffer is empty when trying to read
U32BufferEmpty
The u32 buffer is empty when trying to read
StringBufferTooShort
The string buffer doesn’t have enough bytes
InvalidUtf8
Invalid UTF-8 in string buffer
InvalidMessageType
Invalid message type byte
InvalidHeaderOffsets
Header offsets are invalid (e.g., overlapping or out of bounds)
Custom(String)
Generic decode failure with context
Trait Implementations§
Source§impl Clone for DecodeError
impl Clone for DecodeError
Source§fn clone(&self) -> DecodeError
fn clone(&self) -> DecodeError
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for DecodeError
impl Debug for DecodeError
Source§impl Display for DecodeError
impl Display for DecodeError
Source§impl Error for DecodeError
impl Error for DecodeError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Source§impl From<DecodeError> for String
impl From<DecodeError> for String
Source§fn from(err: DecodeError) -> String
fn from(err: DecodeError) -> String
Converts to this type from the input type.
Source§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§
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
Mutably borrows from an owned value. Read more