Work towards stabilizing the API.

- Changed Tag to an interface and flattened hierarchy
- Changed Description to accept a list of tags and a template
- Allow auto-wiring when constructing tags
This commit is contained in:
Mike van Riel
2015-06-13 14:30:43 +02:00
committed by Mike van Riel
parent 2054338d51
commit 2c18f0e883
17 changed files with 1463 additions and 230 deletions
+8 -2
View File
@@ -47,12 +47,18 @@ final class DocBlockFactory implements DocBlockFactoryInterface
*/
public static function createInstance(array $additionalTags = [])
{
$tagFactory = new TagFactory(new FqsenFactory());
$fqsenResolver = new FqsenResolver();
$tagFactory = new TagFactory($fqsenResolver);
$descriptionFactory = new DescriptionFactory($tagFactory);
$tagFactory->addService($descriptionFactory);
$tagFactory->addService(new TypeResolver($fqsenResolver));
foreach ($additionalTags as $tagName => $tagClassName) {
$tagFactory->registerTagHandler($tagName, $tagClassName);
}
return new self(new DescriptionFactory($tagFactory), $tagFactory);
return new self($descriptionFactory, $tagFactory);
}
/**