/**
* Creates (or keeps) a Tag from a phpDocumentor Tag.
* If a custom Tag class was registered, it has priority.
* @param Tag $tag
* @return Tag
*/
protected function createTagAnnotation(Tag $tag)
{
$name = $tag->getName();
// If our own map of tags doesn't have a registered class, keep the original tag.
if (isset($this->tagClassNameMap[$name])) {
$tagClassName = $this->tagClassNameMap[$name];
$annotationTag = new $tagClassName($tag->getName(), $tag->getContent(), $tag->getDocBlock(), $tag->getLocation());
} else {
$annotationTag = $tag;
}
return $annotationTag;
}