pub trait Regex<T, M> {
// Required methods
fn empty(&self) -> bool;
fn shift(&mut self, c: &T, mark: M) -> M;
fn reset(&mut self);
}
pub trait Regex<T, M> {
// Required methods
fn empty(&self) -> bool;
fn shift(&mut self, c: &T, mark: M) -> M;
fn reset(&mut self);
}