There's no need to do validation here, as it's handled in the constructor. Replace with:

```php
if (!is_array($atoms)) {
    $atoms = iterator_to_array($atoms);
}

return $this->factory()->createFromAtoms(
    array_merge($this->atoms(), $atoms),
    $this instanceof AbsolutePathInterface,
    false
);
```