getName() . '::$' . $this->getName(); } /********************* Reflection layer ****************d*g**/ /** * @return ClassType */ public function getDeclaringClass() { return new ClassType(parent::getDeclaringClass()->getName()); } /********************* Nette\Annotations support ****************d*g**/ /** * Has property specified annotation? * @param string * @return bool */ public function hasAnnotation($name) { $res = AnnotationsParser::getAll($this); return !empty($res[$name]); } /** * Returns an annotation value. * @param string * @return IAnnotation */ public function getAnnotation($name) { $res = AnnotationsParser::getAll($this); return isset($res[$name]) ? end($res[$name]) : null; } /** * Returns all annotations. * @return IAnnotation[][] */ public function getAnnotations() { return AnnotationsParser::getAll($this); } /** * Returns value of annotation 'description'. * @return string */ public function getDescription() { return $this->getAnnotation('description'); } }