Funx.Validator.Range (funx v0.8.0)

View Source

Validates that a number falls within an inclusive range.

Optional Options

  • :min - Minimum value (inclusive)
  • :max - Maximum value (inclusive)
  • :message - Custom error message callback (value -> String.t())

At least one of :min or :max must be provided.

Examples

iex> Funx.Validator.Range.validate(5, min: 1, max: 10)
%Funx.Monad.Either.Right{right: 5}

iex> Funx.Validator.Range.validate(15, min: 1, max: 10)
%Funx.Monad.Either.Left{left: %Funx.Errors.ValidationError{errors: ["must be between 1 and 10"]}}

iex> Funx.Validator.Range.validate(5, min: 10)
%Funx.Monad.Either.Left{left: %Funx.Errors.ValidationError{errors: ["must be at least 10"]}}

iex> Funx.Validator.Range.validate(15, max: 10)
%Funx.Monad.Either.Left{left: %Funx.Errors.ValidationError{errors: ["must be at most 10"]}}

Summary

Functions

validate(value)

validate(value, opts)