inRange method

T inRange(
  1. T min,
  2. T max, {
  3. required T orElse,
})

Returns the number inRange between min and max. If the number is null, return orElse.

Example:

2.inRange(0, 10) = 2;
2.inRange(5, 10) = 5;
12.inRange(5, 10) = 10;
null.inRange(5, 10) = null;
null.inRange(5, 10, orElse: 7) = 7;

Implementation

T inRange(T min, T max, {required T orElse}) {
  if (this == null) return orElse;
  if (this! <= min) return min;
  if (this! >= max) return max;
  return this!;
}