Struct orx_concurrent_iter::ConIterOfRange
source · pub struct ConIterOfRange<Idx>where
Idx: Send + Sync + Clone + Copy + From<usize> + Into<usize> + Add<Idx, Output = Idx> + Sub<Idx, Output = Idx> + Ord,{ /* private fields */ }
Expand description
A concurrent iterator over a slice yielding references to the elements.
Implementations§
Trait Implementations§
source§impl<Idx> AtomicIter for ConIterOfRange<Idx>
impl<Idx> AtomicIter for ConIterOfRange<Idx>
source§fn counter(&self) -> &AtomicCounter
fn counter(&self) -> &AtomicCounter
Returns a reference to the underlying advanced item counter.
source§fn get(&self, item_idx: usize) -> Option<Self::Item>
fn get(&self, item_idx: usize) -> Option<Self::Item>
Returns the
item_idx
-th item that the iterator yields; returns None if the iterator completes before.source§impl<Idx> AtomicIterWithInitialLen for ConIterOfRange<Idx>
impl<Idx> AtomicIterWithInitialLen for ConIterOfRange<Idx>
source§fn initial_len(&self) -> usize
fn initial_len(&self) -> usize
Returns the initial length of the atomic iterator.
source§fn fetch_n_with_exact_len(
&self,
n: usize
) -> NextManyExact<Self::Item, impl ExactSizeIterator<Item = Self::Item>>
fn fetch_n_with_exact_len( &self, n: usize ) -> NextManyExact<Self::Item, impl ExactSizeIterator<Item = Self::Item>>
Returns an iterator of the next
n
consecutive items that the iterator together with an exact size iterator.
It might return an iterator of less or no items if the iteration does not have sufficient elements left.source§impl<Idx> Clone for ConIterOfRange<Idx>
impl<Idx> Clone for ConIterOfRange<Idx>
source§fn clone(&self) -> ConIterOfRange<Idx>
fn clone(&self) -> ConIterOfRange<Idx>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<Idx> Debug for ConIterOfRange<Idx>
impl<Idx> Debug for ConIterOfRange<Idx>
source§impl<Idx> From<Range<Idx>> for ConIterOfRange<Idx>
impl<Idx> From<Range<Idx>> for ConIterOfRange<Idx>
impl<Idx> Send for ConIterOfRange<Idx>
impl<Idx> Sync for ConIterOfRange<Idx>
Auto Trait Implementations§
impl<Idx> !Freeze for ConIterOfRange<Idx>
impl<Idx> RefUnwindSafe for ConIterOfRange<Idx>where
Idx: RefUnwindSafe,
impl<Idx> Unpin for ConIterOfRange<Idx>where
Idx: Unpin,
impl<Idx> UnwindSafe for ConIterOfRange<Idx>where
Idx: 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
source§impl<A> ConcurrentIter for Awhere
A: AtomicIter,
impl<A> ConcurrentIter for Awhere
A: AtomicIter,
§type Item = <A as AtomicIter>::Item
type Item = <A as AtomicIter>::Item
Type of the items that the iterator yields.
source§fn next_id_and_value(&self) -> Option<Next<<A as AtomicIter>::Item>>
fn next_id_and_value(&self) -> Option<Next<<A as AtomicIter>::Item>>
Advances the iterator and returns the next value together with its enumeration index. Read more
source§fn next_chunk(&self, n: usize) -> impl NextChunk<<A as AtomicIter>::Item>
fn next_chunk(&self, n: usize) -> impl NextChunk<<A as AtomicIter>::Item>
Advances the iterator
chunk_size
times and returns an iterator of at most chunk_size
consecutive next values.
Further, the beginning enumeration index of the yielded values is returned. Read moresource§fn next(&self) -> Option<Self::Item>
fn next(&self) -> Option<Self::Item>
Advances the iterator and returns the next value. Read more
source§fn values(&self) -> ConIterValues<'_, Self> ⓘwhere
Self: Sized,
fn values(&self) -> ConIterValues<'_, Self> ⓘwhere
Self: Sized,
Returns an
Iterator
over the values of elements of the concurrent iterator. Read moresource§fn ids_and_values(&self) -> ConIterIdsAndValues<'_, Self> ⓘwhere
Self: Sized,
fn ids_and_values(&self) -> ConIterIdsAndValues<'_, Self> ⓘwhere
Self: Sized,
Returns an
Iterator
over the ids and values of elements of the concurrent iterator. Read moresource§impl<A> ExactSizeConcurrentIter for Awhere
A: AtomicIterWithInitialLen,
impl<A> ExactSizeConcurrentIter for Awhere
A: AtomicIterWithInitialLen,
source§fn next_exact_chunk(
&self,
chunk_size: usize
) -> Option<NextManyExact<<A as ConcurrentIter>::Item, impl ExactSizeIterator>>
fn next_exact_chunk( &self, chunk_size: usize ) -> Option<NextManyExact<<A as ConcurrentIter>::Item, impl ExactSizeIterator>>
Returns the next chunk with the requested
chunk_size
: Read more