/opt/cpanel/ea-wappspector/vendor/rector/rector/rules/CodeQuality/NodeAnalyzer
Edit: /opt/cpanel/ea-wappspector/vendor/rector/rector/rules/CodeQuality/NodeAnalyzer/ForeachAnalyzer.php (1457B)
nodeComparator = $nodeComparator;
}
/**
* Matches$
* foreach ($values as $value) {
* <$assigns[]> = $value;
* }
*/
public function matchAssignItemsOnlyForeachArrayVariable(Foreach_ $foreach) : ?Expr
{
if (\count($foreach->stmts) !== 1) {
return null;
}
$onlyStatement = $foreach->stmts[0];
if ($onlyStatement instanceof Expression) {
$onlyStatement = $onlyStatement->expr;
}
if (!$onlyStatement instanceof Assign) {
return null;
}
if (!$onlyStatement->var instanceof ArrayDimFetch) {
return null;
}
if ($onlyStatement->var->dim instanceof Expr) {
return null;
}
if (!$this->nodeComparator->areNodesEqual($foreach->valueVar, $onlyStatement->expr)) {
return null;
}
return $onlyStatement->var->var;
}
}