summaryrefslogtreecommitdiffstats
path: root/third_party/rust/regex-automata/tests/gen/dense
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/regex-automata/tests/gen/dense')
-rw-r--r--third_party/rust/regex-automata/tests/gen/dense/mod.rs22
-rw-r--r--third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2.rs43
-rw-r--r--third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2_fwd.bigendian.dfabin0 -> 11100 bytes
-rw-r--r--third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2_fwd.littleendian.dfabin0 -> 11100 bytes
-rw-r--r--third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2_rev.bigendian.dfabin0 -> 7584 bytes
-rw-r--r--third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2_rev.littleendian.dfabin0 -> 7584 bytes
6 files changed, 65 insertions, 0 deletions
diff --git a/third_party/rust/regex-automata/tests/gen/dense/mod.rs b/third_party/rust/regex-automata/tests/gen/dense/mod.rs
new file mode 100644
index 0000000000..b4365d4e19
--- /dev/null
+++ b/third_party/rust/regex-automata/tests/gen/dense/mod.rs
@@ -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());
+}
diff --git a/third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2.rs b/third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2.rs
new file mode 100644
index 0000000000..a95fd204b5
--- /dev/null
+++ b/third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2.rs
@@ -0,0 +1,43 @@
+// DO NOT EDIT THIS FILE. IT WAS AUTOMATICALLY GENERATED BY:
+//
+// regex-cli generate serialize dense regex MULTI_PATTERN_V2 tests/gen/dense/ --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::{dense::DFA, regex::Regex},
+ util::{lazy::Lazy, wire::AlignAs},
+};
+
+pub static MULTI_PATTERN_V2: Lazy<Regex<DFA<&'static [u32]>>> =
+ Lazy::new(|| {
+ let dfafwd = {
+ static ALIGNED: &AlignAs<[u8], u32> = &AlignAs {
+ _align: [],
+ #[cfg(target_endian = "big")]
+ bytes: *include_bytes!("multi_pattern_v2_fwd.bigendian.dfa"),
+ #[cfg(target_endian = "little")]
+ bytes: *include_bytes!(
+ "multi_pattern_v2_fwd.littleendian.dfa"
+ ),
+ };
+ DFA::from_bytes(&ALIGNED.bytes)
+ .expect("serialized forward DFA should be valid")
+ .0
+ };
+ let dfarev = {
+ static ALIGNED: &AlignAs<[u8], u32> = &AlignAs {
+ _align: [],
+ #[cfg(target_endian = "big")]
+ bytes: *include_bytes!("multi_pattern_v2_rev.bigendian.dfa"),
+ #[cfg(target_endian = "little")]
+ bytes: *include_bytes!(
+ "multi_pattern_v2_rev.littleendian.dfa"
+ ),
+ };
+ DFA::from_bytes(&ALIGNED.bytes)
+ .expect("serialized reverse DFA should be valid")
+ .0
+ };
+ Regex::builder().build_from_dfas(dfafwd, dfarev)
+ });
diff --git a/third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2_fwd.bigendian.dfa b/third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2_fwd.bigendian.dfa
new file mode 100644
index 0000000000..6d6e040c36
--- /dev/null
+++ b/third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2_fwd.bigendian.dfa
Binary files differ
diff --git a/third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2_fwd.littleendian.dfa b/third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2_fwd.littleendian.dfa
new file mode 100644
index 0000000000..a1f4b3da15
--- /dev/null
+++ b/third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2_fwd.littleendian.dfa
Binary files differ
diff --git a/third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2_rev.bigendian.dfa b/third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2_rev.bigendian.dfa
new file mode 100644
index 0000000000..74f74ec2a9
--- /dev/null
+++ b/third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2_rev.bigendian.dfa
Binary files differ
diff --git a/third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2_rev.littleendian.dfa b/third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2_rev.littleendian.dfa
new file mode 100644
index 0000000000..663bdb9ead
--- /dev/null
+++ b/third_party/rust/regex-automata/tests/gen/dense/multi_pattern_v2_rev.littleendian.dfa
Binary files differ