pub enum IncomingPacketError<E: Error> {
Undecodable(E),
Overloaded(E),
ProcessingError(OffchainPublicKey, E),
InvalidTicket(OffchainPublicKey, TicketValidationError),
}Expand description
Error that can occur when processing an incoming packet.
Variants§
Undecodable(E)
Packet is not decodable.
Such errors are fatal and therefore the packet cannot be acknowledged.
Overloaded(E)
Packet dropped due to local resource exhaustion (not sender’s fault).
ProcessingError(OffchainPublicKey, E)
Packet is decodable but cannot be processed due to other reasons.
Such errors are protocol-related and packets must be acknowledged.
InvalidTicket(OffchainPublicKey, TicketValidationError)
Packet is decodable, but the ticket is invalid.
Implementations§
Source§impl<E: Error> IncomingPacketError<E>
impl<E: Error> IncomingPacketError<E>
Sourcepub const fn is_undecodable(&self) -> bool
pub const fn is_undecodable(&self) -> bool
Returns true if the enum is IncomingPacketError::Undecodable otherwise false
Sourcepub const fn is_overloaded(&self) -> bool
pub const fn is_overloaded(&self) -> bool
Returns true if the enum is IncomingPacketError::Overloaded otherwise false
Sourcepub const fn is_processing_error(&self) -> bool
pub const fn is_processing_error(&self) -> bool
Returns true if the enum is IncomingPacketError::ProcessingError otherwise false
Sourcepub const fn is_invalid_ticket(&self) -> bool
pub const fn is_invalid_ticket(&self) -> bool
Returns true if the enum is IncomingPacketError::InvalidTicket otherwise false
Source§impl<E: Error> IncomingPacketError<E>
impl<E: Error> IncomingPacketError<E>
pub fn try_as_undecodable(self) -> Option<E>
pub const fn try_as_undecodable_ref(&self) -> Option<&E>
pub fn try_as_undecodable_mut(&mut self) -> Option<&mut E>
pub fn try_as_overloaded(self) -> Option<E>
pub const fn try_as_overloaded_ref(&self) -> Option<&E>
pub fn try_as_overloaded_mut(&mut self) -> Option<&mut E>
pub fn try_as_processing_error(self) -> Option<(OffchainPublicKey, E)>
pub const fn try_as_processing_error_ref( &self, ) -> Option<(&OffchainPublicKey, &E)>
pub fn try_as_processing_error_mut( &mut self, ) -> Option<(&mut OffchainPublicKey, &mut E)>
pub fn try_as_invalid_ticket( self, ) -> Option<(OffchainPublicKey, TicketValidationError)>
pub const fn try_as_invalid_ticket_ref( &self, ) -> Option<(&OffchainPublicKey, &TicketValidationError)>
pub fn try_as_invalid_ticket_mut( &mut self, ) -> Option<(&mut OffchainPublicKey, &mut TicketValidationError)>
Trait Implementations§
Source§impl<E> Display for IncomingPacketError<E>
impl<E> Display for IncomingPacketError<E>
Source§impl<E: Error> Error for IncomingPacketError<E>
impl<E: Error> Error for IncomingPacketError<E>
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
Auto Trait Implementations§
impl<E> Freeze for IncomingPacketError<E>where
E: Freeze,
impl<E> RefUnwindSafe for IncomingPacketError<E>where
E: RefUnwindSafe,
impl<E> Send for IncomingPacketError<E>where
E: Send,
impl<E> Sync for IncomingPacketError<E>where
E: Sync,
impl<E> Unpin for IncomingPacketError<E>where
E: Unpin,
impl<E> UnwindSafe for IncomingPacketError<E>where
E: UnwindSafe,
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.