public function generate() { if (!$this->doc->isGenerable()) { $this->onMissing(__FUNCTION__); } else { try { $scanner = $this->doc->getScanner(); $startParse = microtime(); $scanner->start(); $startWrite = microtime(); $scanner->export(); $this->status(true, implode(' ', ["Parse", count($scanner->getFiles()), 'files used', round(diff_milli($startParse), 4), 'ms,', 'total parsed', count($scanner->getClasses()), 'classes,', count($scanner->getNamespaces()), 'namespaces,', count($scanner->getFunctions()), 'functions,', "write all data", 'used', round(diff_milli($startWrite), 4), 'ms'])); } catch (\Throwable $thrown) { $this->status(false, $thrown->getMessage() . "<br/>" . $thrown->getFile() . '#' . $thrown->getLine()); } } }