Struct aptos_types::network_address::DnsName
source · [−]pub struct DnsName(_);Expand description
A minimally parsed DNS name. We don’t really do any checking other than enforcing:
- it is not an empty string
- it is not larger than 255 bytes
- it does not contain any forward slash ‘/’ characters
From the DNS name syntax RFC, the standard rules are:
- the total size <= 255 bytes
- each label <= 63 bytes
- any binary string is valid
So the restrictions we’re adding are (1) no ‘/’ characters and (2) the name
is a valid unicode string. We do this because ‘/’ characters are already our
protocol delimiter and Rust’s std::net::ToSocketAddrs API requires a
&str.
Trait Implementations
sourceimpl<'de> Deserialize<'de> for DnsName
impl<'de> Deserialize<'de> for DnsName
sourcefn deserialize<D>(deserializer: D) -> Result<Self, D::Error> where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error> where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for DnsName
impl StructuralEq for DnsName
impl StructuralPartialEq for DnsName
Auto Trait Implementations
impl RefUnwindSafe for DnsName
impl Send for DnsName
impl Sync for DnsName
impl Unpin for DnsName
impl UnwindSafe for DnsName
Blanket Implementations
impl<T> AsUncased for T where
T: AsRef<str> + ?Sized,
impl<T> AsUncased for T where
T: AsRef<str> + ?Sized,
fn as_uncased(&self) -> &UncasedStr
fn as_uncased(&self) -> &UncasedStr
Convert self to an [UncasedStr].
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to key and return true if they are equal.
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<T> Pointable for T
impl<T> Pointable for T
sourceimpl<T> TestOnlyHash for T where
T: Serialize + ?Sized,
impl<T> TestOnlyHash for T where
T: Serialize + ?Sized,
sourcefn test_only_hash(&self) -> HashValue
fn test_only_hash(&self) -> HashValue
Generates a hash used only for tests.
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber to this type, returning a
WithDispatch wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber to this type, returning a
WithDispatch wrapper. Read more