- Removed throw on unknown tags

This commit is contained in:
Dave M. 2020-10-20 19:35:52 +00:00
parent 9f8bc3c0d5
commit ed9a305e87
1 changed files with 4 additions and 3 deletions

View File

@ -34,7 +34,7 @@ class ObjectResolver {
public function getAnnotationFromClassname(string $className) : ? object
{
if ( $name = $this->uses[$className] ?? false) {
foreach($this->class['tags'] as $item) {
foreach(array_reverse($this->class['tags']) as $item) {
if ( $item['tag'] === $name ) {
return $this->instanciateAnnotationObject($item);
}
@ -106,7 +106,8 @@ class ObjectResolver {
$arguments = $this->extractArguments($tagDefinition['arguments']);
if ( false === $class = array_search($tagDefinition['tag'], $this->uses) ) {
throw new \InvalidArgumentException("Annotation class `{$tagDefinition['tag']}` was not found within {$this->objectClass} uses statement (or it's children / traits)");
return new class() implements Annotation {};
# throw new \InvalidArgumentException("Annotation class `{$tagDefinition['tag']}` was not found within {$this->objectClass} uses statement (or it's children / traits)");
}
$obj = new $class(... $arguments['constructor']);