@@ -2399,18 +2399,18 @@ fn slice_rsplit_once() {
2399
2399
assert_eq ! ( v. rsplit_once( |& x| x == 0 ) , None ) ;
2400
2400
}
2401
2401
2402
- macro_rules! take_tests {
2402
+ macro_rules! split_off_tests {
2403
2403
( slice: & [ ] , $( $tts: tt) * ) => {
2404
- take_tests !( ty: & [ ( ) ] , slice: & [ ] , $( $tts) * ) ;
2404
+ split_off_tests !( ty: & [ ( ) ] , slice: & [ ] , $( $tts) * ) ;
2405
2405
} ;
2406
2406
( slice: & mut [ ] , $( $tts: tt) * ) => {
2407
- take_tests !( ty: & mut [ ( ) ] , slice: & mut [ ] , $( $tts) * ) ;
2407
+ split_off_tests !( ty: & mut [ ( ) ] , slice: & mut [ ] , $( $tts) * ) ;
2408
2408
} ;
2409
2409
( slice: & $slice: expr, $( $tts: tt) * ) => {
2410
- take_tests !( ty: & [ _] , slice: & $slice, $( $tts) * ) ;
2410
+ split_off_tests !( ty: & [ _] , slice: & $slice, $( $tts) * ) ;
2411
2411
} ;
2412
2412
( slice: & mut $slice: expr, $( $tts: tt) * ) => {
2413
- take_tests !( ty: & mut [ _] , slice: & mut $slice, $( $tts) * ) ;
2413
+ split_off_tests !( ty: & mut [ _] , slice: & mut $slice, $( $tts) * ) ;
2414
2414
} ;
2415
2415
( ty: $ty: ty, slice: $slice: expr, method: $method: ident, $( ( $test_name: ident, ( $( $args: expr) ,* ) , $output: expr, $remaining: expr) , ) * ) => {
2416
2416
$(
@@ -2425,64 +2425,64 @@ macro_rules! take_tests {
2425
2425
} ;
2426
2426
}
2427
2427
2428
- take_tests ! {
2429
- slice: & [ 0 , 1 , 2 , 3 ] , method: take ,
2430
- ( take_in_bounds_range_to , ( ..1 ) , Some ( & [ 0 ] as _) , & [ 1 , 2 , 3 ] ) ,
2431
- ( take_in_bounds_range_to_inclusive , ( ..=0 ) , Some ( & [ 0 ] as _) , & [ 1 , 2 , 3 ] ) ,
2432
- ( take_in_bounds_range_from , ( 2 ..) , Some ( & [ 2 , 3 ] as _) , & [ 0 , 1 ] ) ,
2433
- ( take_oob_range_to , ( ..5 ) , None , & [ 0 , 1 , 2 , 3 ] ) ,
2434
- ( take_oob_range_to_inclusive , ( ..=4 ) , None , & [ 0 , 1 , 2 , 3 ] ) ,
2435
- ( take_oob_range_from , ( 5 ..) , None , & [ 0 , 1 , 2 , 3 ] ) ,
2428
+ split_off_tests ! {
2429
+ slice: & [ 0 , 1 , 2 , 3 ] , method: split_off ,
2430
+ ( split_off_in_bounds_range_to , ( ..1 ) , Some ( & [ 0 ] as _) , & [ 1 , 2 , 3 ] ) ,
2431
+ ( split_off_in_bounds_range_to_inclusive , ( ..=0 ) , Some ( & [ 0 ] as _) , & [ 1 , 2 , 3 ] ) ,
2432
+ ( split_off_in_bounds_range_from , ( 2 ..) , Some ( & [ 2 , 3 ] as _) , & [ 0 , 1 ] ) ,
2433
+ ( split_off_oob_range_to , ( ..5 ) , None , & [ 0 , 1 , 2 , 3 ] ) ,
2434
+ ( split_off_oob_range_to_inclusive , ( ..=4 ) , None , & [ 0 , 1 , 2 , 3 ] ) ,
2435
+ ( split_off_oob_range_from , ( 5 ..) , None , & [ 0 , 1 , 2 , 3 ] ) ,
2436
2436
}
2437
2437
2438
- take_tests ! {
2439
- slice: & mut [ 0 , 1 , 2 , 3 ] , method: take_mut ,
2440
- ( take_mut_in_bounds_range_to , ( ..1 ) , Some ( & mut [ 0 ] as _) , & mut [ 1 , 2 , 3 ] ) ,
2441
- ( take_mut_in_bounds_range_to_inclusive , ( ..=0 ) , Some ( & mut [ 0 ] as _) , & mut [ 1 , 2 , 3 ] ) ,
2442
- ( take_mut_in_bounds_range_from , ( 2 ..) , Some ( & mut [ 2 , 3 ] as _) , & mut [ 0 , 1 ] ) ,
2443
- ( take_mut_oob_range_to , ( ..5 ) , None , & mut [ 0 , 1 , 2 , 3 ] ) ,
2444
- ( take_mut_oob_range_to_inclusive , ( ..=4 ) , None , & mut [ 0 , 1 , 2 , 3 ] ) ,
2445
- ( take_mut_oob_range_from , ( 5 ..) , None , & mut [ 0 , 1 , 2 , 3 ] ) ,
2438
+ split_off_tests ! {
2439
+ slice: & mut [ 0 , 1 , 2 , 3 ] , method: split_off_mut ,
2440
+ ( split_off_mut_in_bounds_range_to , ( ..1 ) , Some ( & mut [ 0 ] as _) , & mut [ 1 , 2 , 3 ] ) ,
2441
+ ( split_off_mut_in_bounds_range_to_inclusive , ( ..=0 ) , Some ( & mut [ 0 ] as _) , & mut [ 1 , 2 , 3 ] ) ,
2442
+ ( split_off_mut_in_bounds_range_from , ( 2 ..) , Some ( & mut [ 2 , 3 ] as _) , & mut [ 0 , 1 ] ) ,
2443
+ ( split_off_mut_oob_range_to , ( ..5 ) , None , & mut [ 0 , 1 , 2 , 3 ] ) ,
2444
+ ( split_off_mut_oob_range_to_inclusive , ( ..=4 ) , None , & mut [ 0 , 1 , 2 , 3 ] ) ,
2445
+ ( split_off_mut_oob_range_from , ( 5 ..) , None , & mut [ 0 , 1 , 2 , 3 ] ) ,
2446
2446
}
2447
2447
2448
- take_tests ! {
2449
- slice: & [ 1 , 2 ] , method: take_first ,
2450
- ( take_first_nonempty , ( ) , Some ( & 1 ) , & [ 2 ] ) ,
2448
+ split_off_tests ! {
2449
+ slice: & [ 1 , 2 ] , method: split_off_first ,
2450
+ ( split_off_first_nonempty , ( ) , Some ( & 1 ) , & [ 2 ] ) ,
2451
2451
}
2452
2452
2453
- take_tests ! {
2454
- slice: & mut [ 1 , 2 ] , method: take_first_mut ,
2455
- ( take_first_mut_nonempty , ( ) , Some ( & mut 1 ) , & mut [ 2 ] ) ,
2453
+ split_off_tests ! {
2454
+ slice: & mut [ 1 , 2 ] , method: split_off_first_mut ,
2455
+ ( split_off_first_mut_nonempty , ( ) , Some ( & mut 1 ) , & mut [ 2 ] ) ,
2456
2456
}
2457
2457
2458
- take_tests ! {
2459
- slice: & [ 1 , 2 ] , method: take_last ,
2460
- ( take_last_nonempty , ( ) , Some ( & 2 ) , & [ 1 ] ) ,
2458
+ split_off_tests ! {
2459
+ slice: & [ 1 , 2 ] , method: split_off_last ,
2460
+ ( split_off_last_nonempty , ( ) , Some ( & 2 ) , & [ 1 ] ) ,
2461
2461
}
2462
2462
2463
- take_tests ! {
2464
- slice: & mut [ 1 , 2 ] , method: take_last_mut ,
2465
- ( take_last_mut_nonempty , ( ) , Some ( & mut 2 ) , & mut [ 1 ] ) ,
2463
+ split_off_tests ! {
2464
+ slice: & mut [ 1 , 2 ] , method: split_off_last_mut ,
2465
+ ( split_off_last_mut_nonempty , ( ) , Some ( & mut 2 ) , & mut [ 1 ] ) ,
2466
2466
}
2467
2467
2468
- take_tests ! {
2469
- slice: & [ ] , method: take_first ,
2470
- ( take_first_empty , ( ) , None , & [ ] ) ,
2468
+ split_off_tests ! {
2469
+ slice: & [ ] , method: split_off_first ,
2470
+ ( split_off_first_empty , ( ) , None , & [ ] ) ,
2471
2471
}
2472
2472
2473
- take_tests ! {
2474
- slice: & mut [ ] , method: take_first_mut ,
2475
- ( take_first_mut_empty , ( ) , None , & mut [ ] ) ,
2473
+ split_off_tests ! {
2474
+ slice: & mut [ ] , method: split_off_first_mut ,
2475
+ ( split_off_first_mut_empty , ( ) , None , & mut [ ] ) ,
2476
2476
}
2477
2477
2478
- take_tests ! {
2479
- slice: & [ ] , method: take_last ,
2480
- ( take_last_empty , ( ) , None , & [ ] ) ,
2478
+ split_off_tests ! {
2479
+ slice: & [ ] , method: split_off_last ,
2480
+ ( split_off_last_empty , ( ) , None , & [ ] ) ,
2481
2481
}
2482
2482
2483
- take_tests ! {
2484
- slice: & mut [ ] , method: take_last_mut ,
2485
- ( take_last_mut_empty , ( ) , None , & mut [ ] ) ,
2483
+ split_off_tests ! {
2484
+ slice: & mut [ ] , method: split_off_last_mut ,
2485
+ ( split_off_last_mut_empty , ( ) , None , & mut [ ] ) ,
2486
2486
}
2487
2487
2488
2488
#[ cfg( not( miri) ) ] // unused in Miri
@@ -2497,19 +2497,19 @@ macro_rules! empty_max_mut {
2497
2497
}
2498
2498
2499
2499
#[ cfg( not( miri) ) ] // Comparing usize::MAX many elements takes forever in Miri (and in rustc without optimizations)
2500
- take_tests ! {
2501
- slice: & [ ( ) ; usize :: MAX ] , method: take ,
2502
- ( take_in_bounds_max_range_to , ( ..usize :: MAX ) , Some ( EMPTY_MAX ) , & [ ( ) ; 0 ] ) ,
2503
- ( take_oob_max_range_to_inclusive , ( ..=usize :: MAX ) , None , EMPTY_MAX ) ,
2504
- ( take_in_bounds_max_range_from , ( usize :: MAX ..) , Some ( & [ ] as _) , EMPTY_MAX ) ,
2500
+ split_off_tests ! {
2501
+ slice: & [ ( ) ; usize :: MAX ] , method: split_off ,
2502
+ ( split_off_in_bounds_max_range_to , ( ..usize :: MAX ) , Some ( EMPTY_MAX ) , & [ ( ) ; 0 ] ) ,
2503
+ ( split_off_oob_max_range_to_inclusive , ( ..=usize :: MAX ) , None , EMPTY_MAX ) ,
2504
+ ( split_off_in_bounds_max_range_from , ( usize :: MAX ..) , Some ( & [ ] as _) , EMPTY_MAX ) ,
2505
2505
}
2506
2506
2507
2507
#[ cfg( not( miri) ) ] // Comparing usize::MAX many elements takes forever in Miri (and in rustc without optimizations)
2508
- take_tests ! {
2509
- slice: & mut [ ( ) ; usize :: MAX ] , method: take_mut ,
2510
- ( take_mut_in_bounds_max_range_to , ( ..usize :: MAX ) , Some ( empty_max_mut!( ) ) , & mut [ ( ) ; 0 ] ) ,
2511
- ( take_mut_oob_max_range_to_inclusive , ( ..=usize :: MAX ) , None , empty_max_mut!( ) ) ,
2512
- ( take_mut_in_bounds_max_range_from , ( usize :: MAX ..) , Some ( & mut [ ] as _) , empty_max_mut!( ) ) ,
2508
+ split_off_tests ! {
2509
+ slice: & mut [ ( ) ; usize :: MAX ] , method: split_off_mut ,
2510
+ ( split_off_mut_in_bounds_max_range_to , ( ..usize :: MAX ) , Some ( empty_max_mut!( ) ) , & mut [ ( ) ; 0 ] ) ,
2511
+ ( split_off_mut_oob_max_range_to_inclusive , ( ..=usize :: MAX ) , None , empty_max_mut!( ) ) ,
2512
+ ( split_off_mut_in_bounds_max_range_from , ( usize :: MAX ..) , Some ( & mut [ ] as _) , empty_max_mut!( ) ) ,
2513
2513
}
2514
2514
2515
2515
#[ test]
0 commit comments