/** * @param \HippoPHP\Hippo\FileSystem $fileSystem * @param string[] $args */ public function __construct(FileSystem $fileSystem, array $args) { $this->fileSystem = $fileSystem; $argParserOptions = new ArgParserOptions(); $argParserOptions->markArray('l'); $argParserOptions->markArray('log'); $argParserOptions->markFlag('q'); $argParserOptions->markFlag('s'); $argParserOptions->markFlag('quiet'); $argParserOptions->markFlag('verbose'); $argParserOptions->markFlag('strict'); $argContainer = ArgParser::parse($args, $argParserOptions); $this->loggedSeverities = Violation::getSeverities(); $this->processArgContainer($argContainer); $cliReporter = new CLIReporter($this->fileSystem); $cliReporter->setLoggedSeverities($this->loggedSeverities); $this->reporters[] = $cliReporter; }