%PDF- %PDF-
| Direktori : /opt/cpanel/ea-wappspector/vendor/rector/rector/src/Skipper/Skipper/ |
| Current File : //opt/cpanel/ea-wappspector/vendor/rector/rector/src/Skipper/Skipper/SkipSkipper.php |
<?php
declare (strict_types=1);
namespace Rector\Skipper\Skipper;
use Rector\Skipper\Matcher\FileInfoMatcher;
final class SkipSkipper
{
/**
* @readonly
* @var \Rector\Skipper\Matcher\FileInfoMatcher
*/
private $fileInfoMatcher;
public function __construct(FileInfoMatcher $fileInfoMatcher)
{
$this->fileInfoMatcher = $fileInfoMatcher;
}
/**
* @param array<string, string[]|null> $skippedClasses
* @param object|string $checker
*/
public function doesMatchSkip($checker, string $filePath, array $skippedClasses) : bool
{
foreach ($skippedClasses as $skippedClass => $skippedFiles) {
if (!\is_a($checker, $skippedClass, \true)) {
continue;
}
// skip everywhere
if (!\is_array($skippedFiles)) {
return \true;
}
if ($this->fileInfoMatcher->doesFileInfoMatchPatterns($filePath, $skippedFiles)) {
return \true;
}
}
return \false;
}
}