use regex_syntax::hir::Hir;
use regex_syntax::{self, Error, Parser};
#[cfg(test)]
mod test;
pub type Regex = Hir;
pub type RegexError = Error;
pub fn parse_literal(s: &str) -> Regex {
match parse_regex(®ex_syntax::escape(s)) {
Ok(v) => v,
Err(_) => panic!("failed to parse literal regular expression"),
}
}
pub fn parse_regex(s: &str) -> Result<Regex, RegexError> {
let expr = Parser::new().parse(s)?;
Ok(expr)
}