You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
With rust-lang/rust#72413, ranges of char are now iterable (in 1.45, releasing 2020-07-16). Rayon should support iterating them in parallel just like normal continuous integer ranges.
I've done experimentation previously, which suggested that chain(chars before surrogate range, chars after surrogate range) is the optimal ParallelIterator for Range*<char>.
I've very little experience with implementing parallel iterators, however, so that could be untrue.
The text was updated successfully, but these errors were encountered:
A chain sounds fine, but I wouldn't necessarily encode that in the iterator fields. It could just use rayon::range::Iter<char>, and then in its specific fn drive it can forward to something like (start as u32..end as u32).into_par_iter().map(/*to char*/).drive(..), or chained if needed to skip surrogates. Point is, that implement choice can be dynamic.
With rust-lang/rust#72413, ranges of
char
are now iterable (in 1.45, releasing 2020-07-16). Rayon should support iterating them in parallel just like normal continuous integer ranges.I've done experimentation previously, which suggested that
chain(chars before surrogate range, chars after surrogate range)
is the optimalParallelIterator
forRange*<char>
.I've very little experience with implementing parallel iterators, however, so that could be untrue.
The text was updated successfully, but these errors were encountered: