mirror of
https://github.com/Icinga/icinga-php-library.git
synced 2025-12-12 08:14:18 +01:00
29 lines
594 B
PHP
29 lines
594 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace Brick\Math\Exception;
|
|
|
|
use Brick\Math\BigInteger;
|
|
|
|
use function sprintf;
|
|
|
|
use const PHP_INT_MAX;
|
|
use const PHP_INT_MIN;
|
|
|
|
/**
|
|
* Exception thrown when an integer overflow occurs.
|
|
*/
|
|
final class IntegerOverflowException extends MathException
|
|
{
|
|
/**
|
|
* @pure
|
|
*/
|
|
public static function toIntOverflow(BigInteger $value): IntegerOverflowException
|
|
{
|
|
$message = '%s is out of range %d to %d and cannot be represented as an integer.';
|
|
|
|
return new self(sprintf($message, (string) $value, PHP_INT_MIN, PHP_INT_MAX));
|
|
}
|
|
}
|