src/precore/util/Iterables.php
public static function concat(IteratorAggregate $a, IteratorAggregate $b) : IteratorAggregate
    {
        return self::from(Iterators::concat(Iterators::from($a->getIterator()), Iterators::from($b->getIterator())));
    }
public static function concat(IteratorAggregate $a, IteratorAggregate $b) : IteratorAggregate
    {
        return self::from(Iterators::concat(Iterators::from($a->getIterator()), Iterators::from($b->getIterator())));
    }
Combines two iterables into a single iterable.
The returned iterable has an iterator that traverses the elements in a,
followed by the elements in b. The source iterators are not polled until necessary.

@param IteratorAggregate $a
@param IteratorAggregate $b
@return IteratorAggregate