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/json/json_file.rs | 3 +-- crates/shirabe/src/json/json_manipulator.rs | 4 ++-- 2 files changed, 3 insertions(+), 4 deletions(-) (limited to 'crates/shirabe/src/json') diff --git a/crates/shirabe/src/json/json_file.rs b/crates/shirabe/src/json/json_file.rs index cf92a77..f06a0b9 100644 --- a/crates/shirabe/src/json/json_file.rs +++ b/crates/shirabe/src/json/json_file.rs @@ -575,8 +575,7 @@ impl JsonFile { pub fn detect_indenting(json: Option<&str>) -> String { let mut m: IndexMap = IndexMap::new(); - if Preg::is_match_strict_groups3(r##"#^([ \t]+)"#m"##, json.unwrap_or(""), Some(&mut m)) - .unwrap_or(false) + if Preg::is_match3(r##"#^([ \t]+)"#m"##, json.unwrap_or(""), Some(&mut m)).unwrap_or(false) { return m.get(&CaptureKey::ByIndex(1)).cloned().unwrap_or_default(); } diff --git a/crates/shirabe/src/json/json_manipulator.rs b/crates/shirabe/src/json/json_manipulator.rs index 0fd2053..63b9cae 100644 --- a/crates/shirabe/src/json/json_manipulator.rs +++ b/crates/shirabe/src/json/json_manipulator.rs @@ -134,7 +134,7 @@ impl JsonManipulator { )?; } else { let mut groups: IndexMap = IndexMap::new(); - if Preg::is_match_strict_groups3( + if Preg::is_match3( "#^\\s*\\{\\s*\\S+.*?(\\s*\\}\\s*)$#s", &links, Some(&mut groups), @@ -1583,7 +1583,7 @@ impl JsonManipulator { // check that we are not leaving a dangling comma on the previous line if the last line was removed let mut start = matches.get("start").cloned().unwrap_or_default(); let end = matches.get("end").cloned().unwrap_or_default(); - if Preg::is_match_strict_groups3("#,\\s*$#", &start, None).unwrap_or(false) + if Preg::is_match3("#,\\s*$#", &start, None).unwrap_or(false) && Preg::is_match3("#^\\}$#", &end, None).unwrap_or(false) { start = rtrim( -- cgit v1.3.1