pub struct ScopeFilter { /* private fields */ }Expand description
Compiled scope predicate evaluated on every proxied request.
Implementations§
Source§impl ScopeFilter
impl ScopeFilter
pub fn new( only_hosts: Vec<String>, skip_hosts: Vec<String>, only_paths: Vec<String>, skip_paths: Vec<String>, only_methods: Vec<String>, ) -> Self
Sourcepub fn is_empty(&self) -> bool
pub fn is_empty(&self) -> bool
Returns true when no scoping at all is configured — callers can skip the filter check entirely.
Sourcepub fn allows(&self, host: &str, path: &str, method: &Method) -> bool
pub fn allows(&self, host: &str, path: &str, method: &Method) -> bool
Decide whether a request is in the evasion scope.
Semantics:
--only-host/--only-path/--only-methodare inclusive filters: at least one entry must match (an empty list means “no filter”).--skip-host/--skip-pathare exclusive filters: any match drops the request out of scope, evaluated AFTER the inclusive filters.
Trait Implementations§
Source§impl Clone for ScopeFilter
impl Clone for ScopeFilter
Source§fn clone(&self) -> ScopeFilter
fn clone(&self) -> ScopeFilter
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 moreSource§impl Debug for ScopeFilter
impl Debug for ScopeFilter
Source§impl Default for ScopeFilter
impl Default for ScopeFilter
Source§fn default() -> ScopeFilter
fn default() -> ScopeFilter
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for ScopeFilter
impl RefUnwindSafe for ScopeFilter
impl Send for ScopeFilter
impl Sync for ScopeFilter
impl Unpin for ScopeFilter
impl UnsafeUnpin for ScopeFilter
impl UnwindSafe for ScopeFilter
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§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,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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