Advertisement
Guest User

Untitled

a guest
Sep 8th, 2013
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
D 0.63 KB | None | 0 0
  1. bool less(T)(T left, T right) {
  2.     return left < right;
  3. }
  4.  
  5. template lessBy(alias get) {
  6.     static bool lessBy(T)(T left, T right) {
  7.         return less(get(left), get(right));
  8.     }
  9. }
  10.  
  11. bool more(T)(T left, T right) {
  12.     return left > right;
  13. }
  14.  
  15. template moreBy(alias get) {
  16.     static bool moreBy(T)(T left, T right) {
  17.         return more(get(left), get(right));
  18.     }
  19. }
  20.  
  21. void main(string[] argv) {
  22.     import std.algorithm;
  23.  
  24.     struct Person {
  25.         int firstName;
  26.         int lastName;
  27.     }
  28.  
  29.     Person[] testArr;
  30.  
  31.     testArr.sort!(lessBy!(x => x.firstName))();
  32.     testArr.sort!(moreBy!(x => x.lastName))();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement