use crate::*;
use rayon::iter::{IndexedParallelIterator, plumbing::*};
impl<T: Send + Sync> IndexedParallelIterator for FrontierParIter<'_, T> {
fn drive<C>(self, consumer: C) -> C::Result
where
C: Consumer<Self::Item>,
{
bridge(self, consumer)
}
fn len(&self) -> usize {
self.father.len()
}
fn with_producer<CB>(self, callback: CB) -> CB::Output
where
CB: ProducerCallback<Self::Item>,
{
callback.callback(self.father.iter())
}
}