lodashrust/array/chunk.rs
1#![allow(dead_code)]
2
3pub fn chunk<T: Clone>(arr: &Vec<T>, mut chunk_size: usize) -> Vec<Vec<T>> {
4 let mut chunks = Vec::new();
5 let mut i = 0;
6
7 if chunk_size <= 0 {
8 chunk_size = 1
9 }
10
11 while i < arr.len() {
12 let end = (i + chunk_size).min(arr.len());
13 chunks.push(arr[i..end].to_vec());
14 i += chunk_size;
15 }
16
17 chunks
18}