objectExpr !== null && $this->propertyExpr !== null; } public function getDynamicObjectExpr(): string { if (!$this->isDynamicObjectProperty()) { throw new \LogicException('Property write target is not a dynamic object property'); } return $this->objectExpr; } public function getDynamicPropertyExpr(): string { if (!$this->isDynamicObjectProperty()) { throw new \LogicException('Property write target is not a dynamic object property'); } return $this->propertyExpr; } }