aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir_def/src/item_tree
diff options
context:
space:
mode:
authorJonas Schievink <[email protected]>2020-06-23 12:46:38 +0100
committerJonas Schievink <[email protected]>2020-06-24 15:53:54 +0100
commit689e147c9dc416027fd36e94673431533df545f9 (patch)
treefe8c4d6937134388bd23416706c08a4de046cf06 /crates/ra_hir_def/src/item_tree
parent5a81427304114d2c6ada9e9258ffe31e715c25bc (diff)
Collect inner items in expression macros
Diffstat (limited to 'crates/ra_hir_def/src/item_tree')
-rw-r--r--crates/ra_hir_def/src/item_tree/lower.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/crates/ra_hir_def/src/item_tree/lower.rs b/crates/ra_hir_def/src/item_tree/lower.rs
index 841c7a852..3bb437e81 100644
--- a/crates/ra_hir_def/src/item_tree/lower.rs
+++ b/crates/ra_hir_def/src/item_tree/lower.rs
@@ -52,7 +52,7 @@ impl Ctx {
52 } 52 }
53 } 53 }
54 54
55 pub(super) fn lower(mut self, item_owner: &dyn ModuleItemOwner) -> ItemTree { 55 pub(super) fn lower_module_items(mut self, item_owner: &dyn ModuleItemOwner) -> ItemTree {
56 self.tree.top_level = item_owner 56 self.tree.top_level = item_owner
57 .items() 57 .items()
58 .flat_map(|item| self.lower_mod_item(&item, false)) 58 .flat_map(|item| self.lower_mod_item(&item, false))
@@ -61,6 +61,11 @@ impl Ctx {
61 self.tree 61 self.tree
62 } 62 }
63 63
64 pub(super) fn lower_inner_items(mut self, within: &SyntaxNode) -> ItemTree {
65 self.collect_inner_items(within);
66 self.tree
67 }
68
64 fn lower_mod_item(&mut self, item: &ast::ModuleItem, inner: bool) -> Option<ModItems> { 69 fn lower_mod_item(&mut self, item: &ast::ModuleItem, inner: bool) -> Option<ModItems> {
65 assert!(inner || self.inner_items.is_empty()); 70 assert!(inner || self.inner_items.is_empty());
66 71