iterators/iterators.rs
1use micro_ndarray::Array;
2
3fn main() {
4 let mut array = Array::new_with([5, 4], 0);
5 array
6 .iter_mut()
7 .filter(|(loc, _)| loc[0] == 1)
8 .for_each(|x| {
9 println!("{x:?}");
10 *x.1 += x.0[1];
11 });
12 for y in 0..4 {
13 for x in 0..5 {
14 print!("{}", array[[x, y]]);
15 }
16 println!();
17 }
18 assert_eq!(
19 array.iter().map(|x| *x.1).collect::<Vec<_>>(),
20 vec![0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 2, 0, 0, 0, 0, 3, 0, 0, 0]
21 )
22}