2 declare(strict_types = 1);
20 public static function create(array $items = []): self
22 return new static($items);
27 return array_keys($this->getArrayCopy());
32 return array_values($this->getArrayCopy());
35 public function define(array $items): self
37 $this->exchangeArray(array_merge(
44 public function merge(array $items): self
46 $this->exchangeArray(array_merge(
47 $this->getArrayCopy(),
55 if ($other ===
null || $other === $this) {
58 $target = clone $this;
59 $target->define($other->getArrayCopy());
65 if ($other ===
null || $other === $this) {
68 $target = clone $this;
69 $target->merge($other->getArrayCopy());