pub enum Regex<T> {
Satisfy(Rc<dyn Fn(&T) + 'static>),
Concat(Box<Regex<T>, Global>, Box<Regex<T>, Global>),
Group(Box<Regex<T>, Global>),
Or(Box<Regex<T>, Global>, Box<Regex<T>, Global>),
ZeroOrOne(Box<Regex<T>, Global>),
Repeat0(Box<Regex<T>, Global>),
Repeat1(Box<Regex<T>, Global>),
RepeatN(Box<Regex<T>, Global>, usize),
RepeatMinMax(Box<Regex<T>, Global>, usize, Option<usize>),
}Variants
Satisfy(Rc<dyn Fn(&T) + 'static>)
Like a [character class] in regex. Regex that matches any values that satisfy the given predicate.
Concat(Box<Regex<T>, Global>, Box<Regex<T>, Global>)
Like a RS in regex. Concatenate two regex.
Group(Box<Regex<T>, Global>)
Like a (R) in regex. Grouping regex.
Or(Box<Regex<T>, Global>, Box<Regex<T>, Global>)
Like a R|S in regex. Regex alternation.
ZeroOrOne(Box<Regex<T>, Global>)
Like a ? in regex. Regex zero or one.
Repeat0(Box<Regex<T>, Global>)
Like a * in regex. Regex zero or one.
Repeat1(Box<Regex<T>, Global>)
Like a + in regex. Regex one or more.
RepeatN(Box<Regex<T>, Global>, usize)
Like a {n} in regex. Exactly N-times.
RepeatMinMax(Box<Regex<T>, Global>, usize, Option<usize>)
Like a {n,m} or `{n,} in regex. n or n+1 or .. m times.
Implementations
sourceimpl<T> Regex<T> where
T: 'static,
impl<T> Regex<T> where
T: 'static,
sourcepub fn satisfy(f: impl Fn(&T) -> bool + 'static) -> Regex<T>
pub fn satisfy(f: impl Fn(&T) -> bool + 'static) -> Regex<T>
Like a [character class] in regex. Build regex that matches any value that satisfies the given predicate.
sourcepub fn zero_or_one(reg: Regex<T>) -> Regex<T>
pub fn zero_or_one(reg: Regex<T>) -> Regex<T>
Like a ? in regex. Build regex that matches underlying regex zero or one times.
sourcepub fn repeat1(reg: Regex<T>) -> Regex<T>
pub fn repeat1(reg: Regex<T>) -> Regex<T>
Like a + in regex. Build regex that matches underlying regex one or more.
sourcepub fn repeat0(reg: Regex<T>) -> Regex<T>
pub fn repeat0(reg: Regex<T>) -> Regex<T>
Like a * in regex. Build regex that matches underlying regex zero or more.
sourcepub fn repeat_n(reg: Regex<T>, n: usize) -> Regex<T>
pub fn repeat_n(reg: Regex<T>, n: usize) -> Regex<T>
Like a {n} in regex. Build regex that matches underlying regex N-times.
sourcepub fn repeat_n_or_more(reg: Regex<T>, n: usize) -> Regex<T>
pub fn repeat_n_or_more(reg: Regex<T>, n: usize) -> Regex<T>
Like a {n,} in regex. Build regex that matches underlying regex N-times or more.
sourcepub fn repeat_min_max(reg: Regex<T>, n: usize, m: usize) -> Regex<T>
pub fn repeat_min_max(reg: Regex<T>, n: usize, m: usize) -> Regex<T>
Like a {n,m} in regex. Build regex that matches underlying regex n or n + 1 or … or m times.
sourcepub fn concat(r: Regex<T>, s: Regex<T>) -> Regex<T>
pub fn concat(r: Regex<T>, s: Regex<T>) -> Regex<T>
Like a RS in regex. Build regex that R followd by S.
sourcepub fn or(r: Regex<T>, s: Regex<T>) -> Regex<T>
pub fn or(r: Regex<T>, s: Regex<T>) -> Regex<T>
Like a R|S in regex. Build regex that matches R or S.
sourcepub fn group(r: Regex<T>) -> Regex<T>
pub fn group(r: Regex<T>) -> Regex<T>
Like a (R) in regex. Build regex that R regex in a group.
sourcepub fn is(value: T) -> Regex<T> where
T: 'static + PartialEq<T>,
pub fn is(value: T) -> Regex<T> where
T: 'static + PartialEq<T>,
Build regex that matches given value.
sourcepub fn seq(values: &[T]) -> Regex<T> where
T: 'static + PartialEq<T> + Clone,
pub fn seq(values: &[T]) -> Regex<T> where
T: 'static + PartialEq<T> + Clone,
Build regex that matches given value sequence.
pub fn compile(&self) -> CompiledRegex<T>
Trait Implementations
Auto Trait Implementations
impl<T> !RefUnwindSafe for Regex<T>
impl<T> !Send for Regex<T>
impl<T> !Sync for Regex<T>
impl<T> Unpin for Regex<T>
impl<T> !UnwindSafe for Regex<T>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more