ApiGen\Parser\Broker\Backend::parseClassLists PHP Method

parseClassLists() protected method

protected parseClassLists ( ) : ApiGen\Contracts\Parser\Reflection\ClassReflectionInterface[]
return ApiGen\Contracts\Parser\Reflection\ClassReflectionInterface[]
    protected function parseClassLists()
    {
        $this->declared = array_flip(array_merge(get_declared_classes(), get_declared_interfaces()));
        foreach ($this->getNamespaces() as $namespace) {
            foreach ($namespace->getClasses() as $name => $ref) {
                $class = $this->reflectionFactory->createFromReflection($ref);
                $this->allClasses[self::TOKENIZED_CLASSES][$name] = $class;
                if (!$class->isDocumented()) {
                    continue;
                }
                $this->loadParentClassesAndInterfacesFromClassReflection($ref);
            }
        }
        foreach ($this->allClasses[self::TOKENIZED_CLASSES] as $class) {
            if (!$class->isDocumented()) {
                continue;
            }
            foreach ($class->getOwnMethods() as $method) {
                $this->processFunction($method);
            }
            foreach ($class->getOwnProperties() as $property) {
                $this->loadAnnotationFromReflection($class, $property->getAnnotations(), 'var');
            }
        }
        foreach ($this->getFunctions() as $function) {
            $this->processFunction($function);
        }
        array_walk_recursive($this->allClasses, function (&$reflection) {
            if (!$reflection instanceof ReflectionClass) {
                $reflection = $this->reflectionFactory->createFromReflection($reflection);
            }
        });
        return $this->allClasses;
    }