June 2018 Update
This commit is contained in:
parent
ba8067c3b7
commit
22f33d4004
5278 changed files with 84726 additions and 14379 deletions
|
|
@ -6,7 +6,7 @@ struct RangeFinder<'a, T: 'a> {
|
|||
arr: &'a [T],
|
||||
}
|
||||
|
||||
impl<'a, T> Iterator for RangeFinder<'a, T> where T: PartialEq + Add<u8, Output=T> + Copy {
|
||||
impl<'a, T> Iterator for RangeFinder<'a, T> where T: PartialEq + Add<i8, Output=T> + Copy {
|
||||
type Item = (T, Option<T>);
|
||||
fn next(&mut self) -> Option<Self::Item> {
|
||||
if self.index == self.length {
|
||||
|
|
@ -40,10 +40,12 @@ impl<'a, T> RangeFinder<'a, T> {
|
|||
}
|
||||
|
||||
fn main() {
|
||||
let n = [0,1,2,3];
|
||||
|
||||
for (i, (lo, hi)) in RangeFinder::new(&n).enumerate() {
|
||||
if i > 0 {print!(", ")}
|
||||
let input_numbers : &[i8] = &[0, 1, 2, 4, 6, 7, 8, 11, 12, 14,
|
||||
15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
|
||||
25, 27, 28, 29, 30, 31, 32, 33, 35, 36,
|
||||
37, 38, 39];
|
||||
for (i, (lo, hi)) in RangeFinder::new(&input_numbers).enumerate() {
|
||||
if i > 0 {print!(",")}
|
||||
print!("{}", lo);
|
||||
if hi.is_some() {print!("-{}", hi.unwrap())}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
impl<'a, T> Iterator for RangeFinder<'a, T> where T: PartialEq + Add<u8, Output=T> + Copy {
|
||||
impl<'a, T> Iterator for RangeFinder<'a, T> where T: PartialEq + Add<i8, Output=T> + Copy {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue