aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir/src/generics.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_hir/src/generics.rs')
-rw-r--r--crates/ra_hir/src/generics.rs7
1 files changed, 2 insertions, 5 deletions
diff --git a/crates/ra_hir/src/generics.rs b/crates/ra_hir/src/generics.rs
index 521e47090..07a59193f 100644
--- a/crates/ra_hir/src/generics.rs
+++ b/crates/ra_hir/src/generics.rs
@@ -9,6 +9,7 @@ use ra_syntax::ast::{self, DefaultTypeParamOwner, NameOwner, TypeBoundsOwner, Ty
9 9
10use crate::{ 10use crate::{
11 db::{AstDatabase, DefDatabase, HirDatabase}, 11 db::{AstDatabase, DefDatabase, HirDatabase},
12 name::SELF_TYPE,
12 path::Path, 13 path::Path,
13 type_ref::TypeRef, 14 type_ref::TypeRef,
14 AdtDef, AsName, Container, Enum, EnumVariant, Function, HasSource, ImplBlock, Name, Struct, 15 AdtDef, AsName, Container, Enum, EnumVariant, Function, HasSource, ImplBlock, Name, Struct,
@@ -81,11 +82,7 @@ impl GenericParams {
81 GenericDef::Enum(it) => generics.fill(&*it.source(db).ast, start), 82 GenericDef::Enum(it) => generics.fill(&*it.source(db).ast, start),
82 GenericDef::Trait(it) => { 83 GenericDef::Trait(it) => {
83 // traits get the Self type as an implicit first type parameter 84 // traits get the Self type as an implicit first type parameter
84 generics.params.push(GenericParam { 85 generics.params.push(GenericParam { idx: start, name: SELF_TYPE, default: None });
85 idx: start,
86 name: Name::self_type(),
87 default: None,
88 });
89 generics.fill(&*it.source(db).ast, start + 1); 86 generics.fill(&*it.source(db).ast, start + 1);
90 } 87 }
91 GenericDef::TypeAlias(it) => generics.fill(&*it.source(db).ast, start), 88 GenericDef::TypeAlias(it) => generics.fill(&*it.source(db).ast, start),