propertyFetchAnalyzer = $propertyFetchAnalyzer; } /** * Covers: * - $this->propertyName = $expr; * - $this->propertyName[] = $expr; */ public function matchPropertyAssignExpr(Assign $assign, string $propertyName) : ?Expr { $assignVar = $assign->var; if ($this->propertyFetchAnalyzer->isLocalPropertyFetchName($assignVar, $propertyName)) { return $assign->expr; } if (!$assignVar instanceof ArrayDimFetch) { return null; } if ($this->propertyFetchAnalyzer->isLocalPropertyFetchName($assignVar->var, $propertyName)) { return $assign->expr; } return null; } }