Struct Socks5ProxyConnectorLayer
pub struct Socks5ProxyConnectorLayer { /* private fields */ }socks5 only.Expand description
A Layer which wraps the given service with a Socks5ProxyConnector.
See Socks5ProxyConnector for more information.
Implementations§
§impl Socks5ProxyConnectorLayer
impl Socks5ProxyConnectorLayer
pub fn optional() -> Socks5ProxyConnectorLayer
pub fn optional() -> Socks5ProxyConnectorLayer
Create a new Socks5ProxyConnectorLayer which creates a Socks5ProxyConnector
which will only connect via a socks5 proxy when a proxied ProxyRoute is available
in the input Extensions.
pub fn required() -> Socks5ProxyConnectorLayer
pub fn required() -> Socks5ProxyConnectorLayer
Create a new Socks5ProxyConnectorLayer which creates a Socks5ProxyConnector
which will always connect via a SOCKS5 proxy, but fail when a proxied ProxyRoute is
not available in the input Extensions.
§impl Socks5ProxyConnectorLayer
impl Socks5ProxyConnectorLayer
pub fn with_default_dns_resolver(self) -> Socks5ProxyConnectorLayer
Available on crate feature dns only.
pub fn with_default_dns_resolver(self) -> Socks5ProxyConnectorLayer
dns only.Attach the default DnsAddressResolver to this Socks5ProxyConnectorLayer.
It will try to be used (best-effort) to resolve domain addresses
as IP addresses if the socks5 protocol is used, but not for the socks5h protocol.
In case of an error with resolving the domain address the connector will anyway use the domain instead of the ip.
pub fn set_default_dns_resolver(&mut self) -> &mut Socks5ProxyConnectorLayer
Available on crate feature dns only.
pub fn set_default_dns_resolver(&mut self) -> &mut Socks5ProxyConnectorLayer
dns only.Attach the default DnsAddressResolver to this Socks5ProxyConnectorLayer.
It will try to be used (best-effort) to resolve domain addresses
as IP addresses if the socks5 protocol is used, but not for the socks5h protocol.
In case of an error with resolving the domain address the connector will anyway use the domain instead of the ip.
pub fn with_dns_address_resolver(
self,
resolver: impl DnsAddressResolver,
) -> Socks5ProxyConnectorLayer
Available on crate feature dns only.
pub fn with_dns_address_resolver( self, resolver: impl DnsAddressResolver, ) -> Socks5ProxyConnectorLayer
dns only.Attach a DnsAddressResolver to this Socks5ProxyConnectorLayer.
It will try to be used (best-effort) to resolve domain addresses
as IP addresses if the socks5 protocol is used, but not for the socks5h protocol.
In case of an error with resolving the domain address the connector will anyway use the domain instead of the ip.
pub fn set_dns_address_resolver(
&mut self,
resolver: impl DnsAddressResolver,
) -> &mut Socks5ProxyConnectorLayer
Available on crate feature dns only.
pub fn set_dns_address_resolver( &mut self, resolver: impl DnsAddressResolver, ) -> &mut Socks5ProxyConnectorLayer
dns only.Attach a DnsAddressResolver to this Socks5ProxyConnectorLayer.
It will try to be used (best-effort) to resolve domain addresses
as IP addresses if the socks5 protocol is used, but not for the socks5h protocol.
In case of an error with resolving the domain address the connector will anyway use the domain instead of the ip.
Trait Implementations§
§impl Clone for Socks5ProxyConnectorLayer
impl Clone for Socks5ProxyConnectorLayer
§fn clone(&self) -> Socks5ProxyConnectorLayer
fn clone(&self) -> Socks5ProxyConnectorLayer
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more§impl Debug for Socks5ProxyConnectorLayer
impl Debug for Socks5ProxyConnectorLayer
§impl Default for Socks5ProxyConnectorLayer
impl Default for Socks5ProxyConnectorLayer
§fn default() -> Socks5ProxyConnectorLayer
fn default() -> Socks5ProxyConnectorLayer
§impl<S> Layer<S> for Socks5ProxyConnectorLayer
impl<S> Layer<S> for Socks5ProxyConnectorLayer
§type Service = Socks5ProxyConnector<S>
type Service = Socks5ProxyConnector<S>
§fn layer(&self, inner: S) -> <Socks5ProxyConnectorLayer as Layer<S>>::Service
fn layer(&self, inner: S) -> <Socks5ProxyConnectorLayer as Layer<S>>::Service
§fn into_layer(
self,
inner: S,
) -> <Socks5ProxyConnectorLayer as Layer<S>>::Service
fn into_layer( self, inner: S, ) -> <Socks5ProxyConnectorLayer as Layer<S>>::Service
layer but consuming self after the service was created. Read moreAuto Trait Implementations§
impl !RefUnwindSafe for Socks5ProxyConnectorLayer
impl !UnwindSafe for Socks5ProxyConnectorLayer
impl Freeze for Socks5ProxyConnectorLayer
impl Send for Socks5ProxyConnectorLayer
impl Sync for Socks5ProxyConnectorLayer
impl Unpin for Socks5ProxyConnectorLayer
impl UnsafeUnpin for Socks5ProxyConnectorLayer
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
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> Conv for T
impl<T> Conv for T
impl<T> ErasedDestructor for Twhere
T: 'static,
§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<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> ⓘ
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§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a rama_grpc::Request§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read more§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read more§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.§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>
Policy that returns Action::Follow only if self and other return
Action::Follow. Read more§impl<T, U> RamaTryFrom<T> for Uwhere
U: TryFrom<T>,
impl<T, U> RamaTryFrom<T> for Uwhere
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
fn rama_try_from(value: T) -> Result<U, <U as RamaTryFrom<T>>::Error>
§impl<T, U, CrateMarker> RamaTryInto<U, CrateMarker> for Twhere
U: RamaTryFrom<T, CrateMarker>,
impl<T, U, CrateMarker> RamaTryInto<U, CrateMarker> for Twhere
U: RamaTryFrom<T, CrateMarker>,
type Error = <U as RamaTryFrom<T, CrateMarker>>::Error
fn rama_try_into(self) -> Result<U, <U as RamaTryFrom<T, CrateMarker>>::Error>
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.