pub struct FinderBuilder { /* private fields */ }Expand description
A builder for constructing non-default forward or reverse memmem finders.
A builder is primarily useful for configuring a substring searcher. Currently, the only configuration exposed is the ability to disable heuristic prefilters used to speed up certain searches.
Implementations§
Source§impl FinderBuilder
impl FinderBuilder
Sourcepub fn new() -> FinderBuilder
pub fn new() -> FinderBuilder
Create a new finder builder with default settings.
Sourcepub fn build_forward<'n, B: ?Sized + AsRef<[u8]>>(
&self,
needle: &'n B,
) -> Finder<'n>
pub fn build_forward<'n, B: ?Sized + AsRef<[u8]>>( &self, needle: &'n B, ) -> Finder<'n>
Build a forward finder using the given needle from the current settings.
Sourcepub fn build_forward_owned<B: Into<Box<[u8]>>>(
&self,
needle: B,
) -> Finder<'static>
pub fn build_forward_owned<B: Into<Box<[u8]>>>( &self, needle: B, ) -> Finder<'static>
Build an owned forward finder using the given needle from the current settings.
Sourcepub fn build_forward_with_ranker<'n, R: HeuristicFrequencyRank, B: ?Sized + AsRef<[u8]>>(
&self,
ranker: R,
needle: &'n B,
) -> Finder<'n>
pub fn build_forward_with_ranker<'n, R: HeuristicFrequencyRank, B: ?Sized + AsRef<[u8]>>( &self, ranker: R, needle: &'n B, ) -> Finder<'n>
Build a forward finder using the given needle and a custom heuristic
for determining the frequency of a given byte in the dataset. See
HeuristicFrequencyRank for more details.
Sourcepub fn build_forward_with_ranker_owned<R: HeuristicFrequencyRank, B: Into<Box<[u8]>>>(
&self,
ranker: R,
needle: B,
) -> Finder<'static>
pub fn build_forward_with_ranker_owned<R: HeuristicFrequencyRank, B: Into<Box<[u8]>>>( &self, ranker: R, needle: B, ) -> Finder<'static>
Build an owned forward finder using the given needle and a custom
heuristic for determining the frequency of a given byte in the dataset.
See HeuristicFrequencyRank for more details.
Sourcepub fn build_reverse<'n, B: ?Sized + AsRef<[u8]>>(
&self,
needle: &'n B,
) -> FinderRev<'n>
pub fn build_reverse<'n, B: ?Sized + AsRef<[u8]>>( &self, needle: &'n B, ) -> FinderRev<'n>
Build a reverse finder using the given needle from the current settings.
Sourcepub fn build_reverse_owned<B: Into<Box<[u8]>>>(
&self,
needle: B,
) -> FinderRev<'static>
pub fn build_reverse_owned<B: Into<Box<[u8]>>>( &self, needle: B, ) -> FinderRev<'static>
Build an owned reverse finder using the given needle from the current settings.
Sourcepub fn prefilter(&mut self, prefilter: Prefilter) -> &mut FinderBuilder
pub fn prefilter(&mut self, prefilter: Prefilter) -> &mut FinderBuilder
Configure the prefilter setting for the finder.
See the documentation for Prefilter for more discussion on why
you might want to configure this.