Skip to content

Commit ecd6151

Browse files
committed
Updated Rector to commit 861a8808e7516c74b7e41a884076eac35f60a14f
rectorphp/rector-src@861a880 [Php82] Skip usage of already RecursiveDirectoryIterator::SKIP_DOTS on FilesystemIteratorSkipDotsRector (#5712)
1 parent 7660d57 commit ecd6151

File tree

3 files changed

+15
-13
lines changed

3 files changed

+15
-13
lines changed

rules/Php82/Rector/New_/FilesystemIteratorSkipDotsRector.php

+12-9
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
declare (strict_types=1);
44
namespace Rector\Php82\Rector\New_;
55

6-
use FilesystemIterator;
76
use PhpParser\Node;
87
use PhpParser\Node\Arg;
98
use PhpParser\Node\Expr;
@@ -12,29 +11,29 @@
1211
use PhpParser\Node\Expr\New_;
1312
use PhpParser\Node\Name\FullyQualified;
1413
use PHPStan\Type\ObjectType;
15-
use Rector\NodeNameResolver\NodeNameResolver\ClassConstFetchNameResolver;
14+
use Rector\PhpParser\Node\Value\ValueResolver;
1615
use Rector\Rector\AbstractRector;
1716
use Rector\ValueObject\PhpVersionFeature;
1817
use Rector\VersionBonding\Contract\MinPhpVersionInterface;
1918
use Symplify\RuleDocGenerator\ValueObject\CodeSample\CodeSample;
2019
use Symplify\RuleDocGenerator\ValueObject\RuleDefinition;
2120
/**
22-
* @see \Rector\Tests\Php82\Rector\New_\FilesystemIteratorSkipDots\FilesystemIteratorSkipDotsRectorTest
21+
* @see \Rector\Tests\Php82\Rector\New_\FilesystemIteratorSkipDotsRector\FilesystemIteratorSkipDotsRectorTest
2322
*/
2423
final class FilesystemIteratorSkipDotsRector extends AbstractRector implements MinPhpVersionInterface
2524
{
2625
/**
2726
* @readonly
28-
* @var \Rector\NodeNameResolver\NodeNameResolver\ClassConstFetchNameResolver
27+
* @var \Rector\PhpParser\Node\Value\ValueResolver
2928
*/
30-
private $classConstFetchNameResolver;
31-
public function __construct(ClassConstFetchNameResolver $classConstFetchNameResolver)
29+
private $valueResolver;
30+
public function __construct(ValueResolver $valueResolver)
3231
{
33-
$this->classConstFetchNameResolver = $classConstFetchNameResolver;
32+
$this->valueResolver = $valueResolver;
3433
}
3534
public function getRuleDefinition() : RuleDefinition
3635
{
37-
return new RuleDefinition('Prior PHP 8.2 FilesystemIterator::SKIP_DOTS was always set and could not be removed, therefore FilesystemIterator::SKIP_DOTS is added in order to keep this behaviour.', [new CodeSample('new ' . FilesystemIterator::class . '(__DIR__, ' . FilesystemIterator::class . '::KEY_AS_FILENAME);', 'new ' . FilesystemIterator::class . '(__DIR__, ' . FilesystemIterator::class . '::KEY_AS_FILENAME | ' . FilesystemIterator::class . '::SKIP_DOTS);')]);
36+
return new RuleDefinition('Prior PHP 8.2 FilesystemIterator::SKIP_DOTS was always set and could not be removed, therefore FilesystemIterator::SKIP_DOTS is added in order to keep this behaviour.', [new CodeSample('new FilesystemIterator(__DIR__, FilesystemIterator::KEY_AS_FILENAME);', 'new FilesystemIterator(__DIR__, FilesystemIterator::KEY_AS_FILENAME | FilesystemIterator::SKIP_DOTS);')]);
3837
}
3938
public function getNodeTypes() : array
4039
{
@@ -90,6 +89,10 @@ private function isSkipDots(Expr $expr) : bool
9089
// can be anything
9190
return \true;
9291
}
93-
return $this->classConstFetchNameResolver->resolve($expr, null) === 'FilesystemIterator::SKIP_DOTS';
92+
if (!\defined('FilesystemIterator::SKIP_DOTS')) {
93+
return \true;
94+
}
95+
$value = \constant('FilesystemIterator::SKIP_DOTS');
96+
return $this->valueResolver->isValue($expr, $value);
9497
}
9598
}

src/Application/VersionResolver.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,12 @@ final class VersionResolver
1919
* @api
2020
* @var string
2121
*/
22-
public const PACKAGE_VERSION = '8ade0b9e46aff3e6f755a9561579cdc0c9eb9b0e';
22+
public const PACKAGE_VERSION = '861a8808e7516c74b7e41a884076eac35f60a14f';
2323
/**
2424
* @api
2525
* @var string
2626
*/
27-
public const RELEASE_DATE = '2024-03-11 09:21:31';
27+
public const RELEASE_DATE = '2024-03-11 10:05:54';
2828
/**
2929
* @var int
3030
*/

src/Autoloading/BootstrapFilesIncluder.php

+1-2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
declare (strict_types=1);
44
namespace Rector\Autoloading;
55

6-
use FilesystemIterator;
76
use Rector\Configuration\Option;
87
use Rector\Configuration\Parameter\SimpleParameterProvider;
98
use Rector\Exception\ShouldNotHappenException;
@@ -40,7 +39,7 @@ private function requireRectorStubs() : void
4039
if ($stubsRectorDirectory === \false) {
4140
return;
4241
}
43-
$dir = new RecursiveDirectoryIterator($stubsRectorDirectory, RecursiveDirectoryIterator::SKIP_DOTS | FilesystemIterator::SKIP_DOTS);
42+
$dir = new RecursiveDirectoryIterator($stubsRectorDirectory, RecursiveDirectoryIterator::SKIP_DOTS);
4443
/** @var SplFileInfo[] $stubs */
4544
$stubs = new RecursiveIteratorIterator($dir);
4645
foreach ($stubs as $stub) {

0 commit comments

Comments
 (0)