Struct BoxDnsResolver
pub struct BoxDnsResolver { /* private fields */ }Available on crate features
dns and std only.Expand description
A boxed DnsResolver, mapping its error into OpaqueError.
Implementations§
§impl BoxDnsResolver
impl BoxDnsResolver
pub fn new<T>(resolver: T) -> BoxDnsResolverwhere
T: DnsResolver,
pub fn new<T>(resolver: T) -> BoxDnsResolverwhere
T: DnsResolver,
Box an aggregate DNS resolver.
Trait Implementations§
§impl Clone for BoxDnsResolver
impl Clone for BoxDnsResolver
§fn clone(&self) -> BoxDnsResolver
fn clone(&self) -> BoxDnsResolver
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read more§impl Debug for BoxDnsResolver
impl Debug for BoxDnsResolver
§impl DnsAddressResolver for BoxDnsResolver
impl DnsAddressResolver for BoxDnsResolver
§type Error = OpaqueError
type Error = OpaqueError
Error returned by the
DnsAddressResolver§fn lookup_ipv4(
&self,
domain: Domain,
) -> impl Stream<Item = Result<Ipv4Addr, <BoxDnsResolver as DnsAddressResolver>::Error>> + Send
fn lookup_ipv4( &self, domain: Domain, ) -> impl Stream<Item = Result<Ipv4Addr, <BoxDnsResolver as DnsAddressResolver>::Error>> + Send
§fn lookup_ipv4_first(
&self,
domain: Domain,
) -> impl Future<Output = Option<Result<Ipv4Addr, <BoxDnsResolver as DnsAddressResolver>::Error>>> + Send
fn lookup_ipv4_first( &self, domain: Domain, ) -> impl Future<Output = Option<Result<Ipv4Addr, <BoxDnsResolver as DnsAddressResolver>::Error>>> + Send
Resolve the first ‘A’ record found for the resolver.
§fn lookup_ipv4_rand(
&self,
domain: Domain,
) -> impl Future<Output = Option<Result<Ipv4Addr, <BoxDnsResolver as DnsAddressResolver>::Error>>> + Send
fn lookup_ipv4_rand( &self, domain: Domain, ) -> impl Future<Output = Option<Result<Ipv4Addr, <BoxDnsResolver as DnsAddressResolver>::Error>>> + Send
Resolve to a pseudo-random ‘A’ record found for the resolver.
§fn lookup_ipv6(
&self,
domain: Domain,
) -> impl Stream<Item = Result<Ipv6Addr, <BoxDnsResolver as DnsAddressResolver>::Error>> + Send
fn lookup_ipv6( &self, domain: Domain, ) -> impl Stream<Item = Result<Ipv6Addr, <BoxDnsResolver as DnsAddressResolver>::Error>> + Send
§fn lookup_ipv6_first(
&self,
domain: Domain,
) -> impl Future<Output = Option<Result<Ipv6Addr, <BoxDnsResolver as DnsAddressResolver>::Error>>> + Send
fn lookup_ipv6_first( &self, domain: Domain, ) -> impl Future<Output = Option<Result<Ipv6Addr, <BoxDnsResolver as DnsAddressResolver>::Error>>> + Send
Resolve the first ‘AAAA’ record found for the resolver.
§fn lookup_ipv6_rand(
&self,
domain: Domain,
) -> impl Future<Output = Option<Result<Ipv6Addr, <BoxDnsResolver as DnsAddressResolver>::Error>>> + Send
fn lookup_ipv6_rand( &self, domain: Domain, ) -> impl Future<Output = Option<Result<Ipv6Addr, <BoxDnsResolver as DnsAddressResolver>::Error>>> + Send
Resolve to a pseudo-random ‘AAAA’ record found for the resolver.
§fn into_box_dns_address_resolver(self) -> BoxDnsAddressResolver
fn into_box_dns_address_resolver(self) -> BoxDnsAddressResolver
Box this resolver to allow for dynamic dispatch.
§impl DnsCnameResolver for BoxDnsResolver
impl DnsCnameResolver for BoxDnsResolver
§type Error = OpaqueError
type Error = OpaqueError
Error returned by this resolver.
§fn lookup_cname(
&self,
domain: Domain,
) -> impl Stream<Item = Result<Name, <BoxDnsResolver as DnsCnameResolver>::Error>> + Send
fn lookup_cname( &self, domain: Domain, ) -> impl Stream<Item = Result<Name, <BoxDnsResolver as DnsCnameResolver>::Error>> + Send
Resolve CNAME targets for the given domain. Read more
§fn into_box_dns_cname_resolver(self) -> BoxDnsCnameResolver
fn into_box_dns_cname_resolver(self) -> BoxDnsCnameResolver
Box this resolver to allow dynamic dispatch.
§impl DnsResolver for BoxDnsResolver
impl DnsResolver for BoxDnsResolver
§fn into_box_dns_resolver(self) -> BoxDnsResolverwhere
BoxDnsResolver: Sized,
fn into_box_dns_resolver(self) -> BoxDnsResolverwhere
BoxDnsResolver: Sized,
Box this aggregate resolver for dynamic dispatch.
§impl DnsServiceBindingResolver for BoxDnsResolver
impl DnsServiceBindingResolver for BoxDnsResolver
§type Error = OpaqueError
type Error = OpaqueError
Error returned by this resolver.
§fn lookup_svcb(
&self,
domain: Domain,
) -> impl Stream<Item = Result<ServiceBinding, <BoxDnsResolver as DnsServiceBindingResolver>::Error>> + Send
fn lookup_svcb( &self, domain: Domain, ) -> impl Stream<Item = Result<ServiceBinding, <BoxDnsResolver as DnsServiceBindingResolver>::Error>> + Send
Resolve the complete SVCB RRset for the given domain. Read more
§fn lookup_https(
&self,
domain: Domain,
) -> impl Stream<Item = Result<ServiceBinding, <BoxDnsResolver as DnsServiceBindingResolver>::Error>> + Send
fn lookup_https( &self, domain: Domain, ) -> impl Stream<Item = Result<ServiceBinding, <BoxDnsResolver as DnsServiceBindingResolver>::Error>> + Send
Resolve the complete HTTPS RRset for the given domain. Read more
§fn into_box_dns_service_binding_resolver(self) -> BoxDnsServiceBindingResolver
fn into_box_dns_service_binding_resolver(self) -> BoxDnsServiceBindingResolver
Box this resolver to allow dynamic dispatch.
§impl DnsTxtResolver for BoxDnsResolver
impl DnsTxtResolver for BoxDnsResolver
§type Error = OpaqueError
type Error = OpaqueError
Error returned by the
DnsTxtResolver§fn lookup_txt(
&self,
domain: Domain,
) -> impl Stream<Item = Result<Txt, <BoxDnsResolver as DnsTxtResolver>::Error>> + Send
fn lookup_txt( &self, domain: Domain, ) -> impl Stream<Item = Result<Txt, <BoxDnsResolver as DnsTxtResolver>::Error>> + Send
§fn into_box_dns_txt_resolver(self) -> BoxDnsTxtResolver
fn into_box_dns_txt_resolver(self) -> BoxDnsTxtResolver
Box this resolver to allow for dynamic dispatch.
Auto Trait Implementations§
impl !RefUnwindSafe for BoxDnsResolver
impl !UnwindSafe for BoxDnsResolver
impl Freeze for BoxDnsResolver
impl Send for BoxDnsResolver
impl Sync for BoxDnsResolver
impl Unpin for BoxDnsResolver
impl UnsafeUnpin for BoxDnsResolver
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
§impl<R> HappyEyeballAddressResolverExt for Rwhere
R: DnsAddressResolver,
impl<R> HappyEyeballAddressResolverExt for Rwhere
R: DnsAddressResolver,
§fn happy_eyeballs_resolver(
&self,
host: impl Into<Host>,
) -> HappyEyeballAddressResolver<'_, R>
fn happy_eyeballs_resolver( &self, host: impl Into<Host>, ) -> HappyEyeballAddressResolver<'_, R>
Build a happy eyeballs address resolver using
a reference to the current address resolver.
§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> ⓘ
Converts
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> ⓘ
Converts
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a rama_grpc::Request§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§fn and<P, B, E>(self, other: P) -> And<T, P>
fn and<P, B, E>(self, other: P) -> And<T, P>
Create a new
Policy that returns Action::Follow only if self and other return
Action::Follow. Read more