diff options
author | Aleksey Kladov <[email protected]> | 2018-11-27 13:55:56 +0000 |
---|---|---|
committer | Aleksey Kladov <[email protected]> | 2018-11-27 15:25:35 +0000 |
commit | f4860870dae309f5287a287de0aa3a1a1b1de36b (patch) | |
tree | b487b5623db2a45f3c6cd3ae52e60b5fc90033a6 /crates/ra_analysis/src/descriptors/module/nameres.rs | |
parent | 68f66e0f446a2bd2385cfd236856f2a73bd58a3d (diff) |
scope-based resolve path
Diffstat (limited to 'crates/ra_analysis/src/descriptors/module/nameres.rs')
-rw-r--r-- | crates/ra_analysis/src/descriptors/module/nameres.rs | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/crates/ra_analysis/src/descriptors/module/nameres.rs b/crates/ra_analysis/src/descriptors/module/nameres.rs index d347a69b0..d2964f67f 100644 --- a/crates/ra_analysis/src/descriptors/module/nameres.rs +++ b/crates/ra_analysis/src/descriptors/module/nameres.rs | |||
@@ -103,7 +103,16 @@ pub(crate) struct ItemMap { | |||
103 | 103 | ||
104 | #[derive(Debug, Default, PartialEq, Eq, Clone)] | 104 | #[derive(Debug, Default, PartialEq, Eq, Clone)] |
105 | pub(crate) struct ModuleScope { | 105 | pub(crate) struct ModuleScope { |
106 | pub(crate) items: FxHashMap<SmolStr, Resolution>, | 106 | items: FxHashMap<SmolStr, Resolution>, |
107 | } | ||
108 | |||
109 | impl ModuleScope { | ||
110 | pub(crate) fn entries<'a>(&'a self) -> impl Iterator<Item = (&'a SmolStr, &Resolution)> + 'a { | ||
111 | self.items.iter() | ||
112 | } | ||
113 | pub(crate) fn get(&self, name: &SmolStr) -> Option<&Resolution> { | ||
114 | self.items.get(name) | ||
115 | } | ||
107 | } | 116 | } |
108 | 117 | ||
109 | /// A set of items and imports declared inside a module, without relation to | 118 | /// A set of items and imports declared inside a module, without relation to |