@@ -140,9 +140,14 @@ where
140
140
& [ len] => {
141
141
let view = view. view ( ) . into_dimensionality :: < Ix1 > ( ) . unwrap ( ) ;
142
142
f. write_str ( "[" ) ?;
143
- format_with_overflow ( f, len, fmt_opt. collapse_limit ( 0 ) , ", " , ELLIPSIS , |f, index| {
144
- format ( & view[ index] , f)
145
- } ) ?;
143
+ format_with_overflow (
144
+ f,
145
+ len,
146
+ fmt_opt. collapse_limit ( 0 ) ,
147
+ ", " ,
148
+ ELLIPSIS ,
149
+ |f, index| format ( & view[ index] , f) ,
150
+ ) ?;
146
151
f. write_str ( "]" ) ?;
147
152
}
148
153
// For n-dimensional arrays, we proceed recursively
@@ -289,16 +294,24 @@ mod formatting_with_omit {
289
294
) ;
290
295
}
291
296
292
- fn ellipsize ( limit : usize , sep : & str , elements : impl IntoIterator < Item =impl fmt:: Display > )
293
- -> String
294
- {
297
+ fn ellipsize (
298
+ limit : usize ,
299
+ sep : & str ,
300
+ elements : impl IntoIterator < Item = impl fmt:: Display > ,
301
+ ) -> String {
295
302
let elements = elements. into_iter ( ) . collect :: < Vec < _ > > ( ) ;
296
303
let edge = limit / 2 ;
297
304
if elements. len ( ) <= limit {
298
305
format ! ( "{}" , elements. iter( ) . format( sep) )
299
306
} else {
300
- format ! ( "{}{}{}{}{}" , elements[ ..edge] . iter( ) . format( sep) , sep, ELLIPSIS , sep,
301
- elements[ elements. len( ) - edge..] . iter( ) . format( sep) )
307
+ format ! (
308
+ "{}{}{}{}{}" ,
309
+ elements[ ..edge] . iter( ) . format( sep) ,
310
+ sep,
311
+ ELLIPSIS ,
312
+ sep,
313
+ elements[ elements. len( ) - edge..] . iter( ) . format( sep)
314
+ )
302
315
}
303
316
}
304
317
@@ -348,7 +361,10 @@ mod formatting_with_omit {
348
361
#[ test]
349
362
fn dim_2_last_axis_overflow ( ) {
350
363
let overflow: usize = 2 ;
351
- let a = Array2 :: from_elem ( ( AXIS_2D_OVERFLOW_LIMIT , AXIS_2D_OVERFLOW_LIMIT + overflow) , 1 ) ;
364
+ let a = Array2 :: from_elem (
365
+ ( AXIS_2D_OVERFLOW_LIMIT , AXIS_2D_OVERFLOW_LIMIT + overflow) ,
366
+ 1 ,
367
+ ) ;
352
368
let actual = format ! ( "{}" , a) ;
353
369
let expected = "\
354
370
[[1, 1, 1, 1, 1, ..., 1, 1, 1, 1, 1],
@@ -370,7 +386,10 @@ mod formatting_with_omit {
370
386
let a = Array2 :: from_elem ( ( ARRAY_MANY_ELEMENT_LIMIT / 10 , 10 ) , 1 ) ;
371
387
let actual = format ! ( "{}" , a) ;
372
388
let row = format ! ( "{}" , a. row( 0 ) ) ;
373
- let expected = format ! ( "[{}]" , ellipsize( AXIS_LIMIT_COL , ",\n " , ( 0 ..a. nrows( ) ) . map( |_| & row) ) ) ;
389
+ let expected = format ! (
390
+ "[{}]" ,
391
+ ellipsize( AXIS_LIMIT_COL , ",\n " , ( 0 ..a. nrows( ) ) . map( |_| & row) )
392
+ ) ;
374
393
assert_str_eq ( & expected, & actual) ;
375
394
}
376
395
@@ -386,17 +405,32 @@ mod formatting_with_omit {
386
405
#[ test]
387
406
fn dim_2_multi_directional_overflow ( ) {
388
407
let overflow: usize = 2 ;
389
- let a = Array2 :: from_elem ( ( AXIS_2D_OVERFLOW_LIMIT + overflow, AXIS_2D_OVERFLOW_LIMIT + overflow) , 1 ) ;
408
+ let a = Array2 :: from_elem (
409
+ (
410
+ AXIS_2D_OVERFLOW_LIMIT + overflow,
411
+ AXIS_2D_OVERFLOW_LIMIT + overflow,
412
+ ) ,
413
+ 1 ,
414
+ ) ;
390
415
let actual = format ! ( "{}" , a) ;
391
416
let row = format ! ( "[{}]" , ellipsize( AXIS_LIMIT_ROW , ", " , a. row( 0 ) ) ) ;
392
- let expected = format ! ( "[{}]" , ellipsize( AXIS_LIMIT_COL , ",\n " , ( 0 ..a. nrows( ) ) . map( |_| & row) ) ) ;
417
+ let expected = format ! (
418
+ "[{}]" ,
419
+ ellipsize( AXIS_LIMIT_COL , ",\n " , ( 0 ..a. nrows( ) ) . map( |_| & row) )
420
+ ) ;
393
421
assert_str_eq ( & expected, & actual) ;
394
422
}
395
423
396
424
#[ test]
397
425
fn dim_2_multi_directional_overflow_alternate ( ) {
398
426
let overflow: usize = 2 ;
399
- let a = Array2 :: from_elem ( ( AXIS_2D_OVERFLOW_LIMIT + overflow, AXIS_2D_OVERFLOW_LIMIT + overflow) , 1 ) ;
427
+ let a = Array2 :: from_elem (
428
+ (
429
+ AXIS_2D_OVERFLOW_LIMIT + overflow,
430
+ AXIS_2D_OVERFLOW_LIMIT + overflow,
431
+ ) ,
432
+ 1 ,
433
+ ) ;
400
434
let actual = format ! ( "{:#}" , a) ;
401
435
let row = format ! ( "{}" , a. row( 0 ) ) ;
402
436
let expected = format ! ( "[{}]" , ( 0 ..a. nrows( ) ) . map( |_| & row) . format( ",\n " ) ) ;
@@ -405,9 +439,12 @@ mod formatting_with_omit {
405
439
406
440
#[ test]
407
441
fn dim_3_overflow_most ( ) {
408
- let a = Array3 :: from_shape_fn ( ( AXIS_LIMIT_STACKED + 1 , AXIS_LIMIT_COL , AXIS_LIMIT_ROW + 1 ) , |( i, j, k) | {
409
- 1000. + ( 100. * ( ( i as f64 ) . sqrt ( ) + ( j as f64 ) . sin ( ) + k as f64 ) ) . round ( ) / 100.
410
- } ) ;
442
+ let a = Array3 :: from_shape_fn (
443
+ ( AXIS_LIMIT_STACKED + 1 , AXIS_LIMIT_COL , AXIS_LIMIT_ROW + 1 ) ,
444
+ |( i, j, k) | {
445
+ 1000. + ( 100. * ( ( i as f64 ) . sqrt ( ) + ( j as f64 ) . sin ( ) + k as f64 ) ) . round ( ) / 100.
446
+ } ,
447
+ ) ;
411
448
let actual = format ! ( "{:6.1}" , a) ;
412
449
let expected = "\
413
450
[[[1000.0, 1001.0, 1002.0, 1003.0, 1004.0, ..., 1007.0, 1008.0, 1009.0, 1010.0, 1011.0],
0 commit comments