#[non_exhaustive]pub struct ProtoError {
pub kind: Box<ProtoErrorKind>,
pub backtrack: Option<ExtBacktrace>,
}
Expand description
The error type for errors that get returned in the crate
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.kind: Box<ProtoErrorKind>
Kind of error that ocurred
backtrack: Option<ExtBacktrace>
Available on crate feature
backtrace
only.Backtrace to the source of the error
Implementations§
Source§impl ProtoError
impl ProtoError
Sourcepub fn nx_error(
query: Box<Query>,
soa: Option<Box<Record<SOA>>>,
ns: Option<Arc<[ForwardNSData]>>,
negative_ttl: Option<u32>,
response_code: ResponseCode,
trusted: bool,
authorities: Option<Arc<[Record]>>,
) -> Self
pub fn nx_error( query: Box<Query>, soa: Option<Box<Record<SOA>>>, ns: Option<Arc<[ForwardNSData]>>, negative_ttl: Option<u32>, response_code: ResponseCode, trusted: bool, authorities: Option<Arc<[Record]>>, ) -> Self
Constructor to NX type errors
Sourcepub fn kind(&self) -> &ProtoErrorKind
pub fn kind(&self) -> &ProtoErrorKind
Get the kind of the error
Sourcepub fn is_no_connections(&self) -> bool
pub fn is_no_connections(&self) -> bool
Returns true if this error represents NoConnections
Sourcepub fn is_nx_domain(&self) -> bool
pub fn is_nx_domain(&self) -> bool
Returns true if the domain does not exist
Sourcepub fn is_no_records_found(&self) -> bool
pub fn is_no_records_found(&self) -> bool
Returns true if the error represents NoRecordsFound
Sourcepub fn into_soa(self) -> Option<Box<Record<SOA>>>
pub fn into_soa(self) -> Option<Box<Record<SOA>>>
Returns the SOA record, if the error contains one
Sourcepub fn from_response(
response: DnsResponse,
trust_nx: bool,
) -> Result<DnsResponse, Self>
pub fn from_response( response: DnsResponse, trust_nx: bool, ) -> Result<DnsResponse, Self>
A conversion to determine if the response is an error
Sourcepub fn cmp_specificity(&self, other: &Self) -> Ordering
pub fn cmp_specificity(&self, other: &Self) -> Ordering
Compare two errors to see if one contains a server response.
Trait Implementations§
Source§impl Clone for ProtoError
impl Clone for ProtoError
Source§fn clone(&self) -> ProtoError
fn clone(&self) -> ProtoError
Returns a copy 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 ProtoError
impl Debug for ProtoError
Source§impl Display for ProtoError
impl Display for ProtoError
Source§impl Error for ProtoError
impl Error for ProtoError
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<&'static str> for ProtoError
impl From<&'static str> for ProtoError
Source§impl From<DecodeError> for ProtoError
impl From<DecodeError> for ProtoError
Source§fn from(err: DecodeError) -> Self
fn from(err: DecodeError) -> Self
Converts to this type from the input type.
Source§impl<E> From<E> for ProtoErrorwhere
E: Into<ProtoErrorKind>,
impl<E> From<E> for ProtoErrorwhere
E: Into<ProtoErrorKind>,
Source§impl<T> From<PoisonError<T>> for ProtoError
impl<T> From<PoisonError<T>> for ProtoError
Source§fn from(_e: PoisonError<T>) -> Self
fn from(_e: PoisonError<T>) -> Self
Converts to this type from the input type.
Source§impl From<ProtoError> for DnsResponseStream
impl From<ProtoError> for DnsResponseStream
Source§fn from(e: ProtoError) -> Self
fn from(e: ProtoError) -> Self
Converts to this type from the input type.
Source§impl From<ProtoError> for DnsSecError
Available on crate feature dnssec
only.
impl From<ProtoError> for DnsSecError
Available on crate feature
dnssec
only.Source§fn from(e: ProtoError) -> Self
fn from(e: ProtoError) -> Self
Converts to this type from the input type.
Source§impl From<ProtoError> for DnsSecErrorKind
impl From<ProtoError> for DnsSecErrorKind
Source§fn from(source: ProtoError) -> Self
fn from(source: ProtoError) -> Self
Converts to this type from the input type.
Source§impl From<ProtoError> for Error
impl From<ProtoError> for Error
Source§fn from(e: ProtoError) -> Self
fn from(e: ProtoError) -> Self
Converts to this type from the input type.
Source§impl From<ProtoError> for Error
Available on crate features dns-over-https-rustls
or dns-over-h3
only.
impl From<ProtoError> for Error
Available on crate features
dns-over-https-rustls
or dns-over-h3
only.Source§fn from(msg: ProtoError) -> Self
fn from(msg: ProtoError) -> Self
Converts to this type from the input type.
Source§impl From<ProtoError> for JsValue
Available on crate feature wasm-bindgen
only.
impl From<ProtoError> for JsValue
Available on crate feature
wasm-bindgen
only.Source§fn from(e: ProtoError) -> Self
fn from(e: ProtoError) -> Self
Converts to this type from the input type.
Source§impl From<ProtoError> for ParseError
Available on crate feature text-parsing
only.
impl From<ProtoError> for ParseError
Available on crate feature
text-parsing
only.Source§fn from(e: ProtoError) -> Self
fn from(e: ProtoError) -> Self
Converts to this type from the input type.
Source§impl From<ProtoError> for ParseErrorKind
Available on crate feature text-parsing
only.
impl From<ProtoError> for ParseErrorKind
Available on crate feature
text-parsing
only.Source§fn from(source: ProtoError) -> Self
fn from(source: ProtoError) -> Self
Converts to this type from the input type.
Source§impl From<ProtoError> for String
impl From<ProtoError> for String
Source§fn from(e: ProtoError) -> Self
fn from(e: ProtoError) -> Self
Converts to this type from the input type.
Source§impl From<String> for ProtoError
impl From<String> for ProtoError
Source§impl RetryableError for ProtoError
impl RetryableError for ProtoError
Auto Trait Implementations§
impl Freeze for ProtoError
impl !RefUnwindSafe for ProtoError
impl Send for ProtoError
impl Sync for ProtoError
impl Unpin for ProtoError
impl !UnwindSafe for ProtoError
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)