[][src]Struct regex_cache::CachedRegexBuilder

pub struct CachedRegexBuilder { /* fields omitted */ }

A configurable builder for a cached Regex.

Implementations

impl CachedRegexBuilder[src]

pub fn new(cache: Arc<Mutex<RegexCache>>, source: &str) -> CachedRegexBuilder[src]

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.

pub fn build(&self) -> Result<CachedRegex, Error>[src]

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.

pub fn build_unchecked(&self) -> CachedRegex[src]

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.

pub fn case_insensitive(&mut self, yes: bool) -> &mut CachedRegexBuilder[src]

Set the value for the case insensitive (i) flag.

pub fn multi_line(&mut self, yes: bool) -> &mut CachedRegexBuilder[src]

Set the value for the multi-line matching (m) flag.

pub fn dot_matches_new_line(&mut self, yes: bool) -> &mut CachedRegexBuilder[src]

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.

pub fn swap_greed(&mut self, yes: bool) -> &mut CachedRegexBuilder[src]

Set the value for the greedy swap (U) flag.

pub fn ignore_whitespace(&mut self, yes: bool) -> &mut CachedRegexBuilder[src]

Set the value for the ignore whitespace (x) flag.

pub fn unicode(&mut self, yes: bool) -> &mut CachedRegexBuilder[src]

Set the value for the Unicode (u) flag.

pub fn size_limit(&mut self, limit: usize) -> &mut CachedRegexBuilder[src]

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.

pub fn dfa_size_limit(&mut self, limit: usize) -> &mut CachedRegexBuilder[src]

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

impl Clone for CachedRegexBuilder[src]

impl Debug for CachedRegexBuilder[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.