mirror of
https://github.com/rectorphp/rector.git
synced 2025-03-14 04:19:44 +01:00
decopule resolveNewVisibilityForNode() method
This commit is contained in:
parent
1cc094845d
commit
1f58b96f05
@ -89,13 +89,19 @@ CODE_SAMPLE
|
||||
*/
|
||||
public function refactor(Node $classConstantNode): ?Node
|
||||
{
|
||||
$constantName = $classConstantNode->consts[0]->name->toString();
|
||||
$this->visibilityModifier->removeOriginalVisibilityFromFlags($classConstantNode);
|
||||
|
||||
$nodeParentClassName = $classConstantNode->getAttribute(Attribute::PARENT_CLASS_NAME);
|
||||
$newVisibility = $this->constantToVisibilityByClass[$nodeParentClassName][$constantName];
|
||||
$newVisibility = $this->resolveNewVisibilityForNode($classConstantNode);
|
||||
$this->visibilityModifier->addVisibilityFlag($classConstantNode, $newVisibility);
|
||||
|
||||
return $classConstantNode;
|
||||
}
|
||||
|
||||
private function resolveNewVisibilityForNode(ClassConst $classConstantNode): string
|
||||
{
|
||||
$nodeParentClassName = $classConstantNode->getAttribute(Attribute::PARENT_CLASS_NAME);
|
||||
$constantName = $classConstantNode->consts[0]->name->toString();
|
||||
|
||||
return $this->constantToVisibilityByClass[$nodeParentClassName][$constantName];
|
||||
}
|
||||
}
|
||||
|
@ -3,7 +3,6 @@
|
||||
namespace Rector\Rector\Visibility;
|
||||
|
||||
use PhpParser\Node;
|
||||
use PhpParser\Node\Stmt\Class_;
|
||||
use PhpParser\Node\Stmt\ClassMethod;
|
||||
use Rector\Node\Attribute;
|
||||
use Rector\NodeModifier\VisibilityModifier;
|
||||
@ -98,25 +97,20 @@ CODE_SAMPLE
|
||||
*/
|
||||
public function refactor(Node $classMethodNode): ?Node
|
||||
{
|
||||
$nodeParentClassName = $classMethodNode->getAttribute(Attribute::PARENT_CLASS_NAME);
|
||||
$methodName = $classMethodNode->name->toString();
|
||||
|
||||
$newVisibility = $this->methodToVisibilityByClass[$nodeParentClassName][$methodName];
|
||||
|
||||
$this->visibilityModifier->removeOriginalVisibilityFromFlags($classMethodNode);
|
||||
|
||||
if ($newVisibility === 'public') {
|
||||
$classMethodNode->flags |= Class_::MODIFIER_PUBLIC;
|
||||
}
|
||||
$newVisibility = $this->resolveNewVisibilityForNode($classMethodNode);
|
||||
|
||||
if ($newVisibility === 'protected') {
|
||||
$classMethodNode->flags |= Class_::MODIFIER_PROTECTED;
|
||||
}
|
||||
|
||||
if ($newVisibility === 'private') {
|
||||
$classMethodNode->flags |= Class_::MODIFIER_PRIVATE;
|
||||
}
|
||||
$this->visibilityModifier->addVisibilityFlag($classMethodNode, $newVisibility);
|
||||
|
||||
return $classMethodNode;
|
||||
}
|
||||
|
||||
private function resolveNewVisibilityForNode(ClassMethod $classMethodNode): string
|
||||
{
|
||||
$methodName = $classMethodNode->name->toString();
|
||||
$nodeParentClassName = $classMethodNode->getAttribute(Attribute::PARENT_CLASS_NAME);
|
||||
|
||||
return $this->methodToVisibilityByClass[$nodeParentClassName][$methodName];
|
||||
}
|
||||
}
|
||||
|
@ -3,7 +3,6 @@
|
||||
namespace Rector\Rector\Visibility;
|
||||
|
||||
use PhpParser\Node;
|
||||
use PhpParser\Node\Stmt\Class_;
|
||||
use PhpParser\Node\Stmt\Property;
|
||||
use Rector\Node\Attribute;
|
||||
use Rector\NodeModifier\VisibilityModifier;
|
||||
@ -92,25 +91,19 @@ CODE_SAMPLE
|
||||
*/
|
||||
public function refactor(Node $propertyNode): ?Node
|
||||
{
|
||||
$nodeParentClassName = $propertyNode->getAttribute(Attribute::PARENT_CLASS_NAME);
|
||||
$propertyName = $propertyNode->props[0]->name->toString();
|
||||
|
||||
$newVisibility = $this->propertyToVisibilityByClass[$nodeParentClassName][$propertyName];
|
||||
|
||||
$this->visibilityModifier->removeOriginalVisibilityFromFlags($propertyNode);
|
||||
|
||||
if ($newVisibility === 'public') {
|
||||
$propertyNode->flags |= Class_::MODIFIER_PUBLIC;
|
||||
}
|
||||
|
||||
if ($newVisibility === 'protected') {
|
||||
$propertyNode->flags |= Class_::MODIFIER_PROTECTED;
|
||||
}
|
||||
|
||||
if ($newVisibility === 'private') {
|
||||
$propertyNode->flags |= Class_::MODIFIER_PRIVATE;
|
||||
}
|
||||
$newVisibility = $this->resolveNewVisibilityForNode($propertyNode);
|
||||
$this->visibilityModifier->addVisibilityFlag($propertyNode, $newVisibility);
|
||||
|
||||
return $propertyNode;
|
||||
}
|
||||
|
||||
private function resolveNewVisibilityForNode(Property $propertyNode): string
|
||||
{
|
||||
$nodeParentClassName = $propertyNode->getAttribute(Attribute::PARENT_CLASS_NAME);
|
||||
$propertyName = $propertyNode->props[0]->name->toString();
|
||||
|
||||
return $this->propertyToVisibilityByClass[$nodeParentClassName][$propertyName];
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user