aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir_def/src/per_ns.rs
diff options
context:
space:
mode:
authorJonas Schievink <[email protected]>2020-05-20 22:51:20 +0100
committerJonas Schievink <[email protected]>2020-06-04 18:33:01 +0100
commitd08c63cb9e3574fa97374a8529136814530bf416 (patch)
tree385c05e8531fccb567ca7ca688de761f4a08edb3 /crates/ra_hir_def/src/per_ns.rs
parentc19496f845a4adcd7e0f48f5dcb5b405bbc63dfc (diff)
Add an ImportMap
Diffstat (limited to 'crates/ra_hir_def/src/per_ns.rs')
-rw-r--r--crates/ra_hir_def/src/per_ns.rs10
1 files changed, 9 insertions, 1 deletions
diff --git a/crates/ra_hir_def/src/per_ns.rs b/crates/ra_hir_def/src/per_ns.rs
index 6e435c8c1..74665c588 100644
--- a/crates/ra_hir_def/src/per_ns.rs
+++ b/crates/ra_hir_def/src/per_ns.rs
@@ -5,7 +5,7 @@
5 5
6use hir_expand::MacroDefId; 6use hir_expand::MacroDefId;
7 7
8use crate::{visibility::Visibility, ModuleDefId}; 8use crate::{item_scope::ItemInNs, visibility::Visibility, ModuleDefId};
9 9
10#[derive(Debug, Copy, Clone, PartialEq, Eq)] 10#[derive(Debug, Copy, Clone, PartialEq, Eq)]
11pub struct PerNs { 11pub struct PerNs {
@@ -84,4 +84,12 @@ impl PerNs {
84 macros: self.macros.or(other.macros), 84 macros: self.macros.or(other.macros),
85 } 85 }
86 } 86 }
87
88 pub fn iter_items(self) -> impl Iterator<Item = ItemInNs> {
89 self.types
90 .map(|it| ItemInNs::Types(it.0))
91 .into_iter()
92 .chain(self.values.map(|it| ItemInNs::Values(it.0)).into_iter())
93 .chain(self.macros.map(|it| ItemInNs::Macros(it.0)).into_iter())
94 }
87} 95}