protected function lint(FilesCollection $files)
{
$this->guardLinterIsInstalled();
// Skip ignored patterns:
$configuration = $this->getConfiguration();
foreach ($configuration['ignore_patterns'] as $pattern) {
$files = $files->notPath($pattern);
}
// Lint every file:
$lintErrors = new LintErrorsCollection();
foreach ($files as $file) {
foreach ($this->linter->lint($file) as $error) {
$lintErrors->add($error);
}
}
return $lintErrors;
}