compareByClosestDistance static method
Comparator for Notes by closest distance.
Implementation
static int compareByClosestDistance(Note a, Note b) => compareMultiple([
() {
final distance = (a.semitones - b.semitones).abs();
return (distance <= chromaticDivisions - distance)
? a.semitones.compareTo(b.semitones)
: b.semitones.compareTo(a.semitones);
},
..._comparators(a, b),
]);