Struct ConnectIpTemplate
pub struct ConnectIpTemplate { /* private fields */ }Available on crate feature
masque only.Expand description
A configured CONNECT-IP HTTPS URI template, shared by clients and server matchers.
The authority is fixed. Template variables occur only in path/query; additional
application variables can be supplied with Self::request_with.
Implementations§
§impl ConnectIpTemplate
impl ConnectIpTemplate
pub fn try_new(
input: impl AsRef<str>,
) -> Result<ConnectIpTemplate, ConnectIpRequestError>
pub fn try_new( input: impl AsRef<str>, ) -> Result<ConnectIpTemplate, ConnectIpRequestError>
Parse an absolute HTTPS template, applying RFC 9484 §3 restrictions.
pub fn request(
&self,
scope: &ConnectIpScope,
version: Version,
) -> Result<Request, ConnectIpRequestError>
pub fn request( &self, scope: &ConnectIpScope, version: Version, ) -> Result<Request, ConnectIpRequestError>
Build a request; unprovided application variables are omitted by RFC 6570.
pub fn request_with<'v>(
&self,
scope: &ConnectIpScope,
version: Version,
variable: impl Fn(&str) -> Option<&'v str>,
) -> Result<Request, ConnectIpRequestError>
pub fn request_with<'v>( &self, scope: &ConnectIpScope, version: Version, variable: impl Fn(&str) -> Option<&'v str>, ) -> Result<Request, ConnectIpRequestError>
Build a request with additional template-variable values.
Credentials can be added to the request by the caller or an authentication layer. No packets may be sent until the client has accepted the response.
pub fn match_request<B>(
&self,
request: &Request<B>,
) -> Result<ConnectIpScope, ConnectIpRequestError>
pub fn match_request<B>( &self, request: &Request<B>, ) -> Result<ConnectIpScope, ConnectIpRequestError>
Validate a handshake and extract its requested scope.
Trait Implementations§
§impl Clone for ConnectIpTemplate
impl Clone for ConnectIpTemplate
§fn clone(&self) -> ConnectIpTemplate
fn clone(&self) -> ConnectIpTemplate
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 moreAuto Trait Implementations§
impl !Freeze for ConnectIpTemplate
impl RefUnwindSafe for ConnectIpTemplate
impl Send for ConnectIpTemplate
impl Sync for ConnectIpTemplate
impl Unpin for ConnectIpTemplate
impl UnsafeUnpin for ConnectIpTemplate
impl UnwindSafe for ConnectIpTemplate
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<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