scratch
/vendor/symfony/finder/Iterator/PathFilterIterator.php |
@@ -0,0 +1,56 @@ |
<?php |
|
/* |
* This file is part of the Symfony package. |
* |
* (c) Fabien Potencier <fabien@symfony.com> |
* |
* For the full copyright and license information, please view the LICENSE |
* file that was distributed with this source code. |
*/ |
|
namespace Symfony\Component\Finder\Iterator; |
|
/** |
* PathFilterIterator filters files by path patterns (e.g. some/special/dir). |
* |
* @author Fabien Potencier <fabien@symfony.com> |
* @author Włodzimierz Gajda <gajdaw@gajdaw.pl> |
*/ |
class PathFilterIterator extends MultiplePcreFilterIterator |
{ |
/** |
* Filters the iterator values. |
* |
* @return bool true if the value should be kept, false otherwise |
*/ |
public function accept() |
{ |
$filename = $this->current()->getRelativePathname(); |
|
if ('\\' === DIRECTORY_SEPARATOR) { |
$filename = str_replace('\\', '/', $filename); |
} |
|
return $this->isAccepted($filename); |
} |
|
/** |
* Converts strings to regexp. |
* |
* PCRE patterns are left unchanged. |
* |
* Default conversion: |
* 'lorem/ipsum/dolor' ==> 'lorem\/ipsum\/dolor/' |
* |
* Use only / as directory separator (on Windows also). |
* |
* @param string $str Pattern: regexp or dirname |
* |
* @return string regexp corresponding to a given string or regexp |
*/ |
protected function toRegex($str) |
{ |
return $this->isRegex($str) ? $str : '/'.preg_quote($str, '/').'/'; |
} |
} |