aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir/src/code_model.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_hir/src/code_model.rs')
-rw-r--r--crates/ra_hir/src/code_model.rs15
1 files changed, 10 insertions, 5 deletions
diff --git a/crates/ra_hir/src/code_model.rs b/crates/ra_hir/src/code_model.rs
index 5b56f890e..adb61a804 100644
--- a/crates/ra_hir/src/code_model.rs
+++ b/crates/ra_hir/src/code_model.rs
@@ -1003,12 +1003,17 @@ pub struct MacroDef {
1003 pub(crate) id: MacroDefId, 1003 pub(crate) id: MacroDefId,
1004} 1004}
1005 1005
1006impl HasSource for MacroDef {
1007 type Ast = TreeArc<ast::MacroCall>;
1008
1009 fn source(self, db: &(impl DefDatabase + AstDatabase)) -> Source<TreeArc<ast::MacroCall>> {
1010 (self.id.0.file_id(), self.id.0.to_node(db)).into()
1011 }
1012}
1013
1006impl MacroDef { 1014impl MacroDef {
1007 pub fn source( 1015 pub fn source(&self, db: &(impl DefDatabase + AstDatabase)) -> Source<TreeArc<ast::MacroCall>> {
1008 &self, 1016 (self.id.0.file_id(), self.id.0.to_node(db)).into()
1009 db: &(impl DefDatabase + AstDatabase),
1010 ) -> (HirFileId, TreeArc<ast::MacroCall>) {
1011 (self.id.0.file_id(), self.id.0.to_node(db))
1012 } 1017 }
1013} 1018}
1014 1019