pub(crate) struct Reader<'a> {
w: &'a [f32],
i: usize,
}
impl<'a> Reader<'a> {
pub(crate) fn new(w: &'a [f32]) -> Self {
Self { w, i: 0 }
}
pub(crate) fn take(&mut self, n: usize) -> Vec<f32> {
let chunk = self.w[self.i..self.i + n].to_vec();
self.i += n;
chunk
}
}