/** * @param ReflectedClass|ReflectedInterface|ReflectedTrait $class * @return array */ protected function processClassData($class, $includeFile = false) { $data = []; // $data['namespace'] = $class->getNamespace(); $data['namespace'] = ltrim($class->getNamespace(), '\\'); $data['name'] = $class->getName(); $data['extends'] = $class->getParent(); $data['dependencies'] = $class->getDependencies(); $data['methods'] = $this->processMethods($class); try { if ($includeFile) { include_once $includeFile; } $reflection = new \ReflectionClass($class->getFullname()); //$data['constants'] = $this->processConstants($reflection); $data['constants'] = $this->processConstants($reflection); $data['properties'] = $this->processProperties($reflection); } catch (\Exception $e) { } return $data; }