Completed
Push — develop ( af3b57...b5e4cb )
by Arkadiusz
02:26
created

InvalidArgumentException   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 38
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 0

Importance

Changes 6
Bugs 0 Features 1
Metric Value
wmc 4
c 6
b 0
f 1
lcom 1
cbo 0
dl 0
loc 38
rs 10

4 Methods

Rating   Name   Duplication   Size   Complexity  
A percentNotInRange() 0 4 1
A arraySizeNotMatch() 0 4 1
A arrayCantBeEmpty() 0 4 1
A arraySizeToSmall() 0 4 1
1
<?php
2
3
declare (strict_types = 1);
4
5
namespace Phpml\Exception;
6
7
class InvalidArgumentException extends \Exception
8
{
9
    /**
10
     * @return InvalidArgumentException
11
     */
12
    public static function arraySizeNotMatch()
13
    {
14
        return new self('Size of given arrays not match');
15
    }
16
17
    /**
18
     * @param $name
19
     *
20
     * @return InvalidArgumentException
21
     */
22
    public static function percentNotInRange($name)
23
    {
24
        return new self(sprintf('%s must be between 0.0 and 1.0', $name));
25
    }
26
27
    /**
28
     * @return InvalidArgumentException
29
     */
30
    public static function arrayCantBeEmpty()
31
    {
32
        return new self('The array has zero elements');
33
    }
34
35
    /**
36
     * @param int $minimumSize
37
     *
38
     * @return InvalidArgumentException
39
     */
40
    public static function arraySizeToSmall($minimumSize = 2)
41
    {
42
        return new self(sprintf('The array must have at least %s elements', $minimumSize));
43
    }
44
}
45