pub enum ConnectionError {
VersionMismatch,
TransportError(TransportError),
ConnectionClosed(ConnectionClose),
ApplicationClosed(ApplicationClose),
Reset,
TimedOut,
LocallyClosed,
CidsExhausted,
}Expand description
Reasons why a connection might be lost
Variants§
VersionMismatch
The peer doesn’t implement any supported version
TransportError(TransportError)
The peer violated the QUIC specification as understood by this implementation
ConnectionClosed(ConnectionClose)
The peer’s QUIC stack aborted the connection automatically
ApplicationClosed(ApplicationClose)
The peer closed the connection
Reset
The peer is unable to continue processing this connection, usually due to having restarted
TimedOut
Communication with the peer has lapsed for longer than the negotiated idle timeout
If neither side is sending keep-alives, a connection will time out after
a long enough idle period even if the peer is still reachable. See
also TransportConfig::max_idle_timeout()
and TransportConfig::keep_alive_interval().
LocallyClosed
The local application closed the connection
CidsExhausted
The connection could not be created because not enough of the CID space is available
Try using longer connection IDs.
Trait Implementations§
Source§impl Clone for ConnectionError
impl Clone for ConnectionError
Source§fn clone(&self) -> ConnectionError
fn clone(&self) -> ConnectionError
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ConnectionError
impl Debug for ConnectionError
Source§impl Display for ConnectionError
impl Display for ConnectionError
Source§impl Error for ConnectionError
impl Error for ConnectionError
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
Source§impl From<ConnectionError> for ConnectionError
impl From<ConnectionError> for ConnectionError
Source§fn from(value: ConnectionError) -> Self
fn from(value: ConnectionError) -> Self
Source§impl From<ConnectionError> for ConnectionErrorIncoming
Available on crate feature h3 only.
impl From<ConnectionError> for ConnectionErrorIncoming
h3 only.Source§fn from(e: ConnectionError) -> Self
fn from(e: ConnectionError) -> Self
Source§impl From<ConnectionError> for ReadError
impl From<ConnectionError> for ReadError
Source§fn from(source: ConnectionError) -> Self
fn from(source: ConnectionError) -> Self
Source§impl From<ConnectionError> for StoppedError
impl From<ConnectionError> for StoppedError
Source§fn from(source: ConnectionError) -> Self
fn from(source: ConnectionError) -> Self
Source§impl From<ConnectionError> for StreamErrorIncoming
Available on crate feature h3 only.
impl From<ConnectionError> for StreamErrorIncoming
h3 only.Source§fn from(e: ConnectionError) -> Self
fn from(e: ConnectionError) -> Self
Source§impl From<ConnectionError> for WriteError
impl From<ConnectionError> for WriteError
Source§fn from(source: ConnectionError) -> Self
fn from(source: ConnectionError) -> Self
Source§impl From<Error> for ConnectionError
impl From<Error> for ConnectionError
Source§fn from(source: TransportError) -> Self
fn from(source: TransportError) -> Self
Source§impl PartialEq for ConnectionError
impl PartialEq for ConnectionError
impl Eq for ConnectionError
impl StructuralPartialEq for ConnectionError
Auto Trait Implementations§
impl !Freeze for ConnectionError
impl RefUnwindSafe for ConnectionError
impl Send for ConnectionError
impl Sync for ConnectionError
impl Unpin for ConnectionError
impl UnwindSafe for ConnectionError
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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