validate method

void validate()

The rule is: 1 <= min <= preferred <= max <=remainingColumns.

Implementation

void validate() {
  if (1 > min) {
    throw ArgumentError("min must be >= 1", 'min');
  }
  if (min > preferred) {
    throw ArgumentError("preferred must be >= min", 'preferred');
  }
  if (preferred > max) {
    throw ArgumentError("max must be >= preferred", 'max');
  }
  if (max > remainingColumns) {
    throw ArgumentError("max must be <= $remainingColumns", 'max');
  }
}