diff options
Diffstat (limited to 'crates/ra_hir/src/ty')
-rw-r--r-- | crates/ra_hir/src/ty/lower.rs | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/crates/ra_hir/src/ty/lower.rs b/crates/ra_hir/src/ty/lower.rs index d4fbddac0..8ea2806dd 100644 --- a/crates/ra_hir/src/ty/lower.rs +++ b/crates/ra_hir/src/ty/lower.rs | |||
@@ -553,8 +553,8 @@ pub(crate) fn callable_item_sig(db: &impl HirDatabase, def: CallableDef) -> FnSi | |||
553 | pub(crate) fn type_for_field(db: &impl HirDatabase, field: StructField) -> Ty { | 553 | pub(crate) fn type_for_field(db: &impl HirDatabase, field: StructField) -> Ty { |
554 | let parent_def = field.parent_def(db); | 554 | let parent_def = field.parent_def(db); |
555 | let resolver = match parent_def { | 555 | let resolver = match parent_def { |
556 | VariantDef::Struct(it) => it.resolver(db), | 556 | VariantDef::Struct(it) => it.id.resolver(db), |
557 | VariantDef::EnumVariant(it) => it.parent_enum(db).resolver(db), | 557 | VariantDef::EnumVariant(it) => it.parent.id.resolver(db), |
558 | }; | 558 | }; |
559 | let var_data = parent_def.variant_data(db); | 559 | let var_data = parent_def.variant_data(db); |
560 | let type_ref = &var_data.fields().unwrap()[field.id].type_ref; | 560 | let type_ref = &var_data.fields().unwrap()[field.id].type_ref; |
@@ -623,7 +623,7 @@ pub(crate) fn generic_defaults_query(db: &impl HirDatabase, def: GenericDef) -> | |||
623 | 623 | ||
624 | fn fn_sig_for_fn(db: &impl HirDatabase, def: Function) -> FnSig { | 624 | fn fn_sig_for_fn(db: &impl HirDatabase, def: Function) -> FnSig { |
625 | let data = def.data(db); | 625 | let data = def.data(db); |
626 | let resolver = def.resolver(db); | 626 | let resolver = def.id.resolver(db); |
627 | let params = data.params().iter().map(|tr| Ty::from_hir(db, &resolver, tr)).collect::<Vec<_>>(); | 627 | let params = data.params().iter().map(|tr| Ty::from_hir(db, &resolver, tr)).collect::<Vec<_>>(); |
628 | let ret = Ty::from_hir(db, &resolver, data.ret_type()); | 628 | let ret = Ty::from_hir(db, &resolver, data.ret_type()); |
629 | FnSig::from_params_and_return(params, ret) | 629 | FnSig::from_params_and_return(params, ret) |
@@ -640,7 +640,7 @@ fn type_for_fn(db: &impl HirDatabase, def: Function) -> Ty { | |||
640 | /// Build the declared type of a const. | 640 | /// Build the declared type of a const. |
641 | fn type_for_const(db: &impl HirDatabase, def: Const) -> Ty { | 641 | fn type_for_const(db: &impl HirDatabase, def: Const) -> Ty { |
642 | let data = def.data(db); | 642 | let data = def.data(db); |
643 | let resolver = def.resolver(db); | 643 | let resolver = def.id.resolver(db); |
644 | 644 | ||
645 | Ty::from_hir(db, &resolver, data.type_ref()) | 645 | Ty::from_hir(db, &resolver, data.type_ref()) |
646 | } | 646 | } |
@@ -648,7 +648,7 @@ fn type_for_const(db: &impl HirDatabase, def: Const) -> Ty { | |||
648 | /// Build the declared type of a static. | 648 | /// Build the declared type of a static. |
649 | fn type_for_static(db: &impl HirDatabase, def: Static) -> Ty { | 649 | fn type_for_static(db: &impl HirDatabase, def: Static) -> Ty { |
650 | let data = def.data(db); | 650 | let data = def.data(db); |
651 | let resolver = def.resolver(db); | 651 | let resolver = def.id.resolver(db); |
652 | 652 | ||
653 | Ty::from_hir(db, &resolver, data.type_ref()) | 653 | Ty::from_hir(db, &resolver, data.type_ref()) |
654 | } | 654 | } |
@@ -700,7 +700,7 @@ fn fn_sig_for_struct_constructor(db: &impl HirDatabase, def: Struct) -> FnSig { | |||
700 | Some(fields) => fields, | 700 | Some(fields) => fields, |
701 | None => panic!("fn_sig_for_struct_constructor called on unit struct"), | 701 | None => panic!("fn_sig_for_struct_constructor called on unit struct"), |
702 | }; | 702 | }; |
703 | let resolver = def.resolver(db); | 703 | let resolver = def.id.resolver(db); |
704 | let params = fields | 704 | let params = fields |
705 | .iter() | 705 | .iter() |
706 | .map(|(_, field)| Ty::from_hir(db, &resolver, &field.type_ref)) | 706 | .map(|(_, field)| Ty::from_hir(db, &resolver, &field.type_ref)) |
@@ -726,7 +726,7 @@ fn fn_sig_for_enum_variant_constructor(db: &impl HirDatabase, def: EnumVariant) | |||
726 | Some(fields) => fields, | 726 | Some(fields) => fields, |
727 | None => panic!("fn_sig_for_enum_variant_constructor called for unit variant"), | 727 | None => panic!("fn_sig_for_enum_variant_constructor called for unit variant"), |
728 | }; | 728 | }; |
729 | let resolver = def.parent_enum(db).resolver(db); | 729 | let resolver = def.parent.id.resolver(db); |
730 | let params = fields | 730 | let params = fields |
731 | .iter() | 731 | .iter() |
732 | .map(|(_, field)| Ty::from_hir(db, &resolver, &field.type_ref)) | 732 | .map(|(_, field)| Ty::from_hir(db, &resolver, &field.type_ref)) |
@@ -755,7 +755,7 @@ fn type_for_adt(db: &impl HirDatabase, adt: impl Into<Adt> + HasGenericParams) - | |||
755 | 755 | ||
756 | fn type_for_type_alias(db: &impl HirDatabase, t: TypeAlias) -> Ty { | 756 | fn type_for_type_alias(db: &impl HirDatabase, t: TypeAlias) -> Ty { |
757 | let generics = t.generic_params(db); | 757 | let generics = t.generic_params(db); |
758 | let resolver = t.resolver(db); | 758 | let resolver = t.id.resolver(db); |
759 | let type_ref = t.type_ref(db); | 759 | let type_ref = t.type_ref(db); |
760 | let substs = Substs::identity(&generics); | 760 | let substs = Substs::identity(&generics); |
761 | let inner = Ty::from_hir(db, &resolver, &type_ref.unwrap_or(TypeRef::Error)); | 761 | let inner = Ty::from_hir(db, &resolver, &type_ref.unwrap_or(TypeRef::Error)); |