ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
ClosedIntegerInterval.php
Go to the documentation of this file.
1<?php
2/* Copyright (c) 1998-2019 ILIAS open source, Extended GPL, see docs/LICENSE */
3
8namespace ILIAS\Data\Interval;
9
11
13{
17 private $range;
18
24 public function __construct(int $minimum, int $maximum)
25 {
26 if ($minimum === $maximum) {
28 sprintf('The maximum("%s") and minimum("%s") can NOT be the same', $maximum, $minimum),
29 'exception_maximum_minimum_same',
30 $maximum,
31 $minimum
32 );
33 }
34
35 $this->range = new OpenedIntegerInterval($minimum, $maximum);
36 }
37
42 public function spans(int $numberToCheck) : bool
43 {
44 if ($numberToCheck <= $this->range->minimum()) {
45 return false;
46 } elseif ($numberToCheck >= $this->range->maximum()) {
47 return false;
48 }
49
50 return true;
51 }
52
56 public function minimum() : int
57 {
58 return $this->range->minimum();
59 }
60
64 public function maximum() : int
65 {
66 return $this->range->maximum();
67 }
68}
An exception for terminatinating execution or to throw for unit testing.