rector/vendor/ssch/typo3-rector/src/FileProcessor/TypoScript/Conditions/CompatVersionConditionMatcher.php
Tomas Votruba a3e534ff19 Updated Rector to commit db2e76b99c
db2e76b99c load stubs in config
2021-07-22 23:37:17 +00:00

32 lines
1.0 KiB
PHP

<?php
declare (strict_types=1);
namespace Ssch\TYPO3Rector\FileProcessor\TypoScript\Conditions;
use Ssch\TYPO3Rector\Contract\FileProcessor\TypoScript\Conditions\TyposcriptConditionMatcher;
final class CompatVersionConditionMatcher implements \Ssch\TYPO3Rector\Contract\FileProcessor\TypoScript\Conditions\TyposcriptConditionMatcher
{
/**
* @var string
*/
private const TYPE = 'compatVersion';
/**
* @param string $condition
*/
public function change($condition) : ?string
{
\preg_match('#' . self::TYPE . self::ZERO_ONE_OR_MORE_WHITESPACES . '=' . self::ZERO_ONE_OR_MORE_WHITESPACES . '(?<value>.*)$#iUm', $condition, $matches);
if (!\is_string($matches['value'])) {
return $condition;
}
return \sprintf('compatVersion("%s")', \trim($matches['value']));
}
/**
* @param string $condition
*/
public function shouldApply($condition) : bool
{
return \strncmp($condition, self::TYPE, \strlen(self::TYPE)) === 0;
}
}