Skip to content

l.num()

Passes when the value is num, which covers int and double. Returns a NumValidator with .min(), .max() and .finite() taking num limits. Use it for JSON numbers whose representation you do not control.

NumberValidator<num, num?> num({String? message, MessageBuilder? messageBuilder})
Parameter Type Meaning
message String? Replaces the default error message.
messageBuilder MessageBuilder? Builds the message from the issue. message wins when both are given. See Message builders.

Code invalidType. Default message: value must be a number. value is replaced by the field name when there is one.

A num parameter maps to l.num(). @HasMin(n) and @HasMax(n) add .min(n) and .max(n), and n may be fractional.

final amount = l.num();
amount.validate(input)+2-1
  1. valid: 42
  2. valid: 4.2
  3. invalid: '1'value must be a number