Skip to content

Commit

Permalink
fix unable to rewind
Browse files Browse the repository at this point in the history
  • Loading branch information
mvorisek committed Apr 5, 2021
1 parent dba13cc commit 0140ba9
Showing 1 changed file with 17 additions and 8 deletions.
25 changes: 17 additions & 8 deletions src/Finder.php
Expand Up @@ -30,16 +30,25 @@ public function __construct()
->name('*.php')
->exclude('vendor')
;
}

public function getIterator()
{
// add config files even if dot files are ignored
if (class_exists(LazyIterator::class)) { // LazyIterator class is available since Symfony 4.4 (which requires PHP 7+)
$this->append(new \IteratorIterator(new LazyIterator(function () {
$iterator = clone $this;
$iterator->ignoreDotFiles(false);
$iterator->name('~^\.php_cs(?:\..+)?$~is');

return $iterator;
})));
$configFilenameRegex = '\.php_cs(?:\..+)?';
$this->name('~^' . $configFilenameRegex . '$~is');

$fx = \Closure::bind(function () { // rebound function can be called without assigment as of PHP 7
return $this->ignore & static::IGNORE_DOT_FILES;
}, $this, parent::class);
$isDotFilesIgnored = $fx();
if ($isDotFilesIgnored) {
$this
->ignoreDotFiles(false)
->notPath('~(?:^|/)(?!' . $configFilenameRegex . '(?:/|$))\..*(?:/|$)~')
;
}

return parent::getIterator();
}
}

0 comments on commit 0140ba9

Please sign in to comment.