setValidRange($range); parent::__construct($name, $value, $nameValueDelimiter, $innerValueDelimiter); } /** * Sets a range for validation. * * @param array $range The range including min and max values. * * @return $this * * @internal */ public function setValidRange($range) { $this->range = $range; return $this; } /** * Internal setter of the value. * * @param mixed $value The value to set. * * @return $this * * @internal */ public function setValue($value) { if (is_numeric($value) && ! empty($this->range) && ($value < $this->range[0] || $value > $this->range[1])) { throw new OutOfRangeException("Value must be in range: [{$this->range[0]}, {$this->range[1]}]"); } parent::setValue($value); return $this; } }