1: <?php
2:
3: /**
4: * This file is part of the Nette Framework (https://nette.org)
5: * Copyright (c) 2004 David Grudl (https://davidgrudl.com)
6: */
7:
8: namespace Nette\Iterators;
9:
10: use Nette;
11:
12:
13: /**
14: * RecursiveCallbackFilterIterator for PHP < 5.4.
15: *
16: * @author David Grudl
17: */
18: class RecursiveFilter extends Filter implements \RecursiveIterator
19: {
20:
21: public function __construct(\RecursiveIterator $iterator, $callback)
22: {
23: parent::__construct($iterator, $callback);
24: }
25:
26:
27: public function hasChildren()
28: {
29: return $this->getInnerIterator()->hasChildren();
30: }
31:
32:
33: public function getChildren()
34: {
35: return new static($this->getInnerIterator()->getChildren(), $this->callback);
36: }
37:
38: }
39: