/** * Generate a partial report for a single processed file. * * Function should return TRUE if it printed or stored data about the file * and FALSE if it ignored the file. Returning TRUE indicates that the file and * its data should be counted in the grand totals. * * @param array $report Prepared report data. * @param PHP_CodeSniffer_File $phpcsFile The file being reported on. * @param boolean $showSources Show sources? * @param int $width Maximum allowed line width. * * @return boolean */ public function generateFileReport($report, PHP_CodeSniffer_File $phpcsFile, $showSources = false, $width = 80) { $metrics = $phpcsFile->getMetrics(); foreach ($metrics as $metric => $data) { if (isset($this->_metricCache[$metric]) === false) { $this->_metricCache[$metric] = array(); } foreach ($data['values'] as $value => $locations) { $locations = array_unique($locations); $count = count($locations); if (isset($this->_metricCache[$metric][$value]) === false) { $this->_metricCache[$metric][$value] = $count; } else { $this->_metricCache[$metric][$value] += $count; } } } //end foreach return true; }