@@ -16,24 +16,28 @@ impl<T: fmt::Display> fmt::Display for Array<T> {
1616 fn fmt ( & self , fmt : & mut fmt:: Formatter ) -> fmt:: Result {
1717 if self . dims . iter ( ) . any ( |dim| dim. lower_bound != 1 ) {
1818 for dim in & self . dims {
19- try!( write ! ( fmt,
20- "[{}:{}]" ,
21- dim. lower_bound,
22- dim. lower_bound + dim. len - 1 ) ) ;
19+ try!( write ! (
20+ fmt,
21+ "[{}:{}]" ,
22+ dim. lower_bound,
23+ dim. lower_bound + dim. len - 1
24+ ) ) ;
2325 }
2426 try!( write ! ( fmt, "=" ) ) ;
2527 }
2628 fmt_helper ( 0 , & self . dims , & mut self . data . iter ( ) , fmt)
2729 }
2830}
2931
30- fn fmt_helper < ' a , T , I > ( depth : usize ,
31- dims : & [ Dimension ] ,
32- mut data : & mut I ,
33- fmt : & mut fmt:: Formatter )
34- -> fmt:: Result
35- where I : Iterator < Item = & ' a T > ,
36- T : ' a + fmt:: Display
32+ fn fmt_helper < ' a , T , I > (
33+ depth : usize ,
34+ dims : & [ Dimension ] ,
35+ mut data : & mut I ,
36+ fmt : & mut fmt:: Formatter ,
37+ ) -> fmt:: Result
38+ where
39+ I : Iterator < Item = & ' a T > ,
40+ T : ' a + fmt:: Display ,
3741{
3842 if depth == dims. len ( ) {
3943 return write ! ( fmt, "{}" , data. next( ) . unwrap( ) ) ;
@@ -60,9 +64,11 @@ impl<T> Array<T> {
6064 /// Panics if the number of elements provided does not match the number of
6165 /// elements specified by the dimensions.
6266 pub fn from_parts ( data : Vec < T > , dimensions : Vec < Dimension > ) -> Array < T > {
63- assert ! ( ( data. is_empty( ) && dimensions. is_empty( ) ) ||
67+ assert ! (
68+ ( data. is_empty( ) && dimensions. is_empty( ) ) ||
6469 data. len( ) as i32 == dimensions. iter( ) . fold( 1 , |acc, i| acc * i. len) ,
65- "size mismatch" ) ;
70+ "size mismatch"
71+ ) ;
6672 Array {
6773 dims : dimensions,
6874 data : data,
@@ -72,10 +78,12 @@ impl<T> Array<T> {
7278 /// Creates a new one-dimensional array.
7379 pub fn from_vec ( data : Vec < T > , lower_bound : i32 ) -> Array < T > {
7480 Array {
75- dims : vec ! [ Dimension {
76- len: data. len( ) as i32 ,
77- lower_bound: lower_bound,
78- } ] ,
81+ dims : vec ! [
82+ Dimension {
83+ len: data. len( ) as i32 ,
84+ lower_bound: lower_bound,
85+ } ,
86+ ] ,
7987 data : data,
8088 }
8189 }
@@ -85,11 +93,13 @@ impl<T> Array<T> {
8593 /// For example, the one dimensional array `[1, 2]` would turn into the
8694 /// two-dimensional array `[[1, 2]]`.
8795 pub fn wrap ( & mut self , lower_bound : i32 ) {
88- self . dims . insert ( 0 ,
89- Dimension {
90- len : 1 ,
91- lower_bound : lower_bound,
92- } ) ;
96+ self . dims . insert (
97+ 0 ,
98+ Dimension {
99+ len : 1 ,
100+ lower_bound : lower_bound,
101+ } ,
102+ ) ;
93103 }
94104
95105 /// Consumes another array, appending it to the top level dimension of this
@@ -106,8 +116,10 @@ impl<T> Array<T> {
106116 ///
107117 /// Panics if the dimensions of the two arrays do not match.
108118 pub fn push ( & mut self , other : Array < T > ) {
109- assert ! ( self . dims. len( ) - 1 == other. dims. len( ) ,
110- "cannot append differently shaped arrays" ) ;
119+ assert ! (
120+ self . dims. len( ) - 1 == other. dims. len( ) ,
121+ "cannot append differently shaped arrays"
122+ ) ;
111123 for ( dim1, dim2) in self . dims . iter ( ) . skip ( 1 ) . zip ( other. dims . iter ( ) ) {
112124 assert ! ( dim1 == dim2, "cannot append differently shaped arrays" ) ;
113125 }
@@ -196,8 +208,27 @@ tuple_impl!(a: i32, b: i32, c: i32, d: i32);
196208tuple_impl ! ( a: i32 , b: i32 , c: i32 , d: i32 , e: i32 ) ;
197209tuple_impl ! ( a: i32 , b: i32 , c: i32 , d: i32 , e: i32 , f: i32 ) ;
198210tuple_impl ! ( a: i32 , b: i32 , c: i32 , d: i32 , e: i32 , f: i32 , g: i32 ) ;
199- tuple_impl ! ( a: i32 , b: i32 , c: i32 , d: i32 , e: i32 , f: i32 , g: i32 , h: i32 ) ;
200- tuple_impl ! ( a: i32 , b: i32 , c: i32 , d: i32 , e: i32 , f: i32 , g: i32 , h: i32 , i: i32 ) ;
211+ tuple_impl ! (
212+ a: i32 ,
213+ b: i32 ,
214+ c: i32 ,
215+ d: i32 ,
216+ e: i32 ,
217+ f: i32 ,
218+ g: i32 ,
219+ h: i32
220+ ) ;
221+ tuple_impl ! (
222+ a: i32 ,
223+ b: i32 ,
224+ c: i32 ,
225+ d: i32 ,
226+ e: i32 ,
227+ f: i32 ,
228+ g: i32 ,
229+ h: i32 ,
230+ i: i32
231+ ) ;
201232
202233/// Indexes into the `Array`, retrieving a reference to the contained
203234/// value.
0 commit comments