diff options
author | bors[bot] <26634292+bors[bot]@users.noreply.github.com> | 2019-10-08 12:46:14 +0100 |
---|---|---|
committer | GitHub <[email protected]> | 2019-10-08 12:46:14 +0100 |
commit | 92cf0eba93b8d2705ed39bef1a4ea665ed3c25dc (patch) | |
tree | a015a8a8162acacb61b3353b4642c93cd80e51ae /crates/ra_hir/src/code_model.rs | |
parent | 93199002af05f3a3dfd274fe10633372f2471b73 (diff) | |
parent | b043358be936b7f139efd49b7d187d64e319830e (diff) |
Merge #1924
1924: Support inferring&completing `Self` type in enum/struct/union definitions r=ice1000 a=ice1000
Signed-off-by: ice1000 <[email protected]>
An attempt to fix #1908.
This code works, but I believe the implementation is ugly. Please give me suggestions!
Co-authored-by: ice1000 <[email protected]>
Diffstat (limited to 'crates/ra_hir/src/code_model.rs')
-rw-r--r-- | crates/ra_hir/src/code_model.rs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/crates/ra_hir/src/code_model.rs b/crates/ra_hir/src/code_model.rs index e3a7e8e3c..58db6832d 100644 --- a/crates/ra_hir/src/code_model.rs +++ b/crates/ra_hir/src/code_model.rs | |||
@@ -24,7 +24,7 @@ use crate::{ | |||
24 | U8, USIZE, | 24 | U8, USIZE, |
25 | }, | 25 | }, |
26 | nameres::{CrateModuleId, ImportId, ModuleScope, Namespace}, | 26 | nameres::{CrateModuleId, ImportId, ModuleScope, Namespace}, |
27 | resolve::{Resolver, TypeNs}, | 27 | resolve::{Resolver, Scope, TypeNs}, |
28 | traits::TraitData, | 28 | traits::TraitData, |
29 | ty::{ | 29 | ty::{ |
30 | primitive::{FloatBitness, FloatTy, IntBitness, IntTy, Signedness}, | 30 | primitive::{FloatBitness, FloatTy, IntBitness, IntTy, Signedness}, |
@@ -465,7 +465,7 @@ impl Enum { | |||
465 | // ...and add generic params, if present | 465 | // ...and add generic params, if present |
466 | let p = self.generic_params(db); | 466 | let p = self.generic_params(db); |
467 | let r = if !p.params.is_empty() { r.push_generic_params_scope(p) } else { r }; | 467 | let r = if !p.params.is_empty() { r.push_generic_params_scope(p) } else { r }; |
468 | r | 468 | r.push_scope(Scope::AdtScope(self.into())) |
469 | } | 469 | } |
470 | } | 470 | } |
471 | 471 | ||