Struct ai_dataloader::iterable::DataLoader
source · pub struct DataLoader<D, C> { /* private fields */ }Expand description
For iterable dataset, the datalaoder will yield until the underlying iterator is None.
As the iteration over the dataset can be done mutliple time, depending if the underlying dataset iterator consume the dataset or not.
Implementations§
source§impl<D> DataLoader<D, DefaultCollate>where
D: IntoIterator,
DefaultCollate: Collate<D::Item>,
impl<D> DataLoader<D, DefaultCollate>where D: IntoIterator, DefaultCollate: Collate<D::Item>,
sourcepub fn builder(dataset: D) -> Builder<D, DefaultCollate>
pub fn builder(dataset: D) -> Builder<D, DefaultCollate>
return a DataLoader builder.
source§impl<'dataset, D, C> DataLoader<D, C>where
D: 'dataset,
&'dataset D: IntoIterator,
C: Collate<<&'dataset D as IntoIterator>::Item>,
impl<'dataset, D, C> DataLoader<D, C>where D: 'dataset, &'dataset D: IntoIterator, C: Collate<<&'dataset D as IntoIterator>::Item>,
sourcepub fn iter(
&'dataset self
) -> Iter<'_, <&'dataset D as IntoIterator>::IntoIter, C>
pub fn iter( &'dataset self ) -> Iter<'_, <&'dataset D as IntoIterator>::IntoIter, C>
Iterate over the dataloader without consuming the underlying dataset. As it make no sens to collate reference into a tensor, by default element are copied.
Trait Implementations§
source§impl<'dataset, D, C> IntoIterator for &'dataset DataLoader<D, C>where
D: 'dataset,
&'dataset D: IntoIterator,
C: Collate<<&'dataset D as IntoIterator>::Item>,
impl<'dataset, D, C> IntoIterator for &'dataset DataLoader<D, C>where D: 'dataset, &'dataset D: IntoIterator, C: Collate<<&'dataset D as IntoIterator>::Item>,
§type Item = <C as Collate<<&'dataset D as IntoIterator>::Item>>::Output
type Item = <C as Collate<<&'dataset D as IntoIterator>::Item>>::Output
The type of the elements being iterated over.
§type IntoIter = Iter<'dataset, <&'dataset D as IntoIterator>::IntoIter, C>
type IntoIter = Iter<'dataset, <&'dataset D as IntoIterator>::IntoIter, C>
Which kind of iterator are we turning this into?
source§impl<D, C> IntoIterator for DataLoader<D, C>where
D: IntoIterator,
C: Collate<<D as IntoIterator>::Item>,
impl<D, C> IntoIterator for DataLoader<D, C>where D: IntoIterator, C: Collate<<D as IntoIterator>::Item>,
§type Item = <C as Collate<<D as IntoIterator>::Item>>::Output
type Item = <C as Collate<<D as IntoIterator>::Item>>::Output
The type of the elements being iterated over.
§type IntoIter = IntoIter<<D as IntoIterator>::IntoIter, C>
type IntoIter = IntoIter<<D as IntoIterator>::IntoIter, C>
Which kind of iterator are we turning this into?
Auto Trait Implementations§
impl<D, C> RefUnwindSafe for DataLoader<D, C>where C: RefUnwindSafe, D: RefUnwindSafe,
impl<D, C> Send for DataLoader<D, C>where C: Send, D: Send,
impl<D, C> Sync for DataLoader<D, C>where C: Sync, D: Sync,
impl<D, C> Unpin for DataLoader<D, C>where C: Unpin, D: Unpin,
impl<D, C> UnwindSafe for DataLoader<D, C>where C: UnwindSafe, D: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more