From 78157ab3ffeca37023381a422fccda2d4a0c64af Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sun, 14 Jun 2026 04:01:45 +0900 Subject: refactor(pcre): drop strict-groups Preg variants Rust's type system already distinguishes participating from non-participating capture groups via Option, so the *StrictGroups methods add no safety here. Remove them and switch callers to the plain variants. --- crates/shirabe/src/repository/vcs/git_driver.rs | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'crates/shirabe/src/repository/vcs/git_driver.rs') diff --git a/crates/shirabe/src/repository/vcs/git_driver.rs b/crates/shirabe/src/repository/vcs/git_driver.rs index 7f8c206..10353f3 100644 --- a/crates/shirabe/src/repository/vcs/git_driver.rs +++ b/crates/shirabe/src/repository/vcs/git_driver.rs @@ -215,9 +215,7 @@ impl GitDriver { for branch in &branches { if !branch.is_empty() { let mut caps: IndexMap = IndexMap::new(); - if Preg::match_strict_groups3(r"{^\* +(\S+)}", branch, Some(&mut caps)) - .unwrap_or(false) - { + if Preg::match3(r"{^\* +(\S+)}", branch, Some(&mut caps)).unwrap_or(false) { if let Some(name) = caps.get(&CaptureKey::ByIndex(1)) { self.root_identifier = Some(name.clone()); break; @@ -336,7 +334,7 @@ impl GitDriver { for tag in self.inner.process.borrow().split_lines(&output) { if !tag.is_empty() { let mut caps: IndexMap = IndexMap::new(); - if Preg::match_strict_groups3( + if Preg::match3( r"{^([a-f0-9]{40}) refs/tags/(\S+?)(\^\{\})?$}", &tag, Some(&mut caps), @@ -381,7 +379,7 @@ impl GitDriver { && !Preg::is_match(r"{^ *[^/]+/HEAD }", &branch).unwrap_or(false) { let mut caps: IndexMap = IndexMap::new(); - if Preg::match_strict_groups3( + if Preg::match3( r"{^(?:\* )? *(\S+) *([a-f0-9]+)(?: .*)?$}", &branch, Some(&mut caps), -- cgit v1.3.1