Skip to content

Commit 51deb2d

Browse files
author
Bartłomiej Nowak
committed
fixed phpstan errors from main
1 parent 4bdd55e commit 51deb2d

5 files changed

+31
-10
lines changed

src/Rules/DoctrineKeyValueStyleRule.php

+7-2
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
use PhpParser\Node\Expr\New_;
1111
use PhpParser\Node\Name\FullyQualified;
1212
use PHPStan\Analyser\Scope;
13+
use PHPStan\Reflection\ReflectionProvider;
1314
use PHPStan\Rules\IdentifierRuleError;
1415
use PHPStan\Rules\Rule;
1516
use PHPStan\Rules\RuleErrorBuilder;
@@ -34,12 +35,14 @@ final class DoctrineKeyValueStyleRule implements Rule
3435
*/
3536
private array $classMethods;
3637

38+
private ReflectionProvider $reflectionProvider;
39+
3740
private ?QueryReflection $queryReflection = null;
3841

3942
/**
4043
* @param list<string> $classMethods
4144
*/
42-
public function __construct(array $classMethods)
45+
public function __construct(array $classMethods, ReflectionProvider $reflectionProvider)
4346
{
4447
$this->classMethods = [];
4548
foreach ($classMethods as $classMethod) {
@@ -54,6 +57,8 @@ public function __construct(array $classMethods)
5457
}
5558
$this->classMethods[] = [$className, $methodName, $arrayArgPositions];
5659
}
60+
61+
$this->reflectionProvider = $reflectionProvider;
5762
}
5863

5964
public function getNodeType(): string
@@ -89,7 +94,7 @@ public function processNode(Node $callLike, Scope $scope): array
8994
$arrayArgPositions = [];
9095
foreach ($this->classMethods as [$className, $methodName, $arrayArgPositionsConfig]) {
9196
if ($methodName === $methodReflection->getName() &&
92-
($methodReflection->getDeclaringClass()->getName() === $className || $methodReflection->getDeclaringClass()->isSubclassOf($className))) {
97+
($methodReflection->getDeclaringClass()->getName() === $className || $methodReflection->getDeclaringClass()->isSubclassOfClass($this->reflectionProvider->getClass($className)))) {
9398
$arrayArgPositions = $arrayArgPositionsConfig;
9499
$unsupportedMethod = false;
95100
break;

src/Rules/QueryPlanAnalyzerRule.php

+6-2
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
use PhpParser\Node\Expr\New_;
1111
use PhpParser\Node\Name\FullyQualified;
1212
use PHPStan\Analyser\Scope;
13+
use PHPStan\Reflection\ReflectionProvider;
1314
use PHPStan\Rules\IdentifierRuleError;
1415
use PHPStan\Rules\Rule;
1516
use PHPStan\Rules\RuleErrorBuilder;
@@ -31,12 +32,15 @@ final class QueryPlanAnalyzerRule implements Rule
3132
*/
3233
private array $classMethods;
3334

35+
private ReflectionProvider $reflectionProvider;
36+
3437
/**
3538
* @param list<string> $classMethods
3639
*/
37-
public function __construct(array $classMethods)
40+
public function __construct(array $classMethods, ReflectionProvider $reflectionProvider)
3841
{
3942
$this->classMethods = $classMethods;
43+
$this->reflectionProvider = $reflectionProvider;
4044
}
4145

4246
public function getNodeType(): string
@@ -74,7 +78,7 @@ public function processNode(Node $callLike, Scope $scope): array
7478
}
7579

7680
if ($methodName === $methodReflection->getName() &&
77-
($methodReflection->getDeclaringClass()->getName() === $className || $methodReflection->getDeclaringClass()->isSubclassOf($className))
81+
($methodReflection->getDeclaringClass()->getName() === $className || $methodReflection->getDeclaringClass()->isSubclassOfClass($this->reflectionProvider->getClass($className)))
7882
) {
7983
$unsupportedMethod = false;
8084
break;

src/Rules/SyntaxErrorInDibiPreparedStatementMethodRule.php

+6-2
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
use PhpParser\Node\Name\FullyQualified;
1212
use PHPStan\Analyser\Scope;
1313
use PHPStan\Reflection\MethodReflection;
14+
use PHPStan\Reflection\ReflectionProvider;
1415
use PHPStan\Rules\IdentifierRuleError;
1516
use PHPStan\Rules\Rule;
1617
use PHPStan\Rules\RuleErrorBuilder;
@@ -34,12 +35,15 @@ final class SyntaxErrorInDibiPreparedStatementMethodRule implements Rule
3435
*/
3536
private array $classMethods;
3637

38+
private ReflectionProvider $reflectionProvider;
39+
3740
/**
3841
* @param list<string> $classMethods
3942
*/
40-
public function __construct(array $classMethods)
43+
public function __construct(array $classMethods, ReflectionProvider $reflectionProvider)
4144
{
4245
$this->classMethods = $classMethods;
46+
$this->reflectionProvider = $reflectionProvider;
4347
}
4448

4549
public function getNodeType(): string
@@ -76,7 +80,7 @@ public function processNode(Node $callLike, Scope $scope): array
7680
}
7781

7882
if ($methodName === $methodReflection->getName() &&
79-
($methodReflection->getDeclaringClass()->getName() === $className || $methodReflection->getDeclaringClass()->isSubclassOf($className))) {
83+
($methodReflection->getDeclaringClass()->getName() === $className || $methodReflection->getDeclaringClass()->isSubclassOfClass($this->reflectionProvider->getClass($className)))) {
8084
$unsupportedMethod = false;
8185
break;
8286
}

src/Rules/SyntaxErrorInPreparedStatementMethodRule.php

+6-2
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
use PhpParser\Node\Expr\New_;
1111
use PhpParser\Node\Name\FullyQualified;
1212
use PHPStan\Analyser\Scope;
13+
use PHPStan\Reflection\ReflectionProvider;
1314
use PHPStan\Rules\IdentifierRuleError;
1415
use PHPStan\Rules\Rule;
1516
use PHPStan\Rules\RuleErrorBuilder;
@@ -32,12 +33,15 @@ final class SyntaxErrorInPreparedStatementMethodRule implements Rule
3233
*/
3334
private array $classMethods;
3435

36+
private ReflectionProvider $reflectionProvider;
37+
3538
/**
3639
* @param list<string> $classMethods
3740
*/
38-
public function __construct(array $classMethods)
41+
public function __construct(array $classMethods, ReflectionProvider $reflectionProvider)
3942
{
4043
$this->classMethods = $classMethods;
44+
$this->reflectionProvider = $reflectionProvider;
4145
}
4246

4347
public function getNodeType(): string
@@ -74,7 +78,7 @@ public function processNode(Node $callLike, Scope $scope): array
7478
}
7579

7680
if ($methodName === $methodReflection->getName() &&
77-
($methodReflection->getDeclaringClass()->getName() === $className || $methodReflection->getDeclaringClass()->isSubclassOf($className))) {
81+
($methodReflection->getDeclaringClass()->getName() === $className || $methodReflection->getDeclaringClass()->isSubclassOfClass($this->reflectionProvider->getClass($className)))) {
7882
$unsupportedMethod = false;
7983
break;
8084
}

src/Rules/SyntaxErrorInQueryMethodRule.php

+6-2
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
use PhpParser\Node;
88
use PhpParser\Node\Expr\MethodCall;
99
use PHPStan\Analyser\Scope;
10+
use PHPStan\Reflection\ReflectionProvider;
1011
use PHPStan\Rules\Rule;
1112
use PHPStan\Rules\RuleErrorBuilder;
1213
use PHPStan\ShouldNotHappenException;
@@ -25,12 +26,15 @@ final class SyntaxErrorInQueryMethodRule implements Rule
2526
*/
2627
private array $classMethods;
2728

29+
private ReflectionProvider $reflectionProvider;
30+
2831
/**
2932
* @param list<string> $classMethods
3033
*/
31-
public function __construct(array $classMethods)
34+
public function __construct(array $classMethods, ReflectionProvider $reflectionProvider)
3235
{
3336
$this->classMethods = $classMethods;
37+
$this->reflectionProvider = $reflectionProvider;
3438
}
3539

3640
public function getNodeType(): string
@@ -58,7 +62,7 @@ public function processNode(Node $node, Scope $scope): array
5862
}
5963

6064
if ($methodName === $methodReflection->getName() &&
61-
($methodReflection->getDeclaringClass()->getName() === $className || $methodReflection->getDeclaringClass()->isSubclassOf($className))
65+
($methodReflection->getDeclaringClass()->getName() === $className || $methodReflection->getDeclaringClass()->isSubclassOfClass($this->reflectionProvider->getClass($className)))
6266
) {
6367
$unsupportedMethod = false;
6468
break;

0 commit comments

Comments
 (0)