![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/cartforge.co/vendor/phar-io/manifest/tools/php-cs-fixer.d/ |
<?php namespace PharIo\CSFixer; use PhpCsFixer\Fixer\FixerInterface; use PhpCsFixer\FixerDefinition\FixerDefinition; use PhpCsFixer\Tokenizer\Tokens; use PhpCsFixer\Tokenizer\Token; /** * Main implementation taken from kubawerlos/php-cs-fixer-customere-fixers * Copyright (c) 2018 Kuba Werłos * * Slightly modified to work without the gazillion of composer dependencies * * Original: * https://github.com/kubawerlos/php-cs-fixer-custom-fixers/blob/master/src/Fixer/PhpdocSingleLineVarFixer.php * */ class PhpdocSingleLineVarFixer implements FixerInterface { public function getDefinition(): FixerDefinition { return new FixerDefinition( '`@var` annotation must be in single line when is the only content.', [new CodeSample('<?php /** * @var string */ ')] ); } public function isCandidate(Tokens $tokens): bool { return $tokens->isTokenKindFound(T_DOC_COMMENT); } public function isRisky(): bool { return false; } public function fix(\SplFileInfo $file, Tokens $tokens): void { foreach($tokens as $index => $token) { if (!$token->isGivenKind(T_DOC_COMMENT)) { continue; } if (\stripos($token->getContent(), '@var') === false) { continue; } if (preg_match('#^/\*\*[\s\*]+(@var[^\r\n]+)[\s\*]*\*\/$#u', $token->getContent(), $matches) !== 1) { continue; } $newContent = '/** ' . \rtrim($matches[1]) . ' */'; if ($newContent === $token->getContent()) { continue; } $tokens[$index] = new Token([T_DOC_COMMENT, $newContent]); } } public function getPriority(): int { return 0; } public function getName(): string { return 'PharIo/phpdoc_single_line_var_fixer'; } public function supports(\SplFileInfo $file): bool { return true; } }