strictlyLower function

Returns whether range1 allows only versions lower than those allowed by range2.

Implementation

bool strictlyLower(PackageVersionNumberGeneralLibraryRange range1,
    PackageVersionNumberGeneralLibraryRange range2) {
  if (range1.max == null || range2.min == null) return false;

  var comparison = range1.max!.compareTo(range2.min!);
  if (comparison == -1) return true;
  if (comparison == 1) return false;
  return !range1.includeMax || !range2.includeMin;
}