pub trait VecIterator<'a>: BaseVecIterator<Item = (Self::I, Value<'a, Self::T>)> {
type I: StoredIndex;
type T: StoredType + 'a;
// Provided methods
fn set(&mut self, i: Self::I) { ... }
fn get_(&mut self, i: usize) -> Option<Value<'a, Self::T>> { ... }
fn get(&mut self, i: Self::I) -> Option<Value<'a, Self::T>> { ... }
fn unwrap_get_inner(&mut self, i: Self::I) -> Self::T { ... }
fn unwrap_get_inner_(&mut self, i: usize) -> Self::T { ... }
fn get_inner(&mut self, i: Self::I) -> Option<Self::T> { ... }
fn last(self) -> Option<Self::Item>
where Self: Sized { ... }
fn index_type_to_string(&self) -> String { ... }
}Required Associated Types§
type I: StoredIndex
type T: StoredType + 'a
Provided Methods§
fn set(&mut self, i: Self::I)
fn get_(&mut self, i: usize) -> Option<Value<'a, Self::T>>
Sourcefn get(&mut self, i: Self::I) -> Option<Value<'a, Self::T>>
fn get(&mut self, i: Self::I) -> Option<Value<'a, Self::T>>
Examples found in repository?
examples/main.rs (line 21)
6fn main() -> Result<(), Box<dyn std::error::Error>> {
7 let _ = fs::remove_dir_all("./vec");
8
9 let version = Version::ZERO;
10 let format = Format::Compressed;
11
12 {
13 let mut vec: StoredVec<usize, u32> =
14 StoredVec::forced_import(Path::new("."), "vec", version, format)?;
15
16 (0..21_u32).for_each(|v| {
17 vec.push(v);
18 });
19
20 let mut iter = vec.into_iter();
21 dbg!(iter.get(0));
22 dbg!(iter.get(20));
23 dbg!(iter.get(21));
24
25 vec.flush()?;
26 }
27
28 {
29 let mut vec: StoredVec<usize, u32> =
30 StoredVec::forced_import(Path::new("."), "vec", version, format)?;
31 let mut iter = vec.into_iter();
32
33 dbg!(iter.get(0));
34 dbg!(iter.get(0));
35 dbg!(iter.get(1));
36 dbg!(iter.get(2));
37 dbg!(iter.get(20));
38 dbg!(iter.get(20));
39 dbg!(iter.get(0));
40
41 vec.push(21);
42 vec.push(22);
43
44 let mut iter = vec.into_iter();
45
46 dbg!(iter.get(20));
47 dbg!(iter.get(21));
48 dbg!(iter.get(22));
49 dbg!(iter.get(23));
50
51 vec.flush()?;
52 }
53
54 {
55 let mut vec: StoredVec<usize, u32> =
56 StoredVec::forced_import(Path::new("."), "vec", version, format)?;
57 let mut iter = vec.into_iter();
58
59 dbg!(iter.get(0));
60 dbg!(iter.get(20));
61 dbg!(iter.get(21));
62 dbg!(iter.get(22));
63
64 vec.truncate_if_needed(14)?;
65
66 let mut iter = vec.into_iter();
67
68 iter.get(0);
69 iter.get(5);
70 dbg!(iter.get(20));
71
72 dbg!(vec.collect_signed_range(Some(-5), None)?);
73
74 vec.push(vec.len() as u32);
75 dbg!(VecIterator::last(vec.into_iter()));
76
77 dbg!(vec.into_iter().collect::<Vec<_>>());
78 }
79
80 Ok(())
81}fn unwrap_get_inner(&mut self, i: Self::I) -> Self::T
fn unwrap_get_inner_(&mut self, i: usize) -> Self::T
fn get_inner(&mut self, i: Self::I) -> Option<Self::T>
Sourcefn last(self) -> Option<Self::Item>where
Self: Sized,
fn last(self) -> Option<Self::Item>where
Self: Sized,
Examples found in repository?
examples/main.rs (line 75)
6fn main() -> Result<(), Box<dyn std::error::Error>> {
7 let _ = fs::remove_dir_all("./vec");
8
9 let version = Version::ZERO;
10 let format = Format::Compressed;
11
12 {
13 let mut vec: StoredVec<usize, u32> =
14 StoredVec::forced_import(Path::new("."), "vec", version, format)?;
15
16 (0..21_u32).for_each(|v| {
17 vec.push(v);
18 });
19
20 let mut iter = vec.into_iter();
21 dbg!(iter.get(0));
22 dbg!(iter.get(20));
23 dbg!(iter.get(21));
24
25 vec.flush()?;
26 }
27
28 {
29 let mut vec: StoredVec<usize, u32> =
30 StoredVec::forced_import(Path::new("."), "vec", version, format)?;
31 let mut iter = vec.into_iter();
32
33 dbg!(iter.get(0));
34 dbg!(iter.get(0));
35 dbg!(iter.get(1));
36 dbg!(iter.get(2));
37 dbg!(iter.get(20));
38 dbg!(iter.get(20));
39 dbg!(iter.get(0));
40
41 vec.push(21);
42 vec.push(22);
43
44 let mut iter = vec.into_iter();
45
46 dbg!(iter.get(20));
47 dbg!(iter.get(21));
48 dbg!(iter.get(22));
49 dbg!(iter.get(23));
50
51 vec.flush()?;
52 }
53
54 {
55 let mut vec: StoredVec<usize, u32> =
56 StoredVec::forced_import(Path::new("."), "vec", version, format)?;
57 let mut iter = vec.into_iter();
58
59 dbg!(iter.get(0));
60 dbg!(iter.get(20));
61 dbg!(iter.get(21));
62 dbg!(iter.get(22));
63
64 vec.truncate_if_needed(14)?;
65
66 let mut iter = vec.into_iter();
67
68 iter.get(0);
69 iter.get(5);
70 dbg!(iter.get(20));
71
72 dbg!(vec.collect_signed_range(Some(-5), None)?);
73
74 vec.push(vec.len() as u32);
75 dbg!(VecIterator::last(vec.into_iter()));
76
77 dbg!(vec.into_iter().collect::<Vec<_>>());
78 }
79
80 Ok(())
81}