11use crate :: Fragment ;
2- use std :: cmp:: Ordering :: { self , * } ;
2+ use core :: cmp:: Ordering :: { self , * } ;
33
44pub fn in_place_sort_by < T , F > ( fragments : & mut [ Fragment < T > ] , mut compare : F )
55where
@@ -21,13 +21,13 @@ where
2121 while r < num_fragments - 1 {
2222 let row_to_swap = get_row_to_swap ( fragments, & mut compare, r, c) ;
2323 if let Some ( target_row) = row_to_swap {
24- let pa = std :: ptr:: addr_of_mut!( fragments[ r] [ c] ) ;
25- let pb = std :: ptr:: addr_of_mut!( fragments[ target_row] [ 0 ] ) ;
24+ let pa = core :: ptr:: addr_of_mut!( fragments[ r] [ c] ) ;
25+ let pb = core :: ptr:: addr_of_mut!( fragments[ target_row] [ 0 ] ) ;
2626 // SAFETY: `pa` and `pb` have been created from safe mutable references and refer
2727 // to elements in the slice and therefore are guaranteed to be valid and aligned.
2828 // Note that accessing the elements behind `a` and `b` is checked and will
2929 // panic when out of bounds.
30- unsafe { std :: ptr:: swap ( pa, pb) } ;
30+ unsafe { core :: ptr:: swap ( pa, pb) } ;
3131
3232 let fragment_right = & fragments[ target_row] [ 1 ..] ;
3333 let value = & fragments[ target_row] [ 0 ] ;
@@ -114,11 +114,12 @@ where
114114mod tests {
115115 use super :: * ;
116116 use crate :: { Doubling , Growth , Linear , Recursive } ;
117+ use alloc:: vec:: Vec ;
117118 use test_case:: test_case;
118119
119120 #[ test]
120121 fn insertion_position ( ) {
121- let fragment: Fragment < u32 > = vec ! [ 4 , 7 , 9 , 13 , 16 , 17 , 23 ] . into ( ) ;
122+ let fragment: Fragment < u32 > = alloc :: vec![ 4 , 7 , 9 , 13 , 16 , 17 , 23 ] . into ( ) ;
122123
123124 let mut c = |a : & u32 , b : & u32 | a. cmp ( b) ;
124125 let mut pos = |val : & u32 | find_position_to_insert ( & fragment, & mut c, val) ;
@@ -162,15 +163,15 @@ mod tests {
162163 fn insertion_position_with_ties ( ) {
163164 let mut c = |a : & u32 , b : & u32 | a. cmp ( b) ;
164165
165- let fragment: Fragment < u32 > = vec ! [ 4 , 7 , 13 , 13 , 13 , 17 , 23 ] . into ( ) ;
166+ let fragment: Fragment < u32 > = alloc :: vec![ 4 , 7 , 13 , 13 , 13 , 17 , 23 ] . into ( ) ;
166167 let mut pos = |val : & u32 | find_position_to_insert ( & fragment, & mut c, val) ;
167168 assert_eq ! ( pos( & 13 ) , Some ( 2 ) ) ;
168169
169- let fragment: Fragment < u32 > = vec ! [ 4 , 7 , 13 , 13 , 23 , 23 , 23 ] . into ( ) ;
170+ let fragment: Fragment < u32 > = alloc :: vec![ 4 , 7 , 13 , 13 , 23 , 23 , 23 ] . into ( ) ;
170171 let mut pos = |val : & u32 | find_position_to_insert ( & fragment, & mut c, val) ;
171172 assert_eq ! ( pos( & 23 ) , Some ( 4 ) ) ;
172173
173- let fragment: Fragment < u32 > = vec ! [ 4 , 4 , 13 , 13 , 23 , 23 , 23 ] . into ( ) ;
174+ let fragment: Fragment < u32 > = alloc :: vec![ 4 , 4 , 13 , 13 , 23 , 23 , 23 ] . into ( ) ;
174175 let mut pos = |val : & u32 | find_position_to_insert ( & fragment, & mut c, val) ;
175176 assert_eq ! ( pos( & 4 ) , None ) ;
176177 }
@@ -179,8 +180,11 @@ mod tests {
179180 fn sort_simple ( ) {
180181 let mut c = |a : & u32 , b : & u32 | a. cmp ( b) ;
181182
182- let mut fragments: Vec < Fragment < u32 > > =
183- vec ! [ vec![ 2 , 4 ] . into( ) , vec![ 0 , 5 , 6 ] . into( ) , vec![ 1 , 3 ] . into( ) ] ;
183+ let mut fragments: Vec < Fragment < u32 > > = alloc:: vec![
184+ alloc:: vec![ 2 , 4 ] . into( ) ,
185+ alloc:: vec![ 0 , 5 , 6 ] . into( ) ,
186+ alloc:: vec![ 1 , 3 ] . into( )
187+ ] ;
184188
185189 in_place_sort_by ( & mut fragments, & mut c) ;
186190
@@ -194,7 +198,7 @@ mod tests {
194198 let mut c = |a : & i32 , b : & i32 | a. cmp ( b) ;
195199
196200 let num_fragments = 10 ;
197- let mut fragments: Vec < Fragment < _ > > = vec ! [ ] ;
201+ let mut fragments: Vec < Fragment < _ > > = alloc :: vec![ ] ;
198202
199203 let mut len = 0 ;
200204 for _ in 0 ..num_fragments {
0 commit comments