aboutsummaryrefslogtreecommitdiff
path: root/vendor/rayon/src/par_either.rs
diff options
context:
space:
mode:
authorValentin Popov <valentin@popov.link>2024-07-19 15:37:58 +0300
committerValentin Popov <valentin@popov.link>2024-07-19 15:37:58 +0300
commita990de90fe41456a23e58bd087d2f107d321f3a1 (patch)
tree15afc392522a9e85dc3332235e311b7d39352ea9 /vendor/rayon/src/par_either.rs
parent3d48cd3f81164bbfc1a755dc1d4a9a02f98c8ddd (diff)
downloadfparkan-a990de90fe41456a23e58bd087d2f107d321f3a1.tar.xz
fparkan-a990de90fe41456a23e58bd087d2f107d321f3a1.zip
Deleted vendor folder
Diffstat (limited to 'vendor/rayon/src/par_either.rs')
-rw-r--r--vendor/rayon/src/par_either.rs74
1 files changed, 0 insertions, 74 deletions
diff --git a/vendor/rayon/src/par_either.rs b/vendor/rayon/src/par_either.rs
deleted file mode 100644
index a19ce53..0000000
--- a/vendor/rayon/src/par_either.rs
+++ /dev/null
@@ -1,74 +0,0 @@
-use crate::iter::plumbing::*;
-use crate::iter::Either::{Left, Right};
-use crate::iter::*;
-
-/// `Either<L, R>` is a parallel iterator if both `L` and `R` are parallel iterators.
-impl<L, R> ParallelIterator for Either<L, R>
-where
- L: ParallelIterator,
- R: ParallelIterator<Item = L::Item>,
-{
- type Item = L::Item;
-
- fn drive_unindexed<C>(self, consumer: C) -> C::Result
- where
- C: UnindexedConsumer<Self::Item>,
- {
- match self {
- Left(iter) => iter.drive_unindexed(consumer),
- Right(iter) => iter.drive_unindexed(consumer),
- }
- }
-
- fn opt_len(&self) -> Option<usize> {
- self.as_ref().either(L::opt_len, R::opt_len)
- }
-}
-
-impl<L, R> IndexedParallelIterator for Either<L, R>
-where
- L: IndexedParallelIterator,
- R: IndexedParallelIterator<Item = L::Item>,
-{
- fn drive<C>(self, consumer: C) -> C::Result
- where
- C: Consumer<Self::Item>,
- {
- match self {
- Left(iter) => iter.drive(consumer),
- Right(iter) => iter.drive(consumer),
- }
- }
-
- fn len(&self) -> usize {
- self.as_ref().either(L::len, R::len)
- }
-
- fn with_producer<CB>(self, callback: CB) -> CB::Output
- where
- CB: ProducerCallback<Self::Item>,
- {
- match self {
- Left(iter) => iter.with_producer(callback),
- Right(iter) => iter.with_producer(callback),
- }
- }
-}
-
-/// `Either<L, R>` can be extended if both `L` and `R` are parallel extendable.
-impl<L, R, T> ParallelExtend<T> for Either<L, R>
-where
- L: ParallelExtend<T>,
- R: ParallelExtend<T>,
- T: Send,
-{
- fn par_extend<I>(&mut self, par_iter: I)
- where
- I: IntoParallelIterator<Item = T>,
- {
- match self.as_mut() {
- Left(collection) => collection.par_extend(par_iter),
- Right(collection) => collection.par_extend(par_iter),
- }
- }
-}