Server : Apache System : Linux wealthytechsolutions.wealthytechsolutions.com 5.14.0-611.49.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Apr 21 16:39:08 EDT 2026 x86_64 User : raybondt ( 1003) PHP Version : 8.3.31 Disable Function : exec,passthru,shell_exec,system Directory : /opt/cpanel/ea-wappspector/vendor/rector/rector/src/Configuration/ |
<?php
declare (strict_types=1);
namespace Rector\Configuration;
use Rector\Configuration\Parameter\SimpleParameterProvider;
use Rector\Skipper\FileSystem\PathNormalizer;
final class VendorMissAnalyseGuard
{
/**
* @param string[] $filePaths
*/
public function isVendorAnalyzed(array $filePaths) : bool
{
if ($this->hasDowngradeSets()) {
return \false;
}
return $this->containsVendorPath($filePaths);
}
private function hasDowngradeSets() : bool
{
$registeredRectorSets = SimpleParameterProvider::provideArrayParameter(\Rector\Configuration\Option::REGISTERED_RECTOR_SETS);
foreach ($registeredRectorSets as $registeredRectorSet) {
if (\strpos((string) $registeredRectorSet, 'downgrade-') !== \false) {
return \true;
}
}
return \false;
}
/**
* @param string[] $filePaths
*/
private function containsVendorPath(array $filePaths) : bool
{
$cwdLength = \strlen(\getcwd());
foreach ($filePaths as $filePath) {
$normalizedPath = PathNormalizer::normalize(\realpath($filePath));
if (\strncmp(\substr($normalizedPath, $cwdLength), '/vendor/', \strlen('/vendor/')) === 0) {
return \true;
}
}
return \false;
}
}