aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/package
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-06-14 04:01:45 +0900
committernsfisis <nsfisis@gmail.com>2026-06-14 04:02:58 +0900
commit78157ab3ffeca37023381a422fccda2d4a0c64af (patch)
tree11664aae5e585742647d4c0374495acd77b1aedb /crates/shirabe/src/package
parent7f00f9e7f9be826863716a5a52c141eb913d03bb (diff)
downloadphp-shirabe-78157ab3ffeca37023381a422fccda2d4a0c64af.tar.gz
php-shirabe-78157ab3ffeca37023381a422fccda2d4a0c64af.tar.zst
php-shirabe-78157ab3ffeca37023381a422fccda2d4a0c64af.zip
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.
Diffstat (limited to 'crates/shirabe/src/package')
-rw-r--r--crates/shirabe/src/package/loader/root_package_loader.rs8
-rw-r--r--crates/shirabe/src/package/locker.rs2
-rw-r--r--crates/shirabe/src/package/version/version_guesser.rs17
3 files changed, 10 insertions, 17 deletions
diff --git a/crates/shirabe/src/package/loader/root_package_loader.rs b/crates/shirabe/src/package/loader/root_package_loader.rs
index 04ae470..476f6bd 100644
--- a/crates/shirabe/src/package/loader/root_package_loader.rs
+++ b/crates/shirabe/src/package/loader/root_package_loader.rs
@@ -274,7 +274,7 @@ impl RootPackageLoader {
) -> Vec<IndexMap<String, String>> {
for (req_name, req_version) in requires {
let mut m: IndexMap<CaptureKey, String> = IndexMap::new();
- if Preg::is_match_strict_groups3(
+ if Preg::is_match3(
r"(?:^|\| *|, *)([^,\s#|]+)(?:#[^ ]+)? +as +([^,\s|]+)(?:$| *\|| *,)",
req_version,
Some(&mut m),
@@ -349,9 +349,7 @@ impl RootPackageLoader {
let mut matched = false;
for constraint in &constraints {
let mut m: IndexMap<CaptureKey, String> = IndexMap::new();
- if Preg::is_match_strict_groups3(&pattern, constraint, Some(&mut m))
- .unwrap_or(false)
- {
+ if Preg::is_match3(&pattern, constraint, Some(&mut m)).unwrap_or(false) {
let name = strtolower(req_name);
let m1 = m.get(&CaptureKey::ByIndex(1)).cloned().unwrap_or_default();
let normalized_m1 = VersionParser::normalize_stability(&m1).unwrap_or_default();
@@ -399,7 +397,7 @@ impl RootPackageLoader {
let req_version =
Preg::replace(r"^([^,\s@]+) as .+$", "$1", req_version).unwrap_or_default();
let mut m: IndexMap<CaptureKey, String> = IndexMap::new();
- if Preg::is_match_strict_groups3(r"^[^,\s@]+?#([a-f0-9]+)$", &req_version, Some(&mut m))
+ if Preg::is_match3(r"^[^,\s@]+?#([a-f0-9]+)$", &req_version, Some(&mut m))
.unwrap_or(false)
{
if VersionParser::parse_stability(&req_version) == "dev" {
diff --git a/crates/shirabe/src/package/locker.rs b/crates/shirabe/src/package/locker.rs
index c61d807..8c84b4e 100644
--- a/crates/shirabe/src/package/locker.rs
+++ b/crates/shirabe/src/package/locker.rs
@@ -895,7 +895,7 @@ impl Locker {
path.as_deref(),
)? {
let mut m: IndexMap<CaptureKey, String> = IndexMap::new();
- if Preg::is_match_strict_groups3(
+ if Preg::is_match3(
r"{^\s*(\d+)\s*}",
output.as_string().unwrap_or(""),
Some(&mut m),
diff --git a/crates/shirabe/src/package/version/version_guesser.rs b/crates/shirabe/src/package/version/version_guesser.rs
index da67d56..562d141 100644
--- a/crates/shirabe/src/package/version/version_guesser.rs
+++ b/crates/shirabe/src/package/version/version_guesser.rs
@@ -210,11 +210,9 @@ impl VersionGuesser {
for branch in self.process.borrow().split_lines(&output) {
if !branch.is_empty() {
let mut m: IndexMap<CaptureKey, String> = IndexMap::new();
- if Preg::is_match_strict_groups3(
- r"{^(?:\* ) *(\(no branch\)|\(detached from \S+\)|\(HEAD detached at \S+\)|\S+) *([a-f0-9]+) .*$}",
- &branch,
- Some(&mut m),
- )
+ if Preg::is_match3(r"{^(?:\* ) *(\(no branch\)|\(detached from \S+\)|\(HEAD detached at \S+\)|\S+) *([a-f0-9]+) .*$}",
+ &branch,
+ Some(&mut m),)
.unwrap_or(false)
{
let g1 = m
@@ -245,11 +243,10 @@ impl VersionGuesser {
if !branch.is_empty() && {
let mut tmp: IndexMap<CaptureKey, String> = IndexMap::new();
- !Preg::is_match_strict_groups3(r"{^ *.+/HEAD }", &branch, Some(&mut tmp))
- .unwrap_or(false)
+ !Preg::is_match3(r"{^ *.+/HEAD }", &branch, Some(&mut tmp)).unwrap_or(false)
} {
let mut m: IndexMap<CaptureKey, String> = IndexMap::new();
- if Preg::is_match_strict_groups3(
+ if Preg::is_match3(
r"{^(?:\* )? *((?:remotes/(?:origin|upstream)/)?[^\s/]+) *([a-f0-9]+) .*$}",
&branch,
Some(&mut m),
@@ -761,9 +758,7 @@ impl VersionGuesser {
}
};
let mut m: IndexMap<CaptureKey, String> = IndexMap::new();
- if Preg::is_match_strict_groups3(r"{^(\d+(?:\.\d+)*)-dev$}i", &version, Some(&mut m))
- .unwrap_or(false)
- {
+ if Preg::is_match3(r"{^(\d+(?:\.\d+)*)-dev$}i", &version, Some(&mut m)).unwrap_or(false) {
return Ok(format!(
"{}.x-dev",
m.get(&CaptureKey::ByIndex(1)).cloned().unwrap_or_default()