getImmediateMethods() public method

Get only the methods that this class implements (i.e. do not search up parent classes etc.)
public getImmediateMethods ( ) : BetterReflection\Reflection\ReflectionMethod[]
return BetterReflection\Reflection\ReflectionMethod[]
Example #1
0
 /**
  * getVisibleMethods returns only the methods that are visible according to `api.visibility`.
  *
  * @param \BetterReflection\Reflection\ReflectionClass $class
  *
  * @return \BetterReflection\Reflection\ReflectionMethod[]
  */
 public function getVisibleMethods(ReflectionClass $class)
 {
     try {
         $methods = $class->getMethods();
     } catch (IdentifierNotFound $e) {
         $methods = $class->getImmediateMethods();
     }
     return array_filter($methods, [$this, 'isMethodVisible']);
 }
Example #2
0
 /**
  * extracts usages to other classes.
  *
  * @param ReflectionClass $class
  *
  * @return ReflectionClass[]
  */
 protected function buildUsages(ReflectionClass $class)
 {
     $usages = [];
     foreach ($class->getImmediateMethods() as $method) {
         /** @var ReflectionMethod $method */
         foreach ($method->getParameters() as $parameter) {
             /* @var ReflectionParameter $parameter */
             try {
                 if ($parameter->getClass()) {
                     $usages[$parameter->getClass()->getName()] = $parameter->getClass()->getName();
                 }
             } catch (IdentifierNotFound $e) {
                 $usages[$e->getClassName()] = $e->getClassName();
             }
         }
     }
     return array_unique($usages);
 }
 /**
  * {@inheritdoc}
  */
 public function getImmediateMethods()
 {
     return $this->reflectionClass->getImmediateMethods();
 }