function SplCaster::castDoublyLinkedList
File
-
vendor/
symfony/ var-dumper/ Caster/ SplCaster.php, line 51
Class
- SplCaster
- Casts SPL related classes to array representation.
Namespace
Symfony\Component\VarDumper\CasterCode
public static function castDoublyLinkedList(\SplDoublyLinkedList $c, array $a, Stub $stub, bool $isNested) : array {
$prefix = Caster::PREFIX_VIRTUAL;
$mode = $c->getIteratorMode();
$c->setIteratorMode(\SplDoublyLinkedList::IT_MODE_KEEP | $mode & ~\SplDoublyLinkedList::IT_MODE_DELETE);
$a += [
$prefix . 'mode' => new ConstStub(($mode & \SplDoublyLinkedList::IT_MODE_LIFO ? 'IT_MODE_LIFO' : 'IT_MODE_FIFO') . ' | ' . ($mode & \SplDoublyLinkedList::IT_MODE_DELETE ? 'IT_MODE_DELETE' : 'IT_MODE_KEEP'), $mode),
$prefix . 'dllist' => iterator_to_array($c),
];
$c->setIteratorMode($mode);
return $a;
}