$start = new \DateTime(); $options = $_SERVER['argv']; array_shift($options); $config = new Config(); $config->processCliOptions($options); $generator = new Generator($config); // Help if ($config->isHelpRequested()) { echo $generator->colorize($generator->getHeader()); echo $generator->colorize($config->getHelp()); die; } // Prepare configuration $config->prepare(); if ($config->debug) { Debugger::$onFatalError = array(); Debugger::enable(Debugger::DEVELOPMENT, false); } $generator->output($generator->getHeader()); // Check for update (only in production mode) if ($config->updateCheck && !$config->debug) { ini_set('default_socket_timeout', 5); $latestVersion = @file_get_contents('http://pear.apigen.org/rest/r/apigen/latest.txt'); if (false !== $latestVersion && version_compare(trim($latestVersion), Generator::VERSION, '>')) { $generator->output(sprintf("New version @header@%s@c available\n\n", $latestVersion)); } } // Scan if (count($config->source) > 1) { $generator->output(sprintf("Scanning\n @value@%s@c\n", implode("\n ", $config->source))); } else {