2026-03-30 14:54:57 +07:00
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* This file is part of the Nette Framework (https://nette.org)
|
|
|
|
|
* Copyright (c) 2004 David Grudl (https://davidgrudl.com)
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
declare(strict_types=1);
|
|
|
|
|
|
|
|
|
|
namespace Nette\Iterators;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @deprecated use Nette\Utils\Iterables::map()
|
|
|
|
|
*/
|
|
|
|
|
class Mapper extends \IteratorIterator
|
|
|
|
|
{
|
2026-04-18 20:32:18 +07:00
|
|
|
private \Closure $callback;
|
2026-03-30 14:54:57 +07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
public function __construct(\Traversable $iterator, callable $callback)
|
|
|
|
|
{
|
|
|
|
|
parent::__construct($iterator);
|
2026-04-18 20:32:18 +07:00
|
|
|
$this->callback = $callback(...);
|
2026-03-30 14:54:57 +07:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public function current(): mixed
|
|
|
|
|
{
|
|
|
|
|
return ($this->callback)(parent::current(), parent::key());
|
|
|
|
|
}
|
|
|
|
|
}
|