/** * @return bool */ private function canBeProcessed(ClassReflectionInterface $reflection) { if (!$reflection->isMain()) { return false; } if (!$reflection->isDocumented()) { return false; } if (isset($this->processed[$reflection->getName()])) { return false; } return true; }
/** * {@inheritdoc} */ public function getUsedMethods() { $usedMethods = []; foreach ($this->classReflection->getMethods() as $method) { if ($method->getDeclaringTraitName() === NULL || $method->getDeclaringTraitName() === $this->classReflection->getName()) { continue; } $usedMethods[$method->getDeclaringTraitName()][$method->getName()]['method'] = $method; if ($method->getOriginalName() !== NULL && $method->getOriginalName() !== $method->getName()) { $usedMethods[$method->getDeclaringTraitName()][$method->getName()]['aliases'][$method->getName()] = $method; } } return $usedMethods; }
/** * {@inheritdoc} */ public function getIndirectImplementersOfInterface(ClassReflectionInterface $reflectionClass) { $implementers = []; foreach ($this->classes as $class) { if ($this->isAllowedIndirectImplementer($class, $reflectionClass->getName())) { $implementers[] = $class; } } uksort($implementers, 'strcasecmp'); return $implementers; }
/** * @return array */ private function sortElements(array $elements, array $allElements, ClassReflectionInterface $classReflection) { if (!empty($elements)) { ksort($elements); $allElements[$classReflection->getName()] = array_values($elements); } return $allElements; }
/** * @return string */ public function createForProperty(PropertyReflectionInterface $property, ClassReflectionInterface $class = null) { $className = $class !== null ? $class->getName() : $property->getDeclaringClassName(); return $this->createForClass($className) . '#' . ($property->isMagic() ? 'm' : '') . '$' . $property->getName(); }
/** * @return bool */ private function isReservedClass(ClassReflectionInterface $class) { $reservedClasses = ['stdClass', 'Closure', 'Directory']; return in_array($class->getName(), $reservedClasses); }