/opt/cpanel/ea-wappspector/vendor/rector/rector/rules/Php72/Rector/Unset_
Edit: /opt/cpanel/ea-wappspector/vendor/rector/rector/rules/Php72/Rector/Unset_/UnsetCastRector.php (2156B)
>
*/
public function getNodeTypes() : array
{
return [Unset_::class, Assign::class, Expression::class];
}
/**
* @param Unset_|Assign|Expression $node
* @return int|null|\PhpParser\Node
*/
public function refactor(Node $node)
{
if ($node instanceof Assign) {
return $this->refactorAssign($node);
}
if ($node instanceof Expression) {
if (!$node->expr instanceof Unset_) {
return null;
}
return NodeTraverser::REMOVE_NODE;
}
return $this->nodeFactory->createNull();
}
private function refactorAssign(Assign $assign) : ?FuncCall
{
if (!$assign->expr instanceof Unset_) {
return null;
}
$unset = $assign->expr;
if (!$this->nodeComparator->areNodesEqual($assign->var, $unset->expr)) {
return null;
}
return $this->nodeFactory->createFuncCall('unset', [$assign->var]);
}
}