From efe5bdb1987411a473d4af15451a376d20928245 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Fri, 12 Jun 2026 03:19:34 +0900 Subject: refactor(php-shim): replace literal sprintf calls with format! Convert every sprintf() call with a compile-time literal format string to format!, implementing Display for PhpMixed (delegating to php_to_string) so PhpMixed values render with PHP string semantics through {}. Also merge the format!-wrapped and conditional-literal dynamic sites into single format! calls. Genuinely runtime format strings (table styles, configurable error messages, command synopsis, progress-bar modifiers, regex-built messages) still go through sprintf. Co-Authored-By: Claude Opus 4.8 (1M context) --- crates/shirabe/src/io/console_io.rs | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) (limited to 'crates/shirabe/src/io') diff --git a/crates/shirabe/src/io/console_io.rs b/crates/shirabe/src/io/console_io.rs index 2371dfa..b2e0bb5 100644 --- a/crates/shirabe/src/io/console_io.rs +++ b/crates/shirabe/src/io/console_io.rs @@ -109,13 +109,11 @@ impl ConsoleIO { let mapped: Vec = arr .into_iter() .map(|message| { - sprintf( - "[%.1fMiB/%.2fs] %s", - &[ - PhpMixed::Float(memory_usage), - PhpMixed::Float(time_spent), - PhpMixed::String(message), - ], + format!( + "[{:.1}MiB/{:.2}s] {}", + memory_usage, + time_spent, + PhpMixed::String(message), ) }) .collect(); -- cgit v1.3.1