From 6bad638928ab880bfbad868f07f0690ace2f2c30 Mon Sep 17 00:00:00 2001 From: ice1000 Date: Fri, 27 Sep 2019 00:19:52 -0400 Subject: Support inferring `Self` type in enum definitions Signed-off-by: ice1000 --- crates/ra_hir/src/code_model.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'crates/ra_hir/src/code_model.rs') diff --git a/crates/ra_hir/src/code_model.rs b/crates/ra_hir/src/code_model.rs index e3a7e8e3c..cd501d1f6 100644 --- a/crates/ra_hir/src/code_model.rs +++ b/crates/ra_hir/src/code_model.rs @@ -24,7 +24,7 @@ use crate::{ U8, USIZE, }, nameres::{CrateModuleId, ImportId, ModuleScope, Namespace}, - resolve::{Resolver, TypeNs}, + resolve::{Resolver, Scope, TypeNs}, traits::TraitData, ty::{ primitive::{FloatBitness, FloatTy, IntBitness, IntTy, Signedness}, @@ -465,7 +465,7 @@ impl Enum { // ...and add generic params, if present let p = self.generic_params(db); let r = if !p.params.is_empty() { r.push_generic_params_scope(p) } else { r }; - r + r.push_scope(Scope::AdtScope(From::from(self))) } } -- cgit v1.2.3 From b043358be936b7f139efd49b7d187d64e319830e Mon Sep 17 00:00:00 2001 From: ice1000 Date: Tue, 8 Oct 2019 07:25:37 -0400 Subject: Address comments: fix docs, add completion test for `Self`. --- crates/ra_hir/src/code_model.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'crates/ra_hir/src/code_model.rs') diff --git a/crates/ra_hir/src/code_model.rs b/crates/ra_hir/src/code_model.rs index cd501d1f6..58db6832d 100644 --- a/crates/ra_hir/src/code_model.rs +++ b/crates/ra_hir/src/code_model.rs @@ -465,7 +465,7 @@ impl Enum { // ...and add generic params, if present let p = self.generic_params(db); let r = if !p.params.is_empty() { r.push_generic_params_scope(p) } else { r }; - r.push_scope(Scope::AdtScope(From::from(self))) + r.push_scope(Scope::AdtScope(self.into())) } } -- cgit v1.2.3