items); } public function filter(callable $callback): self { return new static( array_filter( array: $this->items, callback: $callback, ) ); } public function getIterator(): Iterator { return new ArrayIterator($this->items); } /** * @return TItem[] */ public function toArray(): array { return $this->items; } }