REDROOM
PHP 8.2.31
Path:
Logout
Edit File
Size: 2.06 KB
Close
//opt/cpanel/ea-wappspector/vendor/rector/rector/rules/Privatization/VisibilityGuard/ClassMethodVisibilityGuard.php
Text
Base64
<?php declare (strict_types=1); namespace Rector\Privatization\VisibilityGuard; use PhpParser\Node\Stmt\ClassMethod; use PHPStan\Reflection\ClassReflection; use Rector\NodeNameResolver\NodeNameResolver; final class ClassMethodVisibilityGuard { /** * @readonly * @var \Rector\NodeNameResolver\NodeNameResolver */ private $nodeNameResolver; public function __construct(NodeNameResolver $nodeNameResolver) { $this->nodeNameResolver = $nodeNameResolver; } public function isClassMethodVisibilityGuardedByParent(ClassMethod $classMethod, ClassReflection $classReflection) : bool { $methodName = $this->nodeNameResolver->getName($classMethod); /** @var ClassReflection[] $parentClassReflections */ $parentClassReflections = \array_merge($classReflection->getParents(), $classReflection->getInterfaces()); foreach ($parentClassReflections as $parentClassReflection) { if ($parentClassReflection->hasMethod($methodName)) { return \true; } } return \false; } public function isClassMethodVisibilityGuardedByTrait(ClassMethod $classMethod, ClassReflection $classReflection) : bool { $parentTraitReflections = $this->getLocalAndParentTraitReflections($classReflection); $methodName = $this->nodeNameResolver->getName($classMethod); foreach ($parentTraitReflections as $parentTraitReflection) { if ($parentTraitReflection->hasMethod($methodName)) { return \true; } } return \false; } /** * @return ClassReflection[] */ private function getLocalAndParentTraitReflections(ClassReflection $classReflection) : array { $traitReflections = $classReflection->getTraits(); foreach ($classReflection->getParents() as $parentClassReflection) { foreach ($parentClassReflection->getTraits() as $parentTraitReflection) { $traitReflections[] = $parentTraitReflection; } } return $traitReflections; } }
Save
Close
Exit & Reset
Text mode: syntax highlighting auto-detects file type.
Directory Contents
Dirs: 0 × Files: 1
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
ClassMethodVisibilityGuard.php
2.06 KB
lrw-r--r--
2024-11-08 13:59:10
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Zip Selected
If ZipArchive is unavailable, a
.tar
will be created (no compression).