(a: &mut [T], l: usize, u: usize, ws: &mut [T])
| 107 | } |
| 108 | |
| 109 | fn do_sort<T>(a: &mut [T], l: usize, u: usize, ws: &mut [T]) |
| 110 | where |
| 111 | T: Ord + Copy, |
| 112 | { |
| 113 | if u - l > 1 { |
| 114 | let mid = (u + l) / 2; |
| 115 | do_sort(a, l, mid, ws); |
| 116 | do_sort(a, mid, u, ws); |
| 117 | merge(a, l, mid, u, ws); |
| 118 | } |
| 119 | } |
| 120 | |
| 121 | pub fn sort<T>(a: &mut [T]) |
| 122 | where |