public function walk(\Traversable $iterator, callable $function) { $iterator = $this->adapter($iterator); $iterator->rewind(); while (($element = $iterator->fetch()) && $function($element[1], $element[0]) !== false) { } }