pub struct CachedRegexBuilder { /* private fields */ }
Expand description
A configurable builder for a cached Regex
.
Implementations§
Source§impl CachedRegexBuilder
impl CachedRegexBuilder
Sourcepub fn new(cache: Arc<Mutex<RegexCache>>, source: &str) -> CachedRegexBuilder
pub fn new(cache: Arc<Mutex<RegexCache>>, source: &str) -> CachedRegexBuilder
Create a new regular expression builder with the given pattern.
If the pattern is invalid, then an error will be returned when
compile
is called.
Sourcepub fn build(&self) -> Result<CachedRegex, Error>
pub fn build(&self) -> Result<CachedRegex, Error>
Consume the builder and compile the regular expression.
Note that calling as_str
on the resulting Regex
will produce the
pattern given to new
verbatim. Notably, it will not incorporate any
of the flags set on this builder.
Sourcepub fn build_unchecked(&self) -> CachedRegex
pub fn build_unchecked(&self) -> CachedRegex
Consume the builder and compile the regular expression without checking if the syntax is valid.
Only use this if you know that the syntax is valid or you are ready to handle potential syntax errors later on.
Note that calling as_str
on the resulting Regex
will produce the
pattern given to new
verbatim. Notably, it will not incorporate any
of the flags set on this builder.
Sourcepub fn case_insensitive(&mut self, yes: bool) -> &mut CachedRegexBuilder
pub fn case_insensitive(&mut self, yes: bool) -> &mut CachedRegexBuilder
Set the value for the case insensitive (i
) flag.
Sourcepub fn multi_line(&mut self, yes: bool) -> &mut CachedRegexBuilder
pub fn multi_line(&mut self, yes: bool) -> &mut CachedRegexBuilder
Set the value for the multi-line matching (m
) flag.
Sourcepub fn dot_matches_new_line(&mut self, yes: bool) -> &mut CachedRegexBuilder
pub fn dot_matches_new_line(&mut self, yes: bool) -> &mut CachedRegexBuilder
Set the value for the any character (s
) flag, where in .
matches
anything when s
is set and matches anything except for new line when
it is not set (the default).
N.B. “matches anything” means “any byte” for regex::bytes::Regex
expressions and means “any Unicode scalar value” for regex::Regex
expressions.
Sourcepub fn swap_greed(&mut self, yes: bool) -> &mut CachedRegexBuilder
pub fn swap_greed(&mut self, yes: bool) -> &mut CachedRegexBuilder
Set the value for the greedy swap (U
) flag.
Sourcepub fn ignore_whitespace(&mut self, yes: bool) -> &mut CachedRegexBuilder
pub fn ignore_whitespace(&mut self, yes: bool) -> &mut CachedRegexBuilder
Set the value for the ignore whitespace (x
) flag.
Sourcepub fn unicode(&mut self, yes: bool) -> &mut CachedRegexBuilder
pub fn unicode(&mut self, yes: bool) -> &mut CachedRegexBuilder
Set the value for the Unicode (u
) flag.
Sourcepub fn size_limit(&mut self, limit: usize) -> &mut CachedRegexBuilder
pub fn size_limit(&mut self, limit: usize) -> &mut CachedRegexBuilder
Set the approximate size limit of the compiled regular expression.
This roughly corresponds to the number of bytes occupied by a single compiled program. If the program exceeds this number, then a compilation error is returned.
Sourcepub fn dfa_size_limit(&mut self, limit: usize) -> &mut CachedRegexBuilder
pub fn dfa_size_limit(&mut self, limit: usize) -> &mut CachedRegexBuilder
Set the approximate size of the cache used by the DFA.
This roughly corresponds to the number of bytes that the DFA will use while searching.
Note that this is a per thread limit. There is no way to set a global limit. In particular, if a regex is used from multiple threads simulanteously, then each thread may use up to the number of bytes specified here.
Trait Implementations§
Source§impl Clone for CachedRegexBuilder
impl Clone for CachedRegexBuilder
Source§fn clone(&self) -> CachedRegexBuilder
fn clone(&self) -> CachedRegexBuilder
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more