20if (!function_exists(__NAMESPACE__ . 
'\\log10')) {
 
   21    function log10($complex): Complex
 
   23        $complex = Complex::validateComplexArgument($complex);
 
   25        if (($complex->getReal() == 0.0) && ($complex->getImaginary() == 0.0)) {
 
   26            throw new \InvalidArgumentException();
 
   27        } elseif (($complex->getReal() > 0.0) && ($complex->getImaginary() == 0.0)) {
 
   28            return new Complex(\log10($complex->getReal()), 0.0, $complex->getSuffix());
 
   32            ->multiply(\log10(Complex::EULER));
 
An exception for terminatinating execution or to throw for unit testing.