/**
* Parse out inline tags from within a text string
*
* @param str text
* @return Tag[]
*/
function &_getInlineTags($text)
{
$return = NULL;
$tagStrings = preg_split('/{(@.+)}/sU', $text, -1, PREG_SPLIT_DELIM_CAPTURE);
if ($tagStrings) {
$inlineTags = NULL;
$phpdoctor =& $this->_root->phpdoctor();
foreach ($tagStrings as $tag) {
if (substr($tag, 0, 1) == '@') {
$pos = strpos($tag, ' ');
if ($pos !== FALSE) {
$name = trim(substr($tag, 0, $pos));
$text = trim(substr($tag, $pos + 1));
} else {
$name = $tag;
$text = NULL;
}
} else {
$name = '@text';
$text = $tag;
}
$data = NULL;
$inlineTag =& $phpdoctor->createTag($name, $text, $data, $this->_root);
$inlineTag->setParent($this->_parent);
$inlineTags[] = $inlineTag;
}
$return =& $inlineTags;
}
return $return;
}