orx_concurrent_iter/implementations/range/
into_con_iter.rs1use super::con_iter::ConIterRange;
2use crate::into_concurrent_iter::IntoConcurrentIter;
3use core::ops::Range;
4
5impl<T> IntoConcurrentIter for Range<T>
6where
7 T: Send + Sync + From<usize> + Into<usize>,
8 Range<T>: Default + Clone + ExactSizeIterator<Item = T>,
9{
10 type Item = T;
11
12 type IntoIter = ConIterRange<T>;
13
14 fn into_con_iter(self) -> Self::IntoIter {
15 Self::IntoIter::new(self)
16 }
17}
18
19impl<T> IntoConcurrentIter for ConIterRange<T>
20where
21 T: Send + Sync + From<usize> + Into<usize>,
22 Range<T>: Default + Clone + ExactSizeIterator<Item = T>,
23{
24 type Item = T;
25
26 type IntoIter = Self;
27
28 fn into_con_iter(self) -> Self::IntoIter {
29 self
30 }
31}