mirror of
https://github.com/rectorphp/rector.git
synced 2024-06-09 12:42:38 +00:00
e79510ae2b
0d55791128
Fix downgrade build: exclude vendor/symplify/easy-parallel/ecs.php on parallel lint (#5584)
44 lines
1.2 KiB
PHP
44 lines
1.2 KiB
PHP
<?php
|
|
|
|
/*
|
|
* This file is part of the Fidry CPUCounter Config package.
|
|
*
|
|
* (c) Théo FIDRY <theo.fidry@gmail.com>
|
|
*
|
|
* For the full copyright and license information, please view the LICENSE
|
|
* file that was distributed with this source code.
|
|
*/
|
|
declare (strict_types=1);
|
|
namespace RectorPrefix202402\Fidry\CpuCoreCounter\Finder;
|
|
|
|
use function getenv;
|
|
use function sprintf;
|
|
final class OnlyInPowerShellFinder implements CpuCoreFinder
|
|
{
|
|
/**
|
|
* @var CpuCoreFinder
|
|
*/
|
|
private $decoratedFinder;
|
|
public function __construct(CpuCoreFinder $decoratedFinder)
|
|
{
|
|
$this->decoratedFinder = $decoratedFinder;
|
|
}
|
|
public function diagnose() : string
|
|
{
|
|
$powerShellModulePath = getenv('PSModulePath');
|
|
return $this->skip() ? sprintf('Skipped; no power shell module path detected ("%s").', $powerShellModulePath) : $this->decoratedFinder->diagnose();
|
|
}
|
|
public function find() : ?int
|
|
{
|
|
return $this->skip() ? null : $this->decoratedFinder->find();
|
|
}
|
|
public function toString() : string
|
|
{
|
|
return sprintf('OnlyInPowerShellFinder(%s)', $this->decoratedFinder->toString());
|
|
}
|
|
private function skip() : bool
|
|
{
|
|
return \false === getenv('PSModulePath');
|
|
}
|
|
}
|