Lines Matching full:split
6 /// The `split` function takes arbitrary data and a closure that knows how to
7 /// split it, and turns this into a `ParallelIterator`.
11 /// As a simple example, Rayon can recursively split ranges of indices
24 /// // We are mathematically unable to split the range if there is only
33 /// // By using iter::split, Rayon will split the range until it has enough work
35 /// iter::split(0..4096, split_range1).for_each(|sub_range| {
66 /// // We want to recursively split them by the largest dimension until we have
68 /// // carries out one such split.
70 /// // Decide on which axis (horizontal/vertical) the range should be split
74 /// // This is a wide range, split it on the horizontal axis
83 /// // This is a tall range, split it on the vertical axis
96 /// iter::split(range, split_range2).for_each(|sub_range| {
97 /// // If the sub-ranges were indeed split by the largest dimension, then
106 pub fn split<D, S>(data: D, splitter: S) -> Split<D, S> in split() function
111 Split { data, splitter } in split()
114 /// `Split` is a parallel iterator using arbitrary data and a splitting function.
115 /// This struct is created by the [`split()`] function.
117 /// [`split()`]: fn.split.html
119 pub struct Split<D, S> { struct
124 impl<D: Debug, S> Debug for Split<D, S> { argument
126 f.debug_struct("Split").field("data", &self.data).finish() in fmt()
130 impl<D, S> ParallelIterator for Split<D, S> implementation
161 fn split(mut self) -> (Self, Option<Self>) { in split() function