compareTo method
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);
}