compareTo method

  1. @override
int compareTo(
  1. PrioritizedJob other
)
override

Compares this object to another object.

Returns a value like a Comparator when comparing this to other. That is, it returns a negative integer if this is ordered before other, a positive integer if this is ordered after other, and zero if this and other are ordered together.

The other argument must be a value that is comparable to this object.

Implementation

@override
int compareTo(PrioritizedJob other) {
  // Higher priority comes first
  final priorityComparison = other.priority.value.compareTo(priority.value);
  if (priorityComparison != 0) {
    return priorityComparison;
  }

  // If same priority, older jobs come first (FIFO)
  return queuedAt.compareTo(other.queuedAt);
}