$singulars =
$this->inflector->
singularize($camelized);
$errors =
[];
if (null !==
$constructor &&
$allowConstruct) { foreach ($constructor->
getParameters() as $parameter) { if ($parameter->
getName() ===
$property) { return new PropertyWriteInfo(PropertyWriteInfo::TYPE_CONSTRUCTOR,
$property);
} } } [$adderAccessName,
$removerAccessName,
$adderAndRemoverErrors] =
$this->
findAdderAndRemover($reflClass,
$singulars);
if ($allowAdderRemover && null !==
$adderAccessName && null !==
$removerAccessName) { $adderMethod =
$reflClass->
getMethod($adderAccessName);
$removerMethod =
$reflClass->
getMethod($removerAccessName);
$mutator =
new PropertyWriteInfo(PropertyWriteInfo::TYPE_ADDER_AND_REMOVER
);
$mutator->
setAdderInfo(new PropertyWriteInfo(PropertyWriteInfo::TYPE_METHOD,
$adderAccessName,
$this->
getWriteVisiblityForMethod($adderMethod),
$adderMethod->
isStatic()));
$mutator->
setRemoverInfo(new PropertyWriteInfo(PropertyWriteInfo::TYPE_METHOD,
$removerAccessName,
$this->
getWriteVisiblityForMethod($removerMethod),
$removerMethod->
isStatic()));
return $mutator;
}