Vendor things

This commit is contained in:
John Doty 2024-03-08 11:03:01 -08:00
parent 5deceec006
commit 977e3c17e5
19434 changed files with 10682014 additions and 0 deletions

View file

@ -0,0 +1,22 @@
use regex_automata::{Input, Match};
mod multi_pattern_v2;
#[test]
fn multi_pattern_v2() {
use multi_pattern_v2::MULTI_PATTERN_V2 as RE;
assert_eq!(Some(Match::must(0, 0..4)), RE.find("abcd"));
assert_eq!(Some(Match::must(0, 2..6)), RE.find("@ abcd @"));
assert_eq!(Some(Match::must(1, 0..6)), RE.find("@abcd@"));
assert_eq!(Some(Match::must(0, 1..5)), RE.find("\nabcd\n"));
assert_eq!(Some(Match::must(0, 1..5)), RE.find("\nabcd wxyz\n"));
assert_eq!(Some(Match::must(1, 1..7)), RE.find("\n@abcd@\n"));
assert_eq!(Some(Match::must(2, 0..6)), RE.find("@abcd@\r\n"));
assert_eq!(Some(Match::must(1, 2..8)), RE.find("\r\n@abcd@"));
assert_eq!(Some(Match::must(2, 2..8)), RE.find("\r\n@abcd@\r\n"));
// Fails because we have heuristic support for Unicode word boundaries
// enabled.
assert!(RE.try_search(&Input::new(b"\xFF@abcd@\xFF")).is_err());
}

View file

@ -0,0 +1,37 @@
// DO NOT EDIT THIS FILE. IT WAS AUTOMATICALLY GENERATED BY:
//
// regex-cli generate serialize sparse regex MULTI_PATTERN_V2 regex-automata/tests/gen/sparse/ --rustfmt --safe --starts-for-each-pattern --specialize-start-states --start-kind both --unicode-word-boundary --minimize \b[a-zA-Z]+\b (?m)^\S+$ (?Rm)^\S+$
//
// regex-cli 0.0.1 is available on crates.io.
use regex_automata::{
dfa::{regex::Regex, sparse::DFA},
util::lazy::Lazy,
};
pub static MULTI_PATTERN_V2: Lazy<Regex<DFA<&'static [u8]>>> =
Lazy::new(|| {
let dfafwd = {
#[cfg(target_endian = "big")]
static BYTES: &'static [u8] =
include_bytes!("multi_pattern_v2_fwd.bigendian.dfa");
#[cfg(target_endian = "little")]
static BYTES: &'static [u8] =
include_bytes!("multi_pattern_v2_fwd.littleendian.dfa");
DFA::from_bytes(BYTES)
.expect("serialized forward DFA should be valid")
.0
};
let dfarev = {
#[cfg(target_endian = "big")]
static BYTES: &'static [u8] =
include_bytes!("multi_pattern_v2_rev.bigendian.dfa");
#[cfg(target_endian = "little")]
static BYTES: &'static [u8] =
include_bytes!("multi_pattern_v2_rev.littleendian.dfa");
DFA::from_bytes(BYTES)
.expect("serialized reverse DFA should be valid")
.0
};
Regex::builder().build_from_dfas(dfafwd, dfarev)
});