diff options
author | Jeremy Kolb <[email protected]> | 2019-01-28 14:26:32 +0000 |
---|---|---|
committer | Jeremy Kolb <[email protected]> | 2019-01-30 00:13:02 +0000 |
commit | 3c17643b3085682a695f0e6d80483edc00d04cb3 (patch) | |
tree | 2e76d7be4f703a46608078228124285bc2c94e21 /crates/ra_hir/src/ty | |
parent | 48d2acb297459fb06cbb49bdce2eccb4c2591714 (diff) |
Go to Implementation for structs and enums
Diffstat (limited to 'crates/ra_hir/src/ty')
-rw-r--r-- | crates/ra_hir/src/ty/method_resolution.rs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/crates/ra_hir/src/ty/method_resolution.rs b/crates/ra_hir/src/ty/method_resolution.rs index 9a571c2aa..d70a24582 100644 --- a/crates/ra_hir/src/ty/method_resolution.rs +++ b/crates/ra_hir/src/ty/method_resolution.rs | |||
@@ -44,7 +44,7 @@ impl CrateImplBlocks { | |||
44 | &'a self, | 44 | &'a self, |
45 | db: &'a impl HirDatabase, | 45 | db: &'a impl HirDatabase, |
46 | ty: &Ty, | 46 | ty: &Ty, |
47 | ) -> impl Iterator<Item = ImplBlock> + 'a { | 47 | ) -> impl Iterator<Item = (Module, ImplBlock)> + 'a { |
48 | let fingerprint = TyFingerprint::for_impl(ty); | 48 | let fingerprint = TyFingerprint::for_impl(ty); |
49 | fingerprint | 49 | fingerprint |
50 | .and_then(|f| self.impls.get(&f)) | 50 | .and_then(|f| self.impls.get(&f)) |
@@ -56,7 +56,7 @@ impl CrateImplBlocks { | |||
56 | module_id: *module_id, | 56 | module_id: *module_id, |
57 | }; | 57 | }; |
58 | let module_impl_blocks = db.impls_in_module(module); | 58 | let module_impl_blocks = db.impls_in_module(module); |
59 | ImplBlock::from_id(module_impl_blocks, *impl_id) | 59 | (module, ImplBlock::from_id(module_impl_blocks, *impl_id)) |
60 | }) | 60 | }) |
61 | } | 61 | } |
62 | 62 | ||
@@ -152,7 +152,7 @@ impl Ty { | |||
152 | }; | 152 | }; |
153 | let impls = db.impls_in_crate(krate); | 153 | let impls = db.impls_in_crate(krate); |
154 | 154 | ||
155 | for impl_block in impls.lookup_impl_blocks(db, &derefed_ty) { | 155 | for (_, impl_block) in impls.lookup_impl_blocks(db, &derefed_ty) { |
156 | for item in impl_block.items() { | 156 | for item in impl_block.items() { |
157 | match item { | 157 | match item { |
158 | ImplItem::Method(f) => { | 158 | ImplItem::Method(f) => { |