Struct domain::resolv::lookup::host::FoundHosts

source ·
pub struct FoundHosts<R: Resolver> { /* private fields */ }
Expand description

The value returned by a successful host lookup.

You can use the iter() method to get an iterator over the IP addresses or port_iter() to get an iterator over socket addresses with the given port.

The canonical_name() method returns the canonical name of the host for which the addresses were found.

Implementations§

source§

impl<R: Resolver> FoundHosts<R>

source

pub fn new( aaaa: Result<R::Answer, Error>, a: Result<R::Answer, Error>, ) -> Result<Self, Error>

source

pub fn is_empty(&self) -> bool

source§

impl<R: Resolver> FoundHosts<R>
where R::Octets: Octets,

source

pub fn qname(&self) -> ParsedDname<<R::Octets as Octets>::Range<'_>>

source

pub fn canonical_name(&self) -> ParsedDname<<R::Octets as Octets>::Range<'_>>

Returns a reference to the canonical name for the host.

§Notes

This method expects the canonical name to be same in both A/AAAA responses, if it isn’t, it’s going to return a canonical name for one of them.

source

pub fn iter(&self) -> FoundHostsIter<'_>

Returns an iterator over the IP addresses returned by the lookup.

source

pub fn port_iter(&self, port: u16) -> FoundHostsSocketIter<'_>

Returns an iterator over socket addresses gained from the lookup.

The socket addresses are gained by combining the IP addresses with port. The returned iterator implements ToSocketAddrs and thus can be used where std::net wants addresses right away.

Trait Implementations§

source§

impl<R: Debug + Resolver> Debug for FoundHosts<R>
where R::Answer: Debug,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<R> Freeze for FoundHosts<R>
where <R as Resolver>::Answer: Freeze,

§

impl<R> !RefUnwindSafe for FoundHosts<R>

§

impl<R> Send for FoundHosts<R>
where <R as Resolver>::Answer: Send,

§

impl<R> Sync for FoundHosts<R>
where <R as Resolver>::Answer: Sync,

§

impl<R> Unpin for FoundHosts<R>
where <R as Resolver>::Answer: Unpin,

§

impl<R> !UnwindSafe for FoundHosts<R>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<Source, Target> OctetsInto<Target> for Source
where Target: OctetsFrom<Source>,

§

type Error = <Target as OctetsFrom<Source>>::Error

source§

fn try_octets_into( self, ) -> Result<Target, <Source as OctetsInto<Target>>::Error>

Performs the conversion.
source§

fn octets_into(self) -> Target
where Self::Error: Into<Infallible>,

Performs an infallible conversion.
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

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
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more