code: public function min(Traversable $traversable)
      {
          $array = iterator_to_array($traversable, false);
          Arrays::sort($array, $this);
          return Preconditions::checkElementExists($array, 0);
      }
docs: Returns the least of the specified values according to this ordering.
  
  @param Traversable $traversable
  @return mixed
  @throws \OutOfBoundsException if $traversable is empty