/**
* 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;
}