From 3da096b2605821c3e96f0962bdf5e77dd189d27d Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Sat, 6 Sep 2025 21:16:30 +0700 Subject: [PATCH 1/2] [CodeQuality] Add Closure support on OptionalParametersAfterRequiredRector --- .../ClassMethod/OptionalParametersAfterRequiredRector.php | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/rules/CodeQuality/Rector/ClassMethod/OptionalParametersAfterRequiredRector.php b/rules/CodeQuality/Rector/ClassMethod/OptionalParametersAfterRequiredRector.php index ef8b81f187e..5dc2fb3624e 100644 --- a/rules/CodeQuality/Rector/ClassMethod/OptionalParametersAfterRequiredRector.php +++ b/rules/CodeQuality/Rector/ClassMethod/OptionalParametersAfterRequiredRector.php @@ -7,6 +7,7 @@ use PhpParser\Node; use PhpParser\Node\ComplexType; use PhpParser\Node\Expr; +use PhpParser\Node\Expr\Closure; use PhpParser\Node\Expr\ConstFetch; use PhpParser\Node\Identifier; use PhpParser\Node\IntersectionType; @@ -58,13 +59,13 @@ public function run($optional = 1, $required = null) */ public function getNodeTypes(): array { - return [ClassMethod::class, Function_::class]; + return [ClassMethod::class, Function_::class, Closure::class]; } /** - * @param ClassMethod|Function_ $node + * @param ClassMethod|Function_|Closure $node */ - public function refactor(Node $node): ClassMethod|Function_|null + public function refactor(Node $node): ClassMethod|Function_|Closure|null { if ($node->params === []) { return null; From dcb96dd228fac2a09a238033fd4a68be7caa6914 Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Sat, 6 Sep 2025 21:16:33 +0700 Subject: [PATCH 2/2] [CodeQuality] Add Closure support on OptionalParametersAfterRequiredRector --- .../Fixture/with_closure.php.inc | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 rules-tests/CodeQuality/Rector/ClassMethod/OptionalParametersAfterRequiredRector/Fixture/with_closure.php.inc diff --git a/rules-tests/CodeQuality/Rector/ClassMethod/OptionalParametersAfterRequiredRector/Fixture/with_closure.php.inc b/rules-tests/CodeQuality/Rector/ClassMethod/OptionalParametersAfterRequiredRector/Fixture/with_closure.php.inc new file mode 100644 index 00000000000..31da5e8a3da --- /dev/null +++ b/rules-tests/CodeQuality/Rector/ClassMethod/OptionalParametersAfterRequiredRector/Fixture/with_closure.php.inc @@ -0,0 +1,19 @@ + +----- +