Skip to content

Commit 0dba054

Browse files
staabmondrejmirtes
authored andcommitted
Use dedicated Type methods over isSuperTypeOf()
1 parent d147f4c commit 0dba054

File tree

7 files changed

+10
-15
lines changed

7 files changed

+10
-15
lines changed

src/Analyser/NodeScopeResolver.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3895,7 +3895,7 @@ private function processAssignVar(
38953895
new ObjectType(ArrayAccess::class),
38963896
new NullType(),
38973897
];
3898-
if ($offsetType !== null && (new IntegerType())->isSuperTypeOf($offsetType)->yes()) {
3898+
if ($offsetType !== null && $offsetType->isInteger()->yes()) {
38993899
$types[] = new StringType();
39003900
}
39013901
$offsetValueType = TypeCombinator::intersect($offsetValueType, TypeCombinator::union(...$types));
@@ -3911,7 +3911,7 @@ private function processAssignVar(
39113911
new ObjectType(ArrayAccess::class),
39123912
new NullType(),
39133913
];
3914-
if ($offsetNativeType !== null && (new IntegerType())->isSuperTypeOf($offsetNativeType)->yes()) {
3914+
if ($offsetNativeType !== null && $offsetNativeType->isInteger()->yes()) {
39153915
$types[] = new StringType();
39163916
}
39173917
$offsetNativeValueType = TypeCombinator::intersect($offsetNativeValueType, TypeCombinator::union(...$types));

src/Reflection/InitializerExprTypeResolver.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1507,8 +1507,8 @@ private function resolveCommonMath(Expr\BinaryOp $expr, Type $leftType, Type $ri
15071507
}
15081508

15091509
if (
1510-
(new FloatType())->isSuperTypeOf($leftNumberType)->yes()
1511-
|| (new FloatType())->isSuperTypeOf($rightNumberType)->yes()
1510+
$leftNumberType->isFloat()->yes()
1511+
|| $rightNumberType->isFloat()->yes()
15121512
) {
15131513
return new FloatType();
15141514
}

src/Rules/FunctionReturnTypeCheck.php

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
use PHPStan\Type\Type;
1212
use PHPStan\Type\TypeUtils;
1313
use PHPStan\Type\VerbosityLevel;
14-
use PHPStan\Type\VoidType;
1514
use function sprintf;
1615

1716
class FunctionReturnTypeCheck
@@ -53,7 +52,7 @@ public function checkReturnType(
5352
}
5453
}
5554

56-
$isVoidSuperType = (new VoidType())->isSuperTypeOf($returnType);
55+
$isVoidSuperType = $returnType->isVoid();
5756
$verbosityLevel = VerbosityLevel::getRecommendedLevelByType($returnType, null);
5857
if ($returnValue === null) {
5958
if (!$isVoidSuperType->no()) {

src/Rules/Functions/ArrowFunctionReturnTypeRule.php

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
use PHPStan\ShouldNotHappenException;
1212
use PHPStan\Type\ObjectType;
1313
use PHPStan\Type\Type;
14-
use PHPStan\Type\VoidType;
1514

1615
/**
1716
* @implements Rule<InArrowFunctionNode>
@@ -39,7 +38,7 @@ public function processNode(Node $node, Scope $scope): array
3938
$generatorType = new ObjectType(Generator::class);
4039

4140
$originalNode = $node->getOriginalNode();
42-
$isVoidSuperType = (new VoidType())->isSuperTypeOf($returnType);
41+
$isVoidSuperType = $returnType->isVoid();
4342
if ($originalNode->returnType === null && $isVoidSuperType->yes()) {
4443
return [];
4544
}

src/Rules/PhpDoc/InvalidThrowsPhpDocValueRule.php

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
use PHPStan\Type\FileTypeMapper;
1010
use PHPStan\Type\ObjectType;
1111
use PHPStan\Type\VerbosityLevel;
12-
use PHPStan\Type\VoidType;
1312
use Throwable;
1413
use function sprintf;
1514

@@ -57,7 +56,7 @@ public function processNode(Node $node, Scope $scope): array
5756
}
5857

5958
$phpDocThrowsType = $resolvedPhpDoc->getThrowsTag()->getType();
60-
if ((new VoidType())->isSuperTypeOf($phpDocThrowsType)->yes()) {
59+
if ($phpDocThrowsType->isVoid()->yes()) {
6160
return [];
6261
}
6362

src/Type/Php/MbStrlenFunctionReturnTypeExtension.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ public function getTypeFromFunctionCall(
136136
} else {
137137
$range = TypeCombinator::union(...array_map(static fn ($l) => new ConstantIntegerType($l), $lengths));
138138
}
139-
} elseif ((new BooleanType())->isSuperTypeOf($argType)->yes()) {
139+
} elseif ($argType->isBoolean()->yes()) {
140140
$range = IntegerRangeType::fromInterval(0, 1);
141141
} elseif (
142142
$isNonEmpty->yes()

src/Type/Php/RangeFunctionReturnTypeExtension.php

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -115,8 +115,7 @@ public function getTypeFromFunctionCall(FunctionReflection $functionReflection,
115115
return AccessoryArrayListType::intersectWith(new ArrayType(new IntegerType(), new IntegerType()));
116116
}
117117

118-
$isFloat = (new FloatType())->isSuperTypeOf($argType)->yes();
119-
if ($isFloat) {
118+
if ($argType->isFloat()->yes()) {
120119
return AccessoryArrayListType::intersectWith(new ArrayType(new IntegerType(), new FloatType()));
121120
}
122121

@@ -127,8 +126,7 @@ public function getTypeFromFunctionCall(FunctionReflection $functionReflection,
127126
return AccessoryArrayListType::intersectWith(new ArrayType(new IntegerType(), $numberType));
128127
}
129128

130-
$isString = $argType->isString()->yes();
131-
if ($isString) {
129+
if ($argType->isString()->yes()) {
132130
return AccessoryArrayListType::intersectWith(new ArrayType(new IntegerType(), new StringType()));
133131
}
134132

0 commit comments

Comments
 (0)