File manager - Edit - /var/www/payraty/helpdesk/vendor/jetbrains/phpstorm-stubs/tests/Parsers/PHPReflectionParser.php
Back
<?php namespace StubTests\Parsers; use ReflectionClass; use ReflectionFunction; use StubTests\Model\CommonUtils; use StubTests\Model\PHPClass; use StubTests\Model\PHPDefineConstant; use StubTests\Model\PHPEnum; use StubTests\Model\PHPFunction; use StubTests\Model\PHPInterface; use StubTests\Model\StubsContainer; class PHPReflectionParser { /** * @return StubsContainer * @throws \ReflectionException */ public static function getStubs() { if (file_exists(__DIR__ . '/../../ReflectionData.json')) { $stubs = unserialize(file_get_contents(__DIR__ . '/../../ReflectionData.json')); } else { $stubs = new StubsContainer(); $jsonData = json_decode(file_get_contents(__DIR__ . '/../TestData/mutedProblems.json')); $const_groups = get_defined_constants(true); unset($const_groups['user']); $const_groups = CommonUtils::flattenArray($const_groups, true); foreach ($const_groups as $name => $value) { $constant = (new PHPDefineConstant())->readObjectFromReflection([$name, $value]); $constant->readMutedProblems($jsonData->constants); $stubs->addConstant($constant); } foreach (get_defined_functions()['internal'] as $function) { $reflectionFunction = new ReflectionFunction($function); $phpFunction = (new PHPFunction())->readObjectFromReflection($reflectionFunction); $phpFunction->readMutedProblems($jsonData->functions); $stubs->addFunction($phpFunction); } foreach (get_declared_classes() as $clazz) { $reflectionClass = new ReflectionClass($clazz); if ($reflectionClass->isInternal()) { if (method_exists($reflectionClass, 'isEnum') && $reflectionClass->isEnum()) { $enum = (new PHPEnum())->readObjectFromReflection($reflectionClass); $enum->readMutedProblems($jsonData->enums); $stubs->addEnum($enum); } else { $class = (new PHPClass())->readObjectFromReflection($reflectionClass); $class->readMutedProblems($jsonData->classes); $stubs->addClass($class); } } } foreach (get_declared_interfaces() as $interface) { $reflectionInterface = new ReflectionClass($interface); if ($reflectionInterface->isInternal()) { $phpInterface = (new PHPInterface())->readObjectFromReflection($reflectionInterface); $phpInterface->readMutedProblems($jsonData->interfaces); $stubs->addInterface($phpInterface); } } } return $stubs; } }
| ver. 1.4 |
Github
|
.
| PHP 8.3.30 | Generation time: 0 |
proxy
|
phpinfo
|
Settings