Skip to content

Commit 154fb4f

Browse files
committed
skip non string default in AddParamStringTypeFromSprintfUseRector
1 parent cbe7e73 commit 154fb4f

2 files changed

Lines changed: 18 additions & 0 deletions

File tree

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<?php
2+
3+
namespace Rector\Tests\TypeDeclaration\Rector\ClassMethod\AddParamStringTypeFromSprintfUseRector\Fixture;
4+
5+
final class SkipNonStringDefault
6+
{
7+
public function test($name = 100)
8+
{
9+
return sprintf('Hello %s', $name);
10+
}
11+
}

rules/TypeDeclaration/Rector/ClassMethod/AddParamStringTypeFromSprintfUseRector.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44

55
namespace Rector\TypeDeclaration\Rector\ClassMethod;
66

7+
use PhpParser\Node\Expr;
8+
use PhpParser\Node\Scalar\String_;
79
use PhpParser\Node;
810
use PhpParser\Node\Identifier;
911
use PhpParser\Node\Stmt\ClassMethod;
@@ -85,6 +87,11 @@ public function refactor(Node $node): ClassMethod|Function_|null
8587
continue;
8688
}
8789

90+
// skip non string default value
91+
if ($param->default instanceof Expr && ! $param->default instanceof String_) {
92+
continue;
93+
}
94+
8895
/** @var string $variableName */
8996
$variableName = $this->getName($param->var);
9097

0 commit comments

Comments
 (0)