Function maybeSortBy
Maybe sorts a range using maybeSort
by a publicly visible member variable or property of ElemntType!Range
auto ref auto maybeSortBy(string member, alias less, Range)
(
auto ref Range range
);
Since
0.0.1
Example
import bolts .range: isSortedRange;
struct A { // unsortable
int i;
}
struct B { // sortable
int i;
bool opCmp(B a) const {
return i < a .i;
}
}
struct C {
B b;
A a;
}
static assert(!isSortedRange!([C()] .maybeSortBy!"a"));
static assert( isSortedRange!([C()] .maybeSortBy!"b"));
static assert( isSortedRange!([C()] .maybeSortBy!("a", "a.i < b.i")));