public function __invoke($value) : ValidationResult
{
Assertion::numeric($value);
$decimalValue = Decimal::fromString((string) $value);
$floorModulo = $this->floorModulo($decimalValue->sub($this->base), $this->step);
if ($floorModulo->comp(DecimalConstants::zero()) !== 0) {
return new ValidationResult(new ValidationError('error.step-number', ['lowValue' => $this->trimZeroDecimal((string) $decimalValue->sub($floorModulo)), 'highValue' => $this->trimZeroDecimal((string) $decimalValue->add($this->step)->sub($floorModulo))]));
}
return new ValidationResult();
}