aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_ide_api
diff options
context:
space:
mode:
authorAleksey Kladov <[email protected]>2019-03-23 18:17:05 +0000
committerAleksey Kladov <[email protected]>2019-03-25 07:52:50 +0000
commit45fbab2b1ac02dab971d245c45c2404494cb3e03 (patch)
tree48da9b98751914bd2f93e388be382733932315d7 /crates/ra_ide_api
parent79df62bc742afa33dcf5bedefd60860ca296b9da (diff)
check impls as well
Diffstat (limited to 'crates/ra_ide_api')
-rw-r--r--crates/ra_ide_api/src/diagnostics.rs9
1 files changed, 9 insertions, 0 deletions
diff --git a/crates/ra_ide_api/src/diagnostics.rs b/crates/ra_ide_api/src/diagnostics.rs
index 1395cede2..e03dcaa8f 100644
--- a/crates/ra_ide_api/src/diagnostics.rs
+++ b/crates/ra_ide_api/src/diagnostics.rs
@@ -138,6 +138,15 @@ fn check_module(acc: &mut Vec<Diagnostic>, db: &RootDatabase, module: hir::Modul
138 } 138 }
139 } 139 }
140 140
141 for impl_block in module.impl_blocks(db) {
142 for item in impl_block.items(db) {
143 match item {
144 hir::ImplItem::Method(f) => f.diagnostics(db, &mut diagnostics),
145 _ => (),
146 }
147 }
148 }
149
141 for d in diagnostics.into_diagnostics().iter() { 150 for d in diagnostics.into_diagnostics().iter() {
142 if let Some(d) = d.downcast_ref::<hir::diagnostics::UnresolvedModule>() { 151 if let Some(d) = d.downcast_ref::<hir::diagnostics::UnresolvedModule>() {
143 let source_root = db.file_source_root(d.file().original_file(db)); 152 let source_root = db.file_source_root(d.file().original_file(db));