@@ -1133,8 +1133,10 @@ impl<T: Element> PyArray<T, Ix2> {
11331133 /// ```
11341134 pub fn from_vec2 < ' py > ( py : Python < ' py > , v : & [ Vec < T > ] ) -> Result < & ' py Self , FromVecError > {
11351135 let last_len = v. last ( ) . map_or ( 0 , |v| v. len ( ) ) ;
1136- if v. iter ( ) . any ( |v| v. len ( ) != last_len) {
1137- return Err ( FromVecError :: new ( v. len ( ) , last_len) ) ;
1136+ for v in v {
1137+ if v. len ( ) != last_len {
1138+ return Err ( FromVecError :: new ( v. len ( ) , last_len) ) ;
1139+ }
11381140 }
11391141 let dims = [ v. len ( ) , last_len] ;
11401142 unsafe {
@@ -1171,12 +1173,18 @@ impl<T: Element> PyArray<T, Ix3> {
11711173 /// ```
11721174 pub fn from_vec3 < ' py > ( py : Python < ' py > , v : & [ Vec < Vec < T > > ] ) -> Result < & ' py Self , FromVecError > {
11731175 let len2 = v. last ( ) . map_or ( 0 , |v| v. len ( ) ) ;
1174- if v. iter ( ) . any ( |v| v. len ( ) != len2) {
1175- return Err ( FromVecError :: new ( v. len ( ) , len2) ) ;
1176+ for v in v {
1177+ if v. len ( ) != len2 {
1178+ return Err ( FromVecError :: new ( v. len ( ) , len2) ) ;
1179+ }
11761180 }
11771181 let len3 = v. last ( ) . map_or ( 0 , |v| v. last ( ) . map_or ( 0 , |v| v. len ( ) ) ) ;
1178- if v. iter ( ) . any ( |v| v. iter ( ) . any ( |v| v. len ( ) != len3) ) {
1179- return Err ( FromVecError :: new ( v. len ( ) , len3) ) ;
1182+ for v in v {
1183+ for v in v {
1184+ if v. len ( ) != len3 {
1185+ return Err ( FromVecError :: new ( v. len ( ) , len3) ) ;
1186+ }
1187+ }
11801188 }
11811189 let dims = [ v. len ( ) , len2, len3] ;
11821190 unsafe {
0 commit comments