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) --- .../src/symfony/console/input/input.rs | 33 ++++++++++------------ 1 file changed, 15 insertions(+), 18 deletions(-) (limited to 'crates/shirabe-external-packages/src/symfony/console/input/input.rs') diff --git a/crates/shirabe-external-packages/src/symfony/console/input/input.rs b/crates/shirabe-external-packages/src/symfony/console/input/input.rs index 4c878bc..2c9a3a6 100644 --- a/crates/shirabe-external-packages/src/symfony/console/input/input.rs +++ b/crates/shirabe-external-packages/src/symfony/console/input/input.rs @@ -79,12 +79,9 @@ impl Input { if missing_arguments.len() > 0 { return Err(RuntimeException(shirabe_php_shim::RuntimeException { - message: shirabe_php_shim::sprintf( - "Not enough arguments (missing: \"%s\").", - &[PhpMixed::String(shirabe_php_shim::implode( - ", ", - &missing_arguments, - ))], + message: format!( + "Not enough arguments (missing: \"{}\").", + PhpMixed::String(shirabe_php_shim::implode(", ", &missing_arguments,)), ), code: 0, }) @@ -116,9 +113,9 @@ impl Input { { return Err( InvalidArgumentException(shirabe_php_shim::InvalidArgumentException { - message: shirabe_php_shim::sprintf( - "The \"%s\" argument does not exist.", - &[PhpMixed::String(name.to_string())], + message: format!( + "The \"{}\" argument does not exist.", + PhpMixed::String(name.to_string()), ), code: 0, }) @@ -143,9 +140,9 @@ impl Input { { return Err( InvalidArgumentException(shirabe_php_shim::InvalidArgumentException { - message: shirabe_php_shim::sprintf( - "The \"%s\" argument does not exist.", - &[PhpMixed::String(name.to_string())], + message: format!( + "The \"{}\" argument does not exist.", + PhpMixed::String(name.to_string()), ), code: 0, }) @@ -183,9 +180,9 @@ impl Input { if !self.definition.has_option(name) { return Err( InvalidArgumentException(shirabe_php_shim::InvalidArgumentException { - message: shirabe_php_shim::sprintf( - "The \"%s\" option does not exist.", - &[PhpMixed::String(name.to_string())], + message: format!( + "The \"{}\" option does not exist.", + PhpMixed::String(name.to_string()), ), code: 0, }) @@ -210,9 +207,9 @@ impl Input { } else if !self.definition.has_option(name) { return Err( InvalidArgumentException(shirabe_php_shim::InvalidArgumentException { - message: shirabe_php_shim::sprintf( - "The \"%s\" option does not exist.", - &[PhpMixed::String(name.to_string())], + message: format!( + "The \"{}\" option does not exist.", + PhpMixed::String(name.to_string()), ), code: 0, }) -- cgit v1.3.1