private function internalHasValue(PropertyMetadata $metadata, $name)
{
if (!isset($this->validated[$name])) {
$this->initProperty($metadata, $name);
}
if ($this->data[$name] instanceof IPropertyContainer) {
return $this->data[$name]->hasInjectedValue();
} elseif ($metadata->hasGetter) {
$value = call_user_func([$this, $metadata->hasGetter], $metadata->isVirtual ? null : $this->data[$name], $metadata);
return isset($value);
} else {
return isset($this->data[$name]);
}
}