aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir/src/ty.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_hir/src/ty.rs')
-rw-r--r--crates/ra_hir/src/ty.rs38
1 files changed, 19 insertions, 19 deletions
diff --git a/crates/ra_hir/src/ty.rs b/crates/ra_hir/src/ty.rs
index 3608daae4..3170ed24e 100644
--- a/crates/ra_hir/src/ty.rs
+++ b/crates/ra_hir/src/ty.rs
@@ -37,7 +37,7 @@ use crate::{
37 type_ref::{TypeRef, Mutability}, 37 type_ref::{TypeRef, Mutability},
38 name::KnownName, 38 name::KnownName,
39 expr::{Body, Expr, BindingAnnotation, Literal, ExprId, Pat, PatId, UnaryOp, BinaryOp, Statement, FieldPat}, 39 expr::{Body, Expr, BindingAnnotation, Literal, ExprId, Pat, PatId, UnaryOp, BinaryOp, Statement, FieldPat},
40 generics::Generics, 40 generics::GenericParams,
41 path::GenericArg, 41 path::GenericArg,
42}; 42};
43 43
@@ -283,7 +283,7 @@ impl Ty {
283 // resolver architecture 283 // resolver architecture
284 module: &Module, 284 module: &Module,
285 impl_block: Option<&ImplBlock>, 285 impl_block: Option<&ImplBlock>,
286 generics: &Generics, 286 generics: &GenericParams,
287 type_ref: &TypeRef, 287 type_ref: &TypeRef,
288 ) -> Self { 288 ) -> Self {
289 match type_ref { 289 match type_ref {
@@ -335,7 +335,7 @@ impl Ty {
335 db: &impl HirDatabase, 335 db: &impl HirDatabase,
336 module: &Module, 336 module: &Module,
337 impl_block: Option<&ImplBlock>, 337 impl_block: Option<&ImplBlock>,
338 generics: &Generics, 338 generics: &GenericParams,
339 type_ref: Option<&TypeRef>, 339 type_ref: Option<&TypeRef>,
340 ) -> Self { 340 ) -> Self {
341 type_ref.map_or(Ty::Unknown, |t| { 341 type_ref.map_or(Ty::Unknown, |t| {
@@ -347,7 +347,7 @@ impl Ty {
347 db: &impl HirDatabase, 347 db: &impl HirDatabase,
348 module: &Module, 348 module: &Module,
349 impl_block: Option<&ImplBlock>, 349 impl_block: Option<&ImplBlock>,
350 generics: &Generics, 350 generics: &GenericParams,
351 path: &Path, 351 path: &Path,
352 ) -> Self { 352 ) -> Self {
353 if let Some(name) = path.as_ident() { 353 if let Some(name) = path.as_ident() {
@@ -357,7 +357,7 @@ impl Ty {
357 return Ty::Float(float_ty); 357 return Ty::Float(float_ty);
358 } else if name.as_known_name() == Some(KnownName::SelfType) { 358 } else if name.as_known_name() == Some(KnownName::SelfType) {
359 // TODO pass the impl block's generics? 359 // TODO pass the impl block's generics?
360 let generics = &Generics::default(); 360 let generics = &GenericParams::default();
361 return Ty::from_hir_opt( 361 return Ty::from_hir_opt(
362 db, 362 db,
363 module, 363 module,
@@ -397,7 +397,7 @@ impl Ty {
397 // the scope of the segment... 397 // the scope of the segment...
398 module: &Module, 398 module: &Module,
399 impl_block: Option<&ImplBlock>, 399 impl_block: Option<&ImplBlock>,
400 outer_generics: &Generics, 400 outer_generics: &GenericParams,
401 path: &Path, 401 path: &Path,
402 resolved: DefId, 402 resolved: DefId,
403 ) -> Substs { 403 ) -> Substs {
@@ -408,10 +408,10 @@ impl Ty {
408 .last() 408 .last()
409 .expect("path should have at least one segment"); 409 .expect("path should have at least one segment");
410 let (def_generics, segment) = match def { 410 let (def_generics, segment) = match def {
411 Def::Struct(s) => (s.generics(db), last), 411 Def::Struct(s) => (s.generic_params(db), last),
412 Def::Enum(e) => (e.generics(db), last), 412 Def::Enum(e) => (e.generic_params(db), last),
413 Def::Function(f) => (f.generics(db), last), 413 Def::Function(f) => (f.generic_params(db), last),
414 Def::Trait(t) => (t.generics(db), last), 414 Def::Trait(t) => (t.generic_params(db), last),
415 Def::EnumVariant(ev) => { 415 Def::EnumVariant(ev) => {
416 // the generic args for an enum variant may be either specified 416 // the generic args for an enum variant may be either specified
417 // on the segment referring to the enum, or on the segment 417 // on the segment referring to the enum, or on the segment
@@ -426,7 +426,7 @@ impl Ty {
426 // Option::None::<T> 426 // Option::None::<T>
427 last 427 last
428 }; 428 };
429 (ev.parent_enum(db).generics(db), segment) 429 (ev.parent_enum(db).generic_params(db), segment)
430 } 430 }
431 _ => return Substs::empty(), 431 _ => return Substs::empty(),
432 }; 432 };
@@ -607,7 +607,7 @@ fn type_for_fn(db: &impl HirDatabase, f: Function) -> Ty {
607 let signature = f.signature(db); 607 let signature = f.signature(db);
608 let module = f.module(db); 608 let module = f.module(db);
609 let impl_block = f.impl_block(db); 609 let impl_block = f.impl_block(db);
610 let generics = f.generics(db); 610 let generics = f.generic_params(db);
611 let input = signature 611 let input = signature
612 .params() 612 .params()
613 .iter() 613 .iter()
@@ -624,7 +624,7 @@ fn type_for_fn(db: &impl HirDatabase, f: Function) -> Ty {
624 Ty::FnPtr(Arc::new(sig)) 624 Ty::FnPtr(Arc::new(sig))
625} 625}
626 626
627fn make_substs(generics: &Generics) -> Substs { 627fn make_substs(generics: &GenericParams) -> Substs {
628 Substs( 628 Substs(
629 generics 629 generics
630 .params 630 .params
@@ -636,7 +636,7 @@ fn make_substs(generics: &Generics) -> Substs {
636} 636}
637 637
638fn type_for_struct(db: &impl HirDatabase, s: Struct) -> Ty { 638fn type_for_struct(db: &impl HirDatabase, s: Struct) -> Ty {
639 let generics = s.generics(db); 639 let generics = s.generic_params(db);
640 Ty::Adt { 640 Ty::Adt {
641 def_id: s.def_id(), 641 def_id: s.def_id(),
642 name: s.name(db).unwrap_or_else(Name::missing), 642 name: s.name(db).unwrap_or_else(Name::missing),
@@ -645,7 +645,7 @@ fn type_for_struct(db: &impl HirDatabase, s: Struct) -> Ty {
645} 645}
646 646
647pub(crate) fn type_for_enum(db: &impl HirDatabase, s: Enum) -> Ty { 647pub(crate) fn type_for_enum(db: &impl HirDatabase, s: Enum) -> Ty {
648 let generics = s.generics(db); 648 let generics = s.generic_params(db);
649 Ty::Adt { 649 Ty::Adt {
650 def_id: s.def_id(), 650 def_id: s.def_id(),
651 name: s.name(db).unwrap_or_else(Name::missing), 651 name: s.name(db).unwrap_or_else(Name::missing),
@@ -684,8 +684,8 @@ pub(super) fn type_for_def(db: &impl HirDatabase, def_id: DefId) -> Ty {
684pub(super) fn type_for_field(db: &impl HirDatabase, def_id: DefId, field: Name) -> Option<Ty> { 684pub(super) fn type_for_field(db: &impl HirDatabase, def_id: DefId, field: Name) -> Option<Ty> {
685 let def = def_id.resolve(db); 685 let def = def_id.resolve(db);
686 let (variant_data, generics) = match def { 686 let (variant_data, generics) = match def {
687 Def::Struct(s) => (s.variant_data(db), s.generics(db)), 687 Def::Struct(s) => (s.variant_data(db), s.generic_params(db)),
688 Def::EnumVariant(ev) => (ev.variant_data(db), ev.parent_enum(db).generics(db)), 688 Def::EnumVariant(ev) => (ev.variant_data(db), ev.parent_enum(db).generic_params(db)),
689 // TODO: unions 689 // TODO: unions
690 _ => panic!( 690 _ => panic!(
691 "trying to get type for field in non-struct/variant {:?}", 691 "trying to get type for field in non-struct/variant {:?}",
@@ -880,7 +880,7 @@ impl<'a, D: HirDatabase> InferenceContext<'a, D> {
880 880
881 fn make_ty(&mut self, type_ref: &TypeRef) -> Ty { 881 fn make_ty(&mut self, type_ref: &TypeRef) -> Ty {
882 // TODO provide generics of function 882 // TODO provide generics of function
883 let generics = Generics::default(); 883 let generics = GenericParams::default();
884 let ty = Ty::from_hir( 884 let ty = Ty::from_hir(
885 self.db, 885 self.db,
886 &self.module, 886 &self.module,
@@ -1075,7 +1075,7 @@ impl<'a, D: HirDatabase> InferenceContext<'a, D> {
1075 }; 1075 };
1076 // TODO remove the duplication between here and `Ty::from_path`? 1076 // TODO remove the duplication between here and `Ty::from_path`?
1077 // TODO provide generics of function 1077 // TODO provide generics of function
1078 let generics = Generics::default(); 1078 let generics = GenericParams::default();
1079 let substs = Ty::substs_from_path( 1079 let substs = Ty::substs_from_path(
1080 self.db, 1080 self.db,
1081 &self.module, 1081 &self.module,