#![warn(missing_docs)]
use crate::nn::dataset::DataSet;
#[derive(Clone)]
pub struct DataLoader<D: DataSet + Clone> {
data: D,
batch_size: usize,
shuffle: bool,
}
impl<D: DataSet + Clone> Iterator for DataLoader<D> {
type Item = D;
fn next(&mut self) -> Option<Self::Item> {
todo!()
}
}
impl<D: DataSet + Clone> DataLoader<D> {
fn new(data: D, batch_size: usize, shuffle: bool) -> DataLoader<D> {
Self {
data,
batch_size,
shuffle,
}
}
fn iter(&mut self) -> DataLoader<D> {
self.clone()
}
}