1- use obj_safe:: IterableObj ;
21use orx_iterable:: * ;
32
43fn test_it < ' a > ( values : Vec < ( usize , usize ) > , col : impl Iterable < Item = ( usize , & ' a usize ) > ) {
@@ -21,24 +20,30 @@ fn enumerated() {
2120 ) ;
2221}
2322
24- // obj
23+ #[ cfg( feature = "std" ) ]
24+ mod object_safe {
25+ use orx_iterable:: { obj_safe:: * , * } ;
2526
26- fn obj_test_it < ' a > ( values : Vec < ( usize , usize ) > , col : & dyn IterableObj < Item = ( usize , & ' a usize ) > ) {
27- let sum_values = values. iter ( ) . map ( |x| x. 1 ) . sum :: < usize > ( ) ;
28- let sum_indices = values. iter ( ) . map ( |x| x. 0 ) . sum :: < usize > ( ) ;
29- let count = values. len ( ) ;
27+ fn obj_test_it < ' a > (
28+ values : Vec < ( usize , usize ) > ,
29+ col : & dyn IterableObj < Item = ( usize , & ' a usize ) > ,
30+ ) {
31+ let sum_values = values. iter ( ) . map ( |x| x. 1 ) . sum :: < usize > ( ) ;
32+ let sum_indices = values. iter ( ) . map ( |x| x. 0 ) . sum :: < usize > ( ) ;
33+ let count = values. len ( ) ;
3034
31- // tests
32- assert_eq ! ( col. boxed_iter( ) . count( ) , count) ;
33- assert_eq ! ( col. boxed_iter( ) . map( |x| x. 0 ) . sum:: <usize >( ) , sum_indices) ;
34- assert_eq ! ( col. boxed_iter( ) . map( |x| x. 1 ) . sum:: <usize >( ) , sum_values) ;
35- }
35+ // tests
36+ assert_eq ! ( col. boxed_iter( ) . count( ) , count) ;
37+ assert_eq ! ( col. boxed_iter( ) . map( |x| x. 0 ) . sum:: <usize >( ) , sum_indices) ;
38+ assert_eq ! ( col. boxed_iter( ) . map( |x| x. 1 ) . sum:: <usize >( ) , sum_values) ;
39+ }
3640
37- #[ test]
38- fn obj_enumerated ( ) {
39- let a = vec ! [ 1 , 2 , 3 , 4 ] ;
40- obj_test_it (
41- a. clone ( ) . into_iter ( ) . enumerate ( ) . collect :: < Vec < _ > > ( ) ,
42- & a. enumerated ( ) ,
43- ) ;
41+ #[ test]
42+ fn obj_enumerated ( ) {
43+ let a = vec ! [ 1 , 2 , 3 , 4 ] ;
44+ obj_test_it (
45+ a. clone ( ) . into_iter ( ) . enumerate ( ) . collect :: < Vec < _ > > ( ) ,
46+ & a. enumerated ( ) ,
47+ ) ;
48+ }
4449}
0 commit comments