code: public static function concatIterables(IteratorAggregate $iterables) : IteratorAggregate
      {
          return self::from(
              Iterators::concatIterators(
                  FluentIterable::from($iterables)
                      ->transform(
                          function (Traversable $element) {
                              return Iterators::from($element);
                          }
                      )
                      ->iterator()
              )
          );
      }
docs: Combines multiple iterables into a single iterable.
  The returned iterable has an iterator that traverses the elements of each iterable in inputs.
  The input iterators are not polled until necessary.
  
  @param IteratorAggregate $iterables of Traversable objects
  @return IteratorAggregate