Base for Int range validators: the value must be in range.
@Validate can only reference object validators, so subclass with concrete arguments:
@Validate
object
object QuantityValidator : IntRangeValidator(1..999)
Returns null if value is valid, or a human-readable reason string if invalid.
null