/var/www/vhosts/ihelp.ro/_OLD/vendor/cakephp/cakephp/src/Collection/Iterator
Edit: /var/www/vhosts/ihelp.ro/_OLD/vendor/cakephp/cakephp/src/Collection/Iterator/InsertIterator.php (3811B)
_path = $path;
$this->_target = $target;
$this->_values = $values;
}
/**
* Advances the cursor to the next record
*
* @return void
*/
public function next(): void
{
parent::next();
if ($this->_validValues) {
$this->_values->next();
}
$this->_validValues = $this->_values->valid();
}
/**
* Returns the current element in the target collection after inserting
* the value from the source collection into the specified path.
*
* @return mixed
*/
public function current()
{
$row = parent::current();
if (!$this->_validValues) {
return $row;
}
$pointer = &$row;
foreach ($this->_path as $step) {
if (!isset($pointer[$step])) {
return $row;
}
$pointer = &$pointer[$step];
}
$pointer[$this->_target] = $this->_values->current();
return $row;
}
/**
* Resets the collection pointer.
*
* @return void
*/
public function rewind(): void
{
parent::rewind();
$this->_values->rewind();
$this->_validValues = $this->_values->valid();
}
}