sortOn: sorts range of aggregates by member name(s)
via Digitalmars-d
digitalmars-d at puremagic.com
Mon Nov 10 12:29:31 PST 2014
On Monday, 10 November 2014 at 19:58:32 UTC, Nordlöw wrote:
> On Monday, 10 November 2014 at 03:38:49 UTC, Andrei
> Alexandrescu wrote:
>> That's a better approach, thanks. A few compelling examples
>> would help.
>>
>>
>> Andrei
>
> One more thing. How should reverse sorting be handled in
> elegant way? Like this
>
> https://github.com/nordlow/justd/blob/master/sort_ex.d#L57
>
> or via some other clever solution I haven't thought about?
By chaining it with std.range.retro? But this will of course be
lazy, and will lose the information that the range is sorted.
Maybe there doesn't need to be a special facility for that, if
it's allowed to specify arbitrary expressions?
container.sortBy!(a => a.intMember) // ascending
container.sortBy!(a => -a.intMember) // descending
Or shorter (the expression will be mixed in):
container.sortBy!" intMember"; // ascending
container.sortBy!"-intMember"; // descending
More information about the Digitalmars-d
mailing list