compareRanges static method

int compareRanges(
  1. Uint8List a,
  2. int aStart,
  3. int aEnd,
  4. Uint8List b,
  5. int bStart,
  6. int bEnd,
)

Compares two UTF-8 byte ranges lexicographically.

Implementation

static int compareRanges(
  Uint8List a,
  int aStart,
  int aEnd,
  Uint8List b,
  int bStart,
  int bEnd,
) {
  final aLength = aEnd - aStart;
  final bLength = bEnd - bStart;
  var i = 0;
  while (i < aLength && i < bLength) {
    final diff = a[aStart + i] - b[bStart + i];
    if (diff != 0) return diff;
    i++;
  }
  return aLength - bLength;
}