| 390 | #[test] |
| 391 | #[cfg(feature = "rustc_1_40")] |
| 392 | fn reviter() { |
| 393 | let mut av: ArrayVec<[i32; 10]> = Default::default(); |
| 394 | av.push(1); |
| 395 | av.push(2); |
| 396 | av.push(3); |
| 397 | av.push(4); |
| 398 | |
| 399 | let mut iter = av.into_iter(); |
| 400 | |
| 401 | assert_eq!(iter.next(), Some(1)); |
| 402 | assert_eq!(iter.next_back(), Some(4)); |
| 403 | assert_eq!(iter.next(), Some(2)); |
| 404 | assert_eq!(iter.next_back(), Some(3)); |
| 405 | assert_eq!(iter.next(), None); |
| 406 | assert_eq!(iter.next_back(), None); |
| 407 | |
| 408 | let mut av: ArrayVec<[i32; 32]> = Default::default(); |
| 409 | av.extend(0..32); |
| 410 | |
| 411 | let mut iter = av.into_iter(); |
| 412 | |
| 413 | assert_eq!(iter.nth_back(0), Some(31)); |
| 414 | assert_eq!(iter.nth_back(2), Some(28)); |
| 415 | assert_eq!(iter.nth_back(0), Some(27)); |
| 416 | assert_eq!(iter.nth_back(99), None); |
| 417 | assert_eq!(iter.nth_back(99), None); |
| 418 | } |
| 419 | |
| 420 | #[cfg(feature = "serde")] |
| 421 | #[test] |