diff options
Diffstat (limited to 'crates/ra_db/src/mock.rs')
-rw-r--r-- | crates/ra_db/src/mock.rs | 30 |
1 files changed, 0 insertions, 30 deletions
diff --git a/crates/ra_db/src/mock.rs b/crates/ra_db/src/mock.rs deleted file mode 100644 index 5e185062b..000000000 --- a/crates/ra_db/src/mock.rs +++ /dev/null | |||
@@ -1,30 +0,0 @@ | |||
1 | use rustc_hash::FxHashSet; | ||
2 | use relative_path::{RelativePath, RelativePathBuf}; | ||
3 | |||
4 | use crate::{FileId}; | ||
5 | |||
6 | #[derive(Default, Debug, Clone)] | ||
7 | pub struct FileMap(Vec<(FileId, RelativePathBuf)>); | ||
8 | |||
9 | impl FileMap { | ||
10 | pub fn add(&mut self, path: RelativePathBuf) -> FileId { | ||
11 | let file_id = FileId((self.0.len() + 1) as u32); | ||
12 | self.0.push((file_id, path)); | ||
13 | file_id | ||
14 | } | ||
15 | |||
16 | pub fn files(&self) -> FxHashSet<FileId> { | ||
17 | self.iter().map(|(id, _)| id).collect() | ||
18 | } | ||
19 | |||
20 | pub fn file_id(&self, path: &str) -> FileId { | ||
21 | assert!(path.starts_with('/')); | ||
22 | self.iter().find(|(_, p)| p == &path[1..]).unwrap().0 | ||
23 | } | ||
24 | |||
25 | fn iter<'a>(&'a self) -> impl Iterator<Item = (FileId, &'a RelativePath)> + 'a { | ||
26 | self.0 | ||
27 | .iter() | ||
28 | .map(|(id, path)| (*id, path.as_relative_path())) | ||
29 | } | ||
30 | } | ||