pub struct ScanExecutionRoute {
pub decode_backend: ScanBackend,
pub phase2_plain_localizer: bool,
pub phase2_keyword_localizer: bool,
}Expand description
Recall-equivalent execution choices resolved for one scan request.
This is separate from ScannerTuningConfig: tuning supplies the default,
while autoroute can select a measured route for an exact workload without
mutating scanner-global state or racing concurrent requests.
Fields§
§decode_backend: ScanBackendBackend for residual host work, including decoded derived buffers and
phase-two acceleration. GPU routes deliberately use CpuFallback here:
GPU owns phase-one evidence while residual extraction stays portable.
Keeping that choice in the measured route prevents scalar and GPU
candidates from silently borrowing unattributed Hyperscan work.
phase2_plain_localizer: boolLocalize eligible folded plain patterns before residual extraction.
phase2_keyword_localizer: boolLocalize eligible keyword-anchored patterns before residual extraction.
Implementations§
Source§impl ScanExecutionRoute
impl ScanExecutionRoute
Sourcepub const fn owns_hyperscan_phase2(self) -> bool
pub const fn owns_hyperscan_phase2(self) -> bool
Only a route whose residual host work is SIMD-owned may execute the Hyperscan phase-two engine.
Trait Implementations§
Source§impl Clone for ScanExecutionRoute
impl Clone for ScanExecutionRoute
Source§fn clone(&self) -> ScanExecutionRoute
fn clone(&self) -> ScanExecutionRoute
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for ScanExecutionRoute
Source§impl Debug for ScanExecutionRoute
impl Debug for ScanExecutionRoute
impl Eq for ScanExecutionRoute
Source§impl Hash for ScanExecutionRoute
impl Hash for ScanExecutionRoute
Source§impl PartialEq for ScanExecutionRoute
impl PartialEq for ScanExecutionRoute
impl StructuralPartialEq for ScanExecutionRoute
Auto Trait Implementations§
impl Freeze for ScanExecutionRoute
impl RefUnwindSafe for ScanExecutionRoute
impl Send for ScanExecutionRoute
impl Sync for ScanExecutionRoute
impl Unpin for ScanExecutionRoute
impl UnsafeUnpin for ScanExecutionRoute
impl UnwindSafe for ScanExecutionRoute
Blanket Implementations§
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,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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>
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