/** * @param Function_|ClassMethod $node */ function importReturnValue($node) { $comment = $node->getDocComment(); if ($comment) { $str = $comment->getText(); try { $docBlock = $this->factory->create($str, $this->getDocBlockContext()); $return = $docBlock->getTagsByName("return"); if (count($return)) { $returnType = $return[0]->getType(); $types = explode("|", $returnType); if (count($types) > 1) { $node->setAttribute("namespacedReturn", \Guardrail\Scope::MIXED_TYPE); } else { foreach ($types as $type) { if ($type[0] == '\\') { $type = substr($type, 1); } $node->setAttribute("namespacedReturn", strval($type)); return; } } } } catch (\InvalidArgumentException $e) { // Skip it. } } }