aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe-pcre/src
diff options
context:
space:
mode:
Diffstat (limited to 'crates/shirabe-pcre/src')
-rw-r--r--crates/shirabe-pcre/src/preg.rs22
1 files changed, 8 insertions, 14 deletions
diff --git a/crates/shirabe-pcre/src/preg.rs b/crates/shirabe-pcre/src/preg.rs
index 10ed1d5b..55388a9f 100644
--- a/crates/shirabe-pcre/src/preg.rs
+++ b/crates/shirabe-pcre/src/preg.rs
@@ -57,22 +57,16 @@ impl Preg {
}
pub fn match_all(pattern: impl PregPattern, subject: &str) -> usize {
- Self::match_all3(pattern, subject, None)
+ let mut dummy = IndexMap::new();
+ preg_match_all2(pattern, subject, &mut dummy)
}
- pub fn match_all3(
+ pub fn match_all2(
pattern: impl PregPattern,
subject: &str,
- matches: Option<&mut IndexMap<CaptureKey, Vec<Option<String>>>>,
+ matches: &mut IndexMap<CaptureKey, Vec<Option<String>>>,
) -> usize {
- let mut internal: IndexMap<CaptureKey, Vec<Option<String>>> = IndexMap::new();
- let result = preg_match_all2(pattern, subject, &mut internal);
-
- if let Some(out) = matches {
- *out = internal;
- }
-
- result
+ preg_match_all2(pattern, subject, matches)
}
fn match_all_with_offsets5(
@@ -220,12 +214,12 @@ impl Preg {
Some(captures)
}
- pub fn is_match_all3(
+ pub fn is_match_all(
pattern: impl PregPattern,
subject: &str,
- matches: Option<&mut IndexMap<CaptureKey, Vec<Option<String>>>>,
+ matches: &mut IndexMap<CaptureKey, Vec<Option<String>>>,
) -> bool {
- Self::match_all3(pattern, subject, matches) > 0
+ Self::match_all2(pattern, subject, matches) > 0
}
pub fn is_match_all_with_offsets3(