/**
  * Adds a new Tag on Dockblock.
  *
  * @param TagInterface $tag
  *
  * @throws \InvalidArgumentException
  * @return bool
  */
 public function add($tag)
 {
     if (!$tag instanceof TagInterface) {
         throw new \InvalidArgumentException('This tag is not allowed');
     }
     if ($this->isUniqueTag($tag->getName())) {
         $this->removeByName($tag->getName());
     }
     return parent::add($tag);
 }
 /**
  * @inheritdoc
  */
 public function setReturns(TagInterface $tag)
 {
     $tag->setName(TagInterface::TAG_RETURN);
     $this->getDocBlock()->addTag($tag);
     return $this;
 }