Code Duplication    Length = 10-10 lines in 4 locations

src/Ranges.php 4 locations

@@ 37-46 (lines=10) @@
34
	 *
35
	 * @return \Closure
36
	 */
37
	public static function intBetween(int $minimum, int $maximum): \Closure
38
	{
39
        if ($maximum <= $minimum)
40
            throw new \InvalidArgumentException('Maximum can not be lesser than or equal to minimum.');
41
        
42
		return function ($value) use ($minimum, $maximum)
43
		{
44
			return Types::int()($value) && ($value >= $minimum && $value <= $maximum);
45
		};
46
	}
47
48
    /**
49
     * @param int $minimum
@@ 54-63 (lines=10) @@
51
     *
52
     * @return \Closure
53
     */
54
    public static function intBetweenExclusive(int $minimum, int $maximum): \Closure
55
    {
56
        if ($maximum <= $minimum)
57
            throw new \InvalidArgumentException('Maximum can not be lesser than or equal to minimum.');
58
        
59
        return function ($value) use ($minimum, $maximum)
60
        {
61
            return Types::int()($value) && ($value > $minimum && $value < $maximum);
62
        };
63
	}
64
65
	/**
66
	 * @param float $minimum
@@ 71-80 (lines=10) @@
68
	 *
69
	 * @return \Closure
70
	 */
71
	public static function floatBetween(float $minimum, float $maximum): \Closure
72
	{
73
        if ($maximum <= $minimum)
74
            throw new \InvalidArgumentException('Maximum can not be lesser than or equal to minimum.');
75
        
76
		return function ($value) use ($minimum, $maximum)
77
		{
78
			return Types::float()($value) && ($value >= $minimum && $value <= $maximum);
79
		};
80
	}
81
82
    /**
83
     * @param float $minimum
@@ 88-97 (lines=10) @@
85
     *
86
     * @return \Closure
87
     */
88
    public static function floatBetweenExclusive(float $minimum, float $maximum): \Closure
89
    {
90
        if ($maximum <= $minimum)
91
            throw new \InvalidArgumentException('Maximum can not be lesser than or equal to minimum.');
92
        
93
        return function ($value) use ($minimum, $maximum)
94
        {
95
            return Types::float()($value) && ($value > $minimum && $value < $maximum);
96
        };
97
	}
98
99
	/**
100
	 * @param array ...$allowedValues