/** * A new version of reflectReferences that reads all of the data that * may appear * * @return array */ public function reflectReferencesFull() { $references = array(); $reflection = new ReflectionObject($this->instance_of_the_component); $ref_props = $reflection->getProperties(); try { foreach ($ref_props as $ref_prop) { $reader = new SCA_CommentReader($ref_prop->getDocComment()); if ($reader->isReference()) { $reference_type = $reader->getReferenceFull(); $references[$ref_prop->getName()] = $reference_type; } } } catch (Exception $e) { throw new SCA_RuntimeException("The following error occured while examining the" . " comment block for instance variable " . $ref_prop->getName() . ": " . $e->getMessage()); } return $references; }