aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_vfs/src/arena.rs
diff options
context:
space:
mode:
authorAleksey Kladov <[email protected]>2018-12-18 13:38:05 +0000
committerAleksey Kladov <[email protected]>2018-12-20 09:15:38 +0000
commita422d480a188a28c6b5e7862fbf07817eb2c7447 (patch)
treed2a1945e49d1728f210c29ae8e88bffef19d22b7 /crates/ra_vfs/src/arena.rs
parente69b05781f7fb0f0dfdcd4acb433dbcde9cbb7b7 (diff)
implement vfs events handling
Diffstat (limited to 'crates/ra_vfs/src/arena.rs')
-rw-r--r--crates/ra_vfs/src/arena.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/crates/ra_vfs/src/arena.rs b/crates/ra_vfs/src/arena.rs
index d6fad753b..6b42ae26d 100644
--- a/crates/ra_vfs/src/arena.rs
+++ b/crates/ra_vfs/src/arena.rs
@@ -1,5 +1,4 @@
1use std::{ 1use std::{
2 hash::{Hash, Hasher},
3 marker::PhantomData, 2 marker::PhantomData,
4 ops::{Index, IndexMut}, 3 ops::{Index, IndexMut},
5}; 4};
@@ -21,6 +20,12 @@ impl<ID: ArenaId, T> Arena<ID, T> {
21 self.data.push(value); 20 self.data.push(value);
22 ID::from_u32(id) 21 ID::from_u32(id)
23 } 22 }
23 pub fn iter<'a>(&'a self) -> impl Iterator<Item = (ID, &'a T)> {
24 self.data
25 .iter()
26 .enumerate()
27 .map(|(idx, value)| (ID::from_u32(idx as u32), value))
28 }
24} 29}
25 30
26impl<ID: ArenaId, T> Default for Arena<ID, T> { 31impl<ID: ArenaId, T> Default for Arena<ID, T> {