Struct HttpPeekConfig
#[non_exhaustive]pub struct HttpPeekConfig {
pub max_http1_request_line_size: usize,
pub read_buffer_size: usize,
pub skipped_http1_methods: &'static [&'static str],
}Available on crate feature
net only.Expand description
Configuration used while detecting HTTP on a byte stream.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.max_http1_request_line_size: usizemaximum number of bytes inspected for an HTTP/1 request-line
read_buffer_size: usizemaximum number of bytes requested per transport read
skipped_http1_methods: &'static [&'static str]HTTP/1 method prefixes routed to the fallback before a delimiter.
Matching is case-sensitive and fail-fast, so PING also skips PINGX.
Empty or invalid method tokens cannot match.
Implementations§
§impl HttpPeekConfig
impl HttpPeekConfig
pub fn new() -> HttpPeekConfig
pub fn new() -> HttpPeekConfig
Create an HTTP peek configuration using the defaults.
pub fn with_known_non_http_protocol_methods(self) -> HttpPeekConfig
pub fn with_known_non_http_protocol_methods(self) -> HttpPeekConfig
Use KNOWN_NON_HTTP_PROTOCOL_METHODS as the skipped method list.
pub fn set_known_non_http_protocol_methods(&mut self) -> &mut HttpPeekConfig
pub fn set_known_non_http_protocol_methods(&mut self) -> &mut HttpPeekConfig
Use KNOWN_NON_HTTP_PROTOCOL_METHODS as the skipped method list.
pub fn with_skipped_http1_methods(
self,
skipped_http1_methods: &'static [&'static str],
) -> HttpPeekConfig
pub fn with_skipped_http1_methods( self, skipped_http1_methods: &'static [&'static str], ) -> HttpPeekConfig
pub fn set_skipped_http1_methods(
&mut self,
skipped_http1_methods: &'static [&'static str],
) -> &mut HttpPeekConfig
pub fn set_skipped_http1_methods( &mut self, skipped_http1_methods: &'static [&'static str], ) -> &mut HttpPeekConfig
Trait Implementations§
§impl Clone for HttpPeekConfig
impl Clone for HttpPeekConfig
§fn clone(&self) -> HttpPeekConfig
fn clone(&self) -> HttpPeekConfig
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 moreimpl Copy for HttpPeekConfig
§impl Debug for HttpPeekConfig
impl Debug for HttpPeekConfig
§impl Default for HttpPeekConfig
impl Default for HttpPeekConfig
§fn default() -> HttpPeekConfig
fn default() -> HttpPeekConfig
Returns the “default value” for a type. Read more
impl Eq for HttpPeekConfig
§impl PartialEq for HttpPeekConfig
impl PartialEq for HttpPeekConfig
impl StructuralPartialEq for HttpPeekConfig
Auto Trait Implementations§
impl Forget for HttpPeekConfig
impl Freeze for HttpPeekConfig
impl RefUnwindSafe for HttpPeekConfig
impl Send for HttpPeekConfig
impl Sync for HttpPeekConfig
impl Unpin for HttpPeekConfig
impl UnsafeUnpin for HttpPeekConfig
impl UnwindSafe for HttpPeekConfig
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§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