pub struct IntoBulk<T, const N: usize> { /* private fields */ }Trait Implementations§
Source§impl<T, const N: usize> Bulk for IntoBulk<T, N>
impl<T, const N: usize> Bulk for IntoBulk<T, N>
type MinLength = [(); N]
type MaxLength = [(); N]
Source§fn first(self) -> Option<Self::Item>
fn first(self) -> Option<Self::Item>
Returns the first value, and discards the rest of the bulk. Read more
fn get<'b, L>(
&'b self,
i: L,
) -> Option<&'b <Self as RandomAccessBulk>::ItemPointee>where
L: LengthValue,
Self: 'b,
fn get_mut<'b, L>(
&'b mut self,
i: L,
) -> Option<&'b mut <Self as RandomAccessBulk>::ItemPointee>where
L: LengthValue,
Self: 'b,
Source§fn collect_array(self) -> <Self as StaticBulk>::Array<Self::Item>
fn collect_array(self) -> <Self as StaticBulk>::Array<Self::Item>
Transforms a statically sized bulk into an array.
The bulk must implement
StaticBulk. Read moreSource§fn for_each<F>(self, f: F)where
F: FnMut(T),
fn for_each<F>(self, f: F)where
F: FnMut(T),
Calls a closure on each element of a bulk. Read more
Source§fn try_for_each<F, R>(self, f: F) -> R
fn try_for_each<F, R>(self, f: F) -> R
A bulk method that applies a fallible function to each item in the
bulk, stopping at the first error and returning that error. Read more
type Length = Self::Length
fn length(&self) -> Value<Self::Length>
Source§fn last(self) -> Option<Self::Item>
fn last(self) -> Option<Self::Item>
Returns the last value, and discards the rest of the bulk. Read more
Source§fn nth<L>(self, n: L) -> Option<Self::Item>
fn nth<L>(self, n: L) -> Option<Self::Item>
Returns the
n-th value, and discards the rest of the bulk. Read morefn many<NN, const N: usize>(self, n: NN) -> [Option<Self::Item>; N]
Source§fn fold<B, F>(self, init: B, f: F) -> B
fn fold<B, F>(self, init: B, f: F) -> B
Folds every element into an accumulator by applying an operation,
returning the final result. Read more
fn try_fold<B, F, R>(self, init: B, f: F) -> R
fn reduce<F>(self, f: F) -> Option<Self::Item>
fn try_reduce<F, R>( self, f: F, ) -> <R::Residual as Residual<Option<R::Output>>>::TryType
Source§fn step_by<L>(self, step: L) -> StepBy<Self, L::Length<()>> ⓘwhere
Self: Sized,
L: LengthValue,
fn step_by<L>(self, step: L) -> StepBy<Self, L::Length<()>> ⓘwhere
Self: Sized,
L: LengthValue,
Creates a bulk starting at the same point, but stepping by
the given amount at each iteration. Read more
Source§fn chain<U>(self, other: U) -> Chain<Self, U::IntoBulk> ⓘ
fn chain<U>(self, other: U) -> Chain<Self, U::IntoBulk> ⓘ
Takes two bulks and creates a new bulk over both in sequence. Read more
Source§fn zip<U>(
self,
other: U,
) -> Zip<Self, <<U as IntoContained>::IntoContained as IntoBulk>::IntoBulk> ⓘwhere
Self: Sized,
U: IntoContainedBy<Self>,
fn zip<U>(
self,
other: U,
) -> Zip<Self, <<U as IntoContained>::IntoContained as IntoBulk>::IntoBulk> ⓘwhere
Self: Sized,
U: IntoContainedBy<Self>,
‘Zips up’ two bulks or iterators into a single bulk of pairs. One of them must be a bulk. Read more
Source§fn intersperse(self, separator: Self::Item) -> Intersperse<Self> ⓘ
fn intersperse(self, separator: Self::Item) -> Intersperse<Self> ⓘ
Creates a new bulk which places a copy of
separator between adjacent
items of the original bulk. Read moreSource§fn intersperse_with<G>(self, separator: G) -> IntersperseWith<Self, G> ⓘ
fn intersperse_with<G>(self, separator: G) -> IntersperseWith<Self, G> ⓘ
Creates a new bulk which places an item generated by
separator
between adjacent items of the original bulk. Read moreSource§fn map<B, F>(self, f: F) -> Map<Self, F> ⓘ
fn map<B, F>(self, f: F) -> Map<Self, F> ⓘ
Takes a closure and creates a bulk which calls that closure on each
element. Read more
Source§fn enumerate(self) -> Enumerate<Self> ⓘwhere
Self: Sized,
fn enumerate(self) -> Enumerate<Self> ⓘwhere
Self: Sized,
Creates a bulk which gives the current index together with its values. Read more
Source§fn enumerate_from<U>(self, initial_count: U) -> EnumerateFrom<Self, U> ⓘ
fn enumerate_from<U>(self, initial_count: U) -> EnumerateFrom<Self, U> ⓘ
Creates a bulk which gives the current index counting from a given initial index together with its values. Read more
Source§fn skip<L>(self, n: L) -> Skip<Self, L::Length<()>> ⓘwhere
Self: Sized,
L: LengthValue,
fn skip<L>(self, n: L) -> Skip<Self, L::Length<()>> ⓘwhere
Self: Sized,
L: LengthValue,
Creates a bulk that skips the first
n elements. Read moreSource§fn take<L>(self, n: L) -> Take<Self, L::Length<()>> ⓘwhere
Self: Sized,
L: LengthValue,
fn take<L>(self, n: L) -> Take<Self, L::Length<()>> ⓘwhere
Self: Sized,
L: LengthValue,
Creates a bulk for the first
n elements, or fewer
if the underlying bulk/iterator is shorter. Read moreSource§fn flat_map<U, F>(self, f: F) -> FlatMap<Self, F> ⓘ
fn flat_map<U, F>(self, f: F) -> FlatMap<Self, F> ⓘ
Creates a bulk that works like map, but flattens nested structure. Read more
Source§fn map_windows<F, R, const N: usize>(self, f: F) -> MapWindows<Self, F, N> ⓘ
fn map_windows<F, R, const N: usize>(self, f: F) -> MapWindows<Self, F, N> ⓘ
Calls the given function
f for each contiguous window of size N over
self and returns a bulk of the outputs of f. The windows during mapping will overlap. Read moreSource§fn inspect<F>(self, f: F) -> Inspect<Self, F> ⓘ
fn inspect<F>(self, f: F) -> Inspect<Self, F> ⓘ
Does something with each element of a bulk, passing the value on. Read more
Source§fn mutate<F>(self, f: F) -> Mutate<Self, F> ⓘ
fn mutate<F>(self, f: F) -> Mutate<Self, F> ⓘ
Mutates with each element of a bulk, passing the value on. Read more
Source§fn collect<C, A>(self) -> Cwhere
Self: Sized,
C: FromBulk<A>,
A: CollectionAdapter<Elem = Self::Item> + CollectionStrategy<Self, C> + ?Sized,
fn collect<C, A>(self) -> Cwhere
Self: Sized,
C: FromBulk<A>,
A: CollectionAdapter<Elem = Self::Item> + CollectionStrategy<Self, C> + ?Sized,
Transforms a bulk into a collection. Read more
Source§fn try_collect<C, A>(
self,
) -> <<Self::Item as Try>::Residual as Residual<C>>::TryType
fn try_collect<C, A>( self, ) -> <<Self::Item as Try>::Residual as Residual<C>>::TryType
Fallibly transforms a bulk into a collection, short circuiting if
a failure is encountered. Read more
Source§fn try_collect_array(
self,
) -> <<Self::Item as Try>::Residual as Residual<Self::Array<<Self::Item as Try>::Output>>>::TryType
fn try_collect_array( self, ) -> <<Self::Item as Try>::Residual as Residual<Self::Array<<Self::Item as Try>::Output>>>::TryType
Fallibly transforms a statically sized bulk into an array, short circuiting if
a failure is encountered.
The bulk must implement
StaticBulk. Read moreSource§fn rev(self) -> Rev<Self> ⓘwhere
Self: Sized + DoubleEndedBulk,
fn rev(self) -> Rev<Self> ⓘwhere
Self: Sized + DoubleEndedBulk,
Reverses a bulks’s direction. Read more
Source§fn copied<'a, T>(self) -> Copied<Self> ⓘ
fn copied<'a, T>(self) -> Copied<Self> ⓘ
Creates a bulk which copies all of its elements. Read more
Source§fn array_chunks<const N: usize>(self) -> ArrayChunks<Self, N> ⓘwhere
Self: Sized,
fn array_chunks<const N: usize>(self) -> ArrayChunks<Self, N> ⓘwhere
Self: Sized,
Returns a bulk of
N elements of the bulk at a time. Read moreSource§fn split_at<L>(self, n: L) -> (Self::Left, Self::Right)
fn split_at<L>(self, n: L) -> (Self::Left, Self::Right)
Splits a bulk in two at a specified index. Read more
Source§fn rsplit_at<L>(self, n: L) -> (Self::Left, Self::Right)where
Self: SplitBulk<SaturatingSub<<<Self as Bulk>::Length as Length>::Value, L>> + Sized,
L: LengthValue,
fn rsplit_at<L>(self, n: L) -> (Self::Left, Self::Right)where
Self: SplitBulk<SaturatingSub<<<Self as Bulk>::Length as Length>::Value, L>> + Sized,
L: LengthValue,
Splits a bulk in two at a specified reversed index. Read more
fn each_ref<'a>(&'a self) -> Self::EachRef<'a>where
Self: RandomAccessBulk + 'a,
fn each_mut<'a>(&'a mut self) -> Self::EachMut<'a>where
Self: InplaceBulk + 'a,
fn try_get<'a, L>(&'a self, i: L) -> Result<&'a Self::ItemPointee, OutOfRange>where
Self: RandomAccessBulk + 'a,
L: LengthValue,
fn try_get_mut<'a, L>(
&'a mut self,
i: L,
) -> Result<&'a mut Self::ItemPointee, OutOfRange>where
Self: InplaceBulk + 'a,
L: LengthValue,
fn get_many<'a, NN, const N: usize>(
&'a self,
i: NN,
) -> [Option<&'a <Self as RandomAccessBulk>::ItemPointee>; N]where
Self: RandomAccessBulk + 'a,
NN: IntoBulk<Item = usize, IntoBulk: Bulk + StaticBulk<Array<()> = [(); N]>>,
fn get_many_mut<'a, NN, const N: usize>(
&'a mut self,
i: NN,
) -> [Option<&'a mut <Self as RandomAccessBulk>::ItemPointee>; N]where
Self: InplaceBulk + 'a,
NN: IntoBulk<Item = usize, IntoBulk: Bulk + StaticBulk<Array<()> = [(); N]>>,
fn swap_inplace<L, R>(&mut self, lhs: L, rhs: R)
fn try_swap_inplace<L, R>(&mut self, lhs: L, rhs: R) -> Result<(), OutOfRange>
Source§impl<T, const N: usize> DoubleEndedBulk for IntoBulk<T, N>
impl<T, const N: usize> DoubleEndedBulk for IntoBulk<T, N>
Source§fn rev_for_each<F>(self, f: F)where
F: FnMut(T),
fn rev_for_each<F>(self, f: F)where
F: FnMut(T),
Calls a closure on each element of a bulk in reverse.
Source§impl<T, const N: usize> InplaceBulk for IntoBulk<T, N>
impl<T, const N: usize> InplaceBulk for IntoBulk<T, N>
type EachMut<'b> = BulkMut<'b, T, N> where Self::ItemPointee: 'b, Self: 'b
fn each_mut<'b>(bulk: &'b mut Self) -> Self::EachMut<'b>where
Self::ItemPointee: 'b,
Self: 'b,
Source§impl<T, const N: usize> IntoIterator for IntoBulk<T, N>
impl<T, const N: usize> IntoIterator for IntoBulk<T, N>
Source§impl<T, const N: usize> RandomAccessBulk for IntoBulk<T, N>
impl<T, const N: usize> RandomAccessBulk for IntoBulk<T, N>
type ItemPointee = T
type EachRef<'b> = Bulk<'b, T, N> where Self::ItemPointee: 'b, Self: 'b
fn each_ref<'b>(bulk: &'b Self) -> Self::EachRef<'b>where
Self::ItemPointee: 'b,
Self: 'b,
Auto Trait Implementations§
impl<T, const N: usize> Freeze for IntoBulk<T, N>where
T: Freeze,
impl<T, const N: usize> RefUnwindSafe for IntoBulk<T, N>where
T: RefUnwindSafe,
impl<T, const N: usize> Send for IntoBulk<T, N>where
T: Send,
impl<T, const N: usize> Sync for IntoBulk<T, N>where
T: Sync,
impl<T, const N: usize> Unpin for IntoBulk<T, N>where
T: Unpin,
impl<T, const N: usize> UnwindSafe for IntoBulk<T, N>where
T: 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<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<I, const N: usize> CollectNearest for I
impl<I, const N: usize> CollectNearest for I
type Nearest = <I as StaticBulk>::Array<<I as IntoIterator>::Item>
type TryNearest = <I as StaticBulk>::Array<<<I as IntoIterator>::Item as Try>::Output> where <I as IntoIterator>::Item: Try
Source§fn collect_nearest(self) -> <I as CollectNearest>::Nearest
fn collect_nearest(self) -> <I as CollectNearest>::Nearest
Collects into an array if possible, otherwise a vector
Source§fn try_collect_nearest(
self,
) -> <<<I as IntoIterator>::Item as Try>::Residual as Residual<<I as CollectNearest>::TryNearest>>::TryTypewhere
<I as IntoIterator>::Item: Try,
<<I as IntoIterator>::Item as Try>::Residual: Residual<<I as CollectNearest>::TryNearest> + Residual<()>,
fn try_collect_nearest(
self,
) -> <<<I as IntoIterator>::Item as Try>::Residual as Residual<<I as CollectNearest>::TryNearest>>::TryTypewhere
<I as IntoIterator>::Item: Try,
<<I as IntoIterator>::Item as Try>::Residual: Residual<<I as CollectNearest>::TryNearest> + Residual<()>,
Fallibly collects into an array if possible, otherwise a vector