Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir_def/src/data.rs')
| -rw-r--r-- | crates/hir_def/src/data.rs | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/crates/hir_def/src/data.rs b/crates/hir_def/src/data.rs index 456ed9e610..ffb733c2b9 100644 --- a/crates/hir_def/src/data.rs +++ b/crates/hir_def/src/data.rs @@ -315,6 +315,7 @@ impl Macro2Data { #[derive(Debug, Clone, PartialEq, Eq)] pub struct MacroRulesData { pub name: Name, + pub macro_export: bool, } impl MacroRulesData { @@ -326,7 +327,12 @@ impl MacroRulesData { let item_tree = loc.id.item_tree(db); let makro = &item_tree[loc.id.value]; - Arc::new(MacroRulesData { name: makro.name.clone() }) + let macro_export = item_tree + .attrs(db, loc.container.krate(), ModItem::from(loc.id.value).into()) + .by_key("macro_export") + .exists(); + + Arc::new(MacroRulesData { name: makro.name.clone(), macro_export }) } } #[derive(Debug, Clone, PartialEq, Eq)] |