2016-04-04 20:25:27 +00:00
|
|
|
<?php
|
2016-04-04 20:49:54 +00:00
|
|
|
|
2016-11-20 21:53:17 +00:00
|
|
|
declare(strict_types=1);
|
2016-04-04 20:25:27 +00:00
|
|
|
|
|
|
|
namespace Phpml\Exception;
|
|
|
|
|
|
|
|
class InvalidArgumentException extends \Exception
|
|
|
|
{
|
|
|
|
/**
|
|
|
|
* @return InvalidArgumentException
|
|
|
|
*/
|
2016-04-18 20:58:43 +00:00
|
|
|
public static function arraySizeNotMatch()
|
2016-04-04 20:25:27 +00:00
|
|
|
{
|
2017-05-17 07:03:25 +00:00
|
|
|
return new self('Size of given arrays does not match');
|
2016-04-04 20:25:27 +00:00
|
|
|
}
|
2016-04-06 20:38:08 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @param $name
|
|
|
|
*
|
|
|
|
* @return InvalidArgumentException
|
|
|
|
*/
|
|
|
|
public static function percentNotInRange($name)
|
|
|
|
{
|
|
|
|
return new self(sprintf('%s must be between 0.0 and 1.0', $name));
|
|
|
|
}
|
2016-04-27 21:04:59 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @return InvalidArgumentException
|
|
|
|
*/
|
|
|
|
public static function arrayCantBeEmpty()
|
|
|
|
{
|
|
|
|
return new self('The array has zero elements');
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @param int $minimumSize
|
|
|
|
*
|
|
|
|
* @return InvalidArgumentException
|
|
|
|
*/
|
|
|
|
public static function arraySizeToSmall($minimumSize = 2)
|
|
|
|
{
|
2017-09-02 20:44:19 +00:00
|
|
|
return new self(sprintf('The array must have at least %d elements', $minimumSize));
|
2016-04-27 21:04:59 +00:00
|
|
|
}
|
2016-04-29 22:58:54 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @return InvalidArgumentException
|
|
|
|
*/
|
|
|
|
public static function matrixDimensionsDidNotMatch()
|
|
|
|
{
|
|
|
|
return new self('Matrix dimensions did not match');
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @return InvalidArgumentException
|
|
|
|
*/
|
|
|
|
public static function inconsistentMatrixSupplied()
|
|
|
|
{
|
2017-05-17 07:03:25 +00:00
|
|
|
return new self('Inconsistent matrix supplied');
|
2016-04-29 22:58:54 +00:00
|
|
|
}
|
2016-05-01 21:17:09 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @return InvalidArgumentException
|
|
|
|
*/
|
|
|
|
public static function invalidClustersNumber()
|
|
|
|
{
|
|
|
|
return new self('Invalid clusters number');
|
|
|
|
}
|
2016-06-14 09:53:58 +00:00
|
|
|
|
2017-05-17 22:07:14 +00:00
|
|
|
/**
|
2017-07-26 06:22:12 +00:00
|
|
|
* @param mixed $target
|
|
|
|
*
|
2017-05-17 22:07:14 +00:00
|
|
|
* @return InvalidArgumentException
|
|
|
|
*/
|
|
|
|
public static function invalidTarget($target)
|
|
|
|
{
|
2017-09-02 20:44:19 +00:00
|
|
|
return new self(sprintf('Target with value "%s" is not part of the accepted classes', $target));
|
2017-05-17 22:07:14 +00:00
|
|
|
}
|
|
|
|
|
2016-06-14 09:53:58 +00:00
|
|
|
/**
|
2016-12-12 17:50:27 +00:00
|
|
|
* @param string $language
|
|
|
|
*
|
2016-06-14 09:53:58 +00:00
|
|
|
* @return InvalidArgumentException
|
|
|
|
*/
|
|
|
|
public static function invalidStopWordsLanguage(string $language)
|
|
|
|
{
|
2017-09-02 20:44:19 +00:00
|
|
|
return new self(sprintf('Can\'t find "%s" language for StopWords', $language));
|
2016-06-14 09:53:58 +00:00
|
|
|
}
|
2016-08-05 08:20:31 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @return InvalidArgumentException
|
|
|
|
*/
|
|
|
|
public static function invalidLayerNodeClass()
|
|
|
|
{
|
|
|
|
return new self('Layer node class must implement Node interface');
|
|
|
|
}
|
2016-08-09 11:27:43 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @return InvalidArgumentException
|
|
|
|
*/
|
|
|
|
public static function invalidLayersNumber()
|
|
|
|
{
|
2017-05-17 22:07:14 +00:00
|
|
|
return new self('Provide at least 1 hidden layer');
|
2016-08-09 11:27:43 +00:00
|
|
|
}
|
2017-05-17 22:07:14 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @return InvalidArgumentException
|
|
|
|
*/
|
|
|
|
public static function invalidClassesNumber()
|
|
|
|
{
|
|
|
|
return new self('Provide at least 2 different classes');
|
|
|
|
}
|
|
|
|
|
2017-09-02 20:44:19 +00:00
|
|
|
/**
|
|
|
|
* @return InvalidArgumentException
|
|
|
|
*/
|
2017-05-23 07:03:05 +00:00
|
|
|
public static function inconsistentClasses()
|
|
|
|
{
|
|
|
|
return new self('The provided classes don\'t match the classes provided in the constructor');
|
|
|
|
}
|
2017-09-02 20:44:19 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @param string $file
|
|
|
|
*
|
|
|
|
* @return InvalidArgumentException
|
|
|
|
*/
|
|
|
|
public static function fileNotFound(string $file)
|
|
|
|
{
|
|
|
|
return new self(sprintf('File "%s" not found', $file));
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @param string $file
|
|
|
|
*
|
|
|
|
* @return InvalidArgumentException
|
|
|
|
*/
|
|
|
|
public static function fileNotExecutable(string $file)
|
|
|
|
{
|
|
|
|
return new self(sprintf('File "%s" is not executable', $file));
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @param string $path
|
|
|
|
*
|
|
|
|
* @return InvalidArgumentException
|
|
|
|
*/
|
|
|
|
public static function pathNotFound(string $path)
|
|
|
|
{
|
|
|
|
return new self(sprintf('The specified path "%s" does not exist', $path));
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @param string $path
|
|
|
|
*
|
|
|
|
* @return InvalidArgumentException
|
|
|
|
*/
|
|
|
|
public static function pathNotWritable(string $path)
|
|
|
|
{
|
|
|
|
return new self(sprintf('The specified path "%s" is not writable', $path));
|
|
|
|
}
|
2017-10-24 16:59:12 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @param string $operator
|
|
|
|
*
|
|
|
|
* @return InvalidArgumentException
|
|
|
|
*/
|
|
|
|
public static function invalidOperator(string $operator)
|
|
|
|
{
|
|
|
|
return new self(sprintf('Invalid operator "%s" provided', $operator));
|
|
|
|
}
|
2016-04-04 20:25:27 +00:00
|
|
|
}
|