public function date($operator, $date = NULL)
{
if (func_num_args() === 1) {
// in $operator is predicate
if (!preg_match('#^(?:([=<>!]=?|<>)\\s*)?(.+)\\z#i', $operator, $matches)) {
throw new Nette\InvalidArgumentException('Invalid date predicate format.');
}
list(, $operator, $date) = $matches;
$operator = $operator ? $operator : '=';
}
$date = DateTime::from($date)->format('U');
return $this->filter(function (RecursiveDirectoryIterator $file) use($operator, $date) {
return self::compare($file->getMTime(), $operator, $date);
});
}