?????????? ????????? - ??????????????? - /home/agenciai/public_html/cd38d8/Bridge.tar
???????
SetProviderCollector.php 0000644 00000003154 15126467411 0011404 0 ustar 00 <?php declare (strict_types=1); namespace Rector\Bridge; use Rector\Doctrine\Set\SetProvider\DoctrineSetProvider; use Rector\PHPUnit\Set\SetProvider\PHPUnitSetProvider; use Rector\Set\Contract\SetInterface; use Rector\Set\Contract\SetProviderInterface; use Rector\Set\SetProvider\CoreSetProvider; use Rector\Set\SetProvider\PHPSetProvider; use Rector\Symfony\Set\SetProvider\SymfonySetProvider; use Rector\Symfony\Set\SetProvider\TwigSetProvider; /** * @api * @experimental since 1.1.2 * Utils class to ease building bridges by 3rd-party tools */ final class SetProviderCollector { /** * @var SetProviderInterface[] * @readonly */ private $setProviders; /** * @param SetProviderInterface[] $extraSetProviders */ public function __construct(array $extraSetProviders = []) { $setProviders = [ // register all known set providers here new PHPSetProvider(), new CoreSetProvider(), new PHPUnitSetProvider(), new SymfonySetProvider(), new DoctrineSetProvider(), new TwigSetProvider(), ]; $this->setProviders = \array_merge($setProviders, $extraSetProviders); } /** * @return array<SetProviderInterface> */ public function provide() : array { return $this->setProviders; } /** * @return array<SetInterface> */ public function provideSets() : array { $sets = []; foreach ($this->setProviders as $setProvider) { $sets = \array_merge($sets, $setProvider->provide()); } return $sets; } } SetRectorsResolver.php 0000644 00000005116 15126467411 0011106 0 ustar 00 <?php declare (strict_types=1); namespace Rector\Bridge; use Rector\Config\RectorConfig; use Rector\Contract\Rector\RectorInterface; use RectorPrefix202411\Webmozart\Assert\Assert; /** * @api * @experimental since 1.1.2 * Utils class to ease building bridges by 3rd-party tools * * @see \Rector\Tests\Bridge\SetRectorsResolverTest */ final class SetRectorsResolver { /** * @param string[] $configFilePaths * @return array<int, class-string<RectorInterface>|array<class-string<RectorInterface>, mixed[]>> */ public function resolveFromFilePathsIncludingConfiguration(array $configFilePaths) : array { Assert::allString($configFilePaths); Assert::allFileExists($configFilePaths); $combinedRectorRulesWithConfiguration = []; foreach ($configFilePaths as $configFilePath) { $rectorRulesWithConfiguration = $this->resolveFromFilePathIncludingConfiguration($configFilePath); $combinedRectorRulesWithConfiguration = \array_merge($combinedRectorRulesWithConfiguration, $rectorRulesWithConfiguration); } return $combinedRectorRulesWithConfiguration; } /** * @return array<int, class-string<RectorInterface>|array<class-string<RectorInterface>, mixed[]>> */ public function resolveFromFilePathIncludingConfiguration(string $configFilePath) : array { $rectorConfig = $this->loadRectorConfigFromFilePath($configFilePath); $rectorClassesWithOptionalConfiguration = $rectorConfig->getRectorClasses(); foreach ($rectorConfig->getRuleConfigurations() as $rectorClass => $configuration) { // remove from non-configurable, if added again with better config if (\in_array($rectorClass, $rectorClassesWithOptionalConfiguration)) { $rectorRulePosition = \array_search($rectorClass, $rectorClassesWithOptionalConfiguration, \true); if (\is_int($rectorRulePosition)) { unset($rectorClassesWithOptionalConfiguration[$rectorRulePosition]); } } $rectorClassesWithOptionalConfiguration[] = [$rectorClass => $configuration]; } // sort keys return \array_values($rectorClassesWithOptionalConfiguration); } private function loadRectorConfigFromFilePath(string $configFilePath) : RectorConfig { Assert::fileExists($configFilePath); $rectorConfig = new RectorConfig(); /** @var callable $configCallable */ $configCallable = (require $configFilePath); $configCallable($rectorConfig); return $rectorConfig; } }
| ver. 1.6 |
Github
|
.
| PHP 8.2.30 | ??????????? ?????????: 0 |
proxy
|
phpinfo
|
???????????