From e093b2be1c333e67c96aebb0a5291bea9ae3d6db Mon Sep 17 00:00:00 2001 From: nsfisis Date: Tue, 18 Aug 2026 01:57:02 +0900 Subject: refactor(preg): drop the offset argument from preg_match Every call site but one passed offset 0. The remaining one, the UTF-8 chunking loop in Application, slices the subject instead: its pattern has no anchor or lookaround, so matching a suffix is equivalent to starting the search at that offset. Co-Authored-By: Claude Opus 5 (1M context) --- crates/shirabe/tests/all_functional_test.rs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'crates/shirabe/tests/all_functional_test.rs') diff --git a/crates/shirabe/tests/all_functional_test.rs b/crates/shirabe/tests/all_functional_test.rs index 36137955..9879bca4 100644 --- a/crates/shirabe/tests/all_functional_test.rs +++ b/crates/shirabe/tests/all_functional_test.rs @@ -8,7 +8,7 @@ use indexmap::IndexMap; use serial_test::serial; use shirabe::util::filesystem::Filesystem; -use shirabe_php_shim::{PhpMixed, intval, php_regex, preg_match2, preg_split_delim_capture}; +use shirabe_php_shim::{PhpMixed, intval, php_regex, preg_match, preg_split_delim_capture}; use std::path::{Path, PathBuf}; /// ref: AllFunctionalTest's `$oldcwd` / `$testDir` instance state plus its `setUp`/`tearDown`. @@ -140,13 +140,13 @@ fn expect_matches(expected: &str, output: &str) { line += 1; } if eb[i] == b'%' { - let Some(m) = preg_match2(php_regex!("{%(.+?)%}"), &expected[i..], 0) else { + let Some(m) = preg_match(php_regex!("{%(.+?)%}"), &expected[i..]) else { panic!("Failed to match %...% in {}", &expected[i..]); }; let regex = m.get(1).map(str::to_string).unwrap(); let pattern = format!("{{{}}}", regex); - if let Some(m) = preg_match2(&pattern, &output[j..], 0) { + if let Some(m) = preg_match(&pattern, &output[j..]) { let full = m.get(0).map(str::to_string).unwrap(); i += regex.len() + 2; j += full.len(); @@ -221,13 +221,13 @@ fn run_integration(test_filename: &str) { expect_matches(expected, output); } if let Some(expect_regex) = test_data.get("EXPECT-REGEX") { - assert!(preg_match2(expect_regex, &clean_output(&raw_output), 0).is_some()); + assert!(preg_match(expect_regex, &clean_output(&raw_output)).is_some()); } if let Some(expect_regexes) = test_data.get("EXPECT-REGEXES") { let clean = clean_output(&raw_output); for regex in expect_regexes.split('\n') { assert!( - preg_match2(regex, &clean, 0).is_some(), + preg_match(regex, &clean).is_some(), "Output: {}", raw_output ); -- cgit v1.3.1-4-g156e