conjureSort method

List<T> conjureSort(
  1. ConjuredField field, {
  2. bool descending = false,
})

Implementation

List<T> conjureSort(ConjuredField field, {bool descending = false}) {
  if (isNotEmpty && field.isPresent<T>()) {
    sort((a, b) {
      Comparable? av = descending ? field.getValue(b) : field.getValue(a);
      Comparable? bv = descending ? field.getValue(a) : field.getValue(b);
      if (av == null && bv == null) return 0;
      if (av == null) return -1;
      if (bv == null) return 1;
      return av.compareTo(bv);
    });
  }
  return this;
}