/**
  * @return ReflectionMethodMagic[]|array
  */
 public function extractFromClass(ReflectionClass $reflectionClass)
 {
     $methods = [];
     if ($parentClass = $reflectionClass->getParentClass()) {
         $methods += $this->extractFromParentClass($parentClass, $reflectionClass->isDocumented());
     }
     if ($traits = $reflectionClass->getTraits()) {
         $methods += $this->extractFromTraits($traits, $reflectionClass->isDocumented());
     }
     return $methods;
 }
 /**
  * Returns the overridden method.
  *
  * @return \ApiGen\Reflection\ReflectionMethod|null
  */
 public function getOverriddenMethod()
 {
     $parent = $this->declaringClass->getParentClass();
     if (null === $parent) {
         return null;
     }
     foreach ($parent->getMagicMethods() as $method) {
         if ($this->name === $method->getName()) {
             return $method;
         }
     }
     return null;
 }