DiscreteRange<T> constructor
DiscreteRange<T> (
- T? lower,
- T? upper,
- Bounds bounds
Implementation
DiscreteRange(T? lower, T? upper, Bounds bounds) {
_throwIfLowerGreaterThanUpper(lower, upper);
final (l, lBound) = _canonicalizeLower(lower, bounds.lower);
final (u, uBound) = _canonicalizeUpper(upper, bounds.upper);
_lower = _lowerGreaterThanUpper(l, u) ? lower : l;
_upper = u;
_bounds = Bounds(lBound, uBound);
}